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

Arduino Resolver մոդուլ ՝ 4 քայլ
Arduino Resolver մոդուլ ՝ 4 քայլ

Video: Arduino Resolver մոդուլ ՝ 4 քայլ

Video: Arduino Resolver մոդուլ ՝ 4 քայլ
Video: Lesson 95: Using L293D 4 DC Motors Shield for Arduino UNO and Mega | Arduino Step By Step Course 2024, Նոյեմբեր
Anonim
Arduino լուծիչ մոդուլ
Arduino լուծիչ մոդուլ

Tinee9- ը վերադառնում է նոր մոդուլով: Այս մոդուլը կոչվում է Resolver մոդուլ:

Շարժիչային կառավարման աշխարհում կան դիրքի հայտնաբերման տարբեր տեսակներ կամ մեթոդներ: Այդ մեթոդը ներառում է դահլիճի տվիչներ, XY տվիչներ, լուծիչ, RVDT, LVDT, դաշտային ռեժիսորներ, պոտենցիոմետր և այլն: Կախված այս սենսորներից յուրաքանչյուրի ձևից, կարող եք նույնիսկ որոշել ձեր բացարձակ դիրքը ՝ նույնիսկ չպահպանելով վերջին դիրքը հիշողության մեջ:.

Իմ օգտագործած մոդուլը կարող է օգտագործվել RVDT- ի, LVDT- ի և Resolver- ի ապամոդուլյացիայի համար, սակայն այսօրվա նպատակի համար կլինի լուծիչ ապամոդուլյացիա:

Տեխնիկական ըմբռնում. Փորձագետի մակարդակ

Tutorial Plug and Play: Միջանկյալ մակարդակ

Պարագաներ

1 ՝ Արդուինո Նանո

2. լուծիչ մոդուլ

3: Հացի տախտակ

4: 9.0 վոլտ մարտկոց կամ NScope

5: լուծիչ

6: 10x Հացի տախտակ Jumper Wires

Քայլ 1 ՝ լուծման մոդուլ

Լուծիչ մոդուլ
Լուծիչ մոդուլ

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

Այնտեղ, որտեղ ես տեսել եմ, որ դրանք ամենից շատ օգտագործվում են, դա օդերևութի, ղեկի, հրթիռի լողակի կամ տեսախցիկի կառավարման սարքերում է:

Նրանք հակված են մի փոքր ավելի թանկ լինել, քան կաթսայի կամ դահլիճի սենսորը, բայց դրանք ձեզ տալիս են անհավատալի լուծում:

Քայլ 2: Կարգավորում

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

1. Սկզբում ձեզ հարկավոր է տեղադրել ձեր arduino nano- ն հացի տախտակի վրա

2. Դուք պետք է Arduino- ի 5V Pin- ը միացրեք +3V3 Pin- ին և Resolver մոդուլին `5V pin- ին (մոդուլը կարող է ունենալ 3.3V պաշար` լուծիչի վրա 5V գրգռում տալով)

3. Միացրեք RTN- ն Arduino- ին RTN- ին Resolver մոդուլին

4. Arduino- ի D9- ը միացրեք Resolver մոդուլի PWM- ին

5. Arduino- ի A0- ը միացրեք MCU_COS+ - ին Resolver մոդուլին

6. Arduino- ի A1- ը միացրեք MCU_SIN+ Resolver մոդուլին

7. Resolver EX+ լարը միացրեք EX+ - ին Resolver մոդուլին

8. Միացրեք Resolver EX- մետաղալարը EX- ին Resolver մոդուլի վրա

9. Միացրեք Resolver COS+ մետաղալարը COS+ - ին Resolver մոդուլում

10. Միացրեք 2 Resolver RCOM լարերը RCOM- ին Resolver մոդուլի վրա

11. Resolver SIN+ մետաղալարը միացրեք Resolver մոդուլի SIN+ - ին

12: Միացրեք 9 Վ մարտկոցը RTN (-) և VIN (+)

13. Կամ միացրեք Nscope +5V- ից մինչև 5V Pin Arduino- ում և RTN- ին Nscope- ին ՝ RTN- ին Arduino- ում

14. Միացրեք շրջանակը USB- ին համակարգչում

15. Միացրեք Arduino- ն USB- ին համակարգչում

Քայլ 3: Բեռնեք ծածկագիրը

Բեռնեք ծածկագիրը
Բեռնեք ծածկագիրը
Բեռնեք ծածկագիրը
Բեռնեք ծածկագիրը

Պատճենեք Տեղադրեք Arduino ծածկագիրը ներքևում ձեր ուրվագծին Arduino IDE- ում

Այն, ինչ այս ծածկագիրը պատրաստվում է անել, PWM Resolver մոդուլն է: Այդ մոդուլը կգրգռի լուծիչն ու քառակուսի ալիք կստեղծի լուծիչի երկրորդական կծիկների վրա: Sin+ և Cos+-ից դուրս եկող ազդանշանները սնվում են OPAMP- ով, որը կենտրոնացնելու է ալիքը և նվազեցնելու ելքը, որպեսզի այն տատանվի 0-5 Վոլտ-ի միջև:

Sin+ և Cos+ այնպիսին են, ինչպիսին որ նշանակում են: Sin- ը Cos ալիքի հետ փուլից դուրս է 90 աստիճան:

Քանի որ դրանք փուլից դուրս 90 աստիճան են, մենք պետք է օգտագործենք Atan2 (Cos, Sin) ֆունկցիան ՝ լուծիչ դիրքի ճիշտ կոորդինատը ստանալու համար:

Հետո Arduino- ն կթքի, 4 նմուշ ստանալուց հետո, արժեքը -3.14 և 3.14 սահմաններում, որոնք համապատասխանաբար ներկայացնում են -180 և +180 աստիճան: Ահա թե ինչու, եթե ցանկանում եք լուծիչն օգտագործել բացարձակ դիրքի համար, ապա պետք է օգտագործեք միայն -180 -ից 180 -ի սահմաններում առանց պտտման, հակառակ դեպքում կշրջվեք և կարծում եք, որ վերադարձել եք շարժիչի հարվածի սկզբում կամ վերջում: Սա խնդիր կլիներ, եթե որոշեիք լուծիչ օգտագործել 3D տպիչի x կամ y առանցքի համար և գլորվելով ՝ 3D տպիչի խառնաշփոթ առաջացնելով:

Ես կարող էի ծածկագիրը մի փոքր ավելի լավ դարձնել ընդհատումներով ՝ ավելի շարունակական PWMing ունենալու համար, բայց դա բավարար կլինի այս հավելվածի համար: in A = A0;

int B = A1; int pwm = 9; int c1 = 0; int c2 = 0; int c3 = 0; int c4 = 0; int c5 = 0; int c6 = 0; int s1 = 0; int s2 = 0; int s3 = 0; int s4 = 0; int s5 = 0; int s6 = 0; բոց ելք = 0.00; int sin1 = 0; int cos1 = 0; int position_state = 1; int get_position = 0; void setup () {// տեղադրեք ձեր տեղադրման կոդը այստեղ ՝ մեկ անգամ գործարկելու համար. pinMode (pwm, OUTPUT); Serial.begin (115200); }

դատարկ շրջան () {

եթե (get_position = 5) {cos1 = (c1+c2)-(c3+c4); sin1 = (s1+s2)-(s3+s4); ելք = atan2 (cos1, sin1); c1 = 0; c2 = 0; c3 = 0; c4 = 0; s1 = 0; s2 = 0; s3 = 0; s4 = 0; Serial.print ("Պաշտոնը:"); Serial.println (ելք); get_position = 1; }

// տեղադրեք ձեր հիմնական կոդը այստեղ ՝ բազմիցս գործարկելու համար.

}

Քայլ 4: Քայլ 3: Haveվարճացեք

Քայլ 3: Haveվարճացեք
Քայլ 3: Haveվարճացեք
Քայլ 3: Haveվարճացեք
Քայլ 3: Haveվարճացեք

Վայելեք լուծիչի պտտումը և սովորեք, թե ինչպես է աշխատում լուծիչը և ինչ ծրագրեր կարող եք օգտագործել այս լուծիչ մոդուլը:

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