Բովանդակություն:
- Քայլ 1: Բաղադրիչների ցուցակ
- Քայլ 2. Նախագծի ուղեղը - ESP8266 զարգացման խորհուրդ (Wemos D1 Mini)
- Քայլ 3. Շարժիչային վարորդ - L293d
- Քայլ 4. PCF8574 - մուտքի/ելքի ընդլայնիչ
- Քայլ 5: Սխեմաներ
- Քայլ 6: Կոդ
Video: Wi-Fi վերահսկվող 4 անիվով ռոբոտ ՝ 6 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:50
Այս նախագծի համար մենք մշակելու ենք ESP8266- ի միջոցով օգտագործվող 4 անիվով ռոբոտ, որը վերահսկվելու է Wi-Fi ցանցի միջոցով: Ռոբոտը կարող է կառավարվել սովորական ինտերնետ դիտարկիչից ՝ օգտագործելով HTML նախագծված ինտերֆեյս կամ նաև android բջջային հավելվածից: ESP8266 չիպը հզոր և էժան միկրոկառավարիչ է, որը ոչ միայն դյուրին է օգտագործման մեջ, այլև գալիս է ինքնաթիռի Wi-Fi կապով: Սա պարզապես կատարյալ չիպ է ՝ ձեր համակարգչից կամ բջջային սարքից ռոբոտներին հեռակա կարգով կառավարելու համար:
Այս չիպը մեր նախագծում ներառելու համար մենք կարող ենք օգտագործել մի շարք զարգացման տախտակներ, որոնք հիմնված են այս միկրոկառավարիչի վրա:
1. Adafruit Feather Huzzah - Այն պատրաստված է Adafruit- ի կողմից և ունի հեշտությամբ հասանելի հրահանգներ և աջակցություն: Այն ունի տախտակի վրա մարտկոցի լիցքավորման լիցքավորիչ, այնպես որ այն իսկապես հարմար կլինի դյուրակիր նախագծերում:
2. NodeMCU ESP8266 - Տախտակը բաց կոդ է և ունի հիանալի փաստաթղթեր, ուստի այն սկսելը շատ հեշտ կլինի:
3. Sparkfun ESP8266 - Այն նման է Huzzah- ին `հոսանքի անջատիչի և արտաքին ալեհավաքի ավելացումով` ավելի երկար Wi -Fi տիրույթի համար:
4. Wemos D1 Mini - Այն ամենափոքրն է բոլոր տախտակներից, բայց դա որևէ ազդեցություն չի թողնում կատարման վրա:
Իմ նախագծի համար ես օգտագործում եմ Wemos D1 Mini- ն ՝ Wi-Fi վերահսկվող 4 անիվով ռոբոտ պատրաստելու համար: Բայց դուք կարող եք օգտագործել ցանկացած ESP8266 զարգացման տախտակ և օգտագործել նույն Arduino ծածկագիրը ՝ առանց որևէ փոփոխության: Ես նախագծել եմ այս ծրագրի համար PCB, բայց դուք կարող եք օգտագործել dccb տախտակ `միացումն իրականացնելու կամ նույնիսկ ձեր սեփական pcb- ն նախագծելու համար:
Եվ մենք կօգտագործենք 4WD Robotic Chassis Kit- ը, ինչպես ցույց է տրված վերևի նկարում, քանի որ այն իդեալական է DIY- ի համար և ամենախնայող ռոբոտների մեքենայի հավաքածուն է ՝ պարզ մեխանիկական կառուցվածքով:
Այս հավաքածուի առանձնահատկությունները
1. Գալիս է չորս առանձին BO պլաստիկ շարժիչներ `փոխանցման տուփով, դա լավ է մանևրելու համար:
2. Ակրիլային մեծ, ամուր շասսին թույլ է տալիս մեծ ընդլայնում կատարել DIY- ի համար:
3. Չորս անիվ ունեցող խելացի մեքենայի շասսի հավաքածու: Տեղադրելը շատ հեշտ է, պարզապես ավելացրեք միկրոհսկիչ (օրինակ ՝ Arduino) և սենսորային մոդուլներ ՝ լիովին ինքնավար ռոբոտ կառուցելու համար:
Քայլ 1: Բաղադրիչների ցուցակ
Wemos D1 Mini [Քանակ - 1]
L293d Motor Driver IC [Քանակ - 2]
PCF8574 նավահանգստի ընդլայնիչ IC [Քանակ - 1]
12 Վ լիթիում իոնային մարտկոց [Քանակ - 1]
Wi-Fi վերահսկվող ռոբոտի PCB [Քանակ-1]
4WD Robot Smart Car շասսիի հավաքածու [Քանակ - 1]
Քայլ 2. Նախագծի ուղեղը - ESP8266 զարգացման խորհուրդ (Wemos D1 Mini)
Wemos D1 Mini- ն մինի Wi-Fi զարգացման տախտակ է ՝ 4 ՄԲ ֆլեշով, որը հիմնված է ESP-8266 չիպի վրա:
- Ունի 11 թվային մուտքի/ելքի կապում, բոլոր կապումներն ունեն ընդհատում/pwm/I2C/մեկ լարով ապահովված (բացառությամբ D0)
- Ունի 1 անալոգային մուտք (3.2 Վ առավելագույն մուտք)
- Ունի Micro USB միացում ծրագրավորման համար, ինչպես նաև սնուցման աղբյուր:
Այս տախտակը, որը հիմնված է ESP8266- ի վրա, հետևաբար Arduino IDE- ի հետ համատեղելի է, հետևաբար այն կարող է ծրագրավորվել Arduino- ի միջոցով կամ կարող է ծրագրավորվել նաև Lua կոմպիլյատորի միջոցով: Այն նաև աջակցում է ինչպես սերիական, այնպես էլ OTA ծրագրավորմանը:
Մենք ծրագրավորելու ենք Wemos D1 Mini- ն Arduino IDE- ի միջոցով: Arduino IDE- ի միջոցով խորհուրդը ծրագրավորելու համար անհրաժեշտ է բավարարել հետևյալ պահանջները.
Պահանջ ՝-
- CH340G վարորդ
- Տեղադրեք վերջին Arduino IDE- ն Arduino կայքից:
- Microրագրավորման համար միկրո USB մալուխ
Վարորդը և arduino ծրագրակազմը տեղադրելուց հետո դուք պետք է տեղադրեք «Arduino core for ESP8266 WiFi chip» Arduino IDE- ի ներսում, որպեսզի մենք կարողանանք ծրագրավորել ESP8266 չիպը Arduino միջավայրից: Այս ESP8266 Arduino միջուկը թույլ է տալիս գրել էսքիզներ ՝ օգտագործելով Arduino- ի ծանոթ գործառույթներն ու գրադարանները և դրանք գործարկել անմիջապես ESP8266- ի վրա, արտաքին միկրոկոնտրոլեր չի պահանջվում:
ESP8266 Arduino միջուկը գալիս է գրադարաններով ՝ WiFi- ի միջոցով հաղորդակցվելու TCP և UDP, տեղադրելու HTTP, mDNS, SSDP և DNS սերվերներ, OTA թարմացումներ կատարելու, ֆլեշ հիշողության մեջ ֆայլային համակարգ օգտագործելու, SD քարտերի, սերվերի, SPI և I2C ծայրամասային սարքերի հետ աշխատելու հնարավորություն:.
Ներբեռնեք հետևյալ փաստաթուղթը ՝ գաղափար ստանալու համար, թե ինչպես տեղադրել Esp8266 arduino միջուկը:
Քայլ 3. Շարժիչային վարորդ - L293d
Motor Driver- ը շարժիչների համար նախատեսված IC է, որը թույլ է տալիս միաժամանակ վերահսկել երկու շարժիչների աշխատանքային արագությունը և ուղղությունը:
L293d- ն նախատեսված է ապահովելու երկկողմանի շարժիչ հոսանքներ 5 Վ -ից 36 Վ լարման լարման դեպքում: L293D- ն կարող է միաժամանակ 2 DC շարժիչ վարել:
L293D- ն 16 պինանոց շարժիչով վարորդ է: Յուրաքանչյուր շարժիչի համար կա 4 Մուտքագրման կապում, 4 ԵԼՔԱՅԻՆ կապում և 2 ՄԻԱ EԵԼ:
L293D- ի առանձնահատկությունները.
Մեկ ալիքի համար 600 մԱ ելքային հոսանքի ունակություն
Individualամացույց և ժամացույցի սլաքի հակառակ ուղղությամբ առանձին ալիքների համար:
L293d- ի նկարագրություն
- Պին 1. Երբ Enable1- ը բարձր է, IC- ի ձախ հատվածը կաշխատի, այսինքն ՝ 3 -րդ և 6 -րդ կապի հետ կապված շարժիչը կշրջվի:
- Պին 2. Մուտք 1, երբ այս քորոցը ԲԱՐՁՐ է, հոսանքը հոսելու է 1 ելքով:
- Pin 3: Արդյունք 1, այս կապը կապված է շարժիչի մեկ տերմինալի հետ:
- Կապում 4/5: GND կապում
- Pin 6: Արդյունք 2, այս կապը կապված է շարժիչի մեկ տերմինալի հետ:
- Պին 7: Մուտք 2, երբ այս քորոցը ԲԱՐՁՐ Է, հոսանքը հոսում է ելքով 2:
- Պին 8: VCC2, այս քորոցն օգտագործվում է միացված շարժիչներին 5V- ից մինչև 36V առավելագույն էներգիա մատակարարելու համար `կախված միացված շարժիչից:
- 9 -րդ կապ. Երբ Enable 2 -ը բարձր է, IC- ի աջ մասը կաշխատի, այսինքն `11 -րդ և 14 -ի կապակցված շարժիչը կշրջվի:
- Պին 10. Մուտք 4, երբ այս քորոցը ԲԱՐՁՐ է, հոսանքը հոսելու է 4 ելքով:
- Պին 11. Ելք 4, այս կապը միացված է շարժիչի մեկ տերմինալին:
- PIN 12/13: GND կապում
- Պին 14. Ելք 3, այս կապը միացված է շարժիչի մեկ տերմինալին:
- Պին 15. Մուտք 3, երբ այս քորոցը ԲԱՐՁՐ է, հոսանքը հոսում է ելքով 3 -ով:
- Pin 16: VCC1, IC- ին, այսինքն ՝ 5V սնուցման տրամաբանական սնուցման համար:
Այսպիսով, դուք կարող եք տեսնել, որ ձեզ անհրաժեշտ է 3 թվային կապում `յուրաքանչյուր շարժիչը կառավարելու համար (մեկ կապում` արագության կառավարման և երկու կապում `ուղղության կառավարման համար): Եթե մեկ L293d վերահսկում է երկու DC շարժիչ, ապա մենք կպահանջենք երկու L293d IC ՝ չորս DC շարժիչ կառավարելու համար: Այս նախագծի համար մենք պատրաստվում ենք օգտագործել պլաստիկ BO Motors- ը: Այսպիսով, տեսնում եք, որ մենք կպահանջենք թվային 12 կապում ՝ չորս DC շարժիչներն ինքնուրույն կառավարելու և արագության, և ուղղության հսկողությամբ:
Բայց եթե տեսնում եք, որ Wemos D1 mini- ն ունի ընդամենը 11 թվային մուտքի/ելքի և 1 անալոգային կապում: Այս խնդիրը լուծելու համար մենք մտադիր ենք միացնել չորս միացման պինները (առաջին L293d- ի երկու և մյուս L293d- ի երկու պինները) Wemos Digital- ի կապում ուղղակիորեն, մինչդեռ մուտքի բոլոր ութ կապերը (առաջին L293d- ի չորսը և մյուս L293d- ի չորսը) օգտագործելով PCF8574 (I/O նավահանգստի ընդլայնիչ) I2C- ի միջոցով:
Քայլ 4. PCF8574 - մուտքի/ելքի ընդլայնիչ
Wemos D1 Mini (այսինքն ՝ ESP8266) ունի մուտքային/ելքային կապերի պակաս: Մենք կարող ենք բարձրացնել թվային մուտքի/ելքի կապում ՝ օգտագործելով I/O ընդլայնիչ IC- ն, ինչպես PCF8574- ը, որը 8 բիթանոց մուտքի/ելքի ընդլայնիչ է:
PCF8574A I/O ընդլայնիչի օգտագործման առավելություններից մեկն այն է, որ այն օգտագործում է I2C ավտոբուս, որը պահանջում է ընդամենը երկու տվյալների տող, դրանք ժամացույցն են (SCK) և տվյալները (SDA): Հետևաբար, այս երկու տողերով կարող եք վերահսկել նույն չիպի մինչև ութ կապում: Փոխելով յուրաքանչյուր PCF8574 հասցեի երեք կապը, մենք կարող ենք վերահսկել ընդհանուր 64 կապում:
Այս 8-բիթանոց մուտքի/ելքի (I/O) ընդլայնիչը երկշղթա երկկողմանի ավտոբուսի (I2C) համար նախատեսված է 2.5V- ից 6V VCC- ի աշխատանքի համար: PCF8574 սարքը միկրոկոնտրոլերների մեծամասնության համար ապահովում է ընդհանուր նշանակության հեռավոր մուտքի/ելքի ընդլայնում I2C ինտերֆեյսի միջոցով [սերիական ժամացույց (SCL), սերիական տվյալներ (SDA)]:
Սարքն ունի 8-բիթ կիսակողմանի մուտքի/ելքի պորտ (P0 – P7), ներառյալ փակ ընթացիկ ելքեր ՝ բարձր ընթացիկ շարժիչային հնարավորությամբ ՝ LED- ները ուղղակիորեն վարելու համար: Յուրաքանչյուր կիսակողմանի մուտք/ելք կարող է օգտագործվել որպես մուտք կամ ելք ՝ առանց տվյալների ուղղության կառավարման ազդանշանի օգտագործման: Միացման դեպքում I/O- ն բարձր է:
Տե՛ս ստորև բերված «PCF8574_With_L293d» pdf ֆայլը ՝ PCF8574- ի երկու L293d IC- ների միացման դիագրամի համար:
Քայլ 5: Սխեմաներ
Ես օգտագործել եմ Kicad- ը PCB նախագծման համար:
Ներբեռնեք ստորև ներկայացված սխեմատիկ pdf ՝ ձեր սեփական pcb- ն նախագծելու կամ այն pcb տախտակի վրա իրականացնելու համար:
Քայլ 6: Կոդ
Միացեք հետևյալ Wi-Fi մուտքի կետին.-
// Օգտատիրոջ կողմից սահմանված ցանցի հավատարմագրեր char* ssid = "WiFi_Robot";
const char* գաղտնաբառ = "Ավտոմատ@111";
Վերոնշյալ մուտքի կետին միանալուց հետո անցեք վեբ դիտարկիչի հետևյալ հղմանը.
192.168.4.1
Դուք կստանաք հետևյալ հաղորդագրությունը.
«բարև Ռոբոտից»:
192.168.4.1/fw
Դա կհանգեցնի ռոբոտի առաջ շարժվելուն
192.168.4.1/bk
Դա կհանգեցնի ռոբոտի հետընթաց շարժման
192.168.4.1/lt
Դա կհանգեցնի ռոբոտի ձախ շարժմանը
192.168.4.1/rt
Դա կհանգեցնի ռոբոտի աջ շարժմանը
192.168.4.1/st
Դա կհանգեցնի ռոբոտի կանգառի
Եթե ցանկանում եք, կարող եք նաև վերահսկել ռոբոտը Robo India- ի կողմից պատրաստված Android հավելվածի միջոցով:
{Որոնեք «WiFi Robot Controller» Android հավելվածի խաղատանը Robo India- ի կողմից պատրաստված}
[Նշում. Ես որևէ կերպ կապված չեմ Robo India- ի հետ և սա գովազդի համար չէ, սա իմ անձնական նախագիծն է:]
Նախագծի աշխատանքային տեսաֆիլմ.
Խորհուրդ ենք տալիս:
Arduino- ի միջոցով ժեստերով վերահսկվող ռոբոտ. 7 քայլ
Duեստերով վերահսկվող ռոբոտ Arduino- ի միջոցով. Ռոբոտներն օգտագործվում են բազմաթիվ ոլորտներում, ինչպիսիք են շինարարությունը, ռազմական գործը, արտադրությունը, հավաքումը և այլն: Ռոբոտները կարող են լինել ինքնավար կամ կիսանկախ: Ինքնավար ռոբոտները չեն պահանջում մարդու միջամտություն և կարող են ինքնուրույն գործել ՝ ըստ իրավիճակի: Se
Gեստերով վերահսկվող ռոբոտ - Spinel Crux: 4 քայլ
Estեստերով վերահսկվող ռոբոտ - Spinel Crux: Spinel Crux estեստերով վերահսկվող ռոբոտ ՝ անլար հսկողության ծրագրի համար: Այս շարքում մենք կկառուցենք ռոբոտ, որը կարող է ճանապարհորդել կոպիտ տեղանքով և կառավարել ձեռքի ժեստերի միջոցով: Ռոբոտին քշելու համար մենք կօգտագործենք կառավարման ձեռնոց, որը
RC վերահսկվող ռոբոտ XLR8- ում: Կրթական ռոբոտ ՝ 5 քայլ
RC վերահսկվող ռոբոտ XLR8- ում: Կրթական ռոբոտ. Բարև, այս հոդվածում ձեզ ցույց կտա, թե ինչպես կառուցել հիմնական ռոբոտ: «Ռոբոտ» բառը բառացիորեն նշանակում է «ստրուկ»: կամ «աշխատող»: Արհեստական բանականության ոլորտում առաջընթացների շնորհիվ ռոբոտներն այլևս պարզապես Իսակ Ասիմովի գիտաֆանտաստիկայի մի մասը չեն
Հավասարակշռող ռոբոտ / 3 անիվի ռոբոտ / STEM ռոբոտ ՝ 8 քայլ
Հավասարակշռող ռոբոտ / 3 անիվի ռոբոտ / STEM ռոբոտ. Մենք կառուցել ենք համակցված հավասարակշռող և եռանիվ ռոբոտ `կրթական օգտագործման համար դպրոցներում և դպրոցից հետո կրթական ծրագրերում: Ռոբոտը հիմնված է Arduino Uno- ի, սովորական վահանի վրա (շինարարության բոլոր մանրամասները տրամադրված են), Li Ion մարտկոցի տուփով (բոլորը կառուցված են
Մեկ անիվով ռոբոտ ՝ 3 քայլ
One Wheeled Robot: Այս նախագծում ես ձեզ ցույց կտամ, թե ինչպես քայլ առ քայլ պատրաստել մեկ անիվով ռոբոտ կամ միանիվանիստ, որպեսզի կարողանաք ինքներդ պատրաստել: Այս ռոբոտը կարող է ինքնաբերաբար հավասարակշռել ՝ հաշվարկելով թեքությունը MPU6050 սենսորի օգնությամբ, այն բաղկացած է երկու