Sadržaj:
2025 Autor: John Day | [email protected]. Zadnja promjena: 2025-01-13 06:57
Tinee9 se vratio s novim modulom. Ovaj se modul naziva modulom za rješavanje.
U svijetu upravljanja motorom postoje različite vrste ili metode otkrivanja položaja. Ta metoda uključuje Hall senzore, XY senzore, razlučivač, RVDT, LVDT, direktore polja, potenciometar itd. Ovisno o tome kako je svaki od ovih senzora postavljen, čak možete odrediti svoj apsolutni položaj, a da čak ni zadnji položaj ne morate spremiti u memoriju.
Modul koji koristim može se koristiti za demodulaciju RVDT -a, LVDT -a i Resolvera, ali za današnju svrhu bit će demodulacija rezolutora.
Tehničko razumijevanje: stručna razina
Vodič Plug and Play: srednja razina
Pribor
1: Arduino Nano
2: Modul razrješivača
3: Ploča za kruh
4: 9,0 voltna baterija ili NScope
5: Razriješivač
6: 10x Džemper žice za ploču za kruh
Korak 1: Modul razrješivača
Postoji nekoliko stvari koje možete učiniti s rezolutorom: možete demodulirati motor za komutaciju motora, možete dobiti apsolutni položaj ako ne prođete nultu točku, a možete i dobiti brzinu iz motora.
Najčešće sam vidio da se koriste u zrakoplovnoj primjeni elerona, kormila, projektila ili upravljanja kamerom.
Oni su obično skuplji od lončastog senzora ili senzora, ali vam daju nevjerojatnu rezoluciju.
Korak 2: Postavljanje
1: Prvo ćete morati staviti svoj arduino nano na ploču za kruh
2: Morate spojiti 5V pin na Arduinu na +3V3 pin i 5V pin na modulu razrješivača (Modul može imati napajanje od 3.3V uz davanje uzbude od 5V na rezolutoru)
3: Priključite RTN na Arduinu na RTN na modulu razrješivača
4: Spojite D9 na Arduinu s PWM -om na modulu razrješivača
5: Spojite A0 na Arduinu s MCU_COS+ na modulu razrješivača
6: Spojite A1 na Arduinu s MCU_SIN+ na modulu razrješivača
7: Spojite žicu Resolvera EX+ na EX+ na modulu razrješivača
8: Spojite EX-žicu razrješivača na EX-na modulu razrješivača
9: Spojite Resolver COS+ žicu na COS+ na modulu Resolver
10: Spojite 2 žice RCOM razrješivača na RCOM na modulu razrješivača
11: Spojite žicu razrješivača SIN+ na SIN+ na modulu razrješivača
12: Priključite 9V bateriju na RTN (-) i VIN (+)
13: Ili spojite Nscope +5V na 5V Pin na Arduinu i RTN na Nscopeu na RTN na Arduinu
14: Priključite opseg na USB na računalu
15: Priključite Arduino na USB na računalu
Korak 3: Učitajte kôd
Kopirajte Zalijepite Arduino kôd ispod na svoju skicu u Arduino IDE
Ono što će ovaj kod učiniti jest PWM modul razrješivača. Taj će modul pobuditi rezolutor i proizvesti kvadratni val na sekundarnim zavojnicama rezolutora. Signali koji dolaze iz Sin+ i Cos+ tada se dovode do OPAMP-a koji će centrirati val i smanjiti izlaz tako da ide između 0-5 volti.
Sin+ i Cos+ su kako misle. Sin je 90 stupnjeva izvan faze s Cos valom.
Budući da su za 90 stupnjeva izvan faze, moramo upotrijebiti funkciju Atan2 (Cos, Sin) da bismo dobili ispravnu koordinatu položaja razlučivača.
Zatim će Arduino ispljunuti, nakon što dobije 4 uzorka, vrijednost između -3,14 i 3,14 što predstavlja -180 stupnjeva i +180 stupnjeva. Zbog toga, ako želite koristiti razlučivač za apsolutni položaj, morate koristiti samo između -180 i 180 bez preokreta, inače ćete se prevrnuti i pomisliti da ste se vratili na početak ili na kraj vašeg pokretača. To bi bio problem ako ste odlučili upotrijebiti rezoluciju za os x ili y 3D pisača i prevrnuli se uzrokujući da 3D pisač pokvari.
Mogao sam napraviti kôd malo boljim s prekidima kako bi imao kontinuiraniji PWMing, ali to će biti dovoljno za ovu aplikaciju.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; izlaz s plovkom = 0,00; int sin1 = 0; int cos1 = 0; int position_state = 1; int get_position = 0; void setup () {// ovdje postavite svoj kod za postavljanje, da biste ga jednom pokrenuli: pinMode (pwm, OUTPUT); Serial.begin (115200); }
void loop () {{100} {101}
if (get_position = 5) {cos1 = (c1+c2)-(c3+c4); sin1 = (s1+s2)-(s3+s4); izlaz = atan2 (cos1, sin1); c1 = 0; c2 = 0; c3 = 0; c4 = 0; s1 = 0; s2 = 0; s3 = 0; s4 = 0; Serial.print ("Pozicija:"); Serial.println (izlaz); get_position = 1; }
// ovdje unesite svoj glavni kôd, za ponavljanje:
}
Korak 4: Korak 3: Zabavite se
Uživajte u rotiranju razrješivača i saznajte kako rješavač radi i koje aplikacije biste mogli koristiti s ovim modulom razrješivača.