Microduck Robot●microduck-robot.com

Microduck Robot / DOCS

Microduck Robot: Technische Dokumentation für Arduino UNO Q

Diese Referenz fasst die Einrichtung des UNO-Q-Umbaus von Luwu Dynamics zusammen und grenzt ihn vom ursprünglichen Microduck von Pollen Robotics ab. Notiere die Platinenrevision und die Version der installierten Anwendung, bevor du mit der Einrichtung beginnst.

Arduino UNO Q einrichten

Verbinde das Board über ein USB-C-Datenkabel und prüfe, ob Arduino App Lab genau dieses Gerät erkennt. Schließe die Ersteinrichtung ab, verbinde Computer und Board mit demselben lokalen Netzwerk und lies in Network Info die zugewiesene IP-Adresse ab.

Teste bei Verbindungsproblemen zunächst ein einfaches LED-Beispiel in App Lab und beende es anschließend. Bereite die Bridge für die gewählte Runtime-Version vor. Starte die Roboter-App und prüfe im Browser die IP-Adresse des Boards mit Port :9527.

Bei der Basisversion lade zunächst die Board-Bibliotheken in App Lab und stoppe die App. Führe auf dem UNO Q im tatsächlichen App-Verzeichnis zuerst python3 tools/prepare-bridge.py und dann sudo bash tools/router-2m.sh aus. Starte anschließend die App in App Lab erneut.

Servo-IDs vergeben und die Montage vorbereiten

Schalte die Versorgung vor jeder Änderung an der Verkabelung ab. Richte jeweils nur einen angeschlossenen Servo ein. Öffne „Servo setup“ und suche die aktuelle ID mit „Scan all IDs“. Trage die Ziel-ID in „Change ID to“ ein, wähle „Change ID“ und kontrolliere das Ergebnis per Scan. Beschrifte den Servo mit ID und Einbauposition.

Für den dokumentierten Aufbau gilt: linkes Bein 10–14, rechtes Bein 20–24, Kopf und Hals 30–33, Schnabel 34. Gleiche diese Zuordnung vor der Montage mit deiner Hardware-Revision ab.

Mechanische Prüfung vor dem Schließen

Beginne mit einem trockenen Passversuch für Lagersitze und Servohalter. Vergleiche die Ausrichtung der Teile und die Positionen der Befestigungen mit den Zeichnungen deiner Revision. Prüfe linke und rechte Baugruppen getrennt.

Kontrolliere vor dem Schließen jeden Leitungsweg bei abgeschalteter Versorgung. Kabel benötigen Bewegungsreserve und dürfen nicht in Gelenke oder Gehäusekanten geraten. Kläre Abweichungen bei Steckern und Platinen, bevor du die Versorgung anschließt.

Fehler nach dem ersten Auftreten eingrenzen

Wenn die Steuerseite nicht lädt, prüfe App-Status, IP-Adresse und lokales Netzwerk. Wenn die Seite lädt, aber Messwerte fehlen, prüfe die Bridge. Bei einem fehlenden Servo stoppe die Bewegung und schalte vor dem Berühren der Leitungen ab. Prüfe Steckersitz und die eindeutige ID.

Wenn der Roboter nach der Kalibrierung schief steht, notiere Gelenk, Befehl und Beobachtung. Vergleiche Einbaurichtung und mechanischen Nullpunkt und prüfe, ob die Rückmeldungen von Servos und IMU aktuell sind.

Basis-Runtime: Kalibrieren und Bewegung prüfen

Stütze den Roboter so ab, dass die Füße frei sind. Im beschriebenen Basisstand startet die Anwendung in „Inference only“ mit abgeschalteter Servokraft. Prüfe vor dem Aktivieren einer Bewegung, ob „Servos online“ 15/15 und „IMU“ den Status „online“ anzeigt.

Bringe jeweils ein Gelenk mechanisch in seine Referenzstellung und wähle für den zugehörigen Servo „Set center & hold“. Der Servo kann sich beim Halten bewegen. Sichere nach der Kalibrierung deine Datei data/zero_pos.json. Prüfe „Default pose“ bei abgestütztem Roboter und teste erst danach eine kleine Bewegung auf freier, ebener Fläche.

KI-Runtime: Audio, Video und ToF separat prüfen

Verwende das zur KI-Version gehörende App-Lab-ZIP und vergleiche dessen SHA-256 mit der veröffentlichten Prüfsumme. Sichere Anwendung und Daten vor einer Änderung. Stelle den Netzwerkzugang vor dem Wechsel in USB Host sicher, da USB oder ADB dabei getrennt werden können.

Importiere das geprüfte ZIP über „Import App“ und „Import from computer“. Stoppe alle Apps und vergewissere dich, dass du das Board per SSH über WLAN erreichst. Ermittle das App-Verzeichnis mit arduino-app-cli app list. Führe dort zuerst bash tools/install-ai-support.sh und dann sudo bash tools/router-2m.sh aus. Stelle anschließend in App Lab die Verbindung über „Network“ her und wähle „Run“.

Das KI-Dashboard liegt an der Basisadresse des Boards, die Bewegungssteuerung an :9527. Prüfe Kamera, Mikrofon und Lautsprecher einzeln. Für ToF ist in der beschriebenen Variante das VL53L5CX dokumentiert. Kläre die Unterstützung von VL53L8CX und der jeweiligen Trägerplatine vor dem Anschluss anhand deiner Runtime-Version.

Rufe für den ToF-Test /api/tof/status mehrfach über Port 9527 ab. Achte auf state=ranging und fresh=true. Der Wert seq muss weiterzählen und valid_zones muss größer als null sein.

Simulation, Training und Export

Eine vorhandene Bewegungsstrategie läuft auf dem Roboter. Trainiere eigene Strategien auf einem separaten CUDA-fähigen Rechner und prüfe die vorgesehene Aufgabe in der Simulation, bevor du ein ONNX-Modell exportierst.

Vergleiche vor dem Laden Gelenkreihenfolge, Beobachtungsgrößen und Normalisierung mit der Runtime. Halte Hardware-Revision, Runtime- und Trainingsversion sowie Modellprüfsumme fest. Prüfe die erste Bewegung am abgestützten Roboter.

Der ursprüngliche Microduck von Pollen Robotics

Pollen Robotics veröffentlichte den ursprünglichen Microduck. Die UNO-Q-Anpassung von Luwu Dynamics verwendet eine eigene Hardware- und Softwarekonfiguration. Übertrage Modelle, Gelenkzuordnungen und Kalibrierwerte nur, wenn sie für genau deinen Aufbau geprüft wurden.

Projektquellen

Kontakt