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

Կրակ հետապնդող ռոբոտ. 6 քայլ (նկարներով)
Կրակ հետապնդող ռոբոտ. 6 քայլ (նկարներով)

Video: Կրակ հետապնդող ռոբոտ. 6 քայլ (նկարներով)

Video: Կրակ հետապնդող ռոբոտ. 6 քայլ (նկարներով)
Video: 💬 Ի՞նչ գույնի նասկի ա հենց հիմա հագդ⁉️ 2024, Նոյեմբեր
Anonim
Image
Image
Ֆլեյմի տվիչը միացնելով PICO- ին
Ֆլեյմի տվիչը միացնելով PICO- ին

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

Այս ծրագրի ավարտից հետո դուք կիմանաք, թե ինչպես օգտագործել կրակի տվիչները PICO- ով, ինչպես կարդալ դրանց ելքային արժեքը և ինչպես գործել դրա վրա, և ինչպես օգտագործել DC շարժիչներով Darlington սենսորները և ինչպես վերահսկել դրանք: Դա, իհարկե, հիանալի հրդեհաշիջման ռոբոտի հետ միասին:

Պարագաներ

  • PICO
  • Ֆլեյմի տվիչ
  • Փոքր DC շարժիչ
  • Փոքր պտուտակ
  • L298N H- կամուրջի շարժիչի վարորդ
  • PCA9685 12-բիթանոց 16-ալիքային PWM վարորդ
  • 2WD ռոբոտի շասսի հավաքածու
  • Մինի տախտակ
  • Jumper լարերը
  • Պտուտակներ և ընկույզներ

Քայլ 1. Ֆլեյմի տվիչի միացում PICO- ին

Ֆլեյմի տվիչը միացնելով PICO- ին
Ֆլեյմի տվիչը միացնելով PICO- ին

Սկսենք մեր հրդեհաշիջման ռոբոտի ամենակարևոր մասից, որը հրդեհների բռնկման ժամանակ հայտնաբերելու ունակությունն է: Ահա թե ինչու մենք պատրաստվում ենք սկսել այն բաղադրիչներից, որոնք պատասխանատու են կրակի հայտնաբերման համար, բայց մինչ դա անելը, եկեք հավաքենք մեր 2WD ռոբոտների շասսի հավաքածուն, քանի որ դրա հիման վրա կկառուցենք մեր ռոբոտը:

Այս նախագծում մենք կօգտագործենք բոցի 3 սենսորներ, և մենք ռոբոտին կպահանջենք ինքնուրույն շարժվել `օգտագործելով նրանց ընթերցումները, մենք դրանք կտեղադրենք ռոբոտի շասսիի միջին, ձախ և աջ կողմերում: Եվ դրանք կտեղադրվեն այնպես, որ կարողանան ճշգրիտ մատնանշել կրակի աղբյուրը և մարել այն:

Մինչև բոցի տվիչների օգտագործումը սկսելը, եկեք խոսենք դրանց աշխատանքի մասին. Բոցի սենսորային մոդուլները հիմնականում պատրաստված են ինֆրակարմիր ստացողի LED- ներից, որոնք կարող են հայտնաբերել կրակից արձակվող ինֆրակարմիր լույսը և տվյալները ուղարկել որպես թվային կամ անալոգային մուտք: այն դեպքում, երբ մենք կօգտագործենք բոցի սենսոր, որն ուղարկում է թվային ելք:

Ֆլեյմի տվիչի մոդուլի քորոցների ելքերը

  • VCC: դրական 5 վոլտ, կապված PICO- ի VCC կապի հետ:
  • GND. Բացասական քորոց, որը կապված է PICO- ի GND քորոցի հետ:
  • D0. Թվային ելքային քորոց, որը կապված է PICO- ի ցանկալի թվանշանի հետ:

Եկեք հիմա այն միացնենք մեր PICO- ին `ստուգելու մեր լարերի և կոդի տրամաբանությունը, համոզվելու համար, որ ամեն ինչ ճիշտ է աշխատում: Ֆլեյմի տվիչների միացումը շատ հեշտ է, պարզապես միացրեք VCC- ն և տվիչների GND- ը համապատասխանաբար VCC- ին և PICO- ի GND- ին, այնուհետև միացրեք ելքային կապերը հետևյալ կերպ.

  • D0 (կրակի աջ սենսոր) → A0 (PICO)
  • D0 (միջին բոցի սենսոր) A1 (PICO)
  • D0 (ձախ բոցի սենսոր) → A2 (PICO)

Քայլ 2. PICO- ի կոդավորումը կրակի տվիչների հետ

PICO- ի կոդավորումը կրակի տվիչների հետ
PICO- ի կոդավորումը կրակի տվիչների հետ
PICO- ի կոդավորումը կրակի տվիչների հետ
PICO- ի կոդավորումը կրակի տվիչների հետ

Այժմ, երբ մենք ունենք մեր բոցի տվիչները միացված PICO- ին, եկեք սկսենք կոդավորումը, որպեսզի իմանանք, թե որ բոցի սենսորն ունի բոց առջև, և որը ՝ ոչ:

Կոդի տրամաբանություն

  • PICO- ի A0, A2 և A3 կապումներն ամրագրեք որպես INPUT կապում
  • Կարդացեք յուրաքանչյուր սենսորի ելքային արժեքը
  • Տպեք սենսորի յուրաքանչյուր ելքային արժեքը սերիական մոնիտորի վրա, որպեսզի մենք կարողանանք ախտորոշել ՝ ամեն ինչ ճիշտ է աշխատում, թե ոչ:

Խնդրում ենք նկատի ունենալ, որ մեր սենսորները կրակը զգալիս ունեն ցածր «0», իսկ կրակ չզգալու դեպքում ՝ բարձր «1»:

Ձեր ծածկագիրը ստուգելու համար բացեք ձեր սերիական մոնիտորը և տեսեք, թե ինչպես է այն փոխվում, երբ դիմացը կրակ է, համեմատած այն ժամանակի հետ: Կցված պատկերներն ունեն ընթերցումներ ընդհանրապես բոց չունենալու համար, իսկ մեկ բոցի ընթերցումներ ՝ միջին սենսորի դիմաց:

Քայլ 3: Միացրեք երկրպագուն

Միացնելով երկրպագուին
Միացնելով երկրպագուին

Հրդեհաշիջման ռոբոտը արդյունավետ դարձնելու համար այն պետք է ունենա կրակի դեմ պայքարելու ունակություն, և դրա համար մենք պատրաստվում ենք ստեղծել օդափոխիչ, որի նպատակն ենք կրակի վրա և մարել այն: Եվ մենք պատրաստվում ենք ստեղծել այս օդափոխիչը `օգտագործելով փոքր DC շարժիչ, որի վրա տեղադրված է պտուտակ:

Այսպիսով, եկեք սկսենք միացնելով մեր DC շարժիչները: DC շարժիչներն ունեն բարձր հոսանքի ձգում, ուստի մենք չենք կարող դրանք ուղղակիորեն միացնել մեր PICO- ին, քանի որ այն կարող է առաջարկել 40 մԱ մեկ GPIO կապի համար, մինչդեռ շարժիչին անհրաժեշտ է 100 մԱ: Ահա թե ինչու մենք պետք է տրանզիստոր օգտագործենք այն միացնելու համար, և մենք կօգտագործենք TIP122 տրանզիստորը, քանի որ այն կարող ենք օգտագործել մեր PICO- ի կողմից տրամադրվող հոսանքը շարժիչին անհրաժեշտ քանակությամբ բարձրացնելու համար:

Մենք մտադիր ենք ավելացնել մեր DC շարժիչը և արտաքին «PLACE HOLDER» մարտկոցը, որպեսզի շարժիչն ապահովի անհրաժեշտ հզորությունը ՝ առանց վնասելու մեր PICO- ին:

DC շարժիչը պետք է միացված լինի հետևյալ կերպ.

  • Հիմնական քորոց (TIP122) → D0 (PICO)
  • Հավաքիչի քորոց (TIP122) → DC շարժիչի կապ "DC շարժիչները չունեն բևեռականություն, ուստի կարևոր չէ, թե որ կապն է"
  • Emitter pin (TIP122) → GND
  • DC շարժիչի դատարկ կապարը the Դրական (կարմիր մետաղալար) արտաքին մարտկոցի

Մի մոռացեք միացնել մարտկոցի GND- ը PICO- ի GND- ին, քանի որ եթե այն միացված չէ, միացումն ընդհանրապես չի աշխատի:

Երկրպագուի կոդի տրամաբանությունը. Կոդը շատ պարզ է, մենք պարզապես կփոխենք այն կոդը, որն արդեն ունենք, որպեսզի միացնենք օդափոխիչը, երբ միջին սենսորի ընթերցումը բարձր է, և անջատենք երկրպագուն, երբ միջին սենսորի ընթերցումը ցածր է:

Քայլ 4. Robot Car Motors- ի միացում

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

Որպեսզի կարողանաք վերահսկել DC շարժիչի շարժման արագությունը և ուղղությունը, դուք պետք է օգտագործեք L298N H-Bridge շարժիչի վարորդը, որը շարժիչի վարորդի մոդուլ է, որն ունի շարժիչի արագությունը և ուղղությունը վերահսկելու ունակություն, շարժիչները սնուցելու ունակությամբ: արտաքին էներգիայի աղբյուրից:

L298N շարժիչի վարորդին անհրաժեշտ է 4 թվային մուտք `շարժիչների պտույտի ուղղությունը վերահսկելու համար, և 2 PWM մուտք` շարժիչների պտտման արագությունը վերահսկելու համար: Բայց, ցավոք, PICO- ն ունի միայն մեկ PWM ելքային քորոց, որը չի կարող վերահսկել շարժիչի պտույտի ուղղությունը և արագությունը: Այստեղ մենք օգտագործում ենք PCA9685 PWM կապում ընդլայնման մոդուլը `PICO- ի PWM- ը մեր կարիքներին համապատասխանեցնելու համար:

Այժմ էլեկտրագծերը մի փոքր ավելի բարդ են դարձել, քանի որ դրանք միացնելու համար մենք միացնում ենք 2 նոր շարժիչ և 2 մոդուլ: Բայց դա խնդիր չի լինի, եթե հետևեք ներկայացված սխեմաներին և քայլերին.

Սկսենք PCA9685 PWM մոդուլից

  • Vcc (PCA9685) → Vcc (PICO)
  • GND (PCA9685) GND
  • SDA ((PCA9685) D2 (PICO)
  • SCL (PCA9685) → D3 (PICO)

Այժմ, եկեք միացնենք L298N շարժիչի վարորդի մոդուլը

Եկեք սկսենք այն միացնելով մեր էներգիայի աղբյուրին.

  • +12 (L298N մոդուլ) → Դրական կարմիր մետաղալար (մարտկոց)
  • GND (L298N մոդուլ) → GND

Շարժիչների պտույտի ուղղությունը վերահսկելու համար.

  • In1 (L298N մոդուլ) → PWM 0 փին (PCA9685)
  • In2 (L298N մոդուլ) → PWM 1 փին (PCA9685)
  • In3 (L298N մոդուլ) → PWM 2 փին (PCA9685)
  • In4 (L298N մոդուլ) → PWM 3 փին (PCA9685)

Շարժիչի պտտման արագությունը վերահսկելու համար.

  • enableA (L298N մոդուլ) → PWM 4 փին (PCA9685)
  • enableB (L298N մոդուլ) → PWM 5 փին (PCA9685)

L298N շարժիչի վարորդը կարող է թողարկել կարգավորվող +5 վոլտ, որը մենք կօգտագործենք մեր PICO- ն հզորացնելու համար.

+5 (L298N մոդուլ) → Vin (PICO)

Մի միացրեք այս կապը, եթե PICO- ն միացված է USB- ի միջոցով:

Այժմ, երբ մենք ամեն ինչ միացված ենք, մենք ծրագրելու ենք, որ ռոբոտը շարժվի ինքն իրեն, որպեսզի անմիջապես դիմի կրակին և միացնի օդափոխիչը:

Քայլ 5: Կոդի ավարտում

Այժմ, երբ մենք ամեն ինչ միացրել ենք ճիշտ, ժամանակն է այն ծածկագրել, որպեսզի այն նույնպես աշխատի: Եվ սա այն բաներն են, որոնք մենք ցանկանում ենք, որ մեր ծածկագիրը կատարվի.

Եթե այն զգում է կրակը ուղիղ առջևում (միջին սենսորը զգում է կրակը), ապա ռոբոտը շարժվում է ճիշտ դեպի այն, մինչև հասնի սահմանված հեռավորությանը և միացնում է օդափոխիչը:

Եթե կրակը զգում է ռոբոտի աջ կողմում (աջ սենսորը զգում է կրակը), ապա ռոբոտը պտտվում է մինչև կրակը գտնվում է հենց ռոբոտի դիմաց (միջին սենսոր), այնուհետև շարժվում դեպի այն մինչև հասնի սահմանված հեռավորությանը և միացնում է օդափոխիչը:

Եթե նա զգա կրակը ռոբոտի ձախ կողմում, նա կանի նույնը, ինչ վերևում: Բայց, այն աջի փոխարեն կթեքվի ձախ:

Եվ եթե այն ընդհանրապես որևէ կրակ չի զգում, ապա բոլոր սենսորները կարտադրեն ԲԱՐՁՐ արժեք ՝ կանգնեցնելով ռոբոտին:

Քայլ 6: Դուք կատարված եք:

Այս նախագծում մենք սովորեցինք, թե ինչպես կարդալ սենսորների ելքը և դրանից կախված գործողություններ կատարել, ինչպես օգտագործել DC շարժիչներով Darlington տրանզիստորը և ինչպես վերահսկել DC շարժիչները: Եվ մենք օգտագործեցինք մեր ողջ գիտելիքները ՝ որպես ծրագիր հրդեհաշիջման ռոբոտ ստեղծելու համար: Ինչը շատ թույն է x)

Խնդրում ենք մի հապաղեք մեկնաբանություններում կամ մեր կայքում mellbell.cc- ում ձեզ հետաքրքրող ցանկացած հարց տալ: Եվ ինչպես միշտ, շարունակիր պատրաստել:)

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