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

Micro Servo Lab: 9 քայլ
Micro Servo Lab: 9 քայլ

Video: Micro Servo Lab: 9 քայլ

Video: Micro Servo Lab: 9 քայլ
Video: sg90 9g micro servo testing without servo motor driver... 2024, Նոյեմբեր
Anonim
Micro Servo Lab
Micro Servo Lab

Այս լաբորատորիայում մենք կաշխատենք պոտենցիոմետրով միկրո սերվոյի դիրքի վերահսկման վրա: Միկրո սերվոյի «զենքի» դիրքի հիման վրա մենք կլուսավորենք LED- ների համապատասխան շարքերը: Այս լաբորատորիայի համար ձեզ հարկավոր է.

  • 1 միկրո սերվո (տրամադրվածը 9 գրամ միկրո սերվո է)
  • 1 պոտենցիոմետր
  • 10 LEDS (օգտագործելով երկու տարբեր գույներ)
  • 10 220 Օմ դիմադրություն

Քայլ 1: Միացրեք միկրո սերվերը

Միացրեք միկրո սերվերը
Միացրեք միկրո սերվերը

Միկրո սերվերն ունի երեք լար `հզորության, գրունտի և ազդանշանային զարկերակի համար: Միկրո սերվերը կընդունի PWM զարկերակը `որոշելու, թե ինչ դիրքում պետք է լինի այն (0 - 180 աստիճան): Տեխնիկապես դուք կարող եք օգտագործել PWM- ի ցանկացած կապում Arduino Uno- ում, բայց մենք, ընդհանուր առմամբ, սկսում ենք 9 կամ 10*Pin- ով:

Կարգավորում.

  1. Միացրեք հացահատիկը հոսանքի ռելսին (+5V) և գետնին (GND)
  2. Միացրեք servo- ն հոսանքի ռելսին, ցամաքային երկաթուղուն և Pin 9 -ին:

** Դա տեղի է ունենում այն պատճառով, որ Servo գրադարանը Arduino- ում օգտագործում է Timer2- ը, որը մեզ արգելափակելու է PWM ազդանշանների, analogWrite () - ի օգտագործումը այս երկու կապում ցանկացած այլ նպատակով, քան սերվոյի կառավարումը: Մինչ մենք դեռ կարող ենք օգտագործել այս կապումներն թվային մուտքի/ելքի համար, մենք դրանք հիմնականում կօգտագործենք բացառապես սերվոյի կառավարման համար **

Քայլ 2: Փորձարկեք միկրո սերվո

Այստեղ ծածկագիրը Սերվոյի գրադարանի տրամադրած նմուշի ծածկագիրն է: Այն պարզապես սերվոյին կտանի 0 -ից 180 աստիճանի ետ ու առաջ

/* Ավլում

BARRAGAN Այս օրինակի կոդը հանրային տիրույթում է: փոփոխվել է 2013 թվականի նոյեմբերի 8 -ին ՝ Սքոթ Ֆիցջերալդի կողմից https://www.arduino.cc/hy/Tutorial/Sweep */#include "Servo.h" Servo myservo; // ստեղծել servo օբյեկտ `servo- ն վերահսկելու համար // տասներկու servo օբյեկտ կարող է ստեղծվել տախտակների մեծ մասում int pos = 0; // փոփոխական, որպեսզի պահպանվի servo position void setup () {myservo.attach (9); // ամրացնում է servo- ն 9 -րդ փինին servo օբյեկտին} void loop () {for (pos = 0; pos = 0; pos -= 1) {// անցնում 180 աստիճանից 0 աստիճանի myservo.write (pos); // ասեք սերվոյին `անցնել« pos »փոփոխականի հետաձգման դիրքի (15); // սպասում է 15 ms, մինչև servo- ն հասնի դիրքի}}

Քայլ 3: Միացրեք պոտենցիոմետր

Միացրեք պոտենցիոմետր
Միացրեք պոտենցիոմետր

Այժմ մենք աշխատելու ենք պոտենցիոմետրով սերվոյի դիրքը ձեռքով վերահսկելու վրա: Միացրեք պոտենցիոմետրը հետևյալ կերպ.

  • Ձախ կողմ - վերգետնյա երկաթուղի
  • Աջ կողմ - էլեկտրակայան
  • Վերին/միջին կապ - Pin A0 (անալոգային 0 փին)

Քայլ 4. Potentiometer Starter Code

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

/* Sweep by BARRAGAN Այս օրինակի կոդը հանրային տիրույթում է: փոփոխվել է 2013 թվականի նոյեմբերի 8 -ին ՝ Սքոթ Ֆիցջերալդի կողմից https://www.arduino.cc/hy/Tutorial/Sweep */#include "Servo.h" Servo myservo; // ստեղծել servo օբյեկտ `servo- ն վերահսկելու համար // տասներկու servo օբյեկտ կարող է ստեղծվել տախտակների մեծ մասում int pos = 0; // փոփոխական ՝ սերվո դիրքը պահելու համար int potPin = 0; // Ընտրեք պոտենցիոմետրը int potVal = 0; // ներկայիս պոտենցիոմետրի արժեքը void setup () {myservo.attach (9); // ամրացնում է servo- ն 9 -րդ կապի վրա servo օբյեկտի pinMode- ին (potPin, INPUT); } void loop () {potVal = analogRead (potPin); myservo.write (pos); // ասեք սերվոյին `անցնել« pos »փոփոխականի հետաձգման դիրքի (15); // սպասում է 15 ms, մինչև servo- ն հասնի դիրքին}

Քայլ 5: Միացրեք առաջին LED- ը

Միացրեք առաջին LED- ը
Միացրեք առաջին LED- ը

Պոտենցիոմետրի միջոցով սերվոյի վերահսկումից հետո մենք որոշ հետադարձ կապ կավելացնենք որոշ LED- ների միջոցով: Մենք կստեղծենք LED- ների երկու շարք: Մեկը կներկայացնի սերվոյի «ձախ» թևը, իսկ մյուսը ՝ սերվոյի «աջ» թևը: Երբ servo- ն փոխում է դիրքերը, մի ձեռքը կբարձրանա, իսկ մյուսը կընկնի: LED- ները կլուսավորվեն ՝ ցուցադրելու համար.

  • ամբողջ ձեռքը բարձրացված է
  • կես ձեռքերը հավասար են:
  • անջատված ձեռքը իջեցված է

Դիագրամը կցուցադրի լուսադիոդների շարքերը տախտակի հակառակ ծայրերում: Սա արվել է տեսանելիության հեշտության համար, ձեր LED- ները պետք է շարված լինեն/նույնիսկ միմյանց հետ:

Միացրեք առաջին LED- ը.

  • Միացրեք LED- ի կարճ կապը գետնին
  • LED- ի ավելի երկար կապը միացրեք 220 Օմ ռեզիստորին: Միացրեք ռեզիստորը Arduino- ի 13 -րդ կապին:

Քայլ 6. Միացրեք LED- ների մնացած շարանը

Միացրեք LED- ների մնացած շարանը
Միացրեք LED- ների մնացած շարանը

Առաջին LED- ն ավելացնելուց հետո միացրեք մնացած LED- ները.

  • Ավելի կարճ կապար - միացեք ցամաքային երկաթուղուն
  • Ավելի երկար կապար - միացրեք 220 Օմ դիմադրություն LED- ներին և Arduino- ի հետևյալ կապումներին ՝ 12, 11, 10, 9, 8

Քայլ 7: Ավելացրեք առաջին LED, երկրորդ տող

Ավելացնել Առաջին LED, Երկրորդ տող
Ավելացնել Առաջին LED, Երկրորդ տող

LED- ների երկրորդ շարքը կավելացվի նույն ձևով, ինչ առաջինը.

  • Միացրեք LED- ի կարճ կապը գետնին
  • LED- ի ավելի երկար կապը միացրեք 220 Օմ ռեզիստորին: Միացրեք ռեզիստորը Arduino- ի 7 -րդ կապին:

Քայլ 8: Միացրեք վերջնական LED- ները

Միացրեք վերջնական LED- ները
Միացրեք վերջնական LED- ները

Միացրեք մնացած LED- ները.

Ավելի կարճ կապար - միացեք գետնի երկաթուղուն Ավելի երկար կապար - միացրեք 220 Օմ դիմադրիչ LED- ին և հետևյալ Arduino կապումներին. 6, 5, 4, 3

Քայլ 9: Կառավարեք LED էկրանը

Ձեր վերջին քայլը ձեր LED- ների վերահսկման համար ձեր ծածկագրի թարմացումն է: Այն պետք է լուծի հետևյալը.

  • Վերին շարքը կհամապատասխանի սերվոյի «աջ թևին»: Երբ ձեռքը սահում է վեր/վար, LED- ները պետք է միացվեն/անջատվեն:
  • Ներքեւի շարքը կհամապատասխանի սերվոյի «ձախ ձեռքին»: Երբ ձեռքը սահում է վեր/վար, LED- ները պետք է միացվեն/անջատվեն:

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