================================
== Blog Linux User Group Saar ==
================================

Lucky Robot Präsenzroboter

3D-Druck ESP32 Software

Projekt Lucky Robot

Maintainer: informaniac und mancas

Lizenz: Creative Commons - Attribution - Non-Commercial

Projekt gestartet: 23.02.2023

Online- und Präsenz-Treffen der LUG Saar

Während der Pandemie fanden unsere Vereinstreffen online statt. Wir nutzten mumble und jitsi um Kontakt zu halten und uns auszutauschen.

Nun gibt es wieder die regelmäßigen Vereinstreffen in unseren Räumen in Saarlouis, Luxemburger Ring 8. Die mumble Meetings haben uns gezeigt, dass man online gut Leute erreichen und bequem Einbinden kann. Daher bieten wir im Rahmen unserer Vereinstreffen seitdem auch mumble online an.

Mumble ist ein Open Source Voice Chat. Unseren mumble findet man hier: mumble.lug-saar.de
Den passenden Client findet man in den üblichen Linux Repositories, auf dem Smartphone kann man neben anderen z. B. Plumble nutzen.

Wir freuen uns immer über Gäste die sich über Linux, Open Source oder unsere Projekte informieren möchten, bevor sie zu einem unserer Treffen vorbeikommen.

In unserem Raum gibt es dazu eine Ecke mit einem Raum-Mikrofon und einem Mischpult zum Einstöpseln der Kopfhörer.

Nicht immer möchte uns jemand online erreichen und so brauchen wir eine Erkennung, wenn sich ein Teilnehmer einwählt.

Präsenzroboter

Wir nutzen Lucky um uns bei unseren Vereinsabenden in unseren Räumen anzuzeigen, dass sich ein Teilnehmer in unser mumble eingewählt hat. Wir gehen dann online, begrüßen ihn und führen Präsenz- und Realtreffen zusammen. Angesteuert wird Lucky von einem Bot in Mumble.

  • In mumble lauscht ein Bot auf Teilnehmer und erkennt, wenn sich jemand einwählt

  • Der Bot sendet ein Signal an den kleinen Lucky


Lucky Robot und sein Bot

Lucky ist ein kleiner 3D-gedruckter Roboter. Erhält er den richtigen Code vom Bot, so wird ein Servo angesteuert und er winkt freundlich.

LuckyRobotLive.jpg
Lucky Robot winkt
https://www.youtube.com/shorts/ma4m3f4RMEI

Funktionen

Der Code kann auf Luckys Webseite direkt eingegeben werden. Der Bot sendet einfach eine Zeile mit dem Code an den ESP, z. B. sowas wie http://192.168.xxx.xxx/get?input1=xxxx

LuckyRobotWebseite.jpg
Die Webseite von Lucky Robot, er wartet auf seine Eingabe

Lucky und der Bot laufen innerhalb unseres LUG Netzes.

Lucky hat viele weiter Einsatz-Möglichkeiten

Der D1 Mini kann auch in vielen anderen Fällen zur Visualisierung eingesetzt werden.
Zum Beispiel der Anzeige der Zustände eines Servers oder, geflasht mit ESPHome zum Visualisieren der Zustände im Smarthome.

Wir haben auch noch viele Ideen, wie Lucky erweitert werden kann.

Hier gibts die Infos zum 3D-Drucken und zur Arduiono Software

Zusammenbau des Präsenzroboters

Hier sieht man die Aufnahme des D1 Mini. Die Stiftleisten sind auf die Antennenseite gelötet. Verbaut wurden je ein SG90 Servo pro Arm, wobei jedoch nur der linke Arm angeschlossen wird. Wenn man die Federzungen der Steckanschlüsse des Servos anhebt, kann man durch Tausch von Pluspol und Masse die Kabel in die richtige Reihenfolge bringen und das Servo einfach anstöpseln.

LuckyRobotESP.jpg
Einbau des D1 Mini und Anschluss des Servos

LuckyRobotUnten.jpg
Snap-In des ESP Trägers im Robotergehäuse

Die Servohebel werden zum Einbau leicht gewölbt und schnappen dann in den Arm ein.

LuckyRobotArm.jpg
Servohebel im Roboterarm

Die Montage von Ketten, Hals und Augen erfolgt mit kleinen Holzverbinderschrauben 2x10.

Die Pupillen werden einfach eingesteckt. Für einen späteren Ausbau bieten sie die Möglichkeit eine LED einzubauen. Sehr schön sind langsam farbwechselnde 3V LEDs, sie passen an die Digitalausgänge des D1 Mini, die 3V liefern.

LuckyRobotLED.jpg
LED im Roboterauge


Der mumble Bot

Einen ersten Einstieg haben wir hier gefunden https://github.com/layeh/gumble und daraus ein parametrisiertes Bot-Script entwickelt. Die Programmiersprache ist Go.

Unsere Bot-Software gibt es hier. https://github.com/lugsaar/gumble-connect-hook

Im Mumble siehr das so aus.

LuckyRobotMumble2.jpg
Der Bot im Mumble

Damit das auf dem Raspi läuft müssen mit apt-get install diese Pakete installiert werden.

  • golang
  • opus-dev

Der Befehl: go install <username>/gumble-connect-hook

schreibt das binary in ~/go/bin, dort muss auch die gumble-connect-hook.yml hin, nachdem sie angepasst wurde.

Die Soundausgabe des Raspherry Pi läft über eine USB-Sondkarte.

Zusammenwirken der Komponenten

Lucky Robot und sein Bot auf einem Raspberry Pi sind in unseren Vereinsräumen, mumble im Web, mumble.lug-saar.de. Der Bot könnte aber auch auf einem anderen Server mitlaufen.

So ist der Startablauf

  • mumble auf dem Raspi starten
  • Nutzer “mumble-Teilnehmer im Vereinsraum” dort in das Voice Chat schicken
  • mit ./gumble-connect-hook den Bot starten
  • Lucky einschalten, er sendet eine Mail an unsere Mailingliste mit dem Inhalt:
    “Lucky Robot und Voice Chat mumble zu unserem Vereinsraum sind bereit.”

Viel Spaß beim Nachbauen.