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

Թիմի PCA9685 վերահսկիչ. 5 քայլ (նկարներով)
Թիմի PCA9685 վերահսկիչ. 5 քայլ (նկարներով)

Video: Թիմի PCA9685 վերահսկիչ. 5 քայլ (նկարներով)

Video: Թիմի PCA9685 վերահսկիչ. 5 քայլ (նկարներով)
Video: STM32F1 STM32CubeIDE HAL Driver TIMER Part 7: PWM OUTPUT MİNİ SERVO MOTOR SÜRME 2024, Նոյեմբեր
Anonim
Թիմի PCA9685 վերահսկիչ
Թիմի PCA9685 վերահսկիչ

Arduino- ի հետ կատարված շատ նախագծեր ներառում են Servo- ի օգտագործումը:

Եթե օգտագործում եք ընդամենը մեկ կամ երկու սերվո, դրանք կարելի է կառավարել անմիջապես Arduino- ից ՝ օգտագործելով գրադարան և դրա համար կապում հատկացնելով:

Բայց այն նախագծերի համար, որոնց անհրաժեշտ է շատ սերվո վերահսկել, (թույլ տվեք տալ դրա ամբողջական անվանումը) PCA9685 16-ալիքային, 12-բիթանոց PWM Fm+ I2C-bus LED Controller- ը, կարող է լինել ավելի լավ ընտրություն:

PCA9685 LED կարգավորիչը, չնայած նախագծված է LED- ները վերահսկելու համար, կարող է կազմաձևվել ՝ Servo- ն վերահսկելու համար: (Տվյալների թերթիկ)

PCA9685- ը հաղորդակցվում է I2C- ի միջոցով և ունի 64 հնարավոր հասցե, ինչը նշանակում է, որ այս սարքերից 64 -ը մեկը մյուսի հետևից կարող են շղթայված լինել, որոնցից յուրաքանչյուրին կցված է 16 servo կամ LED: Դա կազմում է 1024 համար, որը կարելի է կառավարել մեկ Arduino- ից:

Այժմ ունենալով մի նախագիծ, որը պետք է վերահսկի շատ Servo, ասենք չորս ոտանի ռոբոտ: Յուրաքանչյուր ոտք ունի երկու servo ՝ այն կառավարելու համար: (մենք սկսում ենք պարզ, տեսականորեն իմ ծրագիրը կարող է կառավարել 1024 -ը)

Ութ servo- ի կարգավորում, յուրաքանչյուրի համար հարմարվողականության կարգաբերում գտնելը, այնտեղ որոշելը առավելագույնը: և նվազագույն դիրքերը, կարող են շատ ժամանակատար լինել:

Կոդ գրելն ու նորից գրելը `տեսնելու համար, թե ինչ է տեղի ունենում, կարող է բավականին ցավ պատճառել:

Այսպիսով, ես որոշում եմ կատարել ծրագիր ՝ ամեն ինչ պարզ դարձնելու համար և կօգնեմ գտնել յուրաքանչյուր պահանջվող Servo պարամետր և կարողանալ գործարկել հաջորդականություններ (սցենար) `սերվոյին ուղարկված հրամանները փորձարկելու համար:

Քայլ 1: Միացումներ

"բեռնում =" ծույլ"

Script բաժինը զվարճալի մասն է, այստեղ կարող եք ստեղծել Servo դիրքերի հաջորդականություններ:

Ստիպեք ձեր նախագիծը անել այն, ինչ ցանկանում եք:

  • Ավելացնել արժեք կոճակը, ավելացնում է սահիչի ընթացիկ կարգավորումները:
  • Ավելացնել ուշացում կոճակը ավելացնում է միլիվայրկյանների ուշացում, որը դրված է կոճակի կողքին գտնվող վանդակում:
  • Ավելացնել հասցե կոճակը, ավելացնում է հրամանի անջատիչ այլ PCA9685- ին (հասցեն փոխեք վերև ձախ), որն օգտագործվում էր նաև ռեժիմը, Servo ռեժիմը կամ LED ռեժիմը փոխելու համար:
  • Run Script F կոճակը, առաջ է տանում ընթացիկ սցենարը:
  • Run Script R կոճակը, ընթացիկ սցենարը կատարում է հակադարձ:
  • Loop- ի վանդակը ստիպում է ընթացիկ սցենարը անընդհատ գործարկել, երբ սեղմում է Run Script կոճակներից մեկը: Օղակը դադարեցնելու համար չստուգեք վանդակը:
  • Clear Script կոճակը հենց դա է անում, այն մաքրում է բոլոր սցենարային հրամանները:
  • Բեռնել կոճակը, բեռնում է նախկինում պահված սցենարը:
  • Պահել կոճակը, պահում է ընթացիկ սցենարը:

Նշում!

Ես դիմումում ոչ մի սցենար չեմ գրել, գրությունը պետք է հետևի հետևյալ կանոններին.

Մեկ տող մեկ հրամանով, արժեքներ, որոնք բաժանված են բացատով:

  • Servo հրամանը սկսվում է «S» տառով, որին հաջորդում են տասնվեց արժեքներ, որոնցից յուրաքանչյուրը 0 -ից 600 -ի սահմաններում է
  • LED հրամանը սկսվում է «L» տառով, որին հաջորդում են տասնվեց արժեքներ, որոնցից յուրաքանչյուրը 0 -ից մինչև 4095 -ն է
  • Dely հրամանը սկսվում է «D» - ով, որին հաջորդում է մեկ արժեք ՝ 0 -ից 10 000 -ի միջև
  • Հասցեի հրամանը սկսվում է «A» - ով, որին հաջորդում է մեկ արժեք և մեկ բառ: 0 -ից 64 -ի արժեքը: Բառը «Servo» կամ «LED» է:

Theրագիրը կարող է վերահսկել Servo- ն կամ LED- ը, LED- ն ու Servo- ն միևնույն Breakout Board- ի վրա դնել, Servo- ին և LED- ին անհրաժեշտ է տարբեր հաճախականություններ `ճիշտ աշխատելու համար:

Եթե փորձեք սերվոն վերահսկել LED պարամետրերով, դրանք կարող են ցնցվել, դա նրանց վնաս չի պատճառի, բայց եթե դրանք տեղադրված են նախագծում, գուցե չցանկանաք, որ նրանք տեղափոխվեն ինչ -որ հնարավորություն:

Ես պատրաստել եմ մի պարզ սցենարի տեսանյութ:

Քայլ 5: Էպիլոգ

Քանի որ հրահանգները շարունակվում են Instructables- ում, մարդկանց մեծ մասը ակնկալում է, որ հրահանգի վերջում կավարտվի ֆիզիկական տարրով:

Ես գտնում եմ, որ ծրագրաշարի իրատեսական կատեգորիա չկա:

Ենթադրում եմ, որ դուք կարող եք այն դասել որպես գործիք, չնայած դրան, հրահանգը այն չէ, թե ինչպես պատրաստել գործիքը, այլ այն, թե ինչպես օգտագործել այն:

Հուսանք, որ ունենալով նման գործիք, մարդիկ կկարողանան ավելի լավ նախագծեր կատարել Arduino- ի հետ `օգտագործելով Servos կամ LED զանգվածները:

Խնդրում ենք ներել նախագծի գործողության տեսանյութը, ես օգտագործում էի ESP32-CAM բեկման տախտակը ՝ մեկ այլ հավելվածով, որը ես պատրաստել էի ՝ ESP32-CAM- ից պատկերներ դիտելու համար:

Խմբագրել

Ես կատարելագործել եմ այն:

Թարմացումները կարելի է գտնել այստեղ ՝ Tims_PCA_9685_Controller

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