Inhaltsverzeichnis:
- Schritt 1: EINE KURZE EINFÜHRUNG
- Schritt 2: DIE INTERESSANTE HINTERGRUNDGESCHICHTE
- Schritt 3: EINE KURZE EINFÜHRUNG IN "oblu"
- Schritt 4: WAS IST DER NUTZEN VON "oblu"?
- Schritt 5: DIE GESCHICHTE DES PROJEKTS
- Schritt 6: SYSTEMBESCHREIBUNG
- Schritt 7: PFADMODELLIERUNG
- Schritt 8: SCHALTKREISMONTAGE
- Schritt 9: SCHALTPLAN
- Schritt 10: KOMMUNIKATIONSPROTOKOLL:
- Schritt 11: WIE FUNKTIONIERT "oblu" IMU (optional):
- Schritt 12: Besuchen Sie "oblu.io" (optional)
- Schritt 13: KOMPONENTEN
Video: Navigieren Sie den Roboter mit Schuhsensoren, ohne GPS, ohne Karte - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:20
Von obluobluFolgen Über: oblu ist ein Indoor-Navigationssensor Mehr über oblu »
Der Roboter bewegt sich auf einer vorprogrammierten Bahn und überträgt (über Bluetooth) seine tatsächlichen Bewegungsinformationen an ein Telefon zur Echtzeitverfolgung. Arduino ist mit Pfad vorprogrammiert und oblu wird zum Erfassen der Roboterbewegung verwendet. oblu überträgt in regelmäßigen Abständen Bewegungsinformationen an Arduino. Auf dieser Grundlage steuert Arduino die Bewegungen der Räder, damit der Roboter dem vordefinierten Pfad folgen kann.
Schritt 1: EINE KURZE EINFÜHRUNG
Bei dem Projekt geht es darum, den Roboter präzise auf einer vordefinierten Bahn zu bewegen, ohne GPS oder WLAN oder Bluetooth zur Positionsbestimmung zu verwenden, nicht einmal Karte oder Gebäudeplan. Und zeichnen Sie seinen tatsächlichen Weg (auf die Skala) in Echtzeit. Bluetooth kann als Ersatz für Kabel verwendet werden, um Echtzeit-Standortinformationen zu übertragen.
Schritt 2: DIE INTERESSANTE HINTERGRUNDGESCHICHTE
Die vorrangige Agenda unseres Teams ist die Entwicklung von schuhmontierten Fußgängernavigationssensoren. Wir wurden jedoch von einer akademischen Forschungsgruppe mit der Anforderung angesprochen, den Roboter in Innenräumen zu navigieren und gleichzeitig seine Echtzeitposition zu überwachen. Sie wollten ein solches System verwenden, um Strahlung in einer geschlossenen Kammer zu kartieren oder Gaslecks in einer industriellen Einrichtung zu erkennen. Solche Orte sind für Menschen gefährlich. auf der Suche nach einer robusten Lösung für die Indoor-Navigation unseres Arduino-basierten Roboters.
Unsere offensichtliche Wahl für jedes Bewegungssensormodul (IMU) war "oblu" (siehe Bild oben). Aber der knifflige Teil hier war, dass die vorhandene Firmware von oblu in einfachen Worten für fußmontierte Indoor-Pedestrian Dead Reckoning (PDR) oder Fußgängernavigation geeignet war. Die PDR-Leistung von oblu im Innenbereich als fußmontierte IMU ist ziemlich beeindruckend. Die Verfügbarkeit der Android-App (Xoblu) für das Echtzeit-Tracking von oblu als Schuhsensor trägt zu diesem Vorteil bei. Die Herausforderung bestand jedoch darin, den bestehenden Algorithmus, der auf dem menschlichen Gehmodell basiert, zur Navigation und Überwachung des Roboters zu nutzen.
Schritt 3: EINE KURZE EINFÜHRUNG IN "oblu"
"oblu" ist eine miniaturisierte, kostengünstige Open-Source-Entwicklungsplattform, die auf tragbare Bewegungssensoranwendungen ausgerichtet ist. Es ist mit einem Lithium-Ionen-Akku betrieben und ermöglicht das Aufladen des USB-Akkus an Bord. Es verfügt über ein integriertes Bluetooth-Modul (BLE 4.1) für die drahtlose Kommunikation. "oblu" hostet einen 32-Bit-Gleitkomma-Mikrocontroller (AT32UC3C von Atmel), der die Lösung komplexer Navigationsgleichungen an Bord ermöglicht. Daher führt man die gesamte Bewegungsverarbeitung auf oblu selbst durch und überträgt nur das Endergebnis. Dies macht die Integration von oblu mit dem Associate-System denkbar einfach. "oblu" beherbergt auch ein Multi-IMU (MIMU) Array, das eine Sensorfusion ermöglicht und die Bewegungserkennungsleistung verbessert. Der MIMU-Ansatz trägt zur Einzigartigkeit von "oblu" bei.
Die internen Berechnungen von oblu basieren auf dem menschlichen Gehen. oblu gibt Verschiebung zwischen zwei aufeinanderfolgenden Schritten und Kurswechsel aus. Wie - Wenn der Fuß den Boden berührt, ist die Sohlengeschwindigkeit Null, d.h. die Sohle steht still. Auf diese Weise erkennt oblu 'Schritte' und korrigiert einige interne Fehler. Und diese häufige Fehlerkorrektur führt zu einer großartigen Tracking-Performance. Hier liegt also der Haken. Was wäre, wenn unser Roboter auch auf die gleiche Weise läuft - bewegen, stoppen, bewegen, stoppen … Tatsächlich könnte oblu für jedes Objekt verwendet werden, dessen Bewegung regelmäßige Null- und Nicht-Null-Momente hat. So sind wir mit oblu vorangekommen und konnten unseren Roboter und das Trackingsystem im Handumdrehen zusammenbauen.
Schritt 4: WAS IST DER NUTZEN VON "oblu"?
Wir verbringen fast 70 % unserer Zeit in Innenräumen. Daher gibt es viele Anwendungen, die eine Indoor-Navigation von Mensch und Maschine erfordern. Die am häufigsten verwendete Ortungslösung ist satellitengestütztes GPS/GNSS, das sich gut für die Navigation im Freien eignet. Es versagt in Innenräumen oder in städtischen Umgebungen, die dem klaren Himmel nicht zugänglich sind. Solche Anwendungen sind die Geovermessung von Slums oder Gebieten unter schweren Baumkronen, Indoor-Navigation von Robotern, Positionierung von Rettungskräften zur Brandbekämpfung, Bergbauunfälle, Stadtkrieg usw.
Der Vorgänger von oblu wurde als sehr kompakter Schuhsensor (bzw. kostengünstige Trägheitssensorlösung für die Indoor-Navigation von Menschen und Robotern. Bisher haben die Benutzer von oblu seine Anwendungen bei der Verfolgung von Fußgängern, Arbeitssicherheit und Ressourcenmanagement, taktischer Polizei, Geo-Vermessung von GPS-freien Bereichen, selbstnavigationsroboter, assistiver Robotik, Spielen, AR/VR, Behandlung von Bewegungsstörungen, Verständnis der Physik demonstriert Bewegungsfreiheit etc. oblu eignet sich für Anwendungen mit beengten Platzverhältnissen, z tragbare Bewegungserkennung. Dank integriertem Bluetooth kann es auch als drahtlose IMU verwendet werden. Das Vorhandensein einer integrierten Gleitkomma-Verarbeitungsfähigkeit zusammen mit vier IMUs-Arrays ermöglicht die Sensorfusion und Bewegungsverarbeitung innerhalb des Moduls selbst, was wiederum zu einer sehr genauen Bewegungserfassung führt.
Schritt 5: DIE GESCHICHTE DES PROJEKTS
Die Geschichte dieses Projekts ist im Video…
Schritt 6: SYSTEMBESCHREIBUNG
Der Roboter bewegt sich auf einer vorprogrammierten Bahn und überträgt (über Bluetooth) seine tatsächlichen Bewegungsinformationen an ein Telefon zur Echtzeitverfolgung.
Arduino ist mit Pfad vorprogrammiert und oblu wird zum Erfassen der Roboterbewegung verwendet. oblu überträgt in regelmäßigen Abständen Bewegungsinformationen an Arduino. Auf dieser Grundlage steuert Arduino die Bewegungen der Räder, damit der Roboter dem vordefinierten Pfad folgen kann.
Die Bahn des Roboters wird als Satz gerader Liniensegmente programmiert. Jedes Liniensegment wird durch seine Länge und Ausrichtung in Bezug auf das vorherige definiert. Die Bewegung des Roboters ist diskret, d.h. er bewegt sich geradlinig, aber in kleineren Segmenten (der Einfachheit halber „Schritte“nennen). Am Ende jedes Schrittes übermittelt oblu die Schrittlänge und das Ausmaß der Abweichung (Orientierungsänderung) von der geraden Linie an Arduino. Arduino korrigiert die Ausrichtung des Roboters bei jedem Schritt beim Empfang solcher Informationen, wenn es eine Abweichung von der vordefinierten geraden Linie findet. Laut Programm soll sich der Roboter immer in einer geraden Linie bewegen. Es kann jedoch von der geraden Linie abweichen und aufgrund von Nichtidealitäten wie unebener Oberfläche, Massenunwucht bei der Robotermontage, architektonischer oder elektrischer Unwucht bei Gleichstrommotoren oder der zufälligen Ausrichtung des vorderen Freilaufrads in einem bestimmten Winkel oder einer schrägen Bahn laufen. Machen Sie einen Schritt. Korrigieren Sie Ihren Kurs. Gehen Sie vorwärts. Der Roboter bewegt sich auch rückwärts, wenn er mehr als die programmierte Länge dieses bestimmten Liniensegments zurücklegt. Die nächste Schrittlänge hängt von der verbleibenden zurückzulegenden Strecke dieses bestimmten geraden Liniensegments ab. Der Roboter macht große Schritte, wenn die zurückzulegende Entfernung größer ist, und macht kleinere Schritte in der Nähe des Ziels (d. h. am Ende jedes geraden Liniensegments). oblu überträgt Daten gleichzeitig an Arduino und Telefon (über Bluetooth). Xoblu (die Android-App) führt eine einfache Berechnung durch, um den Weg basierend auf den vom Roboter empfangenen Bewegungsinformationen zu konstruieren, die für die Echtzeitverfolgung auf dem Telefon verwendet werden. (Der Wegbau mit Xoblu ist im zweiten Bild dargestellt).
Zusammenfassend lässt sich sagen, dass oblu Bewegungen wahrnimmt und in regelmäßigen Abständen Bewegungsinformationen an Arduino und Telefon übermittelt. Basierend auf dem programmierten Pfad und den Bewegungsinformationen (von oblu gesendet) steuert Arduino die Bewegungen der Räder. Die Bewegung des Roboters wird NICHT ferngesteuert, außer für Start/Stopp-Befehle.
Für Firmware von oblu besuchen Sie
Für den Aurduino-Code des Roboters besuchen Sie
Schritt 7: PFADMODELLIERUNG
Der Roboter lässt sich am besten steuern, wenn er nur in geraden Liniensegmenten läuft. Daher muss der Pfad zunächst als Satz gerader Liniensegmente modelliert werden. Die Bilder enthalten einige Beispielpfade und deren Darstellungen in Bezug auf Verschiebung und Orientierung. So wird der Pfad in Arduino programmiert.
Ebenso kann jeder Pfad, der aus geraden Liniensegmenten besteht, in Arduino definiert und programmiert werden.
Schritt 8: SCHALTKREISMONTAGE
Das Systemintegrationsdiagramm der obersten Ebene. Arduino und Oblu sind Teil der Hardware-Baugruppe. UART wird für die Kommunikation zwischen Arduino und oblu verwendet. (Bitte beachten Sie die Verbindung Rx/Tx-Verbindung.) Die Richtung des Datenflusses dient nur als Referenz. Die gesamte Hardware kommuniziert über Bluetooth mit dem Smartphone (Xoblu).
Schritt 9: SCHALTPLAN
Die detaillierten elektrischen Verbindungen zwischen Arduino, Oblu, Motortreiber und Akku.
Schritt 10: KOMMUNIKATIONSPROTOKOLL:
Nachfolgend sehen Sie, wie die Datenkommunikation zwischen dem am Roboter montierten oblu-Sensor und dem Smartphone, also Xoblu, stattfindet:
Schritt 1: Xoblu sendet START-Befehl an oblu Schritt 2: oblu bestätigt den empfangenen Befehl durch Senden einer entsprechenden ACK an Xoblu Schritt 3: oblu sendet ein DATA-Paket mit Verschiebungs- und Orientierungsinformationen für jeden Schritt bei jedem Schritt an Xoblu. (Schritt = immer wenn eine Nullbewegung oder ein Stillstand erkannt wird). Schritt 4: Xoblu bestätigt den Empfang des letzten DATA-Pakets, indem es eine entsprechende ACK an oblu sendet. (Der Zyklus der Schritte 3 und 4 wird wiederholt, bis Xoblu STOP sendet. Beim Empfang des STOP-Befehls führt oblu Schritt 5 aus) Schritt 5: STOP - (i) Stoppen Sie die Verarbeitung in oblu (ii) Stoppen Sie alle Ausgaben in oblu Bitte beachten Sie die Anwendungshinweise von oblu für Details zu START, ACK, DATA und STOP
Schritt 11: WIE FUNKTIONIERT "oblu" IMU (optional):
Hier einige Referenzen zur Übersicht von oblu und zum grundlegenden Funktionsprinzip eines fußmontierten PDR-Sensors:
Der verfügbare Quellcode von oblu ist auf die fußgestützte Navigation ausgerichtet. Und dafür ist es am besten optimiert. Das folgende Video behandelt das grundlegende Funktionsprinzip:
Hier sind ein paar einfache Artikel zu fußmontierten PDR-Sensoren:1. Verfolge meine Schritte
2. Verfolge meine Schritte weiter
In diesem Dokument finden Sie Details zur Fußgänger-Koppelnavigation mit Fußsensoren.
Schritt 12: Besuchen Sie "oblu.io" (optional)
Sehen Sie sich das Video zu den Anwendungsmöglichkeiten von "oblu" an:
---------------- Bitte teilen Sie Ihr Feedback, Ihre Vorschläge und hinterlassen Sie Kommentare. Beste Wünsche!
Schritt 13: KOMPONENTEN
1 oblu (eine Open-Source-IMU-Entwicklungsplattform)
1 Smart Motor Robot Autobatterie Box Chassis Kit DIY Drehzahlgeber für Arduino
1 lötfreies Steckbrett halber Größe
1 männliche/weibliche Überbrückungsdrähte
2 Kondensator 1000 µF
1 Texas Instruments Dual H-Brücken-Motortreiber L293D
1 Arduino Mega 2560 & Genuino Mega 2560
4 Amazon Web Services AA 2800 Ni-MH wiederaufladbar
Empfohlen:
Navigieren in der Software des Raspberry Pi: Teil 1: 14 Schritte
Navigieren in der Software des Raspberry Pi: Teil 1: In dieser Lektion erfahren Sie, wie Sie mit der Befehlszeilenschnittstelle auf Ihrem Raspberry Pi navigieren. Sie erstellen Ordner, wechseln von einem Verzeichnis zum nächsten und lernen, wie Sie einen Screenshot erstellen, um Ihre gesamte Arbeit während des Unterrichts festzuhalten! Brunnen
Navigieren Sie durch die Software des Raspberry Pi: Teil 2: 10 Schritte
Navigieren Sie durch die Software des Raspberry Pi: Teil 2: Diese Lektion ist eine Fortsetzung Ihrer Befehlszeilenausbildung. Während Sie mit dem Raspberry Pi arbeiten, installieren Sie zweifellos neue Software zum Lernen, Ausprobieren und Erstellen. In dieser Lektion erfahren Sie, wie Sie Softwarepakete installieren und
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Erfahren Sie, wie Sie mit PROCESSING eine Echtzeitschnittstelle in ARDUINO erstellen !!!!): 5 Schritte (mit Bildern)
SCARA-Roboter: Lernen über Vorwärts- und inverse Kinematik !!! (Plot Twist Learn How to Make a Real Time Interface in ARDUINO Using PROCESSING !!!!): Ein SCARA-Roboter ist eine sehr beliebte Maschine in der Industriewelt. Der Name steht sowohl für Selective Compliant Assembly Robot Arm als auch für Selective Compliant Articulated Robot Arm. Es ist im Grunde ein Roboter mit drei Freiheitsgraden, da er die ersten beiden Displ
[Arduino-Roboter] Wie erstelle ich einen Motion-Capture-Roboter - Daumen Roboter - Servomotor - Quellcode: 26 Schritte (mit Bildern)
[Arduino-Roboter] Wie erstelle ich einen Motion-Capture-Roboter | Daumen Roboter | Servomotor | Quellcode: Thumbs Robot. Verwendet ein Potentiometer des Servomotors MG90S. Es macht sehr viel Spaß und ist einfach! Der Code ist sehr einfach. Es sind nur etwa 30 Zeilen. Es sieht aus wie ein Motion-Capture.Bitte hinterlassen Sie Fragen oder Feedback![Anleitung] Quellcode https://github.c
So erhalten Sie Musik von fast jeder (Haha) Website (solange Sie sie hören können, können Sie sie bekommen Okay, wenn sie in Flash eingebettet ist, können Sie es möglicherweise nicht) BEARBEITET!!!!! Hinzugefügte Informationen: 4 Schritte
So erhalten Sie Musik von fast jeder (Haha) Website (solange Sie sie hören können, können Sie sie bekommen … Okay, wenn sie in Flash eingebettet ist, können Sie es möglicherweise nicht) BEARBEITET!!!!! Zusätzliche Informationen: Wenn Sie jemals auf eine Website gehen und ein Lied abspielen, das Sie mögen und es wollen, dann ist hier das anweisbare für Sie, nicht meine Schuld, wenn Sie etwas durcheinander bringen (nur so wird es passieren, wenn Sie ohne Grund anfangen, Dinge zu löschen) ) Ich konnte Musik für