Sisukord:

Navigeerige robot kingade anduritega, ilma GPS -iga, ilma kaardita: 13 sammu (koos piltidega)
Navigeerige robot kingade anduritega, ilma GPS -iga, ilma kaardita: 13 sammu (koos piltidega)

Video: Navigeerige robot kingade anduritega, ilma GPS -iga, ilma kaardita: 13 sammu (koos piltidega)

Video: Navigeerige robot kingade anduritega, ilma GPS -iga, ilma kaardita: 13 sammu (koos piltidega)
Video: Как нарисовать девушку со спины легко. Как нарисовать девушку в платье со спины. 2024, November
Anonim

Jälgi Teave: oblu on siseruumides navigeerimise andur Lisateave oblu kohta »

Robot liigub eelnevalt programmeeritud teel ja edastab (bluetoothi kaudu) oma tegeliku liikumisteabe telefonile reaalajas jälgimiseks. Arduino on eelnevalt programmeeritud teega ja oblu kasutatakse roboti liikumise tuvastamiseks. oblu edastab liikumisteavet Arduinole regulaarsete ajavahemike järel. Selle põhjal kontrollib Arduino rataste liigutusi, et robot saaks järgida etteantud rada.

1. samm: LÜHISISSEJUHATUS

LÜHISISSEJUHATUS
LÜHISISSEJUHATUS

Projekt seisneb selles, et panna robot täpselt liikuma etteantud rajal, kasutamata positsioneerimiseks GPS-i, WiFi-d või Bluetoothi, isegi mitte kaarti või hoone paigutusplaani. Ja joonistage selle tegelik tee (skaalale) reaalajas. Bluetoothi saab kasutada juhtme asendajana reaalajas asukohaandmete edastamiseks.

2. samm: Huvitav taustalugu

Huvitav taustalugu
Huvitav taustalugu

Meie meeskonna peamine tegevuskava on jalatsitele paigaldatud jalakäijate navigeerimisandurite väljatöötamine. Siiski pöördus meie poole akadeemiline uurimisrühm nõudega, et robot siseruumides navigeeriks ja samal ajal jälgiks selle reaalajas asukohta. Nad tahtsid kasutada sellist süsteemi kiirguse kaardistamiseks suletud kambris või avastasid gaasi lekke tööstuslikus seadmes. Sellised kohad on inimestele ohtlikud. otsime jõulist lahendust meie Arduino põhise roboti siseruumides navigeerimiseks.

Meie ilmselge valik mis tahes liikumisanduri mooduli (IMU) jaoks oli "oblu" (vt pildi kohal). Kuid keeruline osa oli siin see, et oblu olemasolev püsivara sobis lihtsate sõnadega jalale paigaldatud siseruumides jalakäijate surnute arveldamiseks (PDR) või jalakäijate navigeerimiseks. oblu PDR jõudlus siseruumides jalale paigaldatud IMU-na on üsna muljetavaldav. Eeliseid lisab Androidi rakenduse (Xoblu) kättesaadavus oblu reaalajas jälgimiseks kingaandurina. Siiski oli väljakutseks kasutada olemasolevat algoritmi, mis põhineb inimeste kõndimismudelil, robotis navigeerimiseks ja selle jälgimiseks.

3. samm: LÜHIKE SISSEJUHATUS "oblu"

Image
Image
SÜSTEEMI KIRJELDUS
SÜSTEEMI KIRJELDUS

"oblu" on miniatuursed, odavad ja avatud lähtekoodiga arendusplatvormid, mis on suunatud kantavatele liikumisanduritele. See on laetav liitium-ioon aku ja võimaldab pardal olevat USB-akut laadida. Sellel on sisseehitatud Bluetooth (BLE 4.1) moodul traadita side jaoks. "oblu" sisaldab 32-bitist ujukomaga mikrokontrollerit (Atmeli AT32UC3C), mis võimaldab pardal lahendada keerulisi navigeerimisvõrrandeid. Seetõttu teostatakse kogu liikumistöötlus oblul ja edastatakse ainult lõpptulemus. See muudab oblu integreerimise sidussüsteemiga äärmiselt lihtsaks. "oblu" sisaldab ka mitme IMU (MIMU) massiivi, mis võimaldab andurite sulandamist ja parandab liikumistundlikkust. MIMU lähenemisviis lisab "oblu" ainulaadsust.

oblu sisemised arvutused põhinevad inimeste kõndimisel. oblu annab nihke kahe järjestikuse sammu ja pealkirja muutmise vahel. Kuidas - kui jalg maapinnaga kokku puutub, on talla kiirus null, s.t talla seisab. Nii tuvastab oblu „sammud” ja parandab mõned sisemised vead. Ja see vigade sagedane parandamine tagab suurepärase jälgimise. Nii et siin peitub saak. Mis siis, kui ka meie robot samamoodi kõnnib - liiguta, peatu, liigu, peatu … Tegelikult võiks oblu kasutada mis tahes objekti puhul, mille liikumisel on korrapärased null- ja nullimomendid. Nii liikusime obluga edasi ja saime kiiresti oma roboti ja jälgimissüsteemi kokku panna.

4. samm: MIS ON "oblu" KASU?

Peaaegu 70% ajast veedame siseruumides. Seetõttu on palju rakendusi, mis nõuavad inimeste ja masinate navigeerimist siseruumides. Kõige sagedamini kasutatav positsioneerimislahendus on satelliidipõhine GPS/GNSS, mis sobib hästi väljas navigeerimiseks. See ebaõnnestub siseruumides või linnakeskkonnas, kuhu ei pääse selge taeva poole. Sellised rakendused on agulite või raskete puude võrade all olevate alade geouuring, robotite siseruumides navigeerimine, päästeagentide paigutamine tuletõrjeks, kaevandusõnnetused, linnasõda jne.

Oblu eelkäijat tutvustati väga kompaktse kingaandurina (või PDR-andurina) tuletõrjujate positsioneerimiseks, mida hiljem täiustati ja muudeti kui väga konfigureeritavat arendusplatvormi tegijatele, kes otsivad lihtsat ja täpset taskukohane inertsiaalahendus inimeste ja robotite siseruumides navigeerimiseks. Seni on oblu kasutajad demonstreerinud oma rakendusi jalakäijate jälgimisel, tööohutuse ja ressursside haldamisel, taktikalises politseitöös, GPS-i puuduva piirkonna geo-uuringus, ise navigeerivas robotis, abirobootikas, mängudes, AR/VR-is, liikumishäirete ravis, füüsika mõistmises. liikumine jne. oblu sobib ruumipiirangutega rakendustele, nt kantava liikumise tuvastamine. Tänu pardal olevale Bluetoothile saab seda kasutada ka traadita IMU-na. Sisseehitatud ujukoma töötlemise võimalus koos nelja IMU-massiiviga võimaldavad anduri sulandumist ja liikumise töötlemist moodulis endas, mis omakorda annab tulemuseks väga täpse liikumistundlikkuse.

5. samm: PROJEKTI LUGU

Image
Image

Selle projekti lugu on videos …

6. samm: SÜSTEEMI KIRJELDUS

Robot liigub eelnevalt programmeeritud teel ja edastab (bluetoothi kaudu) oma tegeliku liikumisteabe telefonile reaalajas jälgimiseks.

Arduino on eelnevalt programmeeritud teega ja oblu kasutatakse roboti liikumise tuvastamiseks. oblu edastab regulaarselt liikumisteavet Arduinole. Selle põhjal kontrollib Arduino rataste liikumist, et robot saaks eelnevalt määratud rada jälgida.

Roboti tee on programmeeritud sirgjooneliste segmentide komplektina. Iga reaosa on määratletud selle pikkuse ja orientatsiooni alusel. Roboti liikumist hoitakse diskreetselt, s.t ta liigub sirgjooneliselt, kuid väiksemate segmentidena (lihtsuse huvides võib seda nimetada sammudeks). Iga sammu lõpus edastab oblu sammu pikkuse ja kõrvalekalde ulatuse (orientatsiooni muutus) sirgjoonelt Arduinole. Arduino parandab sellise teabe saamise igal sammul roboti joondamist, kui ta leiab kõrvalekaldeid eelnevalt määratletud sirgjoonest. Programmi järgi peaks robot alati liikuma sirgjooneliselt. See võib aga kõrvale kalduda sirgjoonest ja kõndida teatud nurga all või viltu, kuna ebaideaalid nagu ebaühtlane pind, massi tasakaalustamatus robotite kokkupanemisel, arhitektuuriline või elektriline tasakaalutus alalisvoolumootorites või eesmise vabalt liikuva ratta juhuslik suund. Tehke üks samm.. parandage oma suunda … liikuge edasi. Robot liigub ka tahapoole, kui ta sõidab rohkem kui konkreetse joone segmendi programmeeritud pikkus. Järgmise sammu pikkus sõltub sellest sirgjoonest, mis tuleb läbida. Robot teeb suuri samme, kui läbitud vahemaa on suurem, ja teeb väiksemaid samme sihtkoha lähedal (st iga sirgjoone lõigu lõpus). oblu edastab andmeid Arduinole ja telefonile (Bluetoothi kaudu) samaaegselt. Xoblu (Androidi rakendus) teostab lihtsa arvutuse, et konstrueerida tee, mis põhineb robotilt saadud liikumisteabel ja mida kasutatakse telefonis reaalajas jälgimiseks. (Teekonstruktsioon Xoblu abil on illustreeritud teisel pildil).

Kokkuvõtteks võib öelda, et oblu tunneb liikumist ja edastab liikumisteabe Arduinole ja telefonile korrapäraste ajavahemike järel. Tuginedes programmeeritud teele ja liikumisteabele (saadetud oblu poolt), juhib Arduino rataste liikumist. Roboti liikumist EI juhita kaugjuhtimisega, välja arvatud start/stop käsud.

Oblu püsivara leiate aadressilt

Roboti Aurduino koodi leiate aadressilt

7. samm: RADAMUDELEERIMINE

RADAMUDELEERIMINE
RADAMUDELEERIMINE
RADAMUDELEERIMINE
RADAMUDELEERIMINE

Robotit saab kõige paremini juhtida, kui ta kõnnib ainult sirgjoonelistes segmentides. Seetõttu tuleb rada esmalt modelleerida sirgjooneliste segmentide komplektina. Piltidel on paar näideteed ja nende esitused nihke ja orientatsiooni osas. Nii on tee Arduinos programmeeritud.

Samamoodi saab Arduinos määratleda ja programmeerida mis tahes tee, mis koosneb sirgjoonelistest segmentidest.

8. etapp: VÕRGUSE KOKKUPANEK

VÕRGUSE KOKKUPANEK
VÕRGUSE KOKKUPANEK

Ülemise taseme süsteemi integreerimise skeem. Arduino ja oblu on osa riistvarakomplektist. UART -i kasutatakse Arduino ja oblu vaheliseks suhtluseks. (Pange tähele ühenduse Rx/Tx ühendust.) Andmevoo suund on ainult viitamiseks. Kogu riistvarakomplekt suhtleb nutitelefoniga (Xoblu) Bluetoothi abil.

9. etapp: VÕRGEDIAGRAAM

VÕTMISDIAGRAAM
VÕTMISDIAGRAAM

Üksikasjalikud elektriühendused Arduino, oblu, mootorijuhi ja aku vahel.

10. samm: KOMMUNIKATSIOONIProtokoll:

Allpool on näha, kuidas toimub andmeside roboti külge kinnitatud obluusanduri ja Xoblu vahel:

Samm 1: Xoblu saadab käsu START oblule 2. samm: oblu kinnitab käsu vastuvõtmist, saates Xoblule sobiva ACK. Samm 3: oblu saadab DATA -paketi, mis sisaldab nihke- ja orientatsiooniteavet iga sammu kohta igal sammul Xoblule. (samm = alati, kui tuvastab liikumise või seisaku). 4. samm: Xoblu kinnitab viimase DATA paketi vastuvõtmist, saates oblule sobiva ACK. (Sammude 3 ja 4 tsüklit korratakse, kuni Xoblu saadab STOP. STOP -käsu saamisel täidab oblu 5. sammu) 5. samm: STOP - (i) Lõpetage töötlemine oblu -s (ii) Peatage kõik oblu väljundid START, ACK, DATA ja STOP üksikasjad

Samm 11: KUIDAS "oblu" IMU TÖÖTAB (valikuline):

Esitades mõned viited oblu ülevaatele ja jalale paigaldatud PDR-andurite põhiprintsiibile:

Oblu saadaolev lähtekood on suunatud jalale paigaldatud navigeerimiseks. Ja see on selleks otstarbeks kõige paremini optimeeritud. Allpool olev video kajastab selle põhiprintsiipi:

Siin on paar lihtsat artiklit jalgsi paigaldatavate PDR -andurite kohta: 1. Jälgi mu samme

2. Jätkake minu sammude jälgimist

Sellest dokumendist leiate jalakäijate surnute arvestamise üksikasju jalaandurite abil.

12. toiming: külastage saiti „oblu.io” (valikuline)

Image
Image

Vaadake videot "oblu" võimalike rakenduste kohta:

---------------- Palun jagage oma tagasisidet, soovitusi ja jätke kommentaare. Parimad soovid!

13. samm: KOMPONENDID

1 oblu (avatud lähtekoodiga IMU arendusplatvorm)

1 nutika mootoriga robot -auto aku kasti šassii komplekt DIY kiiruse kodeerija Arduino jaoks

1 jootevaba leivaplaat

1 isane/emane hüppaja juhtmed

2 Kondensaator 1000 µF

1 Texas Instruments Dual H-Bridge mootorijuht L293D

1 Arduino Mega 2560 ja Genuino Mega 2560

4 Amazoni veebiteenused AA 2800 Ni-MH Laetav

Soovitan: