Tartalomjegyzék:

Robot lökhárítók készítése (kóddal): 4 lépés
Robot lökhárítók készítése (kóddal): 4 lépés

Videó: Robot lökhárítók készítése (kóddal): 4 lépés

Videó: Robot lökhárítók készítése (kóddal): 4 lépés
Videó: Kuchyňský robot Lauben Kitchen Machine 1200BC 2024, Július
Anonim
Robot lökhárítók készítése (kóddal)
Robot lökhárítók készítése (kóddal)

Ez az oktatóanyag végigvezeti az olvasókat azon, hogyan lehet lökhárítót létrehozni és kódolni egy Boe-boton, amely képes lesz navigálni a labirintusban, miközben észleli az akadályokat. A projekt kódolása a BASIC Stamp programozó szoftver és a Boe-Bot robot segítségével történt, és az áramkörök és a programozás alapvető ismerete szükséges a lökhárítók létrehozásához.

Kellékek

Ezen lökhárítók létrehozásához szüksége lesz:

- Boe-Bot robot

- BASIC Stamp programozó szoftver

- Popsicle botok

- Egy szivacs

- Alufólia

- Gémkapocs

- 8 tisztességesen hosszú vezeték (legalább 6 hüvelyk)

- 2 LED lámpa

-2 barna-fekete-sárga ellenállás

-2 piros-vörös-barna ellenállás

- Szalag és forró ragasztó (vagy hasonló ragasztó)

- Akkumulátorok a Boe-Bot számára

1. lépés: 1. lépés: Az áramkör létrehozása

1. lépés: Az áramkör létrehozása
1. lépés: Az áramkör létrehozása
1. lépés: Az áramkör létrehozása
1. lépés: Az áramkör létrehozása

Kövesse a fenti kenyértábla -diagramot, és hozzon létre egy áramkört a kenyértábla orientálásához és működtetéséhez. A végén a kenyértáblának hasonlónak kell lennie a bal oldali képhez.

Dolgok, amikre emlékezni kell:

- Győződjön meg arról, hogy a LED a megfelelő helyzetben van. Ez azt jelenti, hogy a LED lapos lábának a negatív oldalon, a másik lábának pedig a pozitív oldalon kell lennie.

- A Vss ezen a kenyértáblán szolgál talajként, ami azt jelenti, hogy értéke nulla, a Vdd pedig 1.

- Egy futó áramkör értéke 0. A kikapcsolt áramkör értéke 1.

2. lépés: 2. lépés: Programozás a Boe-bot számára

A következő kód programozza a robotot, hogy 90 fokkal balra és jobbra forduljon, attól függően, hogy melyik ütközőt nyomja meg (további részletek a lökhárító létrehozásáról a következő lépésben). Ez a kód gondoskodik arról, hogy a robot balra forduljon, amikor megnyomja a jobb oldali lökhárító huzalokat, és jobbra, ha megnyomja a bal oldali lökhárító vezetékét.

Néhány alapvető nyelvfordítás:

- GOSUB = szubrutin (követni kell a kódot)

- Ha.. Else = megadja a végrehajtandó kódcsoportot, ha a feltételek igazak, és utasításokat hajt végre, ha a feltételek hamisak

A kód:

'{$ STAMP BS2}

'{$ PBASIC 2.5}' ******************************************* ******************************** 'Újraindítási kód visszaállítása' A robot leállításához és elindításához használja a visszaállító gombot '** ************************************************** *********************** temp VAR bájt 'ideiglenes tároló RunStatus DATA $ 00' változó a ROM -ban olvasva READ RunStatus, temp 'Olvassa el a változót a ROM temp = ~ temp 'fordítsa az értéket 0 -ról 1 -re vagy 1 -ről 0 -ra WRITE RunStatus, temp' Írja vissza a változót a ROM -ra IF (temp> 0) THEN END 'Ellenőrizze, hogy az érték 1', ha igen VÉGE a PAUSE 3000 programnak mozgassa a „kezét, amikor megnyomja a reset gombot” *************************************** ************************************ '************* ************************************************** *********** 'Pins AND Constants' A programozás egyszerűsítésére szolgál ***************************** ******************************************** 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 '******************************** *************************************** '********* ************************************************** ************** 'Változók' A programozás egyszerűsítésére szolgál '**************************** ******************************************** MLoopC VAR Word '.. Következő változó 65000 oldalig ************************************* '' ----------- -------------------------------------------------- ------------- 'Fő kód' --------------------------------- ----------------------------------------- TEGY, HA IN10 = 0 AKKOR 'Ha a a 10-es érintkező be van kapcsolva, majd balra kell fordulni GOSUB Balra Forgatás 90 GOSUB LFastRev GOSUB RFastRev ELSEIF IN11 = 0 THEN 'Ha a 11-es érintkezőben lévő vezeték be van kapcsolva, akkor forduljon jobbra GOSUB RightTurn90 GOSUB LFastRev GOSUB RFastRev ENDIF GOSUB ForwardFast' Lépjen előre egy impulzussal LOOP ' --------------------------------- ------------------------------------ '' ** A FŐ KÓD VÉGE ****** *********************************************** '- -------------------------------------------------- --------------------- '**************************** ******************************************* '** Alrutinok / Al-eljárás / Módszerek ******************************* '' *********** ************************************************** *********** '************************************** ********************************* '*************** ************************************************** ******* RightTurn90: 'Alfolyamat 90 fokos jobbra fordulásra' ********************************* ************************************** HIGH 1 LOW 0 MLoopC = 1 - 22 PULSOUT LMOTOR, Lfast 'lépjen előre egy impulzussal PULSOUT RMOTOR, RfastRev' a PUSE 20 '20mS gombokkal és állandókkal 20 "20mS lehetővé teszi, hogy a robot NEXT" mozogjon a következő impulzus RETURN "előtt ******************** ************************************************** * LeftTurn90: „Alfolyamat 90 fokos jobbra forduláshoz” ** ************************************************** ******************* HIGH 0 LOW 1 FOR MLoopC = 1 to 22 PULSOUT LMOTOR, LfastRev 'előre mozog egy impulzust PULSOUT RMOTOR, Rfast' csapok és konstansok használatával PAUSE 20 ' A 20mS lehetővé teszi, hogy a robot NEXT mozogjon a következő impulzus RETURN előtt ************************************ ********************************* ForwardFast: 'Alfolyamat a robot egy négyzetes gyors előremozgatására' **** ************************************************** ***************** MLoopC = 1-55 PULSOUT LMOTOR, LFast PULSOUT RMOTOR, RFast PAUSE 20 MEXET RETURN '************** ************************************************** ****** ReverseTurnLeft: 'Alfolyamat a robot megfordítására és balra fordítására, amikor a jobb lökhárítót eltalálják' *************************** ******************************************* MLoopC = 1-55 PULSOUT LMOTOR, LSlowRev PULSOUT RMOTOR, RFastRev PAUSE 20 MEXET RETURN '************************************** ********************************* ReverseTurnRight: 'Alfolyamat dure to -back és fordítsa jobbra a robotot, amikor a bal lökhárítót eltalálják '************************************ *********************************** MLoopC = 1-55 PULSOUT LMOTOR, LFastRev PULSOUT RMOTOR, RSlowRev PAUSE 20 KÖVETKEZŐ VISSZATÉRÉS '' ************************ "ALVÉLYEK VÉGE" ******************** ************************************************** *

3. lépés: 3. lépés: Alumínium fólia és popsicle botok használata huzal lökhárítókhoz

3. lépés: Alumínium fólia és popsicle botok használata huzal lökhárítókhoz
3. lépés: Alumínium fólia és popsicle botok használata huzal lökhárítókhoz
3. lépés: Alumínium fólia és popsicle botok használata huzal lökhárítókhoz
3. lépés: Alumínium fólia és popsicle botok használata huzal lökhárítókhoz
3. lépés: Alumínium fólia és popsicle botok használata huzal lökhárítókhoz
3. lépés: Alumínium fólia és popsicle botok használata huzal lökhárítókhoz
3. lépés: Alumínium fólia és popsicle botok használata huzal lökhárítókhoz
3. lépés: Alumínium fólia és popsicle botok használata huzal lökhárítókhoz

Mielőtt elkezdené ezt a lépést, győződjön meg arról, hogy a kenyérsütő tábláról származó 4 vezeték (lásd az 1. lépést) párra van osztva, és mindegyik pár jobb vagy bal oldali lökhárítót irányít. A LED -ek ebben a helyzetben működnek, és ellenőrzik, hogy a kód érvényes volt -e a jobb és bal lökhárítón. A Popsicle botokon minden párból egy vezeték osztja meg a Popsicle bot egyik végét (ez azt jelenti, hogy az azonos párhuzal vezetékei NEM lehetnek ugyanazon a lökhárítón).

Vágjon le 4 kis téglalap alakú fóliát, és az egyik segítségével tekerje át a drótot két Popsicle bot mindkét végén. Ez növeli a Popsicle bot vezetőképességének felületét, valamint nagyobb felületet biztosít a botok érintéséhez.

Annak érdekében, hogy a fólia és a huzalok a Popsicle botokhoz tapadjanak, használjon 1-2 gemkapcsot az anyagok összetartásához. A gemkapcsok emellett nagyobb hozzáférhetőséget biztosítanak a Popsicle botok érintéséhez, sok külső beavatkozás nélkül. Csúsztassa a gemkapocsot a Popsicle botra, ugyanúgy, mint egy normál papírköteg esetén. Ismételje meg ezt mind a négy darab fólia és a két Popsicle bot mindkét végén.

4. lépés: 4. lépés: A többi lökhárító összeszerelése

4. lépés: A többi lökhárító összeszerelése
4. lépés: A többi lökhárító összeszerelése
4. lépés: A többi lökhárító összeszerelése
4. lépés: A többi lökhárító összeszerelése
4. lépés: A többi lökhárító összeszerelése
4. lépés: A többi lökhárító összeszerelése
4. lépés: A többi lökhárító összeszerelése
4. lépés: A többi lökhárító összeszerelése

Amint az alumínium fólia és a gemkapocs megtartja a huzalokat az egyes Popsicle botokhoz, vágjon két kis kockát szivacsból, és ragasztjon minden kockát a rudak közé (minden bot végére, hogy a forró ragasztó ne zavarja a A szivacsok gondoskodnak arról, hogy a lökhárítók érintéssel érintkezzenek minden alkalommal, amikor a robot falnak ütközik.

Választható: Vágjon félbe egy extra Popsicle botot, és ragassza be ferdén a Popsicle bot ütközőjének csúcsához. Ez erősíti a lökhárító falba ütközésének és elfordulásának hatását.

Ne feledje, hogy hajlítsa meg a vezetékeket úgy, hogy a lökhárítók a Bot-bot előtt kanyarodjanak ki.

Ajánlott: