Inhaltsverzeichnis:

Machen Sie Roboter-Stoßfänger (mit Code) - Gunook
Machen Sie Roboter-Stoßfänger (mit Code) - Gunook

Video: Machen Sie Roboter-Stoßfänger (mit Code) - Gunook

Video: Machen Sie Roboter-Stoßfänger (mit Code) - Gunook
Video: Ich fahre Dich überall hin! #davidbost #motorrad #gehtsteil #shorts 2024, November
Anonim
Machen Sie Roboter-Stoßfänger (mit Code)
Machen Sie Roboter-Stoßfänger (mit Code)

Dieses anweisbare führt die Leser durch die Erstellung und Codierung von Stoßfängern auf einem Boe-Bot, der in der Lage sein wird, durch ein Labyrinth zu navigieren und gleichzeitig Hindernisse zu erkennen. Die Codierung für das Projekt wurde mit der Programmiersoftware BASIC Stamp und dem Boe-Bot-Roboter durchgeführt. Um diese Stoßfänger erfolgreich zu erstellen, sind grundlegende Kenntnisse der Schaltung und Programmierung erforderlich.

Lieferungen

Um diese Bumper zu erstellen, benötigen Sie:

- Boe-Bot-Roboter

- BASIC Stamp Programmiersoftware

- Eis am Stiel-Sticks

- Ein Schwamm

- Aluminiumfolie

- Büroklammern

- 8 anständig lange Drähte (mindestens 6 Zoll)

- 2 LED-Leuchten

- 2 braun-schwarz-gelbe Widerstände

- 2 rot-rot-braune Widerstände

- Klebeband und Heißkleber (oder ein ähnlicher Kleber)

- Batterien für Ihren Boe-Bot

Schritt 1: Schritt 1: Erstellen der Schaltung

Schritt 1: Erstellen der Schaltung
Schritt 1: Erstellen der Schaltung
Schritt 1: Erstellen der Schaltung
Schritt 1: Erstellen der Schaltung

Folgen Sie dem obigen Steckbrettdiagramm, um eine Schaltung zum Ausrichten und Betreiben Ihres Steckbretts zu erstellen. Am Ende sollte Ihr Steckbrett ähnlich dem Bild auf der linken Seite aussehen.

Dinge, die Sie sich merken sollten:

- Stellen Sie sicher, dass sich die LED in der richtigen Position befindet. Dies bedeutet, dass der flache Schenkel der LED auf der negativen Seite und der andere Schenkel auf der positiven Seite liegen sollte.

- Der Vss dient als Masse auf diesem Steckbrett, was bedeutet, dass er einen Wert von Null hat und der Vdd einen Wert von 1.

- Ein laufender Stromkreis hat den Wert 0. Ein ausgeschalteter Stromkreis hat den Wert 1.

Schritt 2: Schritt 2: Programmierung für den Boe-bot

Der folgende Code programmiert den Roboter so, dass er sich um 90 Grad nach links und rechts dreht, je nachdem, welcher der Stoßfänger gedrückt wird (weitere Details zur Stoßfängererstellung im nächsten Schritt). Dieser Code stellt sicher, dass der Roboter beim Drücken der rechten Stoßfängerdrähte nach links abbiegt und beim Drücken der linken Stoßfängerdrähte nach rechts abbiegt.

Einige grundlegende Sprachübersetzungen:

- GOSUB = Unterprogramm (muss eine Aufforderung im Code folgen)

- If.. Else = gibt eine Codegruppe an, die ausgeführt werden soll, wenn die Bedingungen wahr sind, und führt Anweisungen aus, wenn die Bedingungen falsch sind

Der Code:

' {$STEMPEL BS2}

' {$PBASIC 2.5} '************************************************ ****************************** 'Reset Restart Code ' Verwenden Sie die Reset-Taste, um den Roboter zu stoppen und zu starten '** ************************************************* ********************** temp VAR Byte 'Zwischenspeichern RunStatus DATA $00 'Variable im ROM gespeichert READ RunStatus, temp 'Variable aus ROM lesen temp = ~ temp 'den Wert 0 auf 1 oder 1 auf 0 umkehren WRITE RunStatus, temp 'Schreibe die Variable zurück ins ROM IF (temp>0) THEN END 'Prüfe ob der Wert 1 ist ' wenn ja ENDE das Programm PAUSE 3000 'Pause to allow Sie bewegen ' Ihre Hand, wenn Sie Reset drücken '**************************************** ********************************* '************* ************************************************* ********** 'Pins UND Konstanten ' Wird verwendet, um die Programmierung zu vereinfachen '******************************** ******************************************** LMOTOR PIN 15 RMOTOR PIN 14 RFast CON 650 LFast CON 850 RSlow CON 700 LSlow CON 780 MStop CON 750 RFastRev CON 8 50 LFastRev CON 650 RSlowRev CON 800 LSlowRev CON 700 TurnLeft90 CON 90 TurnRight90 CON 90 '************************************ ************************************* '********* ************************************************* ************** 'Variablen ' Wird verwendet, um die Programmierung zu vereinfachen '**************************** ******************************************** MLoopC VAR Wort 'For.. Next Variable bis 65000ish sideCount VAR Byte turnAngle VAR Word '************************************ ************************************* '---------- -------------------------------------------------- ------------- 'Haupt code '--------------------------------- ----------------------------------------- DO IF IN10 = 0 THEN 'Wenn die Draht in Pin 10 ist eingeschaltet, dann biegen Sie links ab GOSUB LeftTurn90 GOSUB LFastRev GOSUB RFastRev ELSEIF IN11 = 0 THEN 'Wenn der Draht in Pin 11 eingeschaltet ist, biegen Sie rechts ab GOSUB RightTurn90 GOSUB LFastRev GOSUB RFastRev ENDIF GOSUB ForwardFast 'Move forward one pulse LOOP '-- --------------------------------- ------------------------------------- '**ENDE DES HAUPTCODES****** ************************************************ '- -------------------------------------------------- --------------------- '**************************** ****************************************** '**Unterprogramme / Unterverfahren / Methoden******************************** '************ ************************************************* ********** '**************************************** ********************************* '**************** ************************************************* ******** RightTurn90: ' Unterprozedur zum Abbiegen um 90 Grad nach rechts '************************************ ************************************* HOCH 1 NIEDRIG 0 FÜR MLoopC = 1 BIS 22 PULSOUT LMOTOR, Lfast 'einen Impuls vorwärts bewegen PULSOUT RMOTOR, RfastRev ' unter Verwendung von Pins und Konstanten PAUSE 20 ' 20mS ermöglicht dem Roboter, sich NEXT ' vor dem NEXT-Puls zu bewegen RETURN '******************** ************************************************* * LeftTurn90: 'Unterprozedur zum Abbiegen um 90 Grad nach rechts '** ************************************************* ****************** HIGH 0 LOW 1 FOR MLoopC = 1 TO 22 PULSOUT LMOTOR, LfastRev 'einen Impuls vorwärts bewegen PULSOUT RMOTOR, Rfast ' mit Pins und Konstanten PAUSE 20 ' 20 ms ermöglicht dem Roboter, sich NEXT ' vor dem NEXT-Impuls zu bewegen RETURN '**************************************** ******************************** ForwardFast: ' Unterprozedur, um den Roboter ein Feld schnell vorwärts zu bewegen '**** ************************************************* ***************** FOR MLoopC = 1 TO 55 PULSOUT LMOTOR, LFast PULSOUT RMOTOR, RFast PAUSE 20 NEXT RETURN '**************** ************************************************* ****** ReverseTurnLeft: 'Unterprozedur zum Rückwärtsfahren und Drehen des Roboters nach links, wenn der rechte Stoßfänger getroffen wird '**************************** ****************************************** FÜR MLoopC = 1 BIS 55 PULSOUT LMOTOR, LSlowRev PULSOUT RMOTOR, RFastRev PAUSE 20 NÄCHSTE RÜCKGABE '**************************************** ******************************** ReverseTurnRight: 'Unterprozess um rückwärts zu fahren und den Roboter nach rechts zu drehen, wenn die linke Stoßstange getroffen wird '************************************ ********************************** FÜR MLoopC = 1 BIS 55 PULSOUT LMOTOR, LFastRev PULSOUT RMOTOR, RSlowRev PAUSE 20 NÄCHSTE RÜCKKEHR '************************************************ ************************ 'ENDE DER SUBROUTINEN '******************** ************************************************* *

Schritt 3: Schritt 3: Verwenden von Aluminiumfolie und Eis am Stiel-Sticks für Drahtstoßstangen

Schritt 3: Verwenden von Aluminiumfolie und Eis am Stiel für Drahtstoßstangen
Schritt 3: Verwenden von Aluminiumfolie und Eis am Stiel für Drahtstoßstangen
Schritt 3: Verwenden von Aluminiumfolie und Eis am Stiel für Drahtstoßstangen
Schritt 3: Verwenden von Aluminiumfolie und Eis am Stiel für Drahtstoßstangen
Schritt 3: Verwenden von Aluminiumfolie und Eis am Stiel für Drahtstoßstangen
Schritt 3: Verwenden von Aluminiumfolie und Eis am Stiel für Drahtstoßstangen
Schritt 3: Verwenden von Aluminiumfolie und Eis am Stiel für Drahtstoßstangen
Schritt 3: Verwenden von Aluminiumfolie und Eis am Stiel für Drahtstoßstangen

Bevor Sie mit diesem Schritt beginnen, stellen Sie sicher, dass die 4 Drähte vom Steckbrett (siehe Schritt 1) in Paare aufgeteilt sind, wobei jedes Paar einen rechten oder linken Stoßfänger steuert. LEDs funktionieren in dieser Situation, um zu überprüfen, ob der Code am rechten und linken Stoßfänger wirksam war. Bei den Popsicle-Sticks teilt sich ein Draht von jedem Paar ein Ende des Popsicle-Sticks (dies bedeutet, dass Drähte desselben Paares NICHT an derselben Stoßstange sein können).

Schneiden Sie 4 kleine Rechtecke aus Folie und verwenden Sie eines, um den Draht um jedes Ende von zwei Popsicle-Sticks zu wickeln. Dies erhöht die Leitfähigkeitsfläche des Eis am Stiel und bietet eine größere Oberfläche zum Berühren der Stäbchen.

Verwenden Sie 1-2 Büroklammern, um die Materialien zusammenzuhalten, damit die Folie und die Drähte an den Popsicle-Sticks kleben. Die Büroklammern bieten auch eine bessere Zugänglichkeit für die Popsicle-Sticks, um sie ohne große externe Störungen zu berühren. Schieben Sie die Büroklammer über den Popsicle-Stick, wie Sie es mit einem normalen Stapel Papier tun würden. Wiederholen Sie dies für alle vier Folienstücke und jedes Ende der beiden Eis am Stiel.

Schritt 4: Schritt 4: Zusammenbau der restlichen Stoßfänger

Schritt 4: Zusammenbau der restlichen Stoßfänger
Schritt 4: Zusammenbau der restlichen Stoßfänger
Schritt 4: Zusammenbau der restlichen Stoßfänger
Schritt 4: Zusammenbau der restlichen Stoßfänger
Schritt 4: Zusammenbau der restlichen Stoßfänger
Schritt 4: Zusammenbau der restlichen Stoßfänger
Schritt 4: Zusammenbau der restlichen Stoßfänger
Schritt 4: Zusammenbau der restlichen Stoßfänger

Sobald die Aluminiumfolie und die Büroklammern die Drähte an jedem Eis am Stiel halten können, schneiden Sie zwei kleine Schwammwürfel und kleben Sie jeden Würfel zwischen die Stäbchen (an den äußersten Enden jedes Stäbchens, damit der Heißkleber nicht mit dem Leitfähigkeit des Metalls Die Schwämme sorgen dafür, dass sich die Stoßfänger jedes Mal berühren, wenn der Roboter gegen eine Wand stößt.

Optional: Schneiden Sie einen zusätzlichen Popsicle-Stick in zwei Hälften und kleben Sie ihn schräg an die Spitze des äußeren Popsicle-Stick-Stoßfängers. Dies verstärkt den Aufprall des Stoßfängers, der gegen eine Wand schlägt und sich dreht.

Denken Sie daran, die Drähte so zu biegen, dass sich die Stoßfänger direkt vor dem Bot-Bot krümmen.

Empfohlen: