Tartalomjegyzék:

ARCA (imádnivaló távirányítású Android): 4 lépés (képekkel)
ARCA (imádnivaló távirányítású Android): 4 lépés (képekkel)

Videó: ARCA (imádnivaló távirányítású Android): 4 lépés (képekkel)

Videó: ARCA (imádnivaló távirányítású Android): 4 lépés (képekkel)
Videó: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, Július
Anonim
ARCA (imádnivaló távirányítású Android)
ARCA (imádnivaló távirányítású Android)
ARCA (imádnivaló távirányítású Android)
ARCA (imádnivaló távirányítású Android)
ARCA (imádnivaló távirányítású Android)
ARCA (imádnivaló távirányítású Android)

Ez az oktatóanyag a Dél -Floridai Egyetem Makecourse (www.makecourse.com) projektkövetelményének teljesítésével jött létre.

Az ARCA egy imádnivaló távirányítású Android, amelyet hihetetlenül szórakoztató építeni és játszani. Ennek a projektnek az volt a célja, hogy létrehozzon valamit, amit bárki megérthet és hozzá tud kapcsolódni egy olyan robot létrehozásával, amely egyszerre imádnivaló és funkcionális.

A robot úgy működik, hogy különböző érzelmeket jelenít meg egy 8x8 LED -es mátrixon, ezek közé tartozik az öröm, az alvás, a szerelem, a harag, az ostoba, és felnéz, balra és jobbra. A robot úgy is működik, mint egy RC autó, és előre tud menni, és balra vagy jobbra fordulhat. A robot mindkét kerékmotor aktiválásával megy előre, balra fordul a jobb motor bekapcsolásával, és jobbra fordul a bal motor bekapcsolásával. A tervezés nagyon egyszerű, de egyszerűen működik, és nagy hangsúlyt akartam helyezni az Arduino programozására, mivel szívem szerint programozó vagyok.

Az oktatóanyagban használt fájlok legfrissebb verziói megtalálhatók a Github ARCA lerakatomban.

1. lépés: Alkatrészlista és 3D nyomtatás

Alkatrészlista és 3D nyomtatás
Alkatrészlista és 3D nyomtatás
Alkatrészlista és 3D nyomtatás
Alkatrészlista és 3D nyomtatás

Ennek a projektnek az alkatrészei 3D nyomtatással vagy online vásárolhatók. Amikor az összeszerelésre gondoltam, hatékonysági kulcsot akartam készíteni, és megpróbáltam nem (teljesen szó szerint) feltalálni a kereket. A projekthez használt 3D nyomtató egy Makerbot replikátor volt, ha meg szeretné győződni arról, hogy a 3D nyomatok összhangban vannak az enyémmel, akkor használja ezt a nyomtatót.

Szerkezeti elemek

  • Doboz, oldalán lyukakkal a kerekek és karok számára
  • Doboz fedele lyukakkal a hátsó kerekekhez és lyuk az IR érzékelőhöz
  • Bal kéz
  • Jobb kar
  • Tengely a két hátsó kerékhez
  • két tengelycsatlakozó a fedél tengelyhez való csatlakoztatásához
  • 4 kerék (motorok is szerepelnek ebben a linkben)
  • Kis csavarok (illeszkednek a motorokhoz)

Elektromos alkatrészek

  • Arduino Uno
  • Kis kenyérlap (megvettem az Arduino készletet, és vele jött)
  • Két MAX7219 piros pont mátrix MCU vezérléssel
  • Infravörös vevő és távirányító
  • Két TIP 120 tranzisztor
  • Csatlakozó vezetékek (sok férfi és női vezetéket, valamint férfi és férfi vezetékeket használtam, és javaslom a hosszú vezetékek beszerzését a rövid vezetékek helyett)
  • egy 220 ohmos ellenállás
  • Két hajtóműves motor
  • USB csatlakoztatható tápegységek (mobiltelefonokhoz használt hordozhatóak)

2. lépés: Összeszerelés

Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés
Összeszerelés

Szerkezeti összeszerelés

A 3D nyomtatott részeket valószínűleg tisztítani kell, és azt javaslom, hogy finom csiszolással csiszolja le és acetonnal (körömlakklemosóval) távolítsa el a 3D nyomtatási folyamat során használt ragasztómaradványokat. Előfordulhat, hogy egyes alkatrészek nem illeszkednek tökéletesen, és szükséges volt, hogy csiszoljak a tengelyt, hogy tökéletesen kerek legyen, és megfelelően illeszkedjenek a lyukakon.

A kerekek némi beállításra szorulnak, többet kellett fúrni, hogy illeszkedjenek a hátsó tengely és az elülső csavarok méretéhez. 6 mm -es fúróval fúrja át a kerekek lyukait, hogy nagyobb lyukakat fúrjon ki a kerekekben.

Ehhez az összeszereléshez különféle ragasztókat használtam, de azt tapasztaltam, hogy a folyékony beton (modellező ragasztó) a legjobb a tartáshoz a hosszú száradási idő ellenére, de az epoxi a legjobb ahhoz, hogy gyorsan száradjon és jól tartsa, annak ellenére, hogy rendetlen.

Az összeszerelés többi része eléggé előre halad:

  1. Rögzítse a tengelytartókat a doboz fedelének hátsó részéhez, epoxi bevonattal
  2. Vezesse át a tengelyt a tengelytartókon
  3. Ragassza a kerekeket a tengelyre folyékony betonnal
  4. Vezesse át a karokat a felső lyukakon, és ragasztja a kar tartójához epoxi segítségével
  5. Csavarja be a doboz fedelét a dobozba
  6. Használjon elektromos szalagot a doboz alján, ahol a kerekek vannak

Elektromos szerelvény

Az első kerekek közvetlenül a motorokhoz vannak rögzítve, és egy kis csavart kell használni a motorban, hogy elég hosszú legyen ahhoz, hogy mindkét oldalon átférjen a robot lyukán. A motor forgó csapjában kis lyuknak kell lennie, és ott csavarhatja be a csavart, és a csavar fejét ragaszthatja a kerékbe, miután a csavart a dobozon lévő lyukon keresztül tolta.

A kenyértáblám hátsó része ragadós hátlappal volt ellátva, de elektromos szalaggal rögzítheti, ha a tied nem. Biztonsági okokból elektromos szalagot is használtak az elektromos alkatrészek rögzítésére. A LED kijelzőkkel ellátott MCU -kat elektromos szalaggal rögzítették a szemüreg hátsó részéhez, és a motorokat elektromos szalaggal rögzítették a doboz oldalaihoz a lyukak közelében. Vörös elektromos szalagot használtam, hogy láthatatlanná tegyem, minden esetre, és javaslom az ARCA verziójához hasonló színű elektromos szalag használatát.

A kenyértábla és a csapok a Fritzing képhez hasonlóan vannak beállítva. Ha többet szeretne hozzáadni ehhez a diagramhoz az ARCA testreszabásához, akkor töltse le a Fritzing fájlt a Github tárhelyemről, és szerkessze tetszés szerint.

A vezetékeket a hajtóműmotorok hurkaihoz rögzítettem, a vezetékeket a hurkok köré hajlítva, hogy rögzítve maradjanak. Valószínűleg jobb ötlet lenne ezeket a csatlakozásokat forrasztani, ha hozzáférhet a forrasztópákahoz, de ez egyszerű megoldás, ha nincs.

A tápegység ugyanahhoz a vezetékhez van csatlakoztatva, amelyet az Arduino számítógéphez való csatlakoztatásához használ, hogy letölthesse a programot, és ez csak laza a robotban, így könnyen eltávolítható és feltölthető.

3. lépés: Programozás

Programozás
Programozás

Itt található a kód, amelyet feltölthet az ARCA -ra, hogy az pontosan úgy működjön, mint az enyém. A kód használatához a következő két könyvtárra is szüksége van.

Az egyértelműség és a testreszabás érdekében azonban végigvezetem a kódomon. Nyugodtan hagyja ki ezt a lépést, ha nem szabja testre robotját, vagy nem tervezi az érzelmek megváltoztatását.

Először is két könyvtárat használok a kódomba, így használhatom e könyvtárak funkcióit és objektumait. Itt is definiálom a csapjaimat. Ha úgy döntött, hogy a csapjait eltéríti az előző lépésben beállítottól, végezze el a kód módosítását itt a megfelelő csapokkal.

Ezután meghatároztam az érzelmeket, bejelentettem a szükséges objektumokat az infravörös érzékelőhöz és a 8 x 8 LED -es kijelzőkhöz, és meghatároztam néhány globális változót. Az érzelmeket egy bájtos tömbben deklaráljuk, ahol a tömb minden hexadecimális száma az eredményül kapott 8 8 -as kijelző sorait jelenti. Az egyéni érzelmek létrehozásához azt javaslom, hogy rajzolja ki a kívánt érzelmet egy 8 x 8 rácsba, majd írjon ki minden sor 8 bites bináris számot, ahol a kikapcsolt fény 0 és a világítás 1. ebből hexadecimális számot és 8 -as hosszúságú tömbbe kell helyezni. Meghatároztam néhány globális változót is, amelyeket a hurokban használni fogok; a villogó mechanizmus változói és a mutatók az érzelmek tárolásához és a semleges kezdéshez.

Most elérkeztünk a beállítási körhöz, ahol a tesztelés érdekében bekapcsolom a soros felügyeletet, és ez hasznos lehet a kód teszteléséhez különböző IR távirányítókkal. Ezután inicializáltam a bal és jobb szem objektumokat a LED vezérlőkönyvtár funkciói segítségével. A hajtómű motor csapjait is kimenetre állítottam, és elindítottam az infravörös vevőt.

A ciklusban lényegében arra vár, hogy az IR jel megváltoztassa a robot állapotát. Tehát ha egy IR jel érkezik, és egyezik egy adott gomb egyik kódjával, akkor ez akkor történik, ha az utasítás aktiválódik, és ennek megfelelően állítja be a bal és a jobb szem értékét az érzelmekhez. Ha megnyom egy mozgásgombot, például balra, jobbra, előre és OK, akkor a gombokat digitálisan írják be vagy ki, a gomb megnyomásától függően. Csak egy megjegyzés az infravörös vevőkódokkal kapcsolatban: az IR távoli könyvtárban található egy mintakód, amely megadja a távvezérlő hexadecimális kódjait, ha semmi sem történik, amikor megnyomja a gombokat, akkor nyissa meg ezt a programot, hogy megbizonyosodjon arról, hogy a kódok helyesek. Mindössze annyit kell tennie, hogy megváltoztatja az egyes gombokhoz tartozó hexadecimális számot.

Végül van egy funkció, amely kinyomtatja az érzelmeket a 8 x 8 kijelzőre. Ez a setRow függvényeket használja a LED vezérlőkönyvtárból, és csak végigmegy a létrehozott tömbön, és ennek megfelelően állítja be a sorokat. Két paramétert tartalmaz: a bal szem tömbjét és a jobb szem tömbjét. Ez lehet egy bájtmutató vagy maga a bájt tömb (azaz a "semleges" név), amely mutatóként működik.

4. lépés: Bónusz tippek és trükkök

Bónusz tippek és trükkök
Bónusz tippek és trükkök

Minden bizonnyal sokat tanultam a projekt során, és itt szeretnék megosztani néhány további tippet, amelyek mind erre a projektre, mind az Arduino -t használó egyéb projektekre vonatkoznak.

  • Sok online forrás található az Arduino számára, és véleményem szerint a leghasznosabbak az Arduino webhelyről származnak, világos és tömör kódpéldáik miatt.
  • Ne találja fel újra a kereket, mert sok készlet és előre beépített darab használható a projekt megkönnyítésére. Programozó vagyok, és nem gépészmérnök, és nehezen próbáltam rájönni, hogyan fogom elindítani ezt a robotot, de könnyű volt találni valamit online vásárolni, és megvalósítani a tervezésemben, szemben a szó szoros értelmében feltalálóval. kerék
  • A könyvtárak a barátod Arduino-ban, valamint minden objektum-orientált nyelven, és okkal léteznek. Párosítsa ezt a mikrovezérlőkkel, és a 8 x 8 LED programozása egyszerű. Az egyiket kézzel programoztam korábban, és csak az egyik használja az Arduino minden tűjét, és rengeteg kódot igényel. Nagyon rendetlen és nem túl szórakoztató.
  • A 3D nyomtatók menők, de nem tökéletesek, és rendben van, ha le kell csiszolni néhány dolgot. Ebből az okból inkább szeretne nagyobbat nyomtatni 3D nyomtatáskor, mert a legtöbb esetben kicsit lecsiszolhatja a tökéletes illeszkedés érdekében.
  • Az áramellátás problémát okozhat, mert az utolsó pillanatban gondoltam az energiafelhasználásra, és úgy gondoltam, hogy egy 5 voltos akkumulátor teszi a dolgát. Ekkor, látszólag véletlenszerűen, néha egy motor vagy egy LED -kijelző nem működne. Miután frissítettem a hajtóműre, nem volt több probléma, annak ellenére, hogy terjedelmesebb volt a robot belsejében.

Ajánlott: