Sisällysluettelo:

Robotti -auto Bluetoothilla, kameralla ja MIT App Inventorilla2: 12 vaihetta (kuvilla)
Robotti -auto Bluetoothilla, kameralla ja MIT App Inventorilla2: 12 vaihetta (kuvilla)

Video: Robotti -auto Bluetoothilla, kameralla ja MIT App Inventorilla2: 12 vaihetta (kuvilla)

Video: Robotti -auto Bluetoothilla, kameralla ja MIT App Inventorilla2: 12 vaihetta (kuvilla)
Video: САМАЯ МАЛЕНЬКАЯ КАМЕРА 2В1 | НОВИНКА 2024, Marraskuu
Anonim
Image
Image
Osat ja ohjelmisto
Osat ja ohjelmisto

Oletko koskaan halunnut rakentaa oman robottiautosi? No… tämä on tilaisuutesi !!

Tässä ohjeessa opastan sinua tekemään robottiauton, jota ohjataan Bluetoothin ja MIT App Inventor2: n kautta. Huomaa, että olen aloittelija ja että tämä on ensimmäinen instuctableni, joten ole lempeä kommenteissasi.

Siellä on monia ohjeita, mutta tässä olen yrittänyt yhdistää monia ominaisuuksia, kuten kameran suoratoiston, esteiden välttämisen, ultraäänialueen anturin, Larson -skannerin (charlieplexing) ja akun valvonnan Android -sovellukseen !!

Joten aloitetaan ja tavataan Frankie (se käyttää ideoita monesta paikasta…. Siis Robo Frankenstein)

Vaihe 1: Osat ja ohjelmisto

Osat ja ohjelmisto
Osat ja ohjelmisto
Osat ja ohjelmisto
Osat ja ohjelmisto

Täällä kotikaupungissani on vaikea saada kaikkia osia, joten pystyin saamaan suurimman osan niistä osoitteesta www.aliexpress.com

Arvioin, että hanke voidaan rakentaa 25-30 dollarin hinnalla ottamatta huomioon vanhaa matkapuhelinta.

  • Auton runko: 3 pyörää, 2 moottoria 6V (USD 9)
  • Arduino Nano (2 USD)
  • Bluetooth HC-05 (3-4 dollaria)
  • L293D -moottoriajuri vetopyörämoottoreille (1,50 USD 5 kappaleen erästä)
  • Vanha matkapuhelin, jossa on kamera ja Wi-Fi
  • Ultraäänianturi HC-SR04 lähellä olevan kohteen mittaamiseen (USD 1)
  • 6 LEDiä Larson -skannerille
  • ATtiny85 Larson -skannerille (1 USD)
  • Leipälauta (1 USD)
  • Johdot
  • 100K ohmin vastus (4)
  • 1K ohmin vastus (2)
  • 2K ohmin vastus (1)
  • 270 ohmin vastus (3)
  • Summeri

Ohjelmisto:

  • Arduino IDE
  • IP -verkkokamera (vanhalle Android -matkapuhelimelle)
  • MIT App Inventor2: Tämä sovellus on loistava, mutta toimii vain Android -käyttöjärjestelmälle (ei iPhoneja … anteeksi!)

Vaihe 2: Rakennusprosessi

Rakennusprosessi
Rakennusprosessi
Rakennusprosessi
Rakennusprosessi
Rakennusprosessi
Rakennusprosessi
Rakennusprosessi
Rakennusprosessi

Auton alusta on erittäin helppo koota; siinä on 2 6 V moottoria, jotka toimivat takapyörillä, ja 4 akkua.

Robot-autoa ohjataan Bluetoothin ja Wi-Fi: n kautta. Bluetooth ohjaa sarjaliikennettä auton ja MIT App keksijän2 välillä, ja Wi-Fi-yhteyttä käytetään kommunikoimaan auton eteen asennetun kameran (vanhan matkapuhelimen) kanssa.

Tässä projektissa olen käyttänyt kahta paristosarjaa: arduino saa virtansa 9 V: n akusta ja auton moottorit 6 V: sta (neljä 1,5 V AA -paristoa).

Arduino Nano on tämän projektin aivo, joka ohjaa autoa, summeria, ultraäänialueen anturia HC-SR04, Bluetooth HC-05, Larson-skanneria (ATtiny85) ja valvoo akkuja. 9 V: n akku menee Vinille (nasta 30) ja Arduinon nasta 27 antaa 5 V: n säädetyn tehon leipälevylle. Sinun on liitettävä kaikki perusteet kaikista IC -laitteista ja paristoista yhteen.

Liitteenä piirikaavio teki sen Excelissä (anteeksi…. Seuraavan kerran kokeilen Fritzingia). Olen liittänyt kaiken käyttämällä leipälautaa ja urosta urosliittimiin, omani näyttää rottien pesältä.

Vaihe 3: L293D -moottorin ohjain

L293D -moottorin ohjain
L293D -moottorin ohjain
L293D -moottorin ohjain
L293D -moottorin ohjain

L293D on nelinkertainen suuren virran puoli-H-ohjain, joka on suunniteltu tarjoamaan kaksisuuntaisia käyttövirtoja jopa 600 mA jännitteillä 4,5 V-36 V. Sitä käytetään auton pyörien ajamiseen.

Se saa virtansa 6 V: n akusta (neljä 1,5 V AA) moottoreille ja käyttää 5 V: n logiikkaa, joka tulee Arduino Nanon säädetystä 5 V: sta (nasta 27). Liitännät on esitetty liitteenä olevassa kaaviossa.

Sitä ei tarvinnut asentaa jäähdytyselementtiin.

Vaihe 4: HC-05 Bluetooth

HC-05 Bluetooth
HC-05 Bluetooth

HC-05 Bluetooth saa virtansa 5 V: sta (arduino-nasta 27), mutta on tärkeää ymmärtää, että logiikkataso on 3,3 V, eli tiedonsiirto (Tx ja Rx) 3,3 V: n kanssa. Siksi Rx on konfiguroitava enintään 3,3 V: lla, joka voidaan saavuttaa tasonsiirtomuuntimella tai, kuten tässä tapauksessa, jännitteenjakajalla käyttämällä 1K- ja 2K -vastuksia, kuten piirissä näkyy.

Vaihe 5: Akun valvonta

Akun varaustason valvontaa varten olen asettanut jännitteenjakajat, jotta jännitetasot saadaan alle 5 V: n (Arduinon maksimialue). Jännitteenjakaja pienentää mitattavan jännitteen Arduino -analogitulojen alueelle.

Analogisia tuloja A4 ja A6 käytetään ja suuria vastuksia (100K ohmia) käytetään, jotta akut eivät tyhjene liikaa mittausprosessissa. Meidän on tehtävä kompromisseja, jos vastukset ovat liian pieniä (10K ohmia), vähemmän kuormitusta, jännitteen lukeminen on tarkempaa, mutta enemmän virtaa; jos ne ovat liian korkeita (1 M ohmia), enemmän kuormitusta, jännitteen lukema on vähemmän tarkka, mutta vähemmän virtaa.

Akun valvonta suoritetaan 10 sekunnin välein ja näkyy suoraan ohjaimen matkapuhelimessa.

Olen varma, että tässä osassa on paljon parantamisen varaa, koska luen kahdesta analogisesta nastasta ja sisäinen MUX vaihtaa niiden välillä. En keskitä useita mittauksia ja ehkä minun pitäisi tehdä se.

Selitän seuraavan kaavan:

// Lue jännite analogisesta nastasta A4 ja kalibroi Arduino:

jännite1 = (analoginen (A4)*5,0/1024,0)*2,0; //8.0V

Arduino nano -levy sisältää 8-kanavaisen, 10-bittisen analogisesta digitaalimuuntimen. Toiminto analogRead () palauttaa luvun 0 ja 1023 välillä, joka on verrannollinen nastan jännitteeseen. Tämä antaa tarkkuuden lukemien välillä: 5 volttia / 1024 yksikköä tai 0,0049 volttia (4,9 mV) yksikköä kohti.

Jännitteenjakaja puolittaa jännitteen ja todellisen jännitteen saamiseksi täytyy kertoa 2: lla !!

TÄRKEÄÄ: Olen varma, että on olemassa tehokkaampi tapa valvoa arduinoa kuin tapa, jolla teen sen !! Aloittelijana olen oppinut vaikean tavan. Arduino Vin -tappi käyttää lineaarista jännitesäädintä, mikä tarkoittaa, että 9 V: n paristolla poltat suuren osan itse lineaarisen säätimen tehosta! Ei hyvä. Tein sen tällä tavalla, koska se oli nopeaa ja vain koska en tiennyt paremmin … mutta ole varma, että Robo Frankien versiossa 2.0 teen varmasti toisin.

Ajattelen (ääneen), että DC DC: n tehostettu kytkentävirtalähde ja ladattava litiumioniakku voivat olla parempi tapa. Ystävällinen ehdotuksesi on enemmän kuin tervetullut…

Vaihe 6: Ultraääni-anturi HC-SR04

HC-SR04 ultraääni-alueanturi
HC-SR04 ultraääni-alueanturi

HC-SR04 on ultraäänialueen anturi. Tämä anturi mittaa 2–400 cm ja vaihtelee tarkkuudella jopa 3 mm. Tässä projektissa sitä käytetään välttämään esteitä, kun se saavuttaa 20 cm tai vähemmän, sekä mittaamaan etäisyyttä mihin tahansa kohteeseen, joka lähetetään takaisin matkapuhelimeesi.

Matkapuhelimen näytössä on painike, jota on napsautettava etäisyyden pyytämiseksi lähellä olevaan kohteeseen.

Vaihe 7: Larson -skanneri

Larson -skanneri
Larson -skanneri
Larson -skanneri
Larson -skanneri
Larson -skanneri
Larson -skanneri

Halusin sisällyttää jotain hauskaa, joten otin mukaan Larson -skannerin, joka muistuttaa K. I. T. T. Knight Rideriltä.

Larson -skannerissa olen käyttänyt ATtiny85: tä charlieplexingin kanssa. Charlieplexing on tekniikka multipleksoidun näytön ohjaamiseen, jossa suhteellisen vähän mikro -ohjaimen I/O -nastoja käytetään LED -valojen käyttämiseen. Menetelmä käyttää mikro-ohjaimien kolmen tilan logiikkaominaisuuksia tehokkuuden saavuttamiseksi perinteiseen multipleksointiin verrattuna.

Tässä tapauksessa käytän 3 nastaa ATtiny85: stä 6 LED: n sytyttämiseen!

Voisit sytyttää "X" LEDit N -nastalla. Seuraavan kaavan avulla voit selvittää, kuinka monta LEDiä voit ajaa:

X = N (N-1) LEDiä, joissa on N-nastat:

3 nastaa: 6 LEDiä;

4 nastaa: 12 LEDiä;

5 nastaa: 20 LEDiä … saat idean;-)

Virta virtaa positiivisesta (anodi) negatiiviseksi (katodi). Nuolen kärki on katodi.

On tärkeää huomata, että nasta 1 (Arduino IDE -koodissa) viittaa ATtiny85: n fyysiseen nastaan 6 (katso liitteenä oleva pistoke).

Löydät liitteenä koodin, joka on ladattava ATtiny85: een, joka ohjaa Larson -skanneria. En kuvaile kuinka ladata koodi ATtiny85: een, koska on olemassa paljon ohjeita, jotka tekevät tämän, kuten tämä.

Vaihe 8: Koodi

Koodi
Koodi

Liitän koodin, joka on ladattava ATtiny85: een, joka ohjaa Larson -skanneria ja Arduino nanon koodia.

Mitä tulee Arduino nanoon, olen käyttänyt osaa muiden ohjeiden koodeista (tässä) ja tehnyt muutoksia tarpeitteni mukaan. Olen lisännyt vuokaavion (myös sanalla selkeämmän kuvan) koodista ymmärtääkseni paremmin, miten Switch - Case toimii.

Tärkeää: Jotta voit ladata CarBluetooth-koodin Arduino nanoon, sinun on irrotettava Rx ja Tx HC-05 Bluetooth-moduulista!

Vaihe 9: Kamera

Kamera
Kamera
Kamera
Kamera

IP -verkkokamerasovellus on ladattava Play -kaupasta ja asennettava vanhaan matkapuhelimeesi. Tarkista videoasetukset, säädä resoluutio vastaavasti ja lopuksi siirry viimeiseen komentoon "Käynnistä palvelin" aloittaaksesi lähetyksen. Älä unohda ottaa Wi-Fi käyttöön matkapuhelimessa !!

Vaihe 10: MIT App Inventor2

MIT App Inventor2
MIT App Inventor2

MIT App inventor2 on pilvipohjainen työkalu, joka auttaa luomaan sovelluksia verkkoselaimeesi. Tämä sovellus (vain Android -pohjainen matkapuhelin) voidaan sitten ladata matkapuhelimeesi ja ohjata robottiautoa.

Liitän.apk- ja.aia -koodit, jotta näet, mitä olen tehnyt, ja voit muokata sitä haluamallasi tavalla. Olen käyttänyt koodia Internetistä (MIT App) ja tehnyt omia muutoksia. Tämä koodi ohjaa robottiauton liikettä, vastaanottaa signaalin ultraäänianturilta, sytyttää valot ja antaa äänimerkin. Se vastaanottaa myös signaalin paristoista ja kertoo meille jännitetason.

Tällä koodilla pystymme vastaanottamaan kaksi erilaista signaalia autosta: 1) etäisyys lähellä olevaan kohteeseen ja 2) jännite moottorista ja arduinon akuista.

Vastaanotetun sarjamerkkijonon tunnistamiseksi olen sisällyttänyt Arduinon koodiin lipun, joka määrittää lähetettävän merkkijonon tyypin. Jos Arduino lähettää ultraäänianturilta mitatun etäisyyden, se lähettää "A" -merkin merkkijonon eteen. Aina kun Arduino lähettää akun varaustason, se lähettää lipun, jossa on B -merkki. MIT App inventors2 -koodissa olen jäsentänyt Arduinosta tulevan sarjamerkkijonon ja tarkistanut nämä liput. Kuten sanoin, olen aloittelija ja olen varma, että tähän on olemassa tehokkaampia tapoja, ja toivon, että joku voi valaista minua paremmin.

Lähetä Arduino_Bluetooth_Car.apk matkapuhelimeesi (sähköpostitse tai Google Drivessa) ja asenna se.

Vaihe 11: Liitä matkapuhelimesi RC -autoosi

Liitä matkapuhelimesi RC -autoosi
Liitä matkapuhelimesi RC -autoosi
Liitä matkapuhelimesi RC -autoosi
Liitä matkapuhelimesi RC -autoosi

Ensinnäkin, ota wi-fi käyttöön vanhassa matkapuhelimessa (RC-robotissa).

Kytke ohjaimen matkapuhelimessa päälle langaton verkko, Bluetooth ja avaa juuri asentamasi Arduino_Bluetooth_Car.apk. Näytön lopussa (vieritä alas, jos et näe sitä) näet kaksi painiketta: Laitteet ja YHDISTÄ. Napsauta Laitteet ja valitse Bluetooth RC Car -laitteestasi (sen pitäisi olla jotain HC 05). Napsauta sitten YHDISTÄ ja näet YHDISTETTY -viestin näytön vasemmassa alakulmassa. Ensimmäistä kertaa sinulta kysytään salasanaa (syötä 0000 tai 1234).

Siellä on laatikko, johon sinun on kirjoitettava vanhan matkapuhelimesi IP -osoite (matkapuhelin, joka on RC -autossasi), minun tapauksessani se on

Tämä IP-numero voidaan tunnistaa Wi-Fi-reitittimestäsi. Sinun on päästävä reitittimen kokoonpanoon, valittava Laitelista (tai jotain vastaavaa reitittimen brändistä riippuen), ja sinun pitäisi pystyä näkemään vanha matkapuhelin, napsauta sitä ja kirjoita tämä IP -numero tähän ruutuun.

Valitse sitten CAMERA ja sinun pitäisi alkaa katsella kameran suoratoistoa RC Car -laitteestasi.

Vaihe 12: Olet valmis

Olet valmis!
Olet valmis!

Olet valmis! Aloita pelaaminen sen kanssa

Tulevat muutokset: Vaihdan 9 V: n pariston litiumioniakkuihin niiden lataamiseksi ja käytän DC-DC-tehostinjännitesäädintä. Haluan myös parantaa akun näyttöä tasoittamalla (keskiarvoistamalla) analogiset lukemat. Ei suunnittele sisällyttävän A. I. vielä …;-)

Olen osallistunut ensimmäiseen ohjattavaan kilpailuuni… joten äänestäkää;-)

Suositeltava: