Auf vielfachen Wunsch habe ich mich entschlossen, den Prozess der Erstellung eines solchen Roboters mit einer Kamera auf einem Raupenfahrwerk und einer Bluetooth-Steuerung mit einem Joystick zu beschreiben.
Ich habe schon immer davon geträumt, einen Roboter zu entwickeln, der von einem Computer gesteuert werden kann und seine Bewegungen in der Ich-Perspektive beobachten kann.
Ich habe den gesamten Prozess in drei Teile geteilt:
1. Montage des Roboters
2. Programmierung des integrierten Mikrocontrollers
3. Programmierung der PC-Steuerung
Ich glaube, dass dieses Thema für diejenigen am interessantesten sein wird, die einen solchen Roboter bauen möchten, aber in bestimmten Momenten nicht genug Wissen haben. (Für diejenigen, die sich mit Robotik, Elektronik und Programmierung auskennen, werde ich nichts Neues verraten). Deshalb werde ich so viel wie möglich ausführlich und einfach erzählen.
Generell kann man einen Roboter fertig kaufen, aber
- erstens ist es nicht so interessant - das Erstellen eines Roboters mit Ihren eigenen Händen ist ein großes Vergnügen
- Zweitens ist es beim Kauf eines fertigen Roboters oft ziemlich schwierig, wenn nicht gar unmöglich, ihn nach Ihren Interessen umzugestalten
- und schließlich kann es mit einem kompetenten Ansatz billiger sein, einen Roboter selbst zu bauen.
Wir werden die billigsten, aber vorgefertigten Knoten verwenden, da nicht jeder daran interessiert ist, von Grund auf neu zu bauen, es komplizierter ist und Gefahr läuft, sich mit einem monatelangen Prozess zu langweilen :).
Wenn Sie nicht nur einen Roboter zum Spielen bekommen, sondern ihn selbst bauen möchten, dann los!
Der Roboter trifft keine eigenen Entscheidungen, das heißt, er ist ein PC-gesteuertes Chassis, das Befehle ausführt und ein Videosignal sendet. Es ist jedoch nicht schwierig, ihn zu einem unabhängigen Roboter zu modifizieren – Sie müssen nur Sensoren hinzufügen und Logik hinzufügen Bordcomputer. Darauf ist die Plattform ausgelegt.
Wir brauchen:
Für Raupenfahrwerke
1. Tamiya Doppelmotorgetriebe (TAM70097)
2. Ketten und Rollen mit Achsen - Tamiya Ketten- und Radsatz (TAM70100)
3. Plattformen und Befestigungen - Tamiya Universal Plate Set (2) (TAM70157)
Davon ist nur Punkt 2 ein Defizit in Russland.
Den Rest können Sie bei Terraelectronics kaufen (70097 - 520r, 70157 - 385r)
Oder im offiziellen Tamiya Store. Wenn du es kaufst, dann nimm es Raupenfahrwerk(630r) und eine Schachtel (390r). Sie werden mit einer Box mit einem Motor in Reserve gelassen.
Tatsache ist, dass wir eine Box mit zwei Motoren brauchen, damit der Roboter nicht nur geradeaus fahren, sondern auch drehen und die Gleise separat steuern kann.
Da es in Moskau nicht möglich war, alles an einem Ort zu kaufen, und ich nicht herumlaufen und suchen wollte, bestellte ich das alles bei ebay bei dem einzigen Verkäufer, der zum normalen Preis nach Russland liefert. Das Kit kostet mit Lieferung etwa 37,5 $.
Sie finden diese Teile auch auf pololu.com. Es ist teurer und nicht immer verfügbar.
Anstelle einer Plattform mit Löchern ist es durchaus möglich, ein Stück Sperrholz und für Befestigungselemente zu verwenden Metallbauer, die in der Kinderwelt für etwa 200-400 Rubel verkauft wird (es gibt mehrere Sets).
Im Allgemeinen sind das Wichtigste die Ketten und Getriebemotoren.
Onboard-Elektronik
1. Arduino Duemillanove / Freeduino 2009 - das Gehirn unseres Roboters -
bei ebay ab 17,60€.
Ich habe es vor langer Zeit auf freeduino.ru für 950 Rubel genommen.
Der Atmega168 (billiger als der Atmega328P) reicht für einen Roboter aus, es sei denn, Sie schreiben eine sehr ausgefeilte Roboterlogik oder verwenden den Arduino wie ich für andere Experimente, für die 16 kB Flash-Speicher möglicherweise nicht ausreichen.
2. Leistungsmodul Motor Shield V2 oder V3 zur Motorsteuerung
Bei ebay ab 10,50€ alte Version und ohne Kämme, um die nächste Ebene von Schilden zu installieren.
auf Freeduino.ru von 600 Rubel in Form eines Designers bis 900 Rubel in zusammengebauter Form. Ich rate v3 - es ist flexibler.
3. Sensor Shield V4 ist ein praktisches Modul zum Anschluss von Sensoren und Servos. Wenn Sie keine Angst vor einem Haufen Kabel haben, brauchen Sie es nicht. Ich habe es für Experimente gekauft, also habe ich es der Einfachheit halber eingesteckt.
etwa 8 $ bei ebay
4. Intelligentes Bluetooth-Modul. Sie müssen eine Verbindung zu einem PC oder Laptop herstellen.
bei ebay ab 9,9€. Ich habe es vor langer Zeit genommen und es hat mich bis zu 23 Dollar gekostet
5. Bluetooth-Dongle – wenn Sie von einem PC aus steuern und es keine Bluetooth-Schnittstelle gibt, dann müssen Sie es kaufen.
Preis - 2,7 $
Insgesamt 40,7 US-Dollar, wenn Sie ohne Sensorschild, aber mit Bluetooth-Dongle für den PC auskommen.
Wir brauchen auch Strom für den Arduino und die Motoren. Sie können in diesem Fach gewöhnliche AA-Batterien verwenden, die Sie auf dem Markt oder in ChipIDip kaufen, wenn es sehr dringend ist.
« »
oder 9V Batterie Typ "Krona".
Ich bevorzuge kompakte und praktischere LiPoly-Akkus:
oder 2 LiIon 18650 Zellen in Reihe geschaltet.
Dieses Kit reicht aus, um einen Roboter mit grundlegenden Funktionen zu bauen, daher würde ich vorschlagen, an dieser Stelle eine Pause einzulegen, auszuwählen, wo und was Sie bestellen, Bestellungen aufzugeben oder einzukaufen, und sich während der Lieferung der Bestellung um das Video zu kümmern Teilsystem.
Wenn Sie hauptsächlich aus China bestellen, erhalten Sie alle Komponenten in etwa 2-3 Wochen und kosten 80-100 $, je nach gewähltem Verkäufer oder Ihrem Wunsch zu handeln und zu sparen, kann es billiger sein. Wenn Sie mehrere Artikel vom selben Verkäufer kaufen, fragen Sie nach Kombiversand, Sie können dabei sparen. Sogenannt " Versand kostenfrei» (kostenloser Versand) ist nur im Preis inbegriffen und ist gut, wenn Sie einen Artikel kaufen.
Zusammenbau des Fahrgestells
Tamiya 70100 Bausatz wird mitgeliefert detaillierte Anleitung. Schneiden Sie vorsichtig mit Drahtschneider oder einem Büromesser Gummiketten und die Rollen, getrennt von den Angüssen, werden zusammengebaut und mit M3x10 Schrauben an der Sperrholzplattform befestigt, oder wenn Sie ein Tamiya-Universalplattenset gekauft haben, dann mit kompletten Keilen, sie sind wiederverwendbar, also ist es in Ordnung, wenn Sie zuerst etwas in die stecken falscher Ort.
Dann montieren wir eine Kiste mit Motoren mit Getrieben TAM70097. Sie hat 2 Möglichkeiten Übersetzungsverhältnis. 58:1 fährt sehr, sehr schnell, aber die Motoren ziehen bei niedrigen Drehzahlen nicht und ächzen kläglich, und nachdem wir die Plattform beladen haben, lassen sie sich kaum noch drehen. Ich empfehle das Sammeln in der 201:1-Option, damit unser "Panzer" nicht aus dem Sichtfeld rennt und sich ruhiger bewegt. Es stimmt, das Geräusch von den wütend rotierenden Zahnrädern wird mehr sein. Wir setzen die Antriebszahnräder des Fahrgestells auf die Sechskantachsen der Kiste.
Um die Leistung zu überprüfen, reicht es aus, die Motoren mit Strom von 2 Batterien zu versorgen, indem Sie einfach die Motorkontakte mit den Drähten berühren. Jetzt müssen Sie ein Paar Drähte an die Motoren löten. 10-15 Zentimeter reichen aus.
Dann habe ich mit Hilfe von Teilen des Designers die zweite Plattform für die Montage der Elektronik befestigt. Im Prinzip ist es möglich, dies auf einer Etage zu tun, es ist nur dort nicht genug Platz und es ist nicht sehr bequem zu arbeiten, aber es ist durchaus möglich.
Wir befestigen den Arduino / Freeduino mit M3x10-Schrauben im zweiten Stock (es passt nicht ganz zu den Löchern und wird etwas diagonal). Setzen Sie das MotorShield im zweiten Stock ein. Wir führen die Drähte von den Motoren durch die Löcher in der Plattform und befestigen die Drähte an den Anschlüssen M3 und M4 - die äußersten Schrauben, die mittlere bleibt unbenutzt (es ist z Schrittmotoren). Die Polarität des Anschlusses der Motoren spielt noch keine Rolle, sie kann dann geändert oder programmgesteuert eingestellt werden, also keine Angst vor Verwechslungen.
Finden Sie vorerst nur heraus, wo Sie das Bluetooth-Modul anbringen oder mit einem Gummiband an der obersten Etage befestigen. Ich habe es nicht einmal ausgepackt - die Schaumstoffverpackung wird es tun mechanischer Schutz, und gleichzeitig können Sie die Kontakte nicht versehentlich schließen.
Sie erhalten so etwas wie dieses Sandwich:
« »
Öffnen Sie das Bild in voller Größe, um besser zu sehen, was und wie angeschlossen ist, falls Sie Schwierigkeiten bei der Montage und dem Anschluss haben. Befestigen Sie den Arduino mit einem USB-Anschluss am Rand der Plattform, damit Sie das Kabel später bequemer anschließen und programmieren können, ohne es vom Roboter zu entfernen.
Nur ein paar Stunden Arbeit, wenn es langsam erledigt wird.
Video-Subsystem
Um mit einem Ego-Bild zu fahren, benötigen wir eine Miniatur-Videokamera, einen Funksender (Sender) und einen Empfänger (Empfänger).
Es gibt eine Vielzahl von Optionen. Einschließlich des Erreichens des Marktes und des Kaufs einer chinesischen Funkkamera in einem Geschäft mit Spionagematerial oder Videoüberwachungsausrüstung. Es kostet höchstwahrscheinlich 2-4 Sput zusammen mit dem Empfänger.
Aber viel billiger aus China zu bestellen.
Ich empfehle 1,2 GHz, nicht 2,4 GHz, um Interferenzen mit dem Bluetooth-Modul und dem WLAN zu vermeiden, das bei 2,4 GHz arbeitet
Hier ist zum Beispiel ein Satz:
wird etwas mehr als 30 $ kosten. Gibt es auch günstiger, je nach enthaltener Kamera.
Bei ebay kann man genau die gleiche kaufen oder mit einer Kamera in einem Metallgehäuse wie auf dem Bild aus der Schachtel.
Die Bildqualität all dieser CMOS-Kameras ist sehr schlecht (380TVL und diese sind ziemlich seifig und haben einen geringen Dynamikbereich und starkes Rauschen bei schwachem Licht). Daher habe ich bei hobbyking.com eine Sony CCD-Kamera mit einer Auflösung von 420TVL und besserer Empfindlichkeit bestellt, die sogar ohne unter den Tisch zulässt zusätzliche Beleuchtung sehen, was los ist.
Sowie eine Halterung dafür mit Dreh- und Neigefunktion:
Wie die Beschriftung auf dem Bild schon sagt - Servos sind nicht im Bausatz enthalten, daher bestellen wir günstige 9g Servos. Wir benötigen 2 Stück, das 3. bleibt in Reserve, wenn wir kaputt gehen.
Meine Kamera will nicht mit 9 V arbeiten, also muss ich sie mit einer separaten 11,1-V-Batterie versorgen.
Der verwendete Empfänger und Sender aus dem oben gezeigten preiswerten Bausatz. (Der Sender versuchte es mit einem stärkeren - bei 800 mW, aber er erwärmt sich anständig, er ist sperrig mit einem Kühler und die Leistung ist so hoch, dass er Störungen bei den Servos der Kamera verursacht).
Sie können den Receiver an ein Fernsehgerät anschließen, ihn jedoch von einem Computer aus steuern, und das Fernsehen ist nicht sehr praktisch (es sei denn, Sie kaufen ein tragbares Gerät). Daher benötigen wir ein Videoaufnahmegerät.
Zum Glück lohnt es sich
Im ländlichen Leben ist der Traktor wichtige Einheit. Es wird besonders in der Landwirtschaft benötigt. Ohne ihn, wie ohne Hände. Getreidesäcke, geerntetes Heu, Kartoffelernte oder einfach nur Baustoffe All das muss irgendwie transportiert werden. Das manuelle Bewegen solcher Lasten ist sehr schwierig, und ein kleiner mechanischer Helfer kann es ganz einfach handhaben. Heutzutage kaufen viele ein solches Gerät für die Wirtschaftlichkeit teures Vergnügen. Es wird viel einfacher und billiger sein, einen so kleinen Traktor zu Hause mit eigenen Händen auf Raupen zu montieren. Außerdem sind die Details dafür möglicherweise schon lange im heimischen Hof vergessen und warten in den Startlöchern.
Rahmen
Die Hauptstruktur, auf die die gesamte Last fällt, jeder mechanischen Einheit ist der Rahmen. Wie Sie dem Video entnehmen können, entsteht eine solide Metallbasis für einen Minitraktor Raupe ist ein wichtiger Schritt. Es ist einfach, es selbst zu tun, wenn Sie die Berechnungen korrekt durchführen und die Lasten berücksichtigen.
Wie im Video gezeigt, wird eine Schweißmaschine benötigt, um den Rahmen herzustellen. Verstärkte Steifigkeit Die Grundstruktur des Kettengeräts bildet Holme aus strapazierfähigem Material. Normalerweise werden sie in 3 Schritten mit eigenen Händen hergestellt - die äußeren bestehen aus einem haltbaren Kanal und die inneren aus einem eisernen Vierkantrohr mit erhöhter Steifigkeit.
Zu beachten ist, dass die vordere Traverse kürzer ausgeführt werden muss als das hintere Gegenstück. Das Video zeigt, dass, wenn die vordere Traverse von einem Kanal bei Nummer 12 gemacht wird, dann der Rücken Rahmen müssen aus einem Kanal der Größe 16 hergestellt werden.Triebwerk
Zweite Meilenstein Bei der Entwicklung eines Heimassistenten auf einem Caterpillar-Chassis ist es die Wahl des Motors. Wie Sie dem Video entnehmen können, ist jeder Motor für den zu erstellenden Minitraktor geeignet, wenn er in Bezug auf Leistung und Drehmoment geeignet ist. Hier ideale Möglichkeit es wird eine Installation geben Dieselmotor 12 PS, mit vier Zylindern und Wasserkühlung.
Noch nicht schlechte Wahl in Entscheidung dieses Problem Es wird einen Motor aus dem Sadko-Motorblock geben. Um die Drehzahl in einem solchen Motor zu verringern, müssen Sie zusätzliche Riemenscheiben mit Ihren eigenen Händen installieren. Solche selbstgebauten Konstrukte reduzieren die Rotationsgeschwindigkeit Kurbelwelle Minitraktor um das 3,5-fache.
Brücke
Normalerweise bereitet die Installation der Brücke keine Schwierigkeiten. Dazu ist es nicht erforderlich, zusätzliche Änderungen an den Konstrukten im Rahmen der Einheit vorzunehmen. Hier ist eine Brücke aus einem beliebigen Modell eines heimischen Autos ideal.
Beispielsweise für einen Minitraktor können Sie sich bewerben Hinterachse von GAZ - 21 Wolga. Es muss nur noch eigenhändig auf eine Breite von 800 mm gekürzt und die Nieten an den Befestigungsstrümpfen entfernt werden, damit alle mechanischen Elemente Platz finden.
Raupe
Das selbstgebaute Chassis des Geräts ist ganz einfach zu Hause herzustellen. Dazu benötigen Sie einen Satz Räder, beispielsweise von einem Trolley und alter Reifen vom Rad großes Auto. Die Abmessungen dieser Elemente für das Fahrgestell eines Minitraktors müssen anhand der Abmessungen ausgewählt werden, erstellte Maschine. Hausgemachte Raupen sind einfach gemacht. Es ist notwendig, den vorbereiteten Reifen an den Seiten zu schneiden und auf die montierten Räder zu legen. Es ist wichtig, hier keinen Größenfehler zu machen.
Andere Mechanismen
Jeder Mechaniker versteht, dass die konstruierte Raupeneinheit ohne Kupplungsbaugruppe und Getriebe nicht in der Lage sein wird, sich unabhängig zu bewegen. Als letztes Element können Sie eine Schaltvorrichtung aus einem GAZ - 53-Lkw verwenden.Die Kupplung aus einem GAZ - 52-Pkw fügt sich strukturell ideal in das Design des zukünftigen Haushaltsassistenten ein.
Montageprozess
Arbeitsprinzip
Hausgemachte Aggregate summieren sich normalerweise in einem bestimmten Algorithmus. Es ist wichtig, dies zu befolgen, da einige Teile für andere Teile angepasst werden müssen. Ohne eine festgelegte Montagereihenfolge wird dies schwierig umzusetzen sein.
Zubehör für Minikanäle
Stern leer
Führende Kettenräder bereit
Rahmen mit Raupen, kompl
Ansicht von unten - Installation von Raupen
Seitenansicht
Vorderansicht
Der Bauablauf in der Praxis ist wie folgt:
- Zusammenbau der Rahmenelemente zu einer einzigen Struktur. Installieren von Antriebsrädern und Laufrollen darauf.
- Motor einbauen und mit dem Getriebe verbinden.
- Platzierung von Bremseinheiten und Differentialelement. Mechanische Verbindung der angegebenen Elemente mit einem Getriebe.
- Aufbau des Steuergerätes und Ausstattung des Fahrersitzes.
- Montage und Installation von Raupen sowie zusätzlichen Hilfselementen.
- Überprüfung des Betriebszustands der Einheiten und Systeme der Einheit. Ändern Sie sie gegebenenfalls.
- Einfahren des Traktors.
Wenn wir das Funktionsprinzip eines hausgemachten Mechanismus betrachten, können wir leicht feststellen, dass er sich kaum von seinen Analoga unterscheidet Serienfertigung. Mit einem Wort, alle Hauptfunktionen werden wie bei herkömmlichen Raupentraktoren ausgeführt. Es gibt nur einen Unterschied - ein vereinfachtes Bereitstellungssystem.
Das Funktionsprinzip eines hausgemachten Mechanismus ist wie folgt:
- Der Motor überträgt das Drehmoment auf das Getriebe.
- Das Drehmoment wird dem Differentialsystem zugeführt, wo es auf die Achswelle verteilt wird.
- Die Räder beginnen mit dem Motorprozess, der auf die Gleise übertragen wird. Der Traktor beginnt sich in die angegebene Richtung zu bewegen.
- Die Wendefunktion besteht darin, dass eine Achswelle gebremst wird und das gesamte Drehmoment auf die andere Achswelle fällt. Aufgrund des Bremsens beginnt sich eine Kette um ein anderes gebremstes Chassis zu bewegen. So dreht sich die Einheit.
- Bevor Sie mit der Montage der Raupeneinheit fortfahren, müssen Sie zunächst Zeichnungen der Haupt- und Zusatzeinheiten erstellen, die genaue Berechnungen enthalten.
- Bevor Sie mit der Arbeit beginnen, müssen Sie sich um die Verfügbarkeit des Schweißgeräts, einer elektrischen Bohrmaschine mit allen Anbauteilen und einer Schleifmaschine kümmern.
- Die Montage muss mit großer Sorgfalt erfolgen. Alle Schrauben und Muttern müssen mit zuverlässigem Feingefühl angezogen werden. Jede Schweißnaht muss sorgfältig gereinigt werden.
Denken Sie beim Zusammenbau daran, dass der erstellte Traktor zuverlässig und zuverlässig wird unentbehrlicher Helfer bei der Lösung vieler Haushaltsprobleme.
Roboter und Robotersysteme sind oft für den Einsatz in konzipiert extreme Bedingungen, wo es notwendig ist, menschliche Arbeit zu erleichtern oder zu sichern.Sehr häufig kommen mobile Roboter zum Einsatz Extremsituationen B. beim Löschen von Bränden, Lokalisieren radioaktiver Abfälle usw. und in der Regel Arbeiten in schwierigem Gelände.
Die Lösung solcher Probleme wird mobilen Raupenrobotern zugeschrieben viel Verkehr und Belastbarkeit. Wichtig unverwechselbare Qualität verfolgte mobile Roboter liegt in ihrer Manövrierfähigkeit. Mit einem unabhängigen Antrieb für jede der Spuren separat kann der mobile Roboter die Richtung seiner eigenen Bewegung leicht ändern.
Dadurch, dass die Geschwindigkeit jeder der Spuren separat geregelt wird, ist es ganz einfach, die Bewegung des mobilen Roboters zu steuern. Um eine beliebige Bewegungsrichtung einzustellen, müssen Sie ändern relative Geschwindigkeit fährt.
Die obige Tabelle zeigt das Verhältnis von Drehzahlen und Drehrichtungen der Raupenantriebe. Es ist wichtig, auf die Position des Antriebs zu achten, da je nach Ausrichtung im Raum des Antriebs die Drehrichtung seiner Abtriebswelle und dementsprechend die Bewegungsrichtung der Raupenketten abhängt. Damit sich der Roboter beispielsweise vorwärts bewegt, muss sein linker Antrieb „gegen den Uhrzeigersinn“ und der rechte „im Uhrzeigersinn“ drehen.
- Um geradeaus zu fahren, ist es erforderlich, dass sich der rechte und der linke Antrieb mit der gleichen Geschwindigkeit in Richtung „gerade“ drehen.
- Um nach links abzubiegen, muss die Geschwindigkeit des rechten Antriebs größer sein als die Geschwindigkeit des linken. Je größer der Geschwindigkeitsunterschied, desto kleiner der Wenderadius beim Fahren.
- Um nach rechts abzubiegen, muss die Geschwindigkeit des rechten Antriebs geringer sein als die Geschwindigkeit des linken. Je größer der Geschwindigkeitsunterschied, desto kleiner der Wenderadius beim Fahren.
- Um auf der Stelle links zu drehen, ist es erforderlich, dass der rechte Antrieb „vorwärts“ und der linke Antrieb „rückwärts“ mit gleicher Drehzahl dreht.
- Um auf der Stelle rechts zu drehen, ist es erforderlich, dass der linke Antrieb „geradeaus“ und der rechte Antrieb „rückwärts“ mit der gleichen Geschwindigkeit dreht.
- Um sich rückwärts zu bewegen, ist es erforderlich, dass der rechte und der linke Antrieb mit der gleichen Geschwindigkeit in die Richtung "rückwärts" drehen.
Neben einer hohen Manövrierfähigkeit haben Kettenfahrwerke Geländetauglichkeit. Aufgrund der guten Haftung von Raupenketten auf der Oberfläche, auf der die Bewegung ausgeführt wird, können Raupenroboter verschiedene Oberflächenunebenheiten und Hindernisse überwinden.
Je nach Einsatzzweck des Raupenroboters und dem Grad seiner Geländegängigkeit gibt es sie verschiedene Designs Raupenfahrwerk.
Traditionell verfolgt Verkehrsmittel haben einen speziellen Neigungswinkel vorne, um Hindernisse in Fahrtrichtung zu überfahren. Je höher die Geländegängigkeit eines Raupenroboters oder -fahrzeugs ist, desto größer ist in der Regel diese Steigung.
Manchmal werden Kettenfahrzeuge verwendet, um spezielle Aufgaben zu lösen, die aus Ketten bestehen, die relativ zueinander beweglich sind. Durch die Anpassung des Hubwinkels der vorderen Ketten können solche Roboter Hindernisse unterschiedlicher Komplexität überwinden.
In diesem Labor werden Möglichkeiten zur Steuerung eines mobilen Raupenfahrwerks untersucht. Das im Rahmen dieser Arbeit entwickelte Robotermodell hat für seine eigenen Gesamtabmessungen eine ausreichend große Geländegängigkeit.
Das Design des Roboterchassis besteht aus Raupenketten, die in einem ausreichend großen Winkel zur Bewegungsrichtung angeordnet sind, damit der Roboter Hindernisse überwinden kann, deren Höhe nicht geringer ist als die Höhe der Raupenketten.
Damit der Roboter beim Überwinden eines Hindernisses nicht hängen bleibt, ist sein Chassis mit einem IR-Sensor ausgestattet, der das Vorhandensein von Objekten auf seinem Weg erkennt. Erkennt der Sensor ein Objekt, entspricht die Höhe des Objekts der Höhe des Roboters und es besteht die Gefahr, dass der Roboter diese Strecke nicht überwinden kann. In diesem Fall muss der Roboter eine andere Aktion ausführen, z. B. ein Hindernis an der Seite umgehen usw.
Diese Lektion widmet sich dem Studium der Grundlagen der Bewegung von mobilen Raupenrobotern, dem Studium der Möglichkeiten, sie zu manövrieren und verschiedene Hindernisse zu überwinden.
Durchführung einfacher Manöver.
In diesem Teil Labor arbeit betrachtet geradlinige Bewegung Raupenroboter und der Prozess, Hindernisse auf seinem Weg zu finden.
Wenn ein Hindernis im Weg des Roboters gefunden wird, bedeutet dies, dass es Ausmaße hat, die der Roboter nicht überfahren kann. In diesem Fall muss das Steuerungssystem des Roboters Maßnahmen ergreifen, um Manöver durchzuführen, um eine Kollision zu vermeiden.
Gemäß dem vorgeschlagenen Algorithmus fährt der Raupenroboter geradeaus und überquert alle Hindernisse auf seinem Weg. Wenn ein Objekt auf dem Weg des Roboters gefunden wird, das nicht innerhalb von 3 Sekunden aus dem Weg des Roboters verschwindet, stoppt der Roboter und führt ein Manöver durch, um das Hindernis zu umgehen.
Zu Beginn des Programms werden Basisvariablen gesetzt, die den Schwellwert zum Objekt, die Drehgeschwindigkeit der Roboterantriebe und die Wartezeit vor dem detektierten Objekt (3 Sek.) bestimmen. Anhand dieser Werte werden die Manövriergeschwindigkeit der Roboter und der Abstand ermittelt, um den der Roboter das erfasste Objekt nicht erreicht.
Das Programm ist eine Endlosschleife, die die Messwerte des an PORT angeschlossenen Sensors analysiert. Die Variablen hindernis_threshold und bstacle_judging_time werden zum Setzen verwendet Maximalwerte Abstand zum Objekt und Zeitpunkt der Erkennung des Objekts. Wenn das Objekt außer Sicht ist, bewegt sich der Roboter unter der Kontrolle der Vorwärtsfunktion weiter.
Hat der Roboter auf seinem Weg ein Objekt gefunden, werden nacheinander die Funktionen Reverse, Stop, Pivot_left aufgerufen, mit deren Hilfe der Roboter ein vorgegebenes Manöver ausführt, um das Hindernis zu umgehen. Funktionen werden verschachtelt, indem ein Timer aufgerufen wird, der die Zeit begrenzt, in der jede Funktion ausgeführt wird.
Timer werden sehr häufig verwendet, um die Betriebszeit eines Geräts oder eines Fragments eines Steuerprogramms einzustellen. Betrachten wir den Betrieb des Timers am Beispiel der Initialisierungsfunktion, die ganz am Anfang des Programms aufgerufen wird.
Diese Funktion beginnt mit dem Abspielen der Melodie für die Zeit, die durch die Prepare_time-Variable angegeben ist. Diese Variable initialisiert einen Timer, der für die angegebene Zeit läuft.
Während der Timer herunterzählt, gibt es eine Verzögerung, während der die letzte Bedienung, wie z. B. das Abspielen einer Melodie, ausgeführt wird. Die Verzögerung wird über die Funktion timer_standby realisiert, die mit der WAIT WHILE-Anweisung auf das Ende des Countdowns wartet. Somit ist es möglich, jede für das Funktionieren des Programms erforderliche Zeitverzögerung zu erzeugen.
wichtig Unterscheidungsmerkmal dieses Programms ist der Unterschied zwischen der Montageverifizierungsfunktion und den in früheren Arbeiten betrachteten Funktionen. Bei dieser Arbeit wird vor dem Start des Hauptprogramms bestimmt, an welchem der Steuerports der IR-Sensor angeschlossen ist.
Dazu werden alle Ports automatisch abgefragt, und wenn Messwerte vom IR-Sensor auf einem davon gefunden werden, blinkt die LED so oft, wie es der Portnummer entspricht.
Wenn im Fall von PORT ein Signal vom IR-Sensor erkannt wird, wird die Funktion LED_port_num aufgerufen, die die System-LED zum Blinken bringt.
Wenn das Signal vom IR-Sensor an einem anderen Port des CM-530-Controllers erkannt wird, wird die LED_port_num-Funktion mit der LOOP FOR-Anweisung aufgerufen, die eine bestimmte Anzahl von Malen ausgeführt wird.
Überwindung von Hindernissen auf dem Weg.
Der im Rahmen dieser Arbeit entwickelte mobile Raupenroboter kann als ultraleichte Klasse solcher Roboter eingestuft werden. Solche Roboter werden normalerweise zur Aufklärung und Arbeit in unwegsamem Gelände zwischen Ruinen und Trümmern eingesetzt.
Solche mobilen Roboter bewegen sich recht schnell zwischen den Trümmern, überwinden Steigungen und Gefälle, kippen aber aufgrund ihrer geringen Masse oft um und überschlagen sich. Trotzdem müssen die Roboter die Aufgabe erledigen, sich also zumindest weiterbewegen.
Damit sich der Roboter nach dem Umdrehen weiter bewegt, ist sein Design absolut symmetrisch gestaltet.
Damit sich der Roboter in einem invertierten Zustand bewegt, ist es notwendig, die Drehrichtung seiner Antriebe zu ändern. Da sich solche Roboter autonom bewegen oder der Benutzer ihre Bewegung oft nicht beobachten kann, sollte die Drehrichtungsänderung automatisch in Abhängigkeit von der räumlichen Ausrichtung des Roboters erfolgen.
Um die Position des Roboters zu bestimmen, ist ein IR-Sensor installiert, der auf den Boden gerichtet ist. Dementsprechend funktioniert es in einer der Positionen des Roboters, aber nicht in der umgekehrten und umgekehrt, je nach Installationsmethode des Sensors.
Das Steuerprogramm des Roboters ist identisch mit dem im vorherigen Teil besprochenen, mit Ausnahme des Teils, der die Bestimmung der Position des Roboters betrifft.
Das Roboterprogramm besteht aus zwei symmetrischen Zweigen, die jeweils abhängig von der Position des Roboters ausgeführt werden. Im Gegensatz zum Programm im vorherigen Teil berücksichtigt dieses eine einzige zusätzliche Bedingung.
Der Übergang von einem Programmzweig zum anderen erfolgt über einen an PORT angeschlossenen IR-Sensor, der die Orientierung des Roboters im Raum bestimmt.
Außerdem haben die Vorwärts- und Rückwärtsfunktionen im Gegensatz zum Programm aus Teil 1 Analoga von slow_forward und slow_reverse, die die langsame Bewegung des Roboters während der Manöver sicherstellen.
Diese Funktionen arbeiten mit den am Anfang des Programms beschriebenen Werten l_wheel_low_speed und r_wheel_low_speed.
Fazit.
Um das Material aus dieser Lektion zu konsolidieren, wird vorgeschlagen, mehrere experimentelle Tests durchzuführen.
Simulieren Sie eine Situation, in der der Roboter eine Last außerhalb der schwarzen Linie transportiert. Rüsten Sie dazu das Raupenfahrwerk mit zwei IR-Sensoren aus: vorne zum Erkennen von Objekten und unten zum Erkennen der schwarzen Linie.
Erkunden Sie die Cross-Country-Fähigkeit von Raupenrobotern auf unwegsamem Gelände und simulieren Sie Löcher oder Schluchten im Weg des Roboters. Weisen Sie den Roboter an, ein intermittierendes Hindernis zu überwinden, und bewerten Sie selbst, wie die Breite des zu überwindenden Hindernisses von den Abmessungen des Roboters abhängt.
Denken Sie daran, dass nichts die Vorstellungskraft der Entwickler bei der Lösung der Aufgaben einschränkt. Und wenn die Geländegängigkeit Ihres Roboters nicht ausreicht, um ein Hindernis auf seinem Weg zu überwinden, ist dies kein Grund zur Verzweiflung, sondern gute Chance Denken Sie nach und verbessern Sie das Design.
Eine Plattform, die eine Reihe von Anforderungen erfüllt: Bewegungsfreiheit, Installationsfähigkeit zusätzliche Ausrüstung und Empowerment sowie moderate Kosten. Das ist so eine Roboterplattform oder einfach ein Raupenfahrwerk, und ich werde es tun. Natürlich poste ich die Anleitung für Sie zu beurteilen.
Wir brauchen:
Tamiya 70168 Doppelzahnrad (kann auf 70097 geändert werden)
- Tamiya 70100 Satz Rollen und Schienen
- Tamiya 70157 Plattform zur Montage des Getriebes (kann durch ein Stück Sperrholz 4 mm ersetzt werden)
- Kleine Stücke aus verzinktem Blech
- Sperrholz 10 mm (kleines Stück)
- Arduino-Nano
-DRV8833
- LM 317 (Spannungsstabilisator)
- 2 LEDs (rot und grün)
- Widerstände 240 Ohm, 2x 150 Ohm, 1,1 kOhm
- Kondensator 10v 1000uF
- 2 einreihige Kämme PLS-40
- 2 PBS-20-Anschlüsse
- Induktor 68uH
- 6 NI-Mn-Batterien 1,2 V 1000 mA
- Stecker-Buchse zwei Pin pro Draht
- Drähte in verschiedenen Farben
- Löten
- Kolophonium
- Lötkolben
- Schrauben 3x40, 3x20, Muttern und Unterlegscheiben dafür
- Schrauben 5x20, Muttern und verstärkte Muttern für sie
- Bohren
- Bohrer für Metall 3 mm und 6 mm
Schritt 1 Schneiden Sie das Metall.
Zunächst müssen wir vier Teile aus Blech (vorzugsweise verzinkt) ausschneiden. Zwei Stücke pro Spur. Aus diesem Scan haben wir zwei Teile ausgeschnitten:
Die Punkte zeigen die Stellen an, an denen Löcher gebohrt werden müssen, daneben steht der Durchmesser des Lochs. Zum Aufhängen mit einer Rolle werden Löcher von 3 mm benötigt, zum Durchfädeln von Drähten 6 mm. Nach dem Schneiden und Bohren müssen Sie mit einer Feile durch alle Kanten gehen, ohne scharfe Ecken zu hinterlassen. Biegen Sie entlang der gepunkteten Linien um 90 Grad. Seien Sie vorsichtig! Wir biegen den ersten Teil in eine beliebige Richtung und den zweiten nach innen Rückseite. Sie sollten symmetrisch gebogen sein. Es gibt noch eine Nuance: Es ist notwendig, Löcher für die Schrauben zu bohren, mit denen unsere Platten an der Basis befestigt sind. Dies sollte erfolgen, wenn die Basis fertig ist. Wir legen das Werkstück auf die Unterlage und markieren die Bohrstellen so, dass die selbstschneidenden Schrauben in die Mitte der Spanplatte fallen. Wir machen zwei weitere Details zum zweiten Sweep:
Schritt 2 Bereiten Sie die Basis vor.
Wir bauen das Getriebe nach beiliegender Anleitung zusammen. Wir befestigen es an der Plattform. Wenn keine Plattform vorhanden ist, schneiden wir ein 53 x 80 mm großes Rechteck aus 4 mm Sperrholz aus und befestigen das Getriebe daran. Wir nehmen Sperrholz 10 mm. Schneiden Sie zwei Rechtecke 90 x 53 mm und 40 x 53 mm aus. Schneiden Sie innerhalb des kleinen Rechtecks ein weiteres Rechteck aus, sodass wir einen Rahmen mit einer Wandstärke von 8 mm erhalten.
Wir drehen alles wie auf dem Foto gezeigt:
Bohren Sie in den Ecken der Plattform Löcher von 6 mm und stecken Sie unsere 5x20-Bolzen hinein und schrauben Sie verstärkte Muttern darauf. Sie werden für die nachträgliche Befestigung verschiedener Mechanismen oder Platinen benötigt. Der Einfachheit halber kleben wir die LEDs sofort:
Schritt 3 Elektriker.
Zur Steuerung verwenden wir Arduino Nano. Motortreiber DVR 883. Auf der Platine montieren wir alles nach Schema.
L1 ist eine Induktivität und C1 wird benötigt, um die Arduino-Spannung zu stabilisieren. Die Widerstände R1 und R2 vor den Motoren sind strombegrenzend, ihr Wert muss motorspezifisch gewählt werden. Ich arbeite gut an 3 Ohm. LM317 wird benötigt, um die Batterien aufzuladen. Am Eingang kann eine Spannung von 9,5 V bis 25 V angelegt werden R3 - 1,1 kOhm R4 - 240 Ohm. Die "Pins" auf der linken Seite dienen zum nachträglichen Anschluss verschiedener Geräte (Bluetooth, 433-MHz-Kommunikationsmodul, IR, Servo usw.). Für die Stromversorgung verwenden wir 6 Ni-Mn 1,2 V 1000 mA Batterien, die in Reihe gelötet und mit Isolierband umwickelt sind.
Schritt 4 Montieren Sie die Basis.
Wir nehmen unsere Basis, kleben die Platte mit doppelseitigem Klebeband darauf. Nach dem ersten Scan müssen die Metallteile an den Seiten mit den gebogenen Teilen nach außen auf kleine selbstschneidende Schrauben an die Basis geschraubt werden. Achten Sie darauf, es so zu schrauben, dass das äußerste 6-mm-Loch auf die Ausgangsachse des Getriebes gelegt wird, die Unterseite des Teils muss parallel zur Basis und symmetrisch in Bezug auf das zweite des gleichen Teils sein. Als Ergebnis sollten Sie Folgendes erhalten:
Um unserem hausgemachten ästhetischen Aussehen zu verleihen, werden wir ein paar Details hinzufügen. Es ist nicht obligatorisch. Wir schneiden ein Rechteck 110 x 55 mm aus weißem Kunststoff aus und biegen es wie auf dem Foto gezeigt. Der Schwanz ist auch optional, aber ich mochte die Art, wie er aussieht und beim Bewegen cool wackelt:
Diese Abdeckung deckt das Getriebe ab, damit kein Schmutz hineingelangt und es weniger Lärm macht. Als nächstes schneiden wir ebenfalls ein 52x41 mm großes Rechteck aus weißem Kunststoff aus. Wir machen Löcher zum Anschließen des Arduino und des Abschaltknopfs wie auf dem Foto:
Wir kleben alles auf doppelseitiges Klebeband:
Schönheitsaufkleber.
Diese beiden Teile können aus fast jedem zur Verfügung stehenden Material hergestellt werden. Es kann dicke Pappe (die dann lackiert werden kann), Faserplatten, dünnes Sperrholz oder eine Plastikfolie in jeder Farbe sein. Batterien nicht vergessen. Kleben Sie sie auf doppelseitiges Klebeband auf das rechte Metallteil der Basis:
Schritt 5 Raupen.
Hier brauchen wir unsere Rohlinge für den zweiten Sweep. Wir setzen Schrauben mit einem halbzylindrischen Kopf 3x20 in 3 mm Löcher ein. Wir setzen die Unterlegscheiben auf und ziehen die Muttern fest:
Vor den Rollen müssen Unterlegscheiben aufgelegt werden. Ich war nicht zu faul und bestellte Unterlegscheiben aus Kunststoff. Es können auch normale aus Metall verwendet werden, aber dann werden unsere Raupen sehr laut. Nach den Rollen wickeln wir die Muttern auf, ohne sie festzuziehen, aber so, dass sich die Rollen frei drehen.
Wir werfen Gummiketten auf die Walzen. Wir setzen die Platte zusammen mit den Rollen auf die Basis und achten darauf, dass die Bolzen in die Löcher fallen. Und ziehen Sie die Muttern fest. Wir bekommen ein fast fertiges Raupenfahrwerk:
Schritt 6-Firmware.
Meiner Meinung nach ist es am bequemsten, Firmware in der Arduino IDE zu schreiben. Das von uns zusammengestellte Chassis ist universell und die Firmware wird je nach Einsatzzweck benötigt. Sie können das Bluetooth-Modul anschließen und Ihr Telefon oder Ihren Computer zur Steuerung verwenden. Es ist auch möglich, einen IR-Sensor anzuschließen und die IR-Fernbedienung zu verwenden. Eine weitere Steuerungsmöglichkeit ist die Verwendung eines 433-MHz-Moduls zur Kommunikation mit der Fernbedienung. Basierend auf dem Chassis ist es möglich, einen Roboter der Linie folgen zu lassen oder einen anderen autonomen. Ich poste Firmware für Bluetooth, 433 MHz und IR.
Als ich vor zwei Jahren zum ersten Mal mit Multikoptern begann, musste ich eine kleine . Da der Quadrokopter rein autonom konzipiert war, musste diese Fernbedienung lediglich die Drohne beim Testen und Tunen steuern.
Grundsätzlich hat die Fernbedienung alle ihr übertragenen Aufgaben recht erfolgreich bewältigt. . Aber es gab auch gravierende Mängel.
- Batterien passten nicht in das Gehäuse, also musste ich sie mit Isolierband an das Gehäuse kleben :)
- Die Parametrierung erfolgte an vier Potentiometern, die sich als sehr temperaturempfindlich herausstellten. In dem Raum stellst du einige Werte auf, du gehst raus auf die Straße – und schon sind sie anders, davongesegelt.
- Der Arduino Nano, den ich in der Fernbedienung verwendet habe, hat insgesamt 8 analoge Eingänge. Vier waren mit Tuning-Potentiometern belegt. Ein Potentiometer diente als Gas. Zwei Eingänge wurden mit einem Joystick verbunden. Nur ein Ausgang blieb frei, und es gibt viel mehr Parameter zu konfigurieren.
- Der einzige Joystick war überhaupt kein Pilot. Auch die Steuerung des Gases mit einem Potentiometer war ziemlich deprimierend.
- Und die Fernbedienung gab keine Geräusche von sich, was manchmal äußerst nützlich ist.
Um all diese Mängel zu beseitigen, beschloss ich, die Fernbedienung radikal zu überarbeiten. Sowohl Hard- als auch Software. Folgendes wollte ich tun:
- Machen Sie einen großen Koffer, in den Sie jetzt alles, was Sie wollen (einschließlich Batterien) und später alles hineinstopfen können.
- Irgendwie lösen Sie das Problem mit den Einstellungen, nicht durch Erhöhen der Anzahl der Potentiometer. Fügen Sie außerdem die Möglichkeit hinzu, Parameter in der Konsole zu speichern.
- Machen Sie zwei Joysticks, wie auf normalen Pilotenkonsolen. Nun, setzen Sie die Joysticks selbst orthodox.
Neues Gebäude
Die Idee ist denkbar einfach und effektiv. Wir schneiden zwei Platten aus Plexiglas oder einem anderen dünnen Material aus und verbinden sie mit Gestellen. Der gesamte Inhalt des Koffers ist entweder an der oberen oder unteren Platte befestigt.
Bedienelemente und Menüs
Um eine Reihe von Parametern zu steuern, müssen Sie entweder eine Reihe von Potentiometern auf der Fernbedienung platzieren und einen ADC hinzufügen oder alle Einstellungen über das Menü vornehmen. Wie gesagt, Einstellung mit Potentiometern geht nicht immer gute Idee aber darauf sollte man auch nicht verzichten. Daher wurde beschlossen, vier Potentiometer in der Fernbedienung zu belassen und ein vollwertiges Menü hinzuzufügen.
Tasten werden normalerweise verwendet, um durch das Menü zu navigieren und Parameter zu ändern. Links rechts rauf runter. Aber ich wollte einen Encoder anstelle von Knöpfen verwenden. Ich habe diese Idee von einem 3D-Drucker-Controller.
Durch das Hinzufügen des Menüs ist der Fernbedienungscode natürlich um ein Vielfaches angeschwollen. Zu Beginn habe ich nur drei Menüpunkte hinzugefügt: "Telemetry", "Parameters" und "Store params". Das erste Fenster zeigt bis zu acht verschiedene Indikatoren an. Bisher verwende ich nur drei: Batterieleistung, Kompass und Höhe.
Im zweiten Fenster stehen sechs Parameter zur Verfügung: Koeffizienten des PID-Reglers für X/Y- und Z-Achsen und Beschleunigungsmesser-Korrekturwinkel.
Der dritte Punkt ermöglicht das Speichern von Parametern im EEPROM.
Joysticks
Über die Wahl der Piloten-Joysticks habe ich lange nicht nachgedacht. Zufällig bekam ich den ersten Turnigy 9XR-Joystick von einem Kollegen im Quadcopter-Geschäft - Alexander Vasilyev, dem Besitzer der berüchtigten Website alex-exe.ru. Das zweite habe ich direkt bei Hobbyking bestellt.
Der erste Joystick war in beiden Koordinaten federbelastet - um Gieren und Nicken zu steuern. Das zweite habe ich gleich genommen, um es dann in einen Joystick umzuwandeln, um Schub und Rotation zu steuern.
Essen
In der alten Fernbedienung habe ich einen einfachen Spannungsregler LM7805 verwendet, der mit einem Bündel von 8 AA-Batterien gespeist wurde. Eine schrecklich ineffiziente Option, bei der 7 Volt zum Erhitzen des Reglers verwendet wurden. 8 Batterien - weil nur ein solches Fach zur Hand war, und LM7805 - weil mir diese Option damals am einfachsten und vor allem am schnellsten erschien.
Jetzt habe ich beschlossen, klüger zu sein und einen ziemlich effizienten Regler auf den LM2596S zu setzen. Und statt 8 AA-Batterien habe ich ein Fach für zwei LiIon 18650-Akkus eingebaut.
Ergebnis
Alles in allem haben wir so ein Gerät bekommen. Innenansicht.
Hier mit geschlossenem Deckel.
Es gibt nicht genug Kappen auf einem Potentiometer und Kappen auf Joysticks.
Zum Schluss noch ein Video, wie die Einstellungen über das Menü konfiguriert werden.
Ergebnis
Physisch ist die Fernbedienung zusammengebaut. Jetzt bin ich damit beschäftigt, den Code der Fernsteuerung und des Quadrocopters zu finalisieren, um ihre ehemals starke Freundschaft wiederherzustellen.
Im Zuge der Einrichtung der Fernbedienung wurden Mängel festgestellt. Erstens, unteren Ecken die Fernbedienung ruht auf meinen Händen: (Wahrscheinlich werde ich die Platten noch etwas umgestalten, die Ecken glätten. Zweitens reicht auch ein 16x4-Display nicht für eine schöne Telemetrieausgabe - ich muss die Namen der Parameter auf zwei Buchstaben reduzieren In der nächsten Version des Gerätes werde ich ein Dot-Display einbauen, oder gleich eine TFT-Matrix.