Բովանդակություն:

Նավարկել ռոբոտը կոշիկի տվիչներով, առանց GPS- ի, առանց քարտեզի `13 քայլ (նկարներով)
Նավարկել ռոբոտը կոշիկի տվիչներով, առանց GPS- ի, առանց քարտեզի `13 քայլ (նկարներով)

Video: Նավարկել ռոբոտը կոշիկի տվիչներով, առանց GPS- ի, առանց քարտեզի `13 քայլ (նկարներով)

Video: Նավարկել ռոբոտը կոշիկի տվիչներով, առանց GPS- ի, առանց քարտեզի `13 քայլ (նկարներով)
Video: ԱԿՆԱՐԿ WOLKINZ COSMO ԽԵԼԱՑԻ ՌՈԲՈՏԸ ՓՈՇԵԿՈՒԼ ՀԵՏ ԼԱԶԵՐԱՅԻՆ ՆԱՎԱՐԿՈՒԹՅՈՒՆ 2024, Հուլիսի
Anonim

Obluoblu Հետևեք մեր մասին. Oblu- ն ներքին նավարկության ցուցիչ է Ավելին oblu- ի մասին »

Ռոբոտը շարժվում է նախապես ծրագրավորված ճանապարհով և փոխանցում (bluetooth- ով) իրական շարժման մասին տեղեկությունները հեռախոսին `իրական ժամանակում հետևելու համար: Arduino- ն նախապես ծրագրավորված է ճանապարհով, իսկ oblu- ն օգտագործվում է ռոբոտի շարժումը զգալու համար: oblu- ն շարժումների մասին տեղեկատվությունը փոխանցում է Arduino- ին կանոնավոր ընդմիջումով: Դրա հիման վրա Arduino- ն վերահսկում է անիվների շարժումները ՝ թույլ տալով ռոբոտին հետևել կանխորոշված ճանապարհին:

Քայլ 1: ԿԱՐORTԻՆ ներածություն

ԿԱՐՈ ՆԵՐԱՈԹՅՈՆ
ԿԱՐՈ ՆԵՐԱՈԹՅՈՆ

Նախագիծը ռոբոտին ստիպում է ճշգրիտ շարժվել նախապես սահմանված ճանապարհով ՝ առանց GPS- ի կամ WiFi- ի կամ Bluetooth- ի օգտագործումը դիրքավորման համար, նույնիսկ քարտեզի կամ շենքի հատակագծի պլանի: Եվ գծեք դրա իրական ուղին (մասշտաբի), իրական ժամանակում: Bluetooth- ը կարող է օգտագործվել որպես մետաղալարերի փոխարինիչ ՝ իրական ժամանակի տեղադրության տեղեկատվության փոխանցման համար:

Քայլ 2. Հետաքրքրաշարժ նախապատմություն

ՀԵՏԱՔՐՔԻՐՈ BԹՅԱՆ ՊԱՏՄՈԹՅՈՆԸ
ՀԵՏԱՔՐՔԻՐՈ BԹՅԱՆ ՊԱՏՄՈԹՅՈՆԸ

Մեր թիմի գլխավոր օրակարգը կոշիկի վրա տեղադրված հետիոտնային նավարկության տվիչների մշակումն է: Այնուամենայնիվ, մեզ մոտեցավ ակադեմիական հետազոտական խումբ ՝ ռոբոտի ներսում նավարկելու և դրա իրական ժամանակի դիրքի միաժամանակ վերահսկման պահանջով: Նրանք ցանկանում էին նման համակարգ օգտագործել փակ խցիկում ճառագայթման քարտեզագրման համար կամ արդյունաբերական կառուցվածքում գազի արտահոսք հայտնաբերել: Նման վայրերը վտանգավոր են մարդկանց համար: փնտրում ենք հզոր լուծում մեր Arduino- ի վրա հիմնված ռոբոտի ներքին նավարկության համար:

Մեր ակնհայտ ընտրությունը շարժման սենսորային մոդուլի (IMU) համար եղել է «oblu» (հղում ՝ պատկերի վերևում): Բայց այստեղ բարդ խնդիրն այն էր, որ oblu- ի առկա որոնվածը հարմար էր ոտքերով տեղադրված փակ հետիոտնային Dead Reckoning (PDR) կամ Հետիոտնային նավարկության համար, պարզ բառերով: oblu- ի PDR- ի կատարումը փակ տարածքում, որպես ոտքով տեղադրված IMU, բավականին տպավորիչ է: Android հավելվածի (Xoblu) առկայությունը oblu- ի իրական ժամանակում որպես կոշիկի ցուցիչ հետևելու համար ավելացնում է առավելությունը: Այնուամենայնիվ, մարտահրավերը ռոբոտին նավարկելու և այն վերահսկելու համար գոյություն ունեցող ալգորիթմի օգտագործումն էր, որը հիմնված է մարդու քայլելու մոդելի վրա:

Քայլ 3. Հակիրճ ներածություն «oblu» - ին

Image
Image
ՀԱՄԱԿԱՐԳԻ ՆԿԱՐԱԳԻՐ
ՀԱՄԱԿԱՐԳԻ ՆԿԱՐԱԳԻՐ

«Օբլու» -ն փոքրածավալ, ցածր գնով և բաց աղբյուրների զարգացման հարթակ է, որն ուղղված է կրելու շարժման զգայուն ծրագրերին: Այն Li-ion վերալիցքավորվող մարտկոցով աշխատող է և թույլ է տալիս ներկառուցված USB մարտկոցը լիցքավորել: Այն ունի ներկառուցված Bluetooth (BLE 4.1) մոդուլ ՝ անլար կապի համար: «oblu»-ում տեղակայված է 32-բիթանոց լողացող կետով միկրոկոնտրոլեր (Atmel's AT32UC3C), որը թույլ է տալիս լուծել նավիգացիոն բարդ հավասարումներ: Հետևաբար, մարդը կատարում է շարժման ամբողջ ընթացքը oblu- ի վրա և փոխանցում է միայն վերջնական արդյունքը: Սա չափազանց պարզ է դարձնում oblu- ի փոխկապակցված համակարգի հետ ինտեգրումը: «oblu»-ն նաև ընդունում է բազմ IMU (MIMU) զանգված, որը թույլ է տալիս սենսորների միաձուլում և բարձրացնել շարժման զգայունակությունը: MIMU մոտեցումը ավելացնում է «oblu» - ի յուրահատկությունը:

oblu- ի ներքին հաշվարկները հիմնված են մարդու քայլելու վրա: oblu- ն տալիս է տեղաշարժ երկու հաջորդական քայլերի և վերնագրի փոփոխության միջև: Ինչպես - երբ ոտքը դիպչում է գետնին, ներբանի արագությունը զրոյական է, այսինքն `ներբանը կանգնած է: Այս կերպ oblu- ն հայտնաբերում է «քայլերը» և ուղղում որոշ ներքին սխալներ: Եվ սխալների այս հաճախակի ուղղումը հանգեցնում է հետևման հիանալի կատարման: Այսպիսով, այստեղ է բռնում: Ի՞նչ կլիներ, եթե մեր ռոբոտը նույնպես քայլեր նույն ձևով `շարժվել, կանգ առնել, շարժվել, կանգնեցնել: Ի դեպ, oblu- ն կարող է օգտագործվել ցանկացած օբյեկտի համար, որի շարժման կանոնավոր զրոյական և ոչ զրոյական պահերն են: Այսպիսով, մենք առաջ շարժվեցինք oblu- ով և ոչ մի ժամանակ չկարողացանք հավաքել մեր ռոբոտը և հետևման համակարգը:

Քայլ 4. Ի՞ՆՉ Է «օբլուի» ՕԳՏԱԳՈՅՆԸ:

Timeամանակի գրեթե 70% -ը մենք անցկացնում ենք ներսում: Հետևաբար, կան բազմաթիվ ծրագրեր, որոնք պահանջում են մարդկանց և մեքենաների ներքին նավարկություն: Առավել հաճախ օգտագործվող դիրքավորման լուծումը արբանյակային GPS/GNSS- ն է, որը լավ է բացօթյա նավարկության համար: Այն ձախողվում է փակ միջավայրում կամ քաղաքային միջավայրում, որը հասանելի չէ պարզ երկնքին: Այդպիսի ծրագրեր են ՝ տնակային ավանների կամ ծանր ծառերի տակ գտնվող տարածքների աշխարհագրական հետազոտությունը, ռոբոտների ներքին նավարկությունը, հրդեհաշիջման համար փրկարարական գործակալների տեղակայումը, հանքարդյունաբերական վթարները, քաղաքային պատերազմները և այլն:

Օբլուի նախորդը ներկայացվեց որպես շատ կոմպակտ կոշիկի սենսոր (կամ PDR սենսոր) հրշեջների տեղակայման համար, որը հետագայում արդիականացվեց և փոխվեց որպես բարձրակարգ կազմաձևման հարթակ այն արտադրողների համար, ովքեր փնտրում են հեշտ ճշգրիտ- մատչելի իներցիոն սենսորային լուծում մարդկանց, ինչպես նաև ռոբոտների ներքին նավարկության համար: Առայժմ oblu- ի օգտվողները ցուցադրել են դրա կիրառումը հետիոտնին հետևելու, արդյունաբերական անվտանգության և ռեսուրսների կառավարման, տակտիկական ոստիկանության, GPS- ի տարածքի աշխարհագրական հետազոտության, ինքնակառավարվող ռոբոտի, օժանդակ ռոբոտաշինության, խաղերի, AR/VR- ի, շարժման խանգարումների բուժման, ֆիզիկայի ընկալման մեջ: շարժման և այլն: oblu- ն հարմար է տարածության սահմանափակումներ ունեցող ծրագրերի համար, օրինակ կրելի շարժման զգացում: Այն կարող է օգտագործվել նաև որպես անլար IMU ՝ ներկառուցված Bluetooth- ի շնորհիվ: Ինքնաթիռի լողացող կետի մշակման հնարավորության առկայությունը, չորս IMU- ի զանգվածի հետ միասին, հնարավոր է դարձնում սենսորների միաձուլումը և շարժման մշակումը հենց մոդուլի ներսում, ինչը, իր հերթին, հանգեցնում է շարժման շատ ճշգրիտ ընկալման:

Քայլ 5. JՐԱԳՐԻ ՊԱՏՄՈԹՅՈՆԸ

Image
Image

Այս նախագծի պատմությունը ՝ տեսանյութում…

Քայլ 6: ՀԱՄԱԿԱՐԳԻ ՆԿԱՐԱԳԻՐ

Ռոբոտը շարժվում է նախապես ծրագրավորված ճանապարհով և փոխանցում (bluetooth- ով) իր իրական շարժման տեղեկատվությունը հեռախոսին `իրական ժամանակում հետևելու համար:

Arduino- ն նախապես ծրագրավորված է ճանապարհով, իսկ oblu- ն օգտագործվում է ռոբոտի շարժումը զգալու համար: oblu- ն շարժման մասին տեղեկատվությունը փոխանցում է Arduino- ին կանոնավոր ընդմիջումով: Դրա հիման վրա Arduino- ն վերահսկում է անիվների շարժումները ՝ թույլ տալով ռոբոտին հետևել կանխորոշված ճանապարհին:

Ռոբոտի ուղին ծրագրված է որպես ուղիղ գծերի հատվածների ամբողջություն: Յուրաքանչյուր գծի հատված որոշվում է իր երկարությամբ և կողմնորոշմամբ `նախորդի նկատմամբ: Ռոբոտի շարժումը պահպանվում է զուսպ, այսինքն ՝ այն շարժվում է ուղիղ գծով, բայց ավելի փոքր հատվածներով (պարզության համար թույլ տվեք զանգահարել «քայլեր»): Յուրաքանչյուր քայլի վերջում oblu- ն ուղու երկարությունը և շեղման աստիճանը (կողմնորոշման փոփոխություն) ուղիղ գծից փոխանցում է Arduino- ին: Arduino- ն ուղղում է ռոբոտի դասավորվածությունը նման տեղեկատվություն ստանալու ամեն քայլափոխի, եթե այն շեղում է գտնում նախապես սահմանված ուղիղ գծից: Ըստ ծրագրի, ռոբոտը միշտ ենթադրվում է, որ շարժվում է ուղիղ գծով: Այնուամենայնիվ, այն կարող է շեղվել ուղիղ գծից և կարող է քայլել որոշակի անկյան տակ կամ թեք ուղիով `ոչ իդեալականության պատճառով, ինչպիսիք են անհարթ մակերեսը, ռոբոտների հավաքման զանգվածի անհավասարակշռությունը, ճարտարապետական կամ էլեկտրական անհավասարակշռությունը DC շարժիչներում կամ առջևի ազատ վազքի պատահական կողմնորոշումը: Մեկ քայլ արա.. ուղղիր վերնագիրդ … առաջ շարժվիր: Ռոբոտը նաև հետ է շարժվում, եթե այն անցնում է տվյալ գծի հատվածի ծրագրված երկարությունից ավելին: Հաջորդ քայլի երկարությունը կախված է տվյալ ուղիղ հատվածի անցած մնացած տարածությունից: Ռոբոտը մեծ քայլեր է կատարում, երբ անցնելիք տարածությունն ավելի մեծ է և ավելի փոքր քայլեր է կատարում նպատակակետին մոտ (այսինքն ՝ յուրաքանչյուր ուղիղ հատվածի վերջ): oblu- ն տվյալները փոխանցում է Arduino- ին և հեռախոսին (bluetooth- ով) միաժամանակ: Xoblu- ն (Android հավելվածը) իրականացնում է մի պարզ հաշվարկ ՝ ռոբոտից ստացված շարժման տեղեկատվության հիման վրա ճանապարհ կառուցելու համար, որն օգտագործվում է հեռախոսում իրական ժամանակում հետևելու համար: (Xoblu- ի միջոցով ճանապարհի կառուցումը պատկերված է երկրորդ նկարում):

Ամփոփելով ՝ oblu- ն զգում է շարժումը և պարբերաբար փոխանցում շարժման մասին տեղեկատվությունը Arduino- ին և հեռախոսին: Ելնելով ծրագրավորված ուղուց և շարժման տեղեկատվությունից (ուղարկված է oblu), Arduino- ն վերահսկում է անիվների շարժումները: Ռոբոտի շարժումը ՉԻ վերահսկվում հեռակա կարգով, բացառությամբ մեկնարկի/կանգառի հրամանների:

Oblu- ի որոնվածի համար այցելեք

Ռոբոտի Aurduino ծածկագրի համար այցելեք

Քայլ 7: ATանապարհների մոդելավորում

ATանապարհների մոդելավորում
ATանապարհների մոդելավորում
ATանապարհների մոդելավորում
ATանապարհների մոդելավորում

Ռոբոտը կարող է լավագույնս վերահսկվել, եթե այն քայլում է միայն ուղիղ հատվածներով: Հետևաբար, ճանապարհը պետք է նախ մոդելավորվի որպես ուղիղ հատվածների շարք: Նկարները պարունակում են մի քանի օրինակ ուղիներ և դրանց պատկերները տեղաշարժի և կողմնորոշման առումով: Այսպես է ծրագրավորվում ուղին Արդուինոյում:

Նմանապես ցանկացած ուղի, որը ուղիղ գծերի հատվածների շարք է, կարող է սահմանվել և ծրագրավորվել Arduino- ում:

Քայլ 8. ՇՐIRԱՆԱՅԻՆ SՈՈՎ

ՇՐIRԱՆԱՅԻՆ SՈՈՎ
ՇՐIRԱՆԱՅԻՆ SՈՈՎ

Բարձր մակարդակի համակարգի ինտեգրման դիագրամ: Arduino- ն և oblu- ն մաս են կազմում սարքավորումների հավաքածուին: UART- ն օգտագործվում է Arduino- ի և oblu- ի միջև հաղորդակցության համար: (Խնդրում ենք նկատի ունենալ կապի Rx/Tx կապը:) Տվյալների հոսքի ուղղությունը միայն հղման համար է: Ամբողջ ապարատային հավաքածուն հաղորդակցվում է սմարթֆոնի (Xoblu) հետ `օգտագործելով Bluetooth:

Քայլ 9. Շրջանակային դիագրամ

Շրջանագծային դիագրամ
Շրջանագծային դիագրամ

Arduino- ի, oblu- ի, շարժիչի վարորդի և մարտկոցի տուփի միջև մանրամասն էլեկտրական միացումներ:

Քայլ 10. Հաղորդակցման արձանագրություն

Ստորև ներկայացված է, թե ինչպես է տվյալների հաղորդակցումը տեղի ունենում ռոբոտի և սմարթֆոնի վրա տեղադրված oblu սենսորի և Xoblu- ի միջև.

Քայլ 1. Xoblu- ն ուղարկում է START հրամանը oblu Քայլ 2: oblu- ն ընդունում է հրաման ստանալը `համապատասխան ACK ուղարկելով Xoblu Քայլ 3: (քայլ = ամեն անգամ, երբ հայտնաբերում է զրո շարժում կամ հայտնաբերվում է կանգառ): Քայլ 4. Xoblu- ն ընդունում է, որ ստացել է վերջին Տվյալների փաթեթը `համապատասխան ACK ուղարկելով oblu- ին: (3 -րդ և 4 -րդ քայլերի ցիկլը կրկնվում է մինչև Xoblu- ն ուղարկում է STOP: Ստանալով STOP հրամանը, oblu- ն կատարում է Քայլ 5 -ը) Քայլ 5: START, ACK, DATA և STOP մանրամասները

Քայլ 11. ԻՆՉՊԵՍ Է ԱՇԽԱՏՈՄ «oblu» ԱՊՄ -ն (ըստ ցանկության)

Ներկայացնելով որոշ տեղեկանքներ oblu- ի ակնարկի և ոտքով տեղադրված PDR տվիչների աշխատանքի հիմնական սկզբունքի վերաբերյալ.

Օբլուի առկա աղբյուրի կոդն ուղղված է դեպի ոտքով տեղադրված նավարկությանը: Եվ դա լավագույնս օպտիմիզացված է այդ նպատակով: Ստորև բերված տեսանյութը ներառում է դրա գործունեության հիմնական սկզբունքը.

Ահա մի քանի պարզ հոդված ՝ ոտքով տեղադրված PDR սենսորների վրա. 1. Հետևեք իմ քայլերին

2. Շարունակեք հետևել իմ քայլերին

Դուք կարող եք հղել այս փաստաթղթին `հետիոտնային մահացած հաշվելու մանրամասների համար` օգտագործելով ոտքի սենսորներ:

Քայլ 12: Այցելեք «oblu.io» (ըստ ցանկության)

Image
Image

Դիտեք տեսանյութը «oblu» - ի հնարավոր կիրառությունների համար.

---------------- Խնդրում ենք կիսել ձեր կարծիքը, առաջարկությունները և թողնել մեկնաբանություններ: Լավագույն մաղթանքներ:

Քայլ 13: Բաղադրիչներ

1 oblu (բաց աղբյուրի IMU զարգացման հարթակ)

1 Smart Motor Robot Ավտոմեքենայի մարտկոցի տուփ Շասսի հավաքածու DIY արագության կոդավորիչ Arduino- ի համար

1 Solderless Breadboard Half Size

1 արական/իգական ցատկող լարեր

2 Կոնդենսատոր 1000 μF

1 Texas Instruments Dual H-Bridge շարժիչով վարորդներ L293D

1 Arduino Mega 2560 և Genuino Mega 2560

4 Amazon Web Services AA 2800 Ni-MH Վերալիցքավորվող

Խորհուրդ ենք տալիս: