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

Arduino Wireless Control Robot Car: 5 քայլ
Arduino Wireless Control Robot Car: 5 քայլ

Video: Arduino Wireless Control Robot Car: 5 քայլ

Video: Arduino Wireless Control Robot Car: 5 քայլ
Video: How To Make A DIY Arduino Joystick Control Car At Home 2024, Նոյեմբեր
Anonim
Arduino անլար կառավարման ռոբոտ -մեքենա
Arduino անլար կառավարման ռոբոտ -մեքենա

Այս գրառման մեջ դուք պատրաստվում եք սովորել, թե ինչպես կարելի է կառուցել Arduino անլար կառավարման ռոբոտ -մեքենա: Մենք կկառուցենք և՛ հաղորդիչի, և՛ ընդունիչի կողմերը:

Հաղորդիչի կողքին կլինեն Arduino nano, joystick մոդուլ և NRF24L01 ՝ տվյալները անլար ուղարկելու համար: Ստացողի կողքին կլինեն Arduino nano, NRF24L01 տվյալները ստանալու համար և L293D շարժիչի վարորդի IC շարժիչները կառավարելու համար: Ինչպես հաղորդիչի, այնպես էլ ստացողի սխեմաները կաշխատեն 9 Վ մարտկոցներով:

Բաղադրիչները, որոնք դուք կպահանջեք այս ծրագրի համար, հետևյալն են

Հաղորդիչի կողմը

  • Արդուինո Նանո
  • Joystick մոդուլ
  • NRF24L01
  • 100uf կոնդենսատոր
  • 3 փին Slide Switch
  • 2 փին տերմինալային բլոկ
  • 9 Վ մարտկոց

Ստացողի կողմը

  • Արդուինո Նանո
  • NRF24L01
  • 100uf կոնդենսատոր
  • 0.1uf կոնդենսատոր
  • 10uf կոնդենսատոր
  • 3 փին Slide Switch
  • 2 փին տերմինալային բլոկ (3 հատ)
  • L293D Motor Driver IC
  • 9 Վ մարտկոց

Քայլ 1: Շղթայի դիագրամ

Շղթայի դիագրամ
Շղթայի դիագրամ

Հաղորդիչի և ընդունիչի սխեմաների հիմնական մասը Arduino nano- ն է, որը սնուցվում է 9 Վ մարտկոցով: Հետո մենք երկու կողմից ունենք NRF24L01 մոդուլ `անլար հաղորդակցվելու համար:

Հաղորդիչի կողմում գտնվող Joystick մոդուլը կօգտագործվի x և y արժեքները ստանալու համար, որոնք կուղարկվեն ստացողի կողմ և կօգտագործվեն շարժիչները վերահսկելու համար: L293D շարժիչի վարորդ IC- ն ստացողի կողմից նույնպես էներգիա կստանա 9 վ էլեկտրամատակարարումից և կվերահսկի շարժիչները:

Օգտագործելով վերը նշված սխեմայի սխեման, դուք կարող եք միացում կատարել տախտակի վրա `համոզվելու համար, որ ամեն ինչ աշխատում է այնպես, ինչպես ցանկանում եք:

Քայլ 2: PCB նախագծում

PCB դիզայն
PCB դիզայն
PCB դիզայն
PCB դիզայն

Այն բանից հետո, երբ համոզվեցի, որ ամեն ինչ լավ է աշխատում սեղանի վրա, ես նախագծեցի PCB- ն EasyEDA- ում: EasyEDA- ն բաց կոդով առցանց PCB նախագծման գործիք է:

Ահա այս նախագծի PCB նախագծի հղումը: PCB- ի նախագծումից հետո ես ստեղծեցի Gerber ֆայլերը, որոնք անհրաժեշտ են PCB- ների արտադրության համար:

Դուք կարող եք ներբեռնել Gerber ֆայլերը հետևյալ հղումների միջոցով

Gerber_Transmitter_20190711100324 Բեռնել

Gerber_Receiver_20190711100335 Բեռնել

Քայլ 3: Պլանշետների պատվիրում

ՊՀՀ -ների պատվիրում
ՊՀՀ -ների պատվիրում
ՊՀՀ -ների պատվիրում
ՊՀՀ -ների պատվիրում
ՊՀՀ -ների պատվիրում
ՊՀՀ -ների պատվիրում
ՊՀՀ -ների պատվիրում
ՊՀՀ -ների պատվիրում

Այժմ մենք ստացել ենք PCB- ի դիզայնը և ժամանակն է պատվիրել PCB- ները: Դրա համար պարզապես պետք է գնալ JLCPCB.com և սեղմել «ՀԻՄԱ ՀԵՏ» կոճակը:

JLCPCB- ն նույնպես հովանավորում է այս նախագիծը: JLCPCB (Shenzhen JLC Electronics Co., Ltd.), Չինաստանում PCB- ի նախատիպի խոշորագույն ձեռնարկություն է և բարձր տեխնոլոգիական արտադրող, որը մասնագիտացած է արագ PCB նախատիպի և փոքր խմբաքանակի PCB- ի արտադրության մեջ: Դուք կարող եք պատվիրել առնվազն 5 հատ PCB ընդամենը 2 դոլարով:

PCB- ի արտադրություն ստանալու համար վերբեռնեք gerber ֆայլը, որը ներբեռնել եք վերջին քայլում: Վերբեռնեք.zip ֆայլը, կամ կարող եք նաև քաշել և թողնել գերբեր ֆայլերը:

ZIP ֆայլը վերբեռնելուց հետո ներքևում կտեսնեք հաջողության հաղորդագրություն, եթե ֆայլը հաջողությամբ վերբեռնվի: Դուք կարող եք վերանայել PCB- ն Gerber դիտիչում `համոզվելու համար, որ ամեն ինչ լավ է:

Դուք կարող եք դիտել PCB- ի ինչպես վերևում, այնպես էլ ներքևում:

Համոզվելուց հետո, որ մեր PCB- ն լավ տեսք ունի, այժմ մենք կարող ենք պատվերը տեղադրել ողջամիտ գնով: Դուք կարող եք պատվիրել 5 հատ PCB ընդամենը 2 դոլարով, բայց եթե դա ձեր առաջին պատվերն է, ապա կարող եք ձեռք բերել 10 հատ PCB 2 դոլարով:

Պատվերը տեղադրելու համար կտտացրեք «Պահել զամբյուղին» կոճակին:

Իմ PCB- ները պատրաստվել են 2 օր և ժամանել են մեկ շաբաթվա ընթացքում ՝ օգտագործելով DHL առաքման տարբերակը: PCB- ները լավ փաթեթավորված էին, և որակը իսկապես լավ էր:

Ամեն ինչ հավաքելուց և շարժիչները միացնելուց հետո այն կարծես այս քայլի վերջին պատկերում պատկերված է:

Քայլ 4: Կոդ

Հաղորդիչի ծածկագիրը

Նախ, մենք պետք է ներառենք SPI և RF24 գրադարանը անլար հաղորդակցության համար: Այնուհետև մենք պետք է սահմանենք NRF24L01 մոդուլի համար թվային կապեր և ջոյսթիկի մոդուլի անալոգային կապեր: Դրանից հետո մենք պետք է սահմանենք ռադիոօբյեկտ, դրա համար հաղորդակցության հասցեն և զանգված `դրանում պահելու ջոյսթիկի մոդուլի արժեքները:

Կարգավորման գործառույթում մենք պետք է նախաստորագրենք սերիական և ռադիոկապը:

Օղակի գործառույթում մենք նախ կարդում ենք արժեքները joystick մոդուլից և պահում դրանք զանգվածում: Դրանից հետո, օգտագործելով radio.write () գործառույթը, մենք այդ հաղորդագրությունը կուղարկենք ստացողին: Այս ֆունկցիայի առաջին փաստարկը հաղորդագրությունն է, իսկ երկրորդը `այդ հաղորդագրության մեջ առկա բայթերի քանակը: կեղծ, տվյալները կորած են:

Ստացողի ծածկագիրը Ստացողի կողմից մենք պետք է ներառենք SPI և RF24 գրադարաններ անլար հաղորդակցության համար: Այնուհետև մենք պետք է սահմանենք NRF24L01 մոդուլի և l293d շարժիչի վարորդի IC- ի և որոշ փոփոխականների թվային կապեր: Դրանից հետո մենք պետք է սահմանենք ռադիոօբյեկտ, դրա հաղորդակցության հասցեն և զանգված `դրանում մուտքային արժեքները պահելու համար:

Կարգավորման գործառույթում մենք պետք է նախաստորագրենք սերիական և ռադիոկապը: Այնուհետեւ մենք պետք է որոշենք L293D- ի որոշ կապում որպես ելքային կապում:

Օղակի գործառույթում մենք նախ ստուգում ենք, արդյոք որոշ տեղեկություններ առկա են, թե ոչ: Եթե այն այնտեղ լինի, ապա այն կպահենք փոփոխականների մեջ: Դրանից հետո մենք վերահսկելու ենք շարժիչներն ըստ այդ արժեքների:

Կոդերը կարող եք ստանալ նաև https://electronicshobbyists.com/arduino-wireless-control-robot-car/ հասցեով

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