
Tartalomjegyzék:
2025 Szerző: John Day | [email protected]. Utoljára módosítva: 2025-01-23 14:48
Mi a jobb módja annak, hogy elkezdjen kísérletezni nyílt forráskódú mikrovezérlőkkel (Arduino), majd saját nyílt forráskódú robotja (CC (SA -BY)) építésével? Mit tegyen a SERB -vel?
- (itt) - Hogyan csatlakoztassa a SERB -t az internethez és vezesse Skype videohíváson keresztül.
- (itt) - A SERB vezérlése Wii nunchuck gyorsulásmérőinek használatával
- (itt) - Hogyan adhat hozzá akadályokat észlelő bajuszt a robotjához
- (itt) - Hogyan készítsünk 30 készletet (nyílt gyártás)
Jellemzők:
- Teljesen programozható egy Arduino Duemilanove mikrovezérlővel (vagy egy másik választott mikrovezérlővel).
- Nem kell forrasztani.
- Vágási lehetőségek választása akril darabokhoz. (görgetőfűrész, hozzáférés lézervágóhoz, előre vágott darabok vásárlása)
- Könnyen bővíthető és módosítható extra csavarfuratokkal és a mellékelt kenyértáblával.
- Kettős golyóscsapágyas hátsó kerék.
- 1-2 óra alatt üzembe helyezhető. (a készletből)
- Nyílt forráskódú tervezés (készítsen tetszés szerint)
(Shameless Plug) Az Egyesült Királyságban, és mint az Arduino cucc? nézze meg újonnan megnyitott webáruházunkat oomlout.co.uk Gyors videó egy elkészült Arduino vezérelt szervobotról - (SERB), amely a mellékelt tesztprogramot futtatja (6. lépés) Megjegyzés: A forrásfájlok párhuzamos Instructable (Source Files For) fájlban érhetők el - Hogyan készítsünk Arduino vezérelt szervo robotot - (SERB)
1. lépés: Alkatrészek és eszközök
Minden csavar megtalálható a helyi Home Depotban. A többi rész megtalálható az interneten (mindegyikhez csatoltam egy linket a kedvenc forrásomhoz). Alkatrészlista: Az összes hardver elemet tartalmazó csomag megvásárolható az oomlout.com boltjában (itt) ($ 120) Anyák és csavarok:
- 3mm x 15mm csavar (x20)
- 3mm x 10mm csavar (x12)
- 3 mm -es anya (x34)
- 3 mm -es alátét (x12)
- 8mm x 25mm csavar (x2)
- 8 mm -es anya (x2)
- Gördeszkacsapágyak (x2) (VXB) (ezek szabványos gördeszkacsapágyak, így egy görgős pengéről vagy gördeszkáról menthetők)
Gumiabroncsok
- Nagy O-gyűrű (4,5 "ID 3/16" gyöngyvágó #349) (x2) (McMaster-Carr termék #9452K407)
- Kis O-gyűrű (3/4 "ID 3/16" gyöngyvágó #314) (x1) (McMaster-Carr termék #9452K387)
Elektronika
- Arduino Duemilanove (x1) (Maker Shed)
- Folyamatos forgás szervo (x2) (Parallax)
- 400 Kontakt kenyértábla (x1) (minden elektronika))
- Négy AA elemtartó (x1) (minden elektronika)
- 9 V -os elemcsipesz (x1) (minden elektronika)
- 2,1 mm -es dugó (x1) (minden elektronika)
- 3 tűs fejléc (x2) (minden elektronika)
- A -B USB -kábel - Nyomtató stílus (x1) (minden elektronika) (a készlet nem tartalmazza)
Akkumulátorok:
- AA elem (x4) (nem tartozék)
- 9V elem (x1) (nem tartozék a készlethez)
Vezeték: (minden vezeték 22 AWG szilárd, az enyémet a McMaster-Carr-on keresztül vásárolom)
- 15 cm lila (x2)
- 15 cm fekete (x1)
- 5 cm fekete (x2)
- 5 cm piros (x2)
Eszközök
- Csavarhúzó (x1) (Philips)
- Tű-orr fogó (x1)
2. lépés: Darabok vágása
Kérjük, válassza ki a követendő lépéseket a választott vágási lehetőség alapján. 1. lehetőség (Előre vágott alkatrészek vásárlása)
Vásároljon előre vágott alvázat az oomlout.com boltjából (itt) (60 USD, beleértve az USA-ba és Kanadába történő szállítást)
2. lehetőség (Digitális gyártás (pl. Ponoko) / Hozzáférés lézervágóhoz)
- Töltse le a lézervágó elrendezést ("03 SERB Ponoko Cutting Layout P2.eps" vagy "03- (SERB) -Ponoko Cutting Layout (P2).cdr")
- Vágja le a fájlokat Ponoko használatával vagy saját lézervágójával (3 mm -es,.118 "akril segítségével (néha.125" -ként értékesítve))
3. lehetőség (görgetőfűrész és fúró)
- Töltse le és nyomtassa ki a PDF mintát (válassza ki a papírméretnek megfelelő fájlt) 03- (SERB) -ScrollSaw Pattern (levél).pdf 03- (SERB) -ScrollSaw Pattern (A4).pdf (fontos, hogy ne méretezze rajz nyomtatás közben)
- Mérje meg a nyomaton lévő vonalzót egy megbízható vonalzóval, ha nem egyezik a mintával, és a méretarányos, és meg kell vizsgálnia a nyomtató beállításait az újbóli nyomtatás előtt. Ha egyeznek, akkor tovább.
- Ragassza a mintát az akril lapra (3 mm,.118 "(néha.125" néven értékesítik).
- Fúrjon lyukakat.
- Vágja ki a darabokat görgőfűrész segítségével
3. lépés: Összeszerelés
Gratulálunk, hogy a folyamat eddig 90% -a befejeződött, csak töltse le az összeszerelési utasításokat ebben a lépésben (04- (SERB)-Összeszerelési útmutató.pdf), és egy kis lego/mechano stílusú összeszerelés után készen áll a huzalozásra. Hogy szórakoztassam Önt ezen az úton, a gyűlésem időzítése:
4. lépés: huzalozás
A nagy darabok együttes ideje, hogy hozzáadja a kis elektromos ereket, amelyek lehetővé teszik robotunk irányítását. Ehhez töltse le és nyomtassa ki a kapcsolási rajzot (05- (SERB) -kapcsolási rajz.pdf). Első pillantásra elég ijesztőnek tűnhet, de ha minden egyes kapcsolatot sorba köt, és időt szán rá, akkor rendkívül gyorsan összeáll. A kábelezés meglehetősen egyszerű, és nem okozhat kárt az áramkörben, amíg elemeket nem ad hozzá. Tehát vezetékezzen be mindent, ellenőrizze, majd adjon hozzá áramot.
5. lépés: Tesztelés és hibaelhárítás
Ha egy készletet rendelt, az Arduino -t tesztprogrammal töltötték fel. Csak helyezzen be 4 AA elemet, és csatlakoztassa a 9 voltos elemet az Arduino -hoz. És ha mindent helyesen csinált, akkor a robot elkezd mozogni (0,1-1 másodpercig véletlenszerű irányba fog fordulni, mielőtt 1-2 másodpercig véletlenszerűen előre megy, majd 2 másodperc szünetet tart, mielőtt újrakezdi). Ha még nem vásárolt készletet, akkor további lépésekre van szükség. Töltse le a mellékelt zip fájlt (07- (SERB)-SERB-Test Arduino Program.zip). Ezután bontsa ki az Arduino vázlatkönyvtárában (alapértelmezett "My Documents / Arduino \"), és töltse le az arduino táblájára. (ha még nem ismeri az Arduino -t, ugorjon előre egy lépést, ahol megtalálhatók a kezdő oktatóanyagok.) Gyakori problémák: A SERB lassan mozog, amikor le kell állítani. Ennek az az oka, hogy a szervókat nem megfelelően kalibrálták, a szervók kalibrálásához várjon, amíg a program leáll, majd egy kis csavarhúzóval forgassa el a potenciométert a szervó belsejében (a szervóház kis nyílása a vezetékek felett). Forgassa balra vagy jobbra, amíg a szervó valóban le nem áll. A dolgok nem működnek rendesen. Küldjön nekünk egy e-mailt a tüneteivel, és megpróbálunk segíteni, amíg Ön válaszra vár, ellenőrizze az összes vezetéket a 4. lépés kapcsolási rajzával. Ha bármilyen probléma merül fel, kérjük, írjon megjegyzést erre az utasításra, vagy küldjön egy e-mailt a [email protected] címre, és mindent megteszünk, hogy segítsünk a SERB működésében
6. lépés: Programozás
A fizikai robotnak eljött az ideje, hogy elkezdjen agyat adni. Mielőtt belekezdenénk az Arduino által vezérelt szervorobot - (SERB) programozásának részleteibe, néhány link az interneten található kiváló Arduino programozási forrásokhoz. Arduino kezdő útmutató - útmutató hogy segítsen az Arduinos használatában, a programozási környezet letöltésétől az első program megírásáig. Arduino programozási referencia - Egy teljes, könnyen áttekinthető útmutató az Arduino programozási nyelvhez. - Hogyan működik az Arduino Servo könyvtár (hogyan irányítjuk a szervóinkat). Rendben, ha a tanulás félreáll, lehetővé teszi a programozást. Az Arduino által vezérelt szervorobot programozásának három módja van - (SERB). 1. lehetőség: (A SERB_Test.pde módosítása) Néha a programozás során a legegyszerűbb dolog az, ha vesz egy munkaprogramot, és hozzá kezdi hozzáadni saját kódját. Ehhez töltse le a SERB_Test zip programot (07- (SERB)-SERB-Test Arduino Program.zip). Folytassa a kicsomagolást az Arduino vázlatmappájában (alapértelmezett "Saját dokumentumok / Arduino \"). Végül nyissa meg az Arduino programozási környezetet, és töltse le az Arduino -ra. A kódot jól megjegyzik. (Vagy másolja ki és illessze be a kódot az ebben a lépésben található függelékből egy új Arduino vázlatba) 2. lehetőség: (SERB rutinok hozzáadása a programhoz) Adjon hozzá néhány egyszerű rutint a meglévő programjához (például goForward (), setSpeed (int) stb.). Ehhez töltse le a rutinokat a szöveges fájlban (07- (SERB)- Egyszerű rutinok Text.txt). 1. Másolja ki és illessze be a bevezető részt a program elejére.2. Másolja ki és illessze be a rutin részt a program törzsébe.3. Hívás hozzáadása a serbSetup (); a beállítási () rutinhoz. 3. lehetőség: (Saját program létrehozása a semmiből) Ez nem túl nehéz. Mindössze annyit kell tennie, hogy megismerkedjen az Arduino Servo Libraryvel. Ezután a jobb oldali szervo csatlakozik a 9 -es tűhöz, a bal szervo pedig a 10 -es érintkezőhöz. vagy ha kifejleszt valamit, és szeretné, ha bemutatná, küldjön nekem privát üzenetet, és hozzáadható. Függelék: (SERB_Test.pde kód)
/ * * Arduino vezérelt szervórobot (SERB) - Tesztprogram * További részletekért látogasson el a következő oldalra: https://www.oomlout.com/serb * * Viselkedés: Egy egyszerű tesztprogram, amely miatt a SERB * véletlenszerűen balra vagy jobbra fordul * véletlenszerű időtartamra 0,1 és 1 másodperc között. * A SERB ezután véletlenszerűen * 1-2 másodpercig halad előre. Végül * szünet 2 másodpercig, mielőtt újrakezdené. * * Kábelezés: jobboldali szervojel - 9. érintkező * bal oldali szervojel - 10. tű * * Licenc: Ez a mű a Creative Commons * Attribution -Share Alike 3.0 Unported License alatt licencelt. A licenc egy példányának * megtekintéséhez látogasson el a * https://creativecommons.org/licenses/by-sa/3.0/ * címre, vagy küldjön levelet a Creative Commons, 171 Second * Street, Suite 300, San Francisco, California 94105 címre, * USA. * */// --------------------------------------------- ----------------------------- // ARDUINO VEZÉRLETT SZERVO ROBOT (SZERB) PREAMBLE #START OF #define LEFTSERVOPIN 10 #define RIGHTSERVOPIN 9Servo balraServo; Szervo jobbServo; int sebesség = 100; // beállítja a robot sebességét (mindkét szervó) // 0 és 100 közötti százalékban // ARDUINO VEZÉRLETT SZERVO ROBOT (SZERB) PREAMBULA VÉGE // ---------------- -------------------------------------------------- --------/ * * a csapokat a megfelelő állapotba állítja, és szervókat csatlakoztat. Ezután szünetel * 1 másodpercig, mielőtt a program elindul */ void setup () {serbSetup (); // beállítja az összes szükséges // csap állapotát, és szervókat ad hozzá a vázlathoz randomSeed (analogRead (0)); // beállítja a véletlenszámú magot // valami enyhén véletlenszerű késleltetéssel (1000);}/ * * elfordítja a robotot balra vagy jobbra (véletlenszerűen) * 0,1 és 1 másodperc közötti időszakra. Mielőtt véletlenszerű időtartamra haladna előre 1 és 4 másodperc között. Mielőtt két másodperc szünetet tart, majd újrakezdi a * -ot. */Void loop () {turnRandom (100, 1000); // Véletlenszerűen balra vagy jobbra kanyarodik // véletlenszerű időtartamra.1 másodperc // és egy másodperc között goForwardRandom (1000, 2000); // Előre megy véletlenszerű időtartamra // 1-2 másodperc között goStop (); // Megállítja a robot késését (2000); // 2 másodperc szünet (megállás közben)}/ * * a robotot véletlenszerűen balra vagy jobbra fordítja egy véletlenszerű időtartamra a * minTime (ezredmásodperc) és a maxTime (ezredmásodperc) között */void turnRandom (int minTime, int maxTime) {int választás = véletlen (2); // Véletlen szám dönteni // bal (1) és jobb (0) között int turnTime = random (minTime, maxTime); // Véletlen szám a szünethez // idő if (choice == 1) {goLeft ();} // Ha véletlen szám = 1, akkor forduljon // balra {goRight ();} // Ha véletlen szám = 0, akkor turn // jobb késleltetés (turnTime); // késleltetés véletlenszerű időre}/ * * előre halad egy véletlenszerű időtartamra a minTime (ezredmásodperc) * és a maxTime (ezredmásodperc) között */void goForwardRandom (int minTime, int maxTime) {int forwardTime = random (minTime, maxTime); // véletlenszerű idő meghatározása az előrehaladáshoz // goForward (); // beállítja a SERB előre késleltetését (forwardTime); // késések véletlenszerű időtartamra} // ---------------------------------------- -------------------------------- // ARDUINO VEZÉRLETT SZERVO ROBOT (SZERB) RUTINOK KEZDÉSE/ * * beállítja a arduino a SERB -hez való hozzáfűzéshez a mellékelt rutinok használatával*/void serbSetup () {setSpeed (speed); pinMode (LEFTSERVOPIN, OUTPUT); // beállítja a bal szervo jel tűjét // kimeneti pinMode (RIGHTSERVOPIN, OUTPUT); // beállítja a jobb szervo jelcsapot // a leftServo.attach (LEFTSERVOPIN) kimenetre; // bal szervo jobbra csatoljaServo.attach (RIGHTSERVOPIN); // a jobb oldali szervót rögzítiStop ();}/ * * beállítja a robot sebességét 0- (leállított) és 100- (teljes sebesség) között * MEGJEGYZÉS: a sebesség nem változtatja meg az aktuális sebességet, módosítani kell a sebességet *, majd a go metódusok közül a változások előtt.*/void setSpeed (int newSpeed) {if (newSpeed> = 100) {newSpeed = 100;} // ha a sebesség nagyobb 100 -nál // akkor 100 -ra állítsa (newSpeed <= 0) {newSpeed = 0;} // ha a sebesség kisebb, mint 0, akkor // it 0 speed = newSpeed * 0,9; // méretezi a sebességet // 0 és 90 közé}/ * * elküldi a robotot előre */void goForward () {leftServo.write (90 + sebesség); rightServo.write (90 sebesség);}/ * * hátra küldi a robotot */void goBackward () {leftServo.write (90 sebesség); rightServo.write (90 + sebesség);} / * * jobbra küldi a robotot * /void goRight () {leftServo.write (90 + sebesség); rightServo.write (90 + sebesség);}/ * * balra küldi a robotot */void goLeft () {leftServo.write (90 - sebesség); rightServo.write (90 - sebesség);}/ * * leállítja a robotot */void goStop () {leftServo.write (90); rightServo.write (90);} // ARDUINO VEZÉRLETT SZERVO ROBOT (SZERB) RUTINOK VÉGE // ---------------------------- -----------------------------------------------
7. lépés: Kész, mások, akik befejezték és a jövő
Gratulálunk, hogy idáig eljutott, és remélem, jól érzi magát az Arduino vezérelt szervórobotjával - (SERB). Michael Beck SERB -Michael megtalálta a SERB terveit a Thingiverse.com webhelyen, és kivágta a sárga és piros akrilból. Szerintem remekül néz ki. Mike SERB - Mike (a St. Louis Area ROBOMO robotklub tagja) egy barátjának lézerrel vágta le a SERB alvázát, és saját robotikus tudását használta fel a működéshez. Szerintem fantasztikusan néz ki kék színben. (nézze meg a weboldalát a részletekről, valamint a többi robotjáról is (itt)) Ez a rész a jövőbeli fejleményekről és a mellékletekről tartalmaz részleteket (ezeket itt fogjuk bemutatni, mielőtt megfelelően dokumentálják). De szeretnék képeket is bemutatni más népek SERB -jeiből. Tehát, ha befejezte, küldjön nekem privát üzenetet egy fotóval és néhány szóval (legyen az leírás vagy link a webhelyére), és itt hozzáadom. (Shameless Plug) Ha tetszett ezt az oktatható útmutatót az oomlout.com webhelyen találja, ahol más szórakoztató nyílt forráskódú projekteket találhat.
Első díj a SANYO eneloop akkumulátoros versenyen
Ajánlott:
Potenciométer és szervó: vezérelt mozgás Arduino segítségével: 4 lépés

Potenciométer és szervó: szabályozott mozgás az Arduino segítségével: Először össze kell gyűjtenie a megfelelő anyagokat az áramkör összeállításához
2 potenciométer és 2 szervó: vezérelt mozgás Arduino segítségével: 4 lépés

2 potenciométer és 2 szervó: szabályozott mozgás az Arduino segítségével: Először össze kell gyűjtenie a megfelelő anyagokat az áramkör összeállításához
16 csatornás szervo tesztelő Arduino és 3D nyomtatással: 3 lépés (képekkel)

16 csatornás szervo tesztelő Arduino -val és 3D nyomtatással: Nagyjából minden projekt, amit mostanában csináltam, megkövetelt, hogy kipróbáljak néhány szervót, és kísérletezzek a pozíciójukkal, mielőtt belekezdenek az összeszerelésbe. Általában készítek egy gyors szervo tesztert kenyérsütő táblára, és a soros monitort használom az arduiban
Joystick vezérelt szervó az Arduino használatával (programozással): 4 lépés

Joystick vezérelt szervó az Arduino használatával (programozással): Ebben az oktatóanyagban egy joystick vezérlő szervót készítünk az Arduino Uno segítségével. A szervo a joystick mozgásának megfelelően fog mozogni
Alexa vezérelt szervó: 9 lépés (képekkel)

Alexa vezérelt szervó: Bevezetés Az irodámban egy polcon van egy laptop, amely több kamerát figyel a házam körül. Figyelmeztetnek a szállításokra és a látogatókra. Bár használhatok egy webböngészőt a képeik megtekintéséhez, könnyebb csak