Sisukord:
- 1. samm: tutvustav video
- 2. samm: ROVIERi lugu
- 3. samm: komponendid ja osad
- 4. samm: hääljuhtimise teooria
- 5. samm: žestikontrolli teooria
- 6. samm: Bluetoothi juhtimisteooria
- 7. samm: takistuste vältimise teooria
- 8. samm: šassii kokkupanek
- 9. samm: häälemooduli ettevalmistamine
- Samm: ühenduste loomine
- Samm: Arduino kood
- 12. samm: probleemide lahendamine ja paranduste tegemine
- 13. samm: robotiga mängimine
Video: DIY mitme esiletõstetud robot Arduinoga: 13 sammu (piltidega)
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
See robot ehitati peamiselt Arduino mõistmiseks ja Arduino erinevate projektide ühendamiseks, et moodustada mitmeosaline Arduino robot. Ja edasi, kes ei tahaks lemmikloomarobotit omada? Nii et panin sellele nimeks BLUE ROVIER 316. Oleksin võinud osta ilusa roomikutega šassii, kuid selle nullist tegemine õpetab teile rohkem ja annab pärast ukse valmimist suuremat uhkust. Robot on võimeline mõistma häälkäsklusi, vastama lihtsatele küsimustele ja juhtima RC -auto ja isegi takistuste vältimine liikumise ajal. Seda juhitakse peamiselt Android -telefoni kaudu, mis on sellega ühendatud Bluetoothi kaudu. Tuginedes Androidi funktsioonidele, nagu Google'i häältuvastus ja kallutamise tuvastamine, võib see tõesti käituda nagu armas ja tark robot. Lisasin oma nimele SINISE, kuna see põhineb peamiselt Bluetoothil. See oli tegelikult minu esimene Arduino projekt ja ma tahtsin, et see oleks ainulaadne. Kui teile projekt meeldib, palun hääletage minu eest robootikavõistlusel!
1. samm: tutvustav video
Roboti demot saate vaadata sellel saidil:
2. samm: ROVIERi lugu
Võite hüpata järgmisele sammule, kui te ei soovi BLUE ROVIER 316 armas lugu läbi vaadata. Umbes aasta tagasi sain oma isalt kingituseks Arduino UNO. Kuna see oli minu esimene samm Arduino vallas, tahtsin Arduino üldprojektidest luua midagi teistsugust ja ainulaadset. See pidi olema armas ja tark robot, kes mõistab häälkäsklusi ja teeb palju intelligentsemaid asju, nagu kaugjuhtimispult, joonte järgimine, takistuste vältimine ja nii edasi. Küsimus oli selles, kuidas neid ühendada. Ja pärast päris mõnusat aega netis surfamist jõudsin järeldusele, et Bluetooth oleks odavaim režiim. Ja nii, BLUE ROVIER käivitati. Kuid tekkis olukord, kus pidin välistama paljud roboti omadused, mida ma eeldasin, et see on valdav, peamiselt Arduino UNO mälu puudumise tõttu (isegi vähem digitaalsed tihvtid UNO -l). Pole tähtis, jätkasin. Roboti lõpliku versiooni loomine võttis mul tõesti palju aega. Ja nii pärast mitmeid katseid ja ebaõnnestumisi tekkis lõpuks BLUE ROVIER. Ja nii saame nüüd edasi liikuda roboti tegemise juurde.
3. samm: komponendid ja osad
Teil on vaja ainult järgmisi komponente: 1. Androidi süsteem 2. Arduino Uno 3. wtv020-sd-16p moodul ja 8 oomi kõlar4. 2x L293d mootorikontrolleri ahel 5. 4x bo mootorid ja rattad6. HC SR04 ultraheliandur 7. 9g servo8. 8 AA patareipesa ja patareid 9. 1gb micro SD kaart 10. väike lülituskarp šassii jaoks.11. HC 05 Bluetooth -moodulMa tean, et see tundub kulukas! Kuid ärge muretsege, see maksab ainult umbes kaks või kolm tuhat ruupiat. Androidist rääkides ei ole selle omamine suur probleem, sest enamikul on see tänapäeval olemas. Kuid uuemate versioonide (üle 5,0) olemasolu võib suurendada jõudlust. Proovige osta mõõduka pööretega (60 kuni 100) pöörlevaid mootoreid. See aitaks roboti kiirust kontrolli all hoida, kuna muud kiiruse reguleerimise ahelat pole paigaldatud. Ja 8 aa patareist piisab, et robotiga korralikult aega toita. Bluetoothi arvestades sobib HC 05 robotile, kuna see on piisavalt odav ja ka jõudlus on silmapaistev. 1 GB micro SD -kaarti on vaja häälfailide salvestamiseks, mida esitatakse, kui robotile esitatakse mõni küsimus [Üksikasjalikult arutatakse intstructable'i hilisemas osas]. Ülejäänud komponente käsitletakse üksikasjalikult vastavas etapis.
Nüüd liigume mõne lihtsa "teooria" juurde, mida selles robotis kasutatakse.
4. samm: hääljuhtimise teooria
Robot saab Android -telefoni kaudu häälkäsklustest aru. Ma arvan, et kõik on tuttavad Google'i häältuvastusega, Androidi funktsiooniga, kus me ütleme sõna ja Google seda trükib. Sama funktsiooni kasutatakse siin ka häälkäskluste äratundmiseks ja nende muutmiseks tekstkäsklusteks. Siinne rakendus teisendab kõne Google'i kaudu tekstiks ja saadab selle Bluetoothi kaudu robotile. Robot on programmeeritud järgima neid Bluetoothi kaudu saadud käske. Samuti on see võimeline vastama paljudele küsimustele. Võite isegi lisada koodi veel mõned käsud, et robot saaks teha veelgi vingemaid asju. Siin on Androidi rakendus:
5. samm: žestikontrolli teooria
Liigutuste juhtimise või liikumise juhtimise režiim toimub ka Androidi kaudu. Selles režiimis saab robotit juhtida RC -autona, kasutades Androidi roolina. Kõigis androidides on andur nimega "Kiirendusmõõtur", mida selles režiimis kasutatakse. See kiirendusmõõtur saab Androidile mõjuvate kiirendusjõudude abil määrata telefoni tiitli nurga. Just see andur paneb Androidi ekraani pöörama, kui telefoni kallutame. Siinne rakendus kasutab telefoni kiirendusmõõturit, et määrata telefoni kallutamise nurk. Seejärel saadetakse robotile Bluetoothi kaudu märk (A, B…). Arduino on programmeeritud töötama vastavalt saadud andmetele. Kui telefon on ette kallutatud, saadetakse märk A ja robot liigub edasi. Tagasi kallutades saadetakse märk B ja robot liigub tahapoole ja nii vasakule kui paremale. Kui Android on horisontaalselt paigutatud, saadetakse märk E ja robot lakkab liikumast.
6. samm: Bluetoothi juhtimisteooria
Selles režiimis töötab robot tavalise RC -autona. Selles režiimis pole midagi uut, see on sama, mis turul saadaval olev üldine kaugjuhtimisega auto, ainus erinevus on see, et me kasutame roboti juhtimiseks Androidi rakendust. Rakenduses on erinevad nupud, millest igaühel on erinevad märgid sellega seotud. Kui puudutate mõnda klahvi, saadetakse robotile Bluetoothi kaudu tegelane, nagu žestide juhtimisrežiim. Lisaks saadetakse samad märgid vastavate klahvide puudutamisel ja robot järgib sissetulevaid märke. Olen kasutanud rakenduses 360 ja -360 kraadi nuppe, et robot näeks paremale ja vasakule. Saate seda koodis muuta, kui soovite, et robot teeks muid asju.
7. samm: takistuste vältimise teooria
Selles režiimis töötab robot takistuste vältimise robotina, hoides ära kokkupõrke mis tahes objektiga. Seda tehakse HC SR04 anduriga. Küllap teate SONARist (heli navigeerimine ja helitugevus). HC SR04 andur kiirgab pidevalt ultrahelilaineid. Need lained põrkuvad pärast tugeva pinnaga löömist tagasi ja tulevad tagasi anduri juurde. Lainete andurile naasmiseks kuluv aeg salvestatakse. Kuna heli liigub kiirusega umbes 340 m/s ja me teame, et SPEED × TIME = DISTANCE, saame määrata kauguse ees. Näiteks kui heli võtab 2 sekundit tagasi tulles saame kauguse määrata ülaltoodud valemi abil, st 340 × 2 = 680 m. Nii saab robot mõõta anduri kaudu enda ees olevat kaugust. Liigutamise ajal mõõdab robot pidevalt anduri kaudu eesolevat kaugust. Kui ta tunneb, et selle ees olev vaba ruum on alla 30 cm, lõpetab see liikumise. Siis vaatab see vasakule ja paremale ning võrdleb mõlema külje kaugust. Kui vasakul küljel on suurem vahemaa, pöörab robot vasakule. Muidu, kui parem pool on suurem, pöörab robot paremale. Kui mõlemal poolel on võrdsed vahemaad, pöörab robot tagasi. See lihtne mehhanism aitab robotil takistusi vältida.
8. samm: šassii kokkupanek
Šassii iseseisvalt valmistades peate mõõtmiste ja joonduste suhtes olema väga ettevaatlik. Ma otsustasin seda teha, sest ma ei leidnud võrgust ühtegi, mis mind rahuldaks. Šassiina kasutatakse toiteallikaks kasutatavat üldist lülituskarbi. Ma arvan, et saate selle kergesti elektriseadmete poest. Esiteks kinnitage neli mootorit põhjas mõne liimi või klambritega ja seejärel kinnitage rattad. Seejärel peate tegema roboti pea (servo ja HC SR04 andur). Pea jaoks lõigake väike tükk perfboardi ja kinnitage see servo külge kruvi abil. Seejärel kinnitage ultraheliandur mõne liimiga parfüümi külge. Lõika karbi ülaosast väike ruudukujuline auk ja kinnita servo sellesse. Seejärel kinnitage kruvi abil patareipesa roboti tagaküljele. Pange vooluringid ja muud komponendid kasti sisse ning teie šassii on valmis. Ärge unustage teha kõlari ette auke, et heli tuleks välja ja tekitaks paremat kvaliteeti.
9. samm: häälemooduli ettevalmistamine
Roboti kõnerežiimi täidab WTV 020 SD moodul. Moodulit kasutatakse robotile häälfailide esitamiseks. Kui esitatakse mõni küsimus, paneb arduino mooduli esitama SD -kaardil vastavat häälfaili. Moodulil on neli jadaandmeside rida, et suhelda arduino, lähtestamise, kella, andmete ja hõivatud tihvtidega. Pidage meeles, et failide nimed peavad olema kümnendkohaga (0001, 0002…). Ja et failid peaksid olema kas AD4 või WAV vormingus. Lisaks töötab moodul ainult 1 GB micro SD -kaardiga. Mõned moodulid töötavad isegi 2 GB kaartidel ja kaardile mahub maksimaalselt 504 häälfaili. Nii saate paljude küsimuste esitamiseks lisada hulga häälefaile. Võite isegi luua oma hääle AD4 -faile (saate selle osa vahele jätta, kui saate kohandada koos selle intstructable pakutavate häälefailidega)., teil peab olema kaks tarkvara, helitöötlustarkvara ja tarkvara nimega 4D SOMO TOOL, mis teisendab failid AD4 -vormingusse. Teiseks peate ette valmistama robothääled. Saate teksti teisendada kõneks või isegi salvestada oma hääle ja teha roboti hääli. Mõlemat saab teha helitöötlustarkvaras. Kuid kindlasti ei näe robotid hea välja, kui nad räägivad inimhääli. Seega peaks teksti teisendamine kõneks olema parem. On mitmeid mootoreid, nagu Microsoft Anna ja Microsoft Sam teie arvuti, mis aitaksid seda teha. Pärast häälfailide ettevalmistamist peate selle salvestama 32000 Hz ja WAV -vormingus. Selle põhjuseks on asjaolu, et moodul suudab esitada helifaile kuni 32000 Hz. Seejärel kasutage failide teisendamiseks AD4 -vormingusse 4D SOMO TOOL. Selleks avage lihtsalt SOMO TOOL, valige failid ja klõpsake AD4 Encode ning teie häälfailid on valmis. Saate vaadata ülaltoodud pilti. Kui soovite robothäälte tegemise kohta lisateavet, võite minna siia:
[Robothäälte tegemine] Siin on originaalsed häälfailid ja tarkvara:
Samm: ühenduste loomine
Lühendage kõik vastavate moodulite Vcc -tihvtid kokku ja ühendage see arduino 5 -voldisega. Tehke sama ka gnd -tihvtide puhul. Siin on erinevate moodulite ühendused. HC 05 moodul: RX tihvt arduino dig pin 0. TX pin arduino dig pin 1. HC SR04 sensor: kaja tihvt arduino dig pin 6. Trig pin to arduino dig pin 7WTV020-SD moodul: pin1 (lähtesta pin) arduino dig pin 2. pin4 kõlarile +pin5 kõlarile -pin7 (kell) arduino dig pin 3. pin8 kuni gnd.pin10 (andmed) arduino dig pin 4. pin15 (hõivatud) kuni arduino dig pin5.pin16 kuni 3.3v Seejärel ühendage servosignaali (kollane) juhe ja kaevake tihvtiga 12. L293d mootorikontroller: tihvt A1 kuni arduino kaevandusnõel 8. tihvt A2 kuni arduino kaevandusnõel 9. nööpnõel B1 arduino kaevutihvtiga 10. tihvt B2 arduino dig pin 11. pidage meeles, et selles robotis kasutame kahte L293d moodulit. Seda seetõttu, et ühe mooduli võimsus on kuni kaks mootorit. Nelja mootori juhtimiseks kasutame kahte mootorijuhti. Nii et ärge unustage teha mõlemas mootorikontrolleri moodulis topeltühendusi. Näiteks ühendage Arduino tihvt 8 mõlema draiverimooduli tihvtiga A1. Ärge unustage ühendada ühe mooduli väljund kahele mootorile ja teise mooduli ülejäänud kahele mootorile. Lisateabe saamiseks vaadake diagrammi.
Samm: Arduino kood
Koodi tegemine oli põnev aeg. See pole üldse keeruline kood, see kasutab lihtsalt mõnda raamatukogu, et suhelda Androidi ja helimooduliga. Suur osa tööst tehakse Androidis, mitte Arduinos. Kood põhineb Bluetooth -suhtlusel ja Bluetoothi kaudu saabuvatel andmetel. Kood on koostatud nii, et peame andma robotile häälkäsklusi erinevate režiimide täitmiseks ja Arduino kontrollib pidevalt sissetulevaid Bluetooth -signaale. Mis tahes režiimi peatamiseks peame lihtsalt ütlema "stop". Ainus probleem koodiga on see, et peame takistuste vältimise režiimis roboti käsitsi välja lülitama. Me ei saa selles režiimis käsku "stop" kasutada. Selle põhjuseks on asjaolu, et selle funktsiooni sisselülitamine mõjutab objektide kauguse skannimise kiirust. Arduino peab lugema samaaegselt nii objekti kaugust kui ka sissetulevaid Bluetooth -signaale. See häirib režiimi ja robot ei suuda end täielikult takistuste eest kaitsta. Robot ei pruugi koheselt peatuda, isegi kui eespool on vähem kui 30 cm. Seega oleks hea seda funktsiooni sellesse režiimi mitte lisada. Lihtsalt laadige alla raamatukogud ja kood ning laadige see Arduinole üles. Kuid ärge unustage enne üleslaadimist Arduino'st välja võtta TX- ja RX (0, 1) tihvtid. Neid tihvte kasutatakse jadaühenduseks ja neid kasutatakse koodi üleslaadimise ajal. Ja selles robotis kasutatakse neid tihvte Bluetooth -mooduli ühendamiseks. Ärge unustage neid eemaldada, muidu võib see teie Bluetooth -moodulit takistada. Siin on kood ja teegid:
12. samm: probleemide lahendamine ja paranduste tegemine
Saate selle sammu vahele jätta, kuna see käsitleb ainult roboti täiustusi. Mooduli WTV-020-SD-16p puhul tekib mälukaardi mahutavusega seoses palju probleeme. Seda seetõttu, et mõned moodulid töötavad 2 GB kaartidel, mõned aga mitte. Seega on parem kasutada 1 GB micro SD -kaarti. Komponentide erinevate versioonide kasutamisel poleks palju probleeme. Mainida võib wtv 020 sd mooduli erinevaid versioone. Selle põhjuseks on asjaolu, et moodulite vahel on ainult pakendite erinevus, samas kui enamik muid sisemisi asju jääb samaks. Teine oluline asi, trükkplaadi kasutamine roboti jaoks aitab suuresti vähendada praegust tarbimist. Kui ühendate erinevaid komponente nagu mina, kuluks see teile mõnevõrra voolu, kuna suur osa sellest kaob juhtmetesse, millel on suur takistus. Seda seetõttu, et vooluring on piisavalt suur. See intstructable ei hõlma trükkplaadi projekteerimist (kuna mina seda ei teinud), kuid see võib suurendada roboti energiatõhusust. Kuid BLUE ROVIER 316 pole veel valmis! Mõtlesin lisada veel mõned funktsioonid, nagu ridade järgimine, labürintide lahendamine ja palju muud. Kuid see jäi unistuseks, kuna Arduino UNO -l puudusid tihvtid (BLUE ROVIER sööb tõesti palju Arduino nööpnõelu). Seega mõtlen täiustada selle roboti kõiki funktsioone ja kombineerida need, et moodustada keerukam ja kasulikum Arduino robot. Nii et olge valmis mõne kuu pärast nägema ROVIERi muudetud vaadet !!! Ma isegi soovin näha roboti teisi modifitseeritud versioone teiste inimeste poolt, kellel on rohkem loovust kui minul !!!!
13. samm: robotiga mängimine
Lülitage robot sisse ja vaadake, kuidas see teid tervitab, teiega mängib. Küsige ükskõik millist küsimust (mitte rumalaid!) Ja vaadake selle vastust. Võite öelda, et järgige ridu või minge edasi. Kui soovite robotit peatada, öelge lihtsalt „stop”.
Robootikavõistluse 2017 teine koht
Soovitan:
Mitme analoogväärtuse lugemine ühe analoogpinna abil: 6 sammu (piltidega)
Mitme analoogväärtuse lugemine ühe analoogpinna abil: Selles õpetuses näitan teile, kuidas lugeda mitut analoogväärtust, kasutades ainult ühte analoogsisendit
Mitme kanaliga Wifi pinge- ja voolumõõtur: 11 sammu (piltidega)
Mitme kanaliga Wifi pinge- ja voolumõõtur: leivaplaadi paigaldamisel tuleb sageli jälgida vooluahela erinevaid osi korraga. Et vältida valu, mis peaks multimeetri sondid ühest kohast teise kleepima, tahtsin kujundada mitme kanaliga pinge- ja voolumõõturi. Ina260 plaat
Arduino mitme valguskontroller: 7 sammu (piltidega)
Arduino mitme valguskontroller: kolleeg ja kunstnik Jim Hobbs plaanis ehitada eraldiseisva installatsiooni näitusele, mille ta kokku pani. See installatsioon koosneks kaheksast riiulist, mis moodustavad paraboolse kuju. Igal kaheksal riiulil pidi olema kümme lambipirni
Täieliku esiletõstetud SpamAssassini kasutamine Pair.com -i hostitud kontodel: 9 sammu
Täisfunktsionaalse SpamAssassini kasutamine Pair.com -i hostitud kontodel: võõrustan paari.com domeeni või kahte. Neil on suurepärased hostimisfunktsioonid, nagu SSH kest, mysql, php tugi ja palju muud. Neil pole aga täieõiguslikku SpamAssassini installimist. Neil on imelik eemaldatud versioon, mis võimaldab teil lisada ainult musta
RGB LED esiletõstetud plastist söövitus/graveeritud pilt raamiga: 5 sammu
RGB LED -i esiletõstetud plastist söövitus/graveeritud pilt raamiga: Tere, see on õpetlik, kuidas ma tegin Kanji söövituse läbipaistvale plastplaadile ja seejärel hindasin raami RGB -lülituse, et esile tuua söövitatud/graveeritud tähemärke. Olen üsna kindel, et olen näinud seda üldist ideed kusagil kasutusel (