Hogyan építsünk robotot otthon (képekkel)

Tartalomjegyzék:

Hogyan építsünk robotot otthon (képekkel)
Hogyan építsünk robotot otthon (képekkel)

Videó: Hogyan építsünk robotot otthon (képekkel)

Videó: Hogyan építsünk robotot otthon (képekkel)
Videó: Edges and Faces in SketchUp #shorts #sketchup 2024, Lehet
Anonim

Szeretnéd megtanulni saját robot építését? Sokféle robot létezik, amelyeket egyedül készíthet. A legtöbb ember azt szeretné látni, hogy egy robot elvégzi az A -ból B -be való áthelyezés egyszerű feladatait. Készíthet robotot teljesen analóg alkatrészekből, vagy kezdő készletet vásárolhat a semmiből! A saját robot építése nagyszerű módja annak, hogy megtanítsa önmagát mind az elektronika, mind a számítógépes programozás területén.

Lépések

1. rész a 6 -ból: A robot összeszerelése

1123333 1
1123333 1

1. lépés Gyűjtse össze az alkatrészeket

Egy alapvető robot építéséhez több egyszerű alkatrészre lesz szüksége. Ezen alkatrészek többségét, ha nem mindegyikét megtalálhatja a helyi elektronikai hobbiboltban vagy több online kiskereskedőben. Néhány alapvető készlet tartalmazhatja ezeket az összetevőket is. Ez a robot nem igényel forrasztást:

  • Arduino Uno (vagy más mikrokontroller)
  • 2 folyamatosan forgó szervó
  • 2 kerék, amelyek illeszkednek a szervókhoz
  • 1 görgő görgő
  • 1 kisméretű, forrasztás nélküli kenyértábla (keressen olyan kenyérlapot, amelynek mindkét oldalán két pozitív és negatív vonal található)
  • 1 távolságérzékelő (négytűs csatlakozó kábellel)
  • 1 mini nyomógombos kapcsoló
  • 1 10 kΩ -os ellenállás
  • 1 USB A -B kábel
  • 1 db leválasztható fejléc
  • 1 db 6 x AA elemtartó 9V DC tápcsatlakozóval
  • 1 csomag áthidaló vezeték vagy 22-es bekötőhuzal
  • Erős kétoldalas szalag vagy forró ragasztó
1123333 2
1123333 2

2. lépés Fordítsa meg az akkumulátort úgy, hogy a lapos hátlap felfelé nézzen

A robot testét fogja építeni az akkumulátor segítségével.

1123333 3
1123333 3

3. lépés Állítsa be a két szervót az akkumulátor végén

Ez lesz a vége annak, hogy az akkumulátor huzalja kijöjjön. A szervóknak meg kell érniük az aljukat, és mindegyik forgó mechanizmusának ki kell néznie az akkumulátor oldalára. A szervókat megfelelően kell igazítani, hogy a kerekek egyenesen haladjanak. A szervók vezetékeinek le kell válniuk az akkumulátor hátuljáról.

1123333 4
1123333 4

4. lépés. Rögzítse a szervókat szalaggal vagy ragasztóval

Győződjön meg arról, hogy szilárdan rögzítve vannak az akkumulátorhoz. A szervók hátulját egy síkban kell elhelyezni az akkumulátor hátoldalával.

A szervóknak most fel kell venniük az akkumulátor hátsó felét

1123333 5
1123333 5

5. lépés. Rögzítse a kenyértáblát merőlegesen az akkumulátor szabad helyére

Kicsit lógnia kell az akkumulátor elején, és túlnyúlik mindkét oldalán. A folytatás előtt győződjön meg arról, hogy biztonságosan rögzítve van. Az "A" sor legyen a szervókhoz legközelebb.

1123333 6
1123333 6

6. lépés: Csatlakoztassa az Arduino mikrokontrollert a szervók tetejéhez

Ha megfelelően csatlakoztatta a szervókat, akkor lapos helyet kell hagyni, amelyek érintik őket. Ragassza az Arduino táblát erre a lapos helyre úgy, hogy az Arduino USB- és tápcsatlakozói a hátlap felé nézzenek (távol a kenyértáblától). Az Arduino elejének alig kell átfednie a kenyértáblát.

1123333 7
1123333 7

7. lépés Helyezze a kerekeket a szervókra

Erősen nyomja a kerekeket a szervó forgó mechanizmusára. Ez jelentős erőt igényelhet, mivel a kerekeket úgy tervezték, hogy a lehető legjobban illeszkedjenek a legjobb tapadáshoz.

1123333 8
1123333 8

8. lépés. Csatlakoztassa a görgőt a kenyértábla aljához

Ha megfordítja a házat, látnia kell egy kis kenyeretáblát az akkumulátor mellett. Csatlakoztassa a görgőt ehhez a kiterjesztett darabhoz, szükség esetén emelők segítségével. A görgő első kerékként működik, lehetővé téve a robot számára, hogy könnyen bármilyen irányba forduljon.

Ha készletet vásárolt, előfordulhat, hogy a görgőhöz néhány felszálló elem tartozik, amelyekkel biztosíthatja, hogy a görgő elérje a talajt. én

2. rész a 6 -ból: A robot bekötése

1123333 9
1123333 9

1. lépés Törjön le két 3 tűs fejlécet

Ezeket fogja használni a szervók csatlakoztatásához a kenyértáblához. Nyomja le a csapokat a fejrészen keresztül, hogy a csapok mindkét oldalon egyenlő távolságra kerüljenek ki.

1123333 10
1123333 10

2. lépés Helyezze be a két fejlécet az 1-3. És 6-8. Csapokba a kenyértábla E sorában

Győződjön meg arról, hogy szilárdan vannak behelyezve.

1123333 11
1123333 11

3. lépés: Csatlakoztassa a szervokábeleket a fejrészekhez, a fekete kábellel a bal oldalon (1. és 6. láb)

Ez összeköti a szervókat a kenyértáblával. Győződjön meg arról, hogy a bal szervó csatlakozik a bal oldali fejrészhez, a jobb szervó pedig a jobb oldali fejléchez.

1123333 12
1123333 12

4. lépés Csatlakoztassa a piros áthidaló vezetékeket a C2 és C7 csapokból a piros (pozitív) síncsapokhoz

Győződjön meg róla, hogy a kenyérsütő lap hátoldalán lévő piros sávot használja (közelebb az alváz többi részéhez).

1123333 13
1123333 13

5. lépés Csatlakoztassa a fekete áthidaló vezetékeket a B1 és B6 csapokból a kék (földelt) síncsapokhoz

Győződjön meg arról, hogy a kenyértábla hátoldalán lévő kék sínnel rendelkezik. Ne csatlakoztassa őket a piros síncsapokhoz.

1123333 14
1123333 14

6. lépés Csatlakoztassa az Arduino 12. és 13. csapja fehér áthidaló vezetékét az A3 és A8 -hoz

Ez lehetővé teszi, hogy az Arduino vezérelje a szervókat és forgassa a kerekeket.

1123333 15
1123333 15

Lépés 7. Csatlakoztassa az érzékelőt a kenyértábla elejéhez

Nem a kenyértábla külső tápcsöveihez csatlakozik, hanem a betűs csapok első sorához (J). Győződjön meg arról, hogy pontosan a középpontba helyezi, és mindkét oldalon azonos számú csap található.

1123333 16
1123333 16

8. lépés Csatlakoztasson egy fekete áthidaló vezetéket az I14 tűtől az első elérhető kék síncsapra az érzékelő bal oldalán

Ez földelni fogja az érzékelőt.

1123333 17
1123333 17

9. lépés Csatlakoztasson egy piros áthidaló vezetéket az I17 érintkezőtől az első rendelkezésre álló piros síncsapra az érzékelő jobb oldalán

Ez táplálja az érzékelőt.

1123333 18
1123333 18

10. lépés Csatlakoztassa a fehér áthidaló vezetékeket az I15 -ös tűtől a 9 -es tűig az Arduino -n, és az I16 -tól a 8 -as tűig

Ez az információt az érzékelőtől a mikrokontrollerhez továbbítja.

3. rész a 6 -ból: Az áram bekötése

1123333 19
1123333 19

1. lépés Fordítsa oldalra a robotot, hogy láthassa a csomagban lévő elemeket

Irányítsa úgy, hogy az akkumulátor kábele alul balra jöjjön ki.

1123333 20
1123333 20

2. lépés Csatlakoztasson egy piros vezetéket a második rugóhoz balról az alján

Győződjön meg arról, hogy az akkumulátor megfelelően van beállítva.

1123333 21
1123333 21

3. lépés Csatlakoztasson egy fekete vezetéket a jobb alsó sarokban lévő utolsó rugóhoz

Ez a két kábel segít biztosítani a megfelelő feszültséget az Arduino számára.

1123333 22
1123333 22

4. lépés. Csatlakoztassa a piros és a fekete vezetékeket a jobb szélső piros és kék csapokhoz a kenyérsütő panel hátoldalán

A fekete kábelt a 30. tűn lévő kék síncsapra kell bedugni. A piros kábelt a 30. tűn lévő piros síncsapra kell bedugni.

1123333 23
1123333 23

5. lépés: Csatlakoztasson egy fekete vezetéket az Arduino GND csapjából a hátsó kék sínhez

Csatlakoztassa a kék sín 28. tűjéhez.

1123333 24
1123333 24

6. lépés Csatlakoztasson egy fekete vezetéket a hátsó kék sínből az elülső kék sínhez a 29 -es tűnél

Ne csatlakoztassa a piros síneket, mert valószínűleg megsérül az Arduino.

1123333 25
1123333 25

Lépés 7. Csatlakoztasson egy piros vezetéket az elülső piros sínről a 30. tűnél az Arduino 5V -os tűjéhez

Ez áramot biztosít az Arduino számára.

1123333 26
1123333 26

8. lépés: Helyezze be a nyomógombos kapcsolót a 24-26. Csapok sorok közötti résébe

Ezzel a kapcsolóval kikapcsolhatja a robotot anélkül, hogy ki kellene húznia az áramellátást.

1123333 27
1123333 27

9. lépés. Csatlakoztasson egy piros vezetéket a H24 -ből az érzékelő jobb oldalán található következő tűn lévő piros sínhez

Ez fogja működtetni a gombot.

1123333 28
1123333 28

10. lépés: Az ellenállás segítségével csatlakoztassa a H26 -ot a kék sínhez

Csatlakoztassa a tűhöz közvetlenül a néhány lépéssel ezelőtt csatlakoztatott fekete vezeték mellett.

1123333 29
1123333 29

11. lépés: Csatlakoztasson egy fehér vezetéket a G26 -tól az Arduino 2. tűjéhez

Ez lehetővé teszi az Arduino számára, hogy regisztrálja a nyomógombot.

4. rész a 6 -ból: Az Arduino szoftver telepítése

1123333 30
1123333 30

1. lépés: Töltse le és bontsa ki az Arduino IDE -t

Ez az Arduino fejlesztői környezet, és lehetővé teszi, hogy programozási utasításokat töltsön fel az Arduino mikrokontrollerére. Ingyenesen letöltheti az arduino.cc/en/main/software webhelyről. Csomagolja ki a letöltött fájlt dupla kattintással, és helyezze át a mappát egy könnyen hozzáférhető helyre. Valójában nem telepíti a programot. Ehelyett csak a kibontott mappából futtathatja, ha duplán kattint az arduino.exe fájlra.

1123333 31
1123333 31

2. lépés Csatlakoztassa az akkumulátort az Arduino -hoz

Csatlakoztassa az akkumulátor csatlakozóját az Arduino csatlakozójához, hogy áramot kapjon.

1123333 32
1123333 32

3. lépés Csatlakoztassa az Arduino -t a számítógéphez USB -n keresztül

A Windows valószínűleg nem ismeri fel az eszközt.

1123333 33
1123333 33

4. lépés. Nyomja meg a gombot

⊞ Win+R és írja be devmgmt.msc.

Ezzel elindul az Eszközkezelő.

1123333 34
1123333 34

5. lépés: Kattintson a jobb gombbal az "Ismeretlen eszköz" elemre az "Egyéb eszközök" részben, és válassza az "Illesztőprogram-frissítés" lehetőséget

" Ha nem látja ezt a lehetőséget, kattintson a "Tulajdonságok" gombra, válassza az "Illesztőprogram" fület, majd kattintson az "Illesztőprogram frissítése" gombra.

1123333 35
1123333 35

6. lépés. Válassza a "Tallózás a számítógépen az illesztőprogramok keresése" lehetőséget

" Ez lehetővé teszi az Arduino IDE -vel kapott illesztőprogram kiválasztását.

1123333 36
1123333 36

7. lépés: Kattintson a "Tallózás" gombra, majd keresse meg a korábban kibontott mappát

Belül talál egy "illesztőprogramok" mappát.

1123333 37
1123333 37

Lépés 8. Válassza ki az "illesztőprogramok" mappát, majd kattintson az "OK" gombra

" Ha ismeretlen szoftverre figyelmeztet, erősítse meg, hogy folytatni kívánja.

5. rész a 6 -ból: A robot programozása

1123333 38
1123333 38

1. lépés Indítsa el az Arduino IDE-t úgy, hogy duplán kattint az arduino.exe fájlra az IDE mappában

Önt üres projekt fogadja.

1123333 39
1123333 39

2. lépés: Illessze be a következő kódot, hogy a robot egyenesen menjen

Az alábbi kód arra készteti az Arduino -t, hogy folyamatosan haladjon előre.

#include // ez hozzáadja a "Servo" könyvtárat a programhoz // a következő két szervo objektumot hoz létre Servo leftMotor; Szervo jobbMotor; void setup () {leftMotor.attach (12); // ha véletlenül megváltoztatta a szervók PIN -kódjait, itt kicserélheti a számokat rightMotor.attach (13); } void loop () {leftMotor.write (180); // folyamatos forgással 180 azt mondja a szervónak, hogy teljes sebességgel haladjon "előre". jobb motor. írni (0); // ha mindkettő 180 -nál van, a robot körbe megy, mert a szervók fel vannak fordítva. A "0" azt jelzi, hogy teljes sebességgel "hátra" kell haladnia. }

1123333 40
1123333 40

3. lépés: Készítse el és töltse fel a programot

Kattintson a jobbra mutató nyíl gombra a bal felső sarokban a program létrehozásához és feltöltéséhez a csatlakoztatott Arduino-hoz.

Érdemes leszedni a robotot a felületről, mivel a program feltöltése után csak tovább fog haladni

1123333 41
1123333 41

4. lépés: Adja hozzá a kill switch funkciót

Adja hozzá a következő kódot a kód "void loop ()" szakaszához, hogy engedélyezze a kill kapcsolót az "write ()" funkciók felett.

if (digitalRead (2) == HIGH) // ez regisztrál, amikor megnyomják a gombot az Arduino 2. tűjén {while (1) {leftMotor.write (90); // A "90" a szervók semleges helyzete, amely azt mondja, hogy hagyják abba a jobbra fordulástMotor.write (90); }}

1123333 42
1123333 42

5. lépés. Töltse fel és tesztelje kódját

A kill switch kód hozzáadásával feltöltheti és tesztelheti a robotot. Tovább kell haladnia előre, amíg meg nem nyomja a kapcsolót, ekkor leáll. A teljes kódnak így kell kinéznie:

#include // a következő két szervo objektumot hoz létre Servo leftMotor; Szervo jobbMotor; void setup () {leftMotor.attach (12); rightMotor.attach (13); } void loop () {if (digitalRead (2) == HIGH) {while (1) {leftMotor.write (90); rightMotor.write (90); }} leftMotor.write (180); rightMotor.write (0); }

6. rész 6. rész: Példa

1. lépés. Kövessen egy példát

A következő kód a robothoz csatlakoztatott érzékelőt használja, hogy balra forduljon, amikor akadályba ütközik. Tekintse meg a kódban található megjegyzéseket az egyes részek működésének részleteiről. Az alábbi kód a teljes programot tartalmazza.

#include szervo leftMotor; Szervo jobbMotor; const int serialPeriod = 250; // ez a kimenetet a konzolra korlátozza 1/4 másodpercenként egyszer alá nem írt hosszú időreSerialDelay = 0; const int loopPeriod = 20; // ez beállítja, hogy az érzékelő milyen gyakran vegyen leolvasást 20 ms -ra, ami 50 Hz -es előjel nélküli hosszú timeLoopDelay = 0; // ez hozzárendeli a TRIG és ECHO funkciókat az Arduino csapjaihoz. Végezze el a számok módosítását itt, ha másképp csatlakoztatta a const int ultrahangos2TrigPin = 8; const int ultrahangos2EchoPin = 9; int ultrahangos2Távolság; int ultrahangos2Duration; // ez határozza meg a robot két lehetséges állapotát: előrehaladás vagy balra fordulás #define DRIVE_FORWARD 0 #define TURN_LEFT 1 int state = DRIVE_FORWARD; // 0 = előrehajtás (DEFAULT), 1 = balra fordulás void setup () {Serial.begin (9600); // ezek az érzékelőcsap konfigurációk pinMode (ultrahangos2TrigPin, OUTPUT); pinMode (ultrahangos2EchoPin, INPUT); // ez hozzárendeli a motorokat az Arduino csapokhoz leftMotor.attach (12); rightMotor.attach (13); } void loop () {if (digitalRead (2) == HIGH) // ez észleli a kill kapcsolót {while (1) {leftMotor.write (90); rightMotor.write (90); }} debugOutput (); // ez hibakeresési üzeneteket nyomtat a soros konzolra, ha (millis () - timeLoopDelay> = loopPeriod) {readUltrasonicSensors (); // ez utasítja az érzékelőt, hogy olvassa és tárolja a mért távolságokat stateMachine (); timeLoopDelay = millis (); }} void stateMachine () {if (state == DRIVE_FORWARD) // ha nem észlel akadályt {if (ultrasonic2Distance> 6 || ultrasonic2Distance <0) // ha nincs semmi a robot előtt. ultrasonicTávolság negatív lesz egyes ultrahangosoknál, ha nincs akadály {// haladjon előre rightMotor.write (180); leftMotor.write (0); } else // ha van előttünk egy objektum {state = TURN_LEFT; }} else if (state == TURN_LEFT) // ha akadályt észlel, forduljon balra {unsigned long timeToTurnLeft = 500; // kb.5 másodpercbe telik a 90 fokos elfordulás. Lehet, hogy ezt módosítania kell, ha a kerekei eltérnek a példától, mint az aláírás nélküli hosszú turnStartTime = millis (); // mentse el az időt, amikor elkezdtük forgatni, miközben ((millis ()-turnStartTime) <timeToTurnLeft) // maradjon ebben a ciklusban, amíg a timeToTurnLeft le nem telik {// forduljon balra, ne feledje, hogy ha mindkettő "180" -ra van állítva. rightMotor.write (180); leftMotor.write (180); } állapot = DRIVE_FORWARD; }} void readUltrasonicSensors () {// ez az ultrahangos 2 -re vonatkozik. Előfordulhat, hogy módosítania kell ezeket a parancsokat, ha másik érzékelőt használ. digitalWrite (ultrahangos2TrigPin, HIGH); delayMikroszekundumok (10); // a triggeszt magasan tartja legalább 10 mikroszekundumig digitalWrite (ultrasonic2TrigPin, LOW); ultrahang2Duration = pulseIn (ultrahangos2EchoPin, HIGH); ultrahang2Távolság = (ultrahang2Duration/2)/29; } // az alábbiakban a konzol hibakeresési hibáiról van szó. void debugOutput () {if ((millis () - timeSerialDelay)> serialPeriod) {Serial.print ("ultrasonic2Distance:"); Soros.nyomtatás (ultrahangos2Távolság); Soros.nyomat ("cm"); Sorozat.println (); timeSerialDelay = millis (); }}

Ajánlott: