Tartalomjegyzék:

Robot autó Bluetooth, fényképezőgép és MIT App Inventor 2: 12 lépés (képekkel)
Robot autó Bluetooth, fényképezőgép és MIT App Inventor 2: 12 lépés (képekkel)

Videó: Robot autó Bluetooth, fényképezőgép és MIT App Inventor 2: 12 lépés (képekkel)

Videó: Robot autó Bluetooth, fényképezőgép és MIT App Inventor 2: 12 lépés (képekkel)
Videó: Вещи, которые мистеру Уэлчу больше не разрешается делать в сборнике для чтения RPG № 1-2450 2024, November
Anonim
Image
Image
Alkatrészek és szoftverek
Alkatrészek és szoftverek

Szeretett volna valaha saját robotkocsit építeni? Nos… ez a lehetőség !!

Ebben az utasításban elmagyarázom, hogyan lehet robotkocsit Bluetooth és MIT App Inventor2 segítségével vezérelni. Légy tudatában annak, hogy kezdő vagyok, és hogy ez az első instabilitásom, ezért kérlek, légy szelíd a megjegyzéseidben.

Sok oktatható eszköz létezik, de ebben számos olyan funkciót próbáltam kombinálni, mint például: a kamera streamingje, az akadályok elkerülése, az ultrahangos tartományérzékelő, a Larson -szkenner (charlieplexeléssel) és az akkumulátorfigyelés egy Android -alkalmazással !!

Kezdjük tehát és ismerkedjünk meg Frankie -vel (sok helyről származó ötleteket használ… innen Robo Frankenstein)

1. lépés: Alkatrészek és szoftverek

Alkatrészek és szoftverek
Alkatrészek és szoftverek
Alkatrészek és szoftverek
Alkatrészek és szoftverek

Itt, szülővárosomban nehéz beszerezni az összes alkatrészt, ezért a legtöbbet a www.aliexpress.com webhelyről szerezhettem be

Becsléseim szerint a projekt 25-30 dollárért építhető meg a régi mobiltelefon figyelembevétele nélkül.

  • Autó alváz: 3 kerék, 2 motor 6V (9 USD)
  • Arduino Nano (2 USD)
  • Bluetooth HC-05 (3-4 USD)
  • L293D motorhajtó hajtókerék -motorokhoz (1,50 USD 5 darabos tételért)
  • Régi mobiltelefon kamerával és Wi-Fi-vel
  • HC-SR04 ultrahangos érzékelő a közeli objektumhoz történő méréshez (1 USD)
  • 6 LED a Larson szkennerhez
  • ATtiny85 Larson szkennerhez (1 USD)
  • Breadboard (1 USD)
  • Vezetékek
  • 100K ohmos ellenállás (4)
  • 1K ohmos ellenállás (2)
  • 2K ohmos ellenállás (1)
  • 270 ohmos ellenállás (3)
  • Berregő

Szoftver:

  • Arduino IDE
  • IP -webkamera (régi Androidos mobiltelefonokhoz)
  • MIT App Inventor2: Ez az alkalmazás nagyszerű, de csak Android operációs rendszerhez működik (nincs iPhone … sajnálom!)

2. lépés: Építési folyamat

Építési folyamat
Építési folyamat
Építési folyamat
Építési folyamat
Építési folyamat
Építési folyamat
Építési folyamat
Építési folyamat

Az autó alvázát nagyon könnyű összeszerelni; 2 6V -os motorja van, amely a hátsó kerekeket táplálja, és 4 akkumulátor.

A robotkocsit Bluetooth és Wi-Fi vezérli. A Bluetooth vezérli az autó és az MIT App feltalálója2 közötti soros kommunikációt, és a Wi-Fi-vel kommunikálnak az autó elé telepített kamerával (régi mobiltelefon).

Ehhez a projekthez két elemkészletet használtam: az arduino -t 9 V -os akkumulátor, az autó motorjait pedig 6 V -os (négy 1,5 V -os AA elem) táplálja.

Az Arduino Nano ennek a projektnek az agya, amely vezérli az autót, a zümmögőt, a HC-SR04 ultrahangos tartományérzékelőt, a Bluetooth HC-05-öt, a Larson-szkennert (ATtiny85) és figyeli az akkumulátorokat. A 9 V -os akkumulátor Vin -hez kerül (30 -as érintkező), Arduino 27 -es tüskéje pedig 5 V -os szabályozott áramellátást biztosít a kenyértáblának. Össze kell kötni az összes IC -t és akkumulátort.

Csatolva, a kapcsolási rajz Excelben készült (elnézést…. Legközelebb megpróbálom a Fritzing -t). Mindent kenyérsütő deszkával és hímmel összekötöttem a hím vezetékekkel, az enyém patkányfészeknek tűnik.

3. lépés: L293D motorvezérlő

L293D motorvezérlő
L293D motorvezérlő
L293D motorvezérlő
L293D motorvezérlő

Az L293D egy négyszeres nagyáramú, fél-H meghajtó, amelyet úgy terveztek, hogy akár 600 mA-es kétirányú meghajtóáramot biztosítson 4,5 V és 36 V közötti feszültségen. Az autó kerekeinek meghajtására szolgál.

A motorok 6 V -os akkumulátorral (négy 1,5 V AA) működnek, és 5 V -ot használ az Arduino Nano szabályozott 5 V -os (27 -es érintkező) logikájához. A csatlakozásokat a mellékelt vázlat mutatja.

Nem kellett hűtőbordába telepíteni.

4. lépés: HC-05 Bluetooth

HC-05 Bluetooth
HC-05 Bluetooth

A HC-05 Bluetooth tápellátása 5 V (arduino pin 27), de fontos megérteni, hogy a logikai szint 3,3 V, azaz a kommunikáció (Tx és Rx) 3,3 V-al. Ezért az Rx -et maximum 3,3 V feszültséggel kell konfigurálni, ami szintváltó átalakítóval érhető el, vagy mint ebben az esetben, feszültségosztóval 1K és 2K ellenállások használatával, amint az az áramkörben látható.

5. lépés: Akkumulátor -monitor

Az akkumulátor töltöttségi szintjének figyelése érdekében feszültségosztókat állítottam be annak érdekében, hogy a feszültség szintje 5 V alá csökkenjen (Arduino maximális tartománya). A feszültségosztó csökkenti a mért feszültséget az Arduino analóg bemenetek tartományába.

Az A4 és A6 analóg bemeneteket használják, és nagy ellenállásokat (100K ohm) használnak annak érdekében, hogy a mérési folyamat során ne merítse le túlságosan az elemeket. Kompromisszumot kell kötnünk, ha az ellenállások túl alacsonyak (10K ohm), kisebb a terhelési hatás, a feszültség leolvasása pontosabb, de nagyobb áramfelvétel; ha túl magasak (1M ohm), nagyobb terhelési hatás, a feszültség leolvasása kevésbé pontos, de kevesebb áramfelvétel.

Az akkumulátor figyelése 10 másodpercenként történik, és közvetlenül a vezérlő mobiltelefonján jelenik meg.

Biztos vagyok benne, hogy ezen a részen még van mit javítani, mivel két analóg érintkezőből olvasok, és a belső MUX cserélődik közöttük. Nem számolok átlagokat, és talán ezt kell tennem.

Hadd magyarázzam meg a következő képletet:

// Olvassa le a feszültséget az analóg A4 -es tűről, és végezze el az Arduino kalibrálását:

feszültség1 = (analóg olvasott (A4)*5,0/1024,0)*2,0; //8.0V

Az Arduino nano kártya 8 csatornás, 10 bites analóg-digitális átalakítót tartalmaz. Az analogRead () függvény 0 és 1023 közötti számot ad vissza, amely arányos a csapra adott feszültséggel. Ez felbontást eredményez a leolvasások között: 5 volt / 1024 egység, vagy 0,0049 volt (4,9 mV) egységenként.

A feszültségosztó felére csökkenti a feszültséget, és ahhoz, hogy valódi feszültséget kapjon, meg kell szoroznia 2 -vel !!

FONTOS: Biztos vagyok benne, hogy van egy hatékonyabb módja az arduino áramellátásának, mint én! Kezdőként megtanultam a nehéz utat. Az Arduino Vin csap lineáris feszültségszabályozót használ, ami azt jelenti, hogy egy 9 V -os akkumulátorral a lineáris szabályozó teljesítményének nagy részét égetheti el! Nem jó. Ezt azért tettem, mert gyors volt, és csak azért, mert nem tudtam jobban… de biztos lehetsz benne, hogy a Robo Frankie 2.0 verziójában minden bizonnyal másképp fogom csinálni.

Arra gondolok (hangosan), hogy a DC DC fokozható kapcsolóüzemű tápegysége és a Li-ion újratölthető akkumulátor jobb megoldás lehet. Szíves javaslatát szívesen fogadjuk…

6. lépés: HC-SR04 ultrahangos tartományérzékelő

HC-SR04 ultrahangos tartományérzékelő
HC-SR04 ultrahangos tartományérzékelő

A HC-SR04 egy ultrahangos tartományérzékelő. Ez az érzékelő 2–400 cm közötti mérést tesz lehetővé, 3 mm -es tartományban. Ebben a projektben arra használják, hogy elkerüljék az akadályokat, amikor eléri a 20 cm -t vagy annál kevesebbet, és mérik a távolságot bármely tárgytól, amelyet visszaküldenek a mobiltelefonjára.

A mobiltelefon képernyőjén van egy gomb, amelyre kattintani kell, hogy távolságot kérhessen a közeli objektumtól.

7. lépés: Larson szkenner

Larson szkenner
Larson szkenner
Larson szkenner
Larson szkenner
Larson szkenner
Larson szkenner

Valami szórakoztatót szerettem volna belefoglalni, ezért belekerült a Larson szkenner, amely hasonlít a K. I. T. T. Knight Rider -től.

A Larson szkennerhez ATtiny85 -öt használtam charlieplexeléssel. A Charlieplexing egy technika multiplexelt kijelző meghajtására, amelyben a mikrokontroller viszonylag kevés I/O érintkezőjét használják egy sor LED meghajtására. A módszer a mikrovezérlők háromállapotú logikai képességeit használja fel a hagyományos multiplexeléssel szembeni hatékonyság növelése érdekében.

Ebben az esetben 3 tűt használok az ATtiny85 -től 6 LED világítására !!

Az "X" LED -eket N tűvel meggyújthatja. A következő képlet segítségével számolja ki, hány LED -et vezethet:

X = N (N-1) LED N tűvel:

3 tű: 6 LED;

4 tű: 12 LED;

5 tű: 20 LED … érti az ötletet;-)

Az áram pozitív (anód) és negatív (katód) között áramlik. A nyíl csúcsa a katód.

Fontos megjegyezni, hogy az 1. tüske (Arduino IDE kódban) az ATtiny85 fizikai 6. tűjére utal (kérjük, olvassa el a csatolt pinoutot).

Mellékelten megtalálja a Larson szkennert vezérlő ATtiny85 -re feltöltendő kódot. Nem írom le, hogyan kell feltölteni egy kódot az ATtiny85 -be, mivel rengeteg olyan utasítás található, amelyek ezt teszik.

8. lépés: Kód

Kód
Kód

Mellékelem a Larson szkennert vezérlő ATtiny85 -re feltöltendő kódot és az Arduino nano kódját.

Ami az Arduino nano -t illeti, más utasítások kódjait használtam (itt), és az igényeimnek megfelelően módosítottam. A kód folyamatábráját (szóval is, a tisztább kép érdekében) mellékeltem, hogy jobban megértsük a Switch - Case működését.

Fontos: Annak érdekében, hogy a CarBluetooth kódot fel tudja tölteni az Arduino nanóba, le kell választania az Rx és a Tx csatlakozót a HC-05 Bluetooth modulról!

9. lépés: Kamera

Kamera
Kamera
Kamera
Kamera

Az IP webkamera alkalmazást le kell tölteni a Play Áruházból, és telepíteni kell a régi mobiltelefonjára. Ellenőrizze a videóbeállításokat, ennek megfelelően állítsa be a felbontást, és végül menjen le az utolsó „Szerver indítása” parancsra az átvitel elindításához. Ne felejtse el bekapcsolni a Wi-Fi-t a mobiltelefonban !!

10. lépés: MIT App Inventor2

MIT App Inventor2
MIT App Inventor2

Az MIT App inventor2 felhőalapú eszköz, amely segít alkalmazások létrehozásában a webböngészőben. Ezt az alkalmazást (csak android alapú mobiltelefonokhoz) ezután feltöltheti a cellájába, és irányíthatja robotkocsiját.

Csatolok.apk és.aia kódokat, hogy láthassa, mit tettem, és tetszés szerint módosíthassa. Az internetről származó kódot (MIT App) használtam, és saját módosításokat végeztem. Ez a kód vezérli a robotkocsi mozgását, jelet fogad az ultrahangos érzékelőtől, felkapcsolja a lámpákat és hangjelzést ad. Ezenkívül jelzést kap az elemektől, és tudatja velünk a feszültség szintjét.

Ezzel a kóddal két különböző jelet tudunk fogadni az autótól: 1) távolság a közeli tárgytól és 2) feszültség a motor és az arduino akkumulátoroktól.

A kapott soros karakterlánc azonosítása érdekében az Arduino kódjába zászlót illesztettem, amely meghatározza a küldött karakterlánc típusát. Ha az Arduino elküldi az ultrahangos érzékelőtől mért távolságot, akkor „A” karaktert küld a karakterlánc elé. Amikor az Arduino elküldi az akkumulátor töltöttségi szintjét, egy „B” karakterrel ellátott zászlót küld. Az MIT App inventors2 kódjában elemeztem az Arduino -ból származó soros karakterláncot, és ellenőriztem ezeket a jelzőket. Mint mondtam, kezdő vagyok, és biztos vagyok benne, hogy vannak hatékonyabb módszerek erre, és remélem, valaki jobban megvilágosíthat.

Küldje el az Arduino_Bluetooth_Car.apk fájlt a mobiltelefonjára (e -mailben vagy a Google Drive -on), és telepítse.

11. lépés: Csatlakoztassa mobiltelefonját RC autójához

Csatlakoztassa mobiltelefonját RC autójához
Csatlakoztassa mobiltelefonját RC autójához
Csatlakoztassa mobiltelefonját RC autójához
Csatlakoztassa mobiltelefonját RC autójához

Először is kapcsolja be a Wi-Fi-t a régi mobiltelefonban (az RC robotban).

A vezérlő mobiltelefonjában kapcsolja be a Wi-Fi-t, a Bluetooth-ot, és nyissa meg az Arduino_Bluetooth_Car.apk alkalmazást, amelyet éppen telepített. A képernyő végén (görgessen lefelé, ha nem látja) két gombot fog látni: Eszközök és CONNECT. Kattintson az Eszközök elemre, és válassza ki a Bluetooth -ot az RC Car -ból (valami HC 05 legyen), majd kattintson a CSATLAKOZTATÁS gombra, és látnia kell a CSATLAKOZTAT üzenetet a képernyő bal alsó sarkában. Az első alkalommal jelszót kell kérni (írja be a 0000 vagy az 1234 értéket).

Van egy doboz, ahol be kell írnia a régi cella IP -címét (az RC Car -ban lévő mobiltelefon), az én esetemben ez a

Ez az IP-szám észlelhető a Wi-Fi Routerben. Be kell lépnie az útválasztó konfigurációjába, ki kell választania az Eszközök listáját (vagy valami hasonlót az útválasztó márkájától függően), és látnia kell a régi cellaeszközt, kattintson rá, és írja be ezt az IP -számot ebbe a mezőbe.

Ezután válassza a CAMERA lehetőséget, és kezdje el nézni a kamera streamingjét az RC Car -ból.

12. lépés: Kész

Kész vagy!
Kész vagy!

Kész vagy! Kezdj el játszani vele

Jövőbeni változások: A 9 V-os akkumulátort Li-ion akkumulátorokra cserélem, hogy újratölthessem őket, és DC-DC fokozódó feszültségszabályozót használok, továbbá szeretném javítani az akkumulátor monitorát az analóg leolvasások simításával (átlagolásával). Nem tervezi az A. I. még…;-)

Beléptem az első tanulságos versenyemre… szóval kérem szavazzon;-)

Ajánlott: