Mündəricat:
Video: Arduino Resolver Modulu: 4 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
Tinee9 yeni bir modulla geri döndü. Bu modula Resolver modulu deyilir.
Mühərrik idarəetmə dünyasında mövqeyi aşkar etməyin müxtəlif növləri və ya üsulları mövcuddur. Bu üsula salon sensörleri, XY sensorlar, həlledici, RVDT, LVDT, sahə direktorları, potensiometr və s. Daxildir. Bu sensorların hər birinin necə qurulmasından asılı olaraq hətta son mövqeyini yaddaşda saxlamaq məcburiyyətində olmadan da mütləq mövqeyinizi təyin edə bilərsiniz..
İstifadə etdiyim modul bir RVDT, LVDT və Resolverin modelləşdirilməsində istifadə edilə bilər, lakin bugünkü məqsəd üçün bir həll edənin demodulyasiyası olacaq.
Texniki anlayış: Ekspert səviyyəsi
Tutorial Plug and Play: Orta Səviyyə
Təchizat
1: Arduino Nano
2: Çözücü Modulu
3: Çörək lövhəsi
4: 9.0 Volt Batareya və ya NScope
5: Çözücü
6: 10x Çörək taxtası Jumper Wires
Addım 1: Çözücü Modulu
Bir mühərrikin kommutasiyası üçün demodulyasiya edə biləcəyiniz bir həlledici ilə edə biləcəyiniz bir neçə şey var, sıfır nöqtəsini keçməsəniz mütləq bir mövqe əldə edə bilərsiniz və bir motordan sürəti ala bilərsiniz.
Onlardan ən çox istifadə edildiyini gördüyüm yer havadarlıq, sükan, raket qanadı və ya kamera nəzarətindədir.
Bir qazandan və ya salondan bir az daha bahalı olmağa meyllidirlər, ancaq inanılmaz bir həll verirlər.
Addım 2: Quraşdırma
1: Əvvəlcə arduino nanonu çörək taxtasına yerləşdirməlisiniz
2: Arduino üzərindəki 5V Pini +3V3 Pinə və Çözücü Modulundakı 5V pininə bağlamalısınız (Çözücüdə 5V həyəcan verərkən modul 3.3V təchizatı ola bilər)
3: Arduino RTN -ni Resolver Modulundakı RTN -ə qoşun
4: Arduino üzərindəki D9 -u Resolver Modulundakı PWM -ə qoşun
5: Arduino -da A0 -nu Resolver Modulundakı MCU_COS+ -a qoşun
6: Arduino -da A1 -ni Resolver Modulundakı MCU_SIN+ -ə qoşun
7: Resolver EX+ telini Resolver Modulundakı EX+ -a qoşun
8: Resolver EX telini Resolver Modulundakı EX-ə qoşun
9: Resolver COS+ telini Resolver Modulundakı COS+ -a qoşun
10: 2 Resolver RCOM telini Resolver Modulundakı RCOM -a qoşun
11: Resolver SIN+ telini Resolver Modulundakı SIN+ -ə qoşun
12: 9V Batareyanı RTN (-) və VIN-ə (+) bağlayın
13: Və ya Arduino'da Nscope +5V -dən 5V -ə qədər Pin və Nscope -da RTN -ni Arduino -da RTN -ə bağlayın
14: Kompüteri USB -yə bağlayın
15: Arduino'yu PC -də USB -yə bağlayın
Addım 3: Kodu yükləyin
Aşağıdakı Arduino Kodunu Arduino IDE -dəki eskizinizə yapışdırın
Bu kodun edəcəyi şey PWM Resolver Moduluna gedir. Bu Modul, həlledicini həyəcanlandıracaq və həlledicinin ikincil sarımlarında bir kvadrat dalğa yaradacaq. Sin+ və Cos+ -dan gələn siqnallar daha sonra Dalğanı mərkəzləşdirəcək və 0-5Volts arasında gedən çıxışı azaldacaq bir OPAMP-ə verilir.
Sin+ və Cos+ dedikləri kimidir. Günah Cos dalğası ilə fazadan 90 dərəcə uzaqdır.
Fazadan 90 dərəcə kənarda olduqları üçün, həlledici mövqenin düzgün koordinatını əldə etmək üçün Atan2 (Cos, Sin) funksiyasından istifadə etməliyik.
Arduino, 4 nümunə əldə etdikdən sonra, -3.14 ilə 3.14 arasında olan, sırasıyla -180 dərəcə və +180 dərəcəni təmsil edən tüpürəcək. Məhz bu səbəbdən, qətnaməni mütləq mövqe üçün istifadə etmək istəyirsinizsə, yalnız 180 ilə 180 arasında dönmədən istifadə etməlisiniz, əks halda yuvarlanıb aktuator vuruşunuzun əvvəlində və ya sonunda olduğunuzu düşünəcəksiniz. Bir 3D printerin x və ya y oxu üçün bir həlledicidən istifadə etmək qərarına gəlsəniz və 3D printerin qarışmasına səbəb olarsa bu problem olardı.
Davamlı PWMing olması üçün fasilələrlə kodu bir az daha yaxşı hala gətirə bilərdim, ancaq bu tətbiq üçün kifayət edər.int 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; float çıxışı = 0.00; int sin1 = 0; int cos1 = 0; int position_state = 1; int get_position = 0; void setup () {// bir dəfə işlətmək üçün quraşdırma kodunuzu bura qoyun: pinMode (pwm, ÇIXIŞ); Serial.begin (115200); }
boşluq döngəsi () {
əgər (get_position = 5) {cos1 = (c1+c2)-(c3+c4); sin1 = (s1+s2)-(s3+s4); çıxış = atan2 (cos1, sin1); c1 = 0; c2 = 0; c3 = 0; c4 = 0; s1 = 0; s2 = 0; s3 = 0; s4 = 0; Serial.print ("Vəzifə:"); Serial.println (çıxış); get_position = 1; }
// əsas kodunuzu bura qoyun, təkrar işləsin:
}
Adım 4: Adım 3: Əylən
Çözümçünün fırlanmasından və həll edənin necə işlədiyini və bu həll modulundan hansı tətbiqlərdən istifadə edə biləcəyinizdən zövq alın.
Tövsiyə:
Arduino Adafruit Servo Shield Güc Modulu: 3 addım
Arduino Adafruit Servo Shield Güc Modulu: Bu güc modulu, Arduino Uno üçün Adafruit 16 Kanallı Servo Shield ilə birlikdə hazırlanmışdır. Adafruit Servo Shield, Arduino üçün əla bir əlavədir. Ancaq ikinci bir 5V enerji təchizatı tələb olunur. Bu cihazla hələ də 5V -ə ehtiyacınız var
Arduino İkili Kanallı Gərginlik Sensor Modulu: 8 addım
Arduino İkili Kanallı Gərginlik Sensor Modulu: Təlimatlı bir yazı yazmağımdan bir neçə il keçdi, geri dönməyin vaxtı olduğunu düşünürdüm. Tezgahımın enerji təchizatı ilə əlaqə qura biləcəyim bir gərginlik sensoru qurmaq istəyirdim. İki kanallı dəyişən enerji təchizatım var, n
Arduino ilə Ultrasonik Aralıq Modulu HC-SR04: 5 Addım
Arduino ilə Ultrasonik Aralıq Modulu HC-SR04: Hey, nə var, uşaqlar! Akarsh burada CETech -dən. Bu layihəm bir az sadə tərəfdədir amma digər layihələr qədər əyləncəlidir. Bu layihədə bir HC-SR04 Ultrasonik məsafə sensoru modulunu birləşdirəcəyik. Bu modul generatin tərəfindən işləyir
Arduino üçün Diy Dc Güc Ölçmə Modulu: 8 addım
Arduino üçün Diy Dc Güc Ölçmə Modulu: Bu layihədə Arduino istifadə edərək DC güc ölçmə modulunun necə ediləcəyini görəcəyik
E32-433T LoRa Modulu Dərsliyi - E32 Modulu üçün DIY Breakout Board: 6 addım
E32-433T LoRa Modulu Dərsliyi | E32 Modulu üçün DIY Breakout Board: Hey, nə var, uşaqlar! Akarsh burada CETech-dən. Mənim bu layihəm, yüksək gücə malik 1 vatlıq ötürücü modulu olan eByte-dən E32 LoRa modulunun işini başa düşmək üçün daha çox öyrənmə əyrisidir. İşi başa düşdükdən sonra dizaynım var