Einführung:
Dies ist der 'DumbBot', ein vierrädriger Roboter mit Hinterrad-Differenzialantrieb, der für Anwendungen der künstlichen Intelligenz (KI) entwickelt wurde. Inspiriert von den Robotern aus derKI-Toolkit (AITK)Dieses Projekt zielt darauf ab, eine reale Version dieser Roboter zu implementieren, die Studenten nutzen können, um visuelle Sensorik-KI-Roboter zu erstellen. Dieses Projekt soll kostengünstig, einfach zu produzieren und für Informatik-Studenten im Bereich KI verfügbar sein, die nun einige formale Ingenieurserfahrung erhalten können.
Aufschlüsselung der physischen Komponenten:
Der physische Roboter besteht aus zwei Teilen, einem oberen und einem unteren Abschnitt. Der obere Abschnitt enthält die Elektronik, die Ultraschallsensordaten liest und an den Arduino UNO weiterleitet. Der Uno verfügt über einen Adafruit Motor Driver v2, der dann die Sensordaten verwenden kann, um die Differentialantriebe des Hinterrads zu betätigen. Der untere Abschnitt enthält die beiden bürstenlosen Gleichstrommotoren.
CAD-Dateien sind sowohl für den oberen als auch für den unteren Bereich verfügbar. Die Bereiche werden durch eine lasergeschnittene 3 mm dicke Acrylplatte in zwei Teile geteilt. Auf der 3 mm dicken Acrylplatte werden alle elektrischen Komponenten montiert.
Zusammenbruch elektronischer Komponenten:
Die Elektronik wird etwas komplizierter. Die Elektronik nutzt insgesamt 6 Eingänge, die Ultraschall-Sensoren sind.RCWL-1601) Gekauft bei Adafruit oder Mouser. Die beiden Ausgangskomponenten sind zwei bürstenlose Gleichstrommotoren, die von einemAdafruit Motor Shield v2.
Da hier ziemlich viele Spannungen erforderlich sind, wo der Motor-Sheild einen 5-12V-Eingang benötigt, sollte der Arduino Uno mit 5V laufen und die Ultraschall-Sensoren mit 5V. Also, um dieses Problem zu lösen, können wir einen einfachen Spannungskreis mit einem Eingang von einer 9V oder 2/3S LiPo-Batterie verwenden. Dieser Spannungskreis ermöglicht es uns, den 9V/2
Da dies etwas kompliziert ist, habe ich ein grundlegendes Schaltungsdiagramm gezeichnet:
Pin-Einstellung:
Das Pin-Setup variiert je nach den gewählten Boards. Ich blieb bei einem Uno R3, aber die Hauptanforderung ist, dass es mindestens sechs GPIO-Ports und die Fähigkeit zum Ansteuern von zwei DC-Motoren geben muss.
Concrete Evidence:
Also, jetzt, da wir einige grundlegende Theorie durchgegangen sind, schauen wir uns einige Implementierungen an. Mit den bereitgestellten CAD-Dateien sollten Sie in der Lage sein, einen Roboter zu erstellen, der ungefähr so aussieht:
Hier gibt es einige zusätzliche Hardware zur Schlüsselimplementierung. Lassen Sie uns die Räder inspizieren. Die Räder sind in zwei Hauptbereiche unterteilt. Die hinteren Räder sind direkt an die Gleichstrommotoren angeschlossen, um einen Differenzialantrieb zur Steuerung zu ermöglichen. Ich habe mich für einen Hinterradantrieb entschieden, aber es liegt an jedem Einzelnen, dies zu wählen. Die vorderen Räder sind über
Das obige beschreibt genau, wie die untere Komponente zusammengebaut wird, und es zeigt auch die beiden Gleichstrommotoren, die die Aktuatoren dieses Projekts sind. Nachdem wir den Aufbau des Bodenteils besprochen haben, können wir nun mit der Diskussion über die Elektronik beginnen. Sie können einen ersten Blick auf die Verkabelung des Bodenteils werfen, die zum Ansteuern der Motoren verwendet wird. Diese Drähte werden nach oben gezogen und
Die Elektronik ist schwer zu erklären, aber eine kommentierte Version wird unten gezeigt:
Um etwas über Abbildung 4 zu erklären, ist es im Grunde eine unordentlichere Version der Elektronik, die in Abbildung 1 gezeigt wird. Wichtige neue Komponenten sind die Motoranschlüsse, für die ich Inline-Drahtanschlüsse gewählt habe, weil es einfacher ist, die Basis von der Elektronik zu trennen. Die Ultraschallsensoren auf der rechten Seite sind ebenfalls angeschlossen. Der interessante Teil dieses AufbNeuer PingArduino-Bibliothek, die es ermöglicht, die Ultraschall-Sensoren mit nur einem einzigen digitalen Pin zu steuern. Das ist es, was es uns ermöglicht, so viele Ultraschall-Sensoren für dieses Projekt zu steuern.
Fähigkeiten:
Wir haben nun den allgemeinen Ansatz für die Hardware des Dumb Bot diskutiert. Der in diesem Dokument enthaltene Beispiel-Treibercode zeigt, wie man die Motoren liest und betätigt. Die Fähigkeiten hiervon basieren auf der Unterstützung von...Die Künstliche Intelligenz des Swarthmore CollegeLab 1 Kurs, der im Frühjahr 2024 unterrichtet wurde. Das Ziel des Labors war, ein Labyrinth-Problem im AITK mit einem Roboter zu lösen, der Ultraschall-Sensoren an der rechten Seite und an der Vorderseite des Roboters hat. Die Methode zur Lösung dieses Problems ist die Verwendung der Rechtshandregel, die vorschreibt, dass der einfachste Weg, ein Labyrinth zu lösen, darin besteht, sich
Der Dumb Bot imitiert das Potenzial dieses Roboters, bei dem der Roboter Daten von der Vorderseite, der linken und rechten Seite mit automatischen Ausrichtungsfunktionen sammeln kann. Die automatische Ausrichtungsfunktion wird im Beispielcode gezeigt, der einen proportionalen Controller implementiert, um den Roboter automatisch an einer Wand haften zu lassen.
Allerdings können wir angesichts dieser Funktionen jetzt komplexere Probleme lösen, wie z. B. Umwelterkundung und mobile Sensorik. Sie könnten bemerken, dass der Roboter unterdimensioniert ist, da er nur einen Uno R3 verwendet, aber er könnte aufgerüstet werden, um mit OpenMV-Kameras und einem Arduino Giga zu arbeiten, was ihm noch mehr Funktionen als nur die Entfernungserkennung durch Ultraschall-Sensoren verlei
Danke fürs Lesen, und ich ermutige jeden, diesen Roboter zu bauen. Es war ein lustiger Prozess und er hat eine Vielzahl von Fähigkeiten.
Etiquetas
Fuente del modelo
