Tartalomjegyzék:

Arduino Resolver modul: 4 lépés
Arduino Resolver modul: 4 lépés

Videó: Arduino Resolver modul: 4 lépés

Videó: Arduino Resolver modul: 4 lépés
Videó: Использование драйвера шагового двигателя L298N Для управления 4-проводным шаговым двигателем 2024, Július
Anonim
Arduino Resolver modul
Arduino Resolver modul

A Tinee9 új modullal tért vissza. Ezt a modult Resolver modulnak hívják.

A motorvezérlés világában különféle típusú vagy módszerek vannak a helyzet észlelésére. Ezek a módszerek magukban foglalják a hall -érzékelőket, az XY -érzékelőket, a feloldót, az RVDT -t, az LVDT -t, a terepi irányítókat, a potenciométert stb. Attól függően, hogy ezek az érzékelők hogyan vannak beállítva, akár abszolút pozícióját is meghatározhatja anélkül, hogy az utolsó pozíciót memóriába kellene mentenie.

Az általam használt modul használható RVDT, LVDT és Resolver demodulálására, de a mai célra egy feloldó demodulálása lesz.

Technikai megértés: szakértői szint

Plug and Play bemutató: középszint

Kellékek

1: Arduino Nano

2: Megoldó modul

3: Kenyértábla

4: 9,0 voltos akkumulátor vagy NScope

5: Megoldó

6: 10x kenyértábla jumper vezetékek

1. lépés: Megoldó modul

Megoldó modul
Megoldó modul

Van egy pár dolog, amit megtehet egy felbontóval, amellyel demodulálhat egy motort a motor kommutációjához, abszolút pozíciót kaphat, ha nem lépi túl a nullpontot, és lekérheti a sebességet egy motorból.

Leggyakrabban ezeket láttam csűrő, kormány, rakétaúszó vagy kameravezérlés repülőgépészeti alkalmazásaiban.

Ezek általában drágábbak, mint egy edény vagy csarnok érzékelő, de hihetetlen felbontást biztosítanak.

2. lépés: Beállítás

Beállít
Beállít
Beállít
Beállít
Beállít
Beállít
Beállít
Beállít

1: Először helyezze el arduino nanóját egy kenyértáblára

2: Csatlakoztatnia kell az Arduino 5V -os érintkezőjét a +3V3 -as és 5V -os tűhöz a Resolver Module -on (A modul 3,3V -os tápellátással rendelkezhet, miközben 5V -os gerjesztést ad a felbontón)

3: Csatlakoztassa az Arduino RTN -jét a Resolver Module RTN -hez

4: Csatlakoztassa az Arduino D9 -jét a Resolver Module PWM -hez

5: Csatlakoztassa az A0 -t az Arduino -n az MCU_COS+ -hoz a Resolver modulon

6: Csatlakoztassa az Arduino A1 -et az MCU_SIN+ -hoz a Resolver modulon

7: Csatlakoztassa a Resolver EX+ vezetéket a Resolver modul EX+ csatlakozójához

8: Csatlakoztassa a Resolver EX-vezetéket a Resolver-modul EX-csatlakozójához

9: Csatlakoztassa a Resolver COS+ vezetéket a Resolver modul COS+ csatlakozójához

10: Csatlakoztassa a 2 Resolver RCOM vezetéket a Resolver modul RCOM -jához

11: Csatlakoztassa a Resolver SIN+ vezetéket a SIN+ -hoz a Resolver modulon

12: Csatlakoztassa a 9 V-os akkumulátort RTN (-) és VIN (+)

13: Vagy csatlakoztassa az Nscope +5V -5V Pin -t az Arduino -hoz és az RTN -t az Nscope -hoz az RTN -hez az Arduino -n

14: Csatlakoztassa a hatókört az USB -hez a számítógépen

15: Csatlakoztassa az Arduinot az USB -hez a számítógépen

3. lépés: Töltse be a kódot

Töltse be a kódot
Töltse be a kódot
Töltse be a kódot
Töltse be a kódot

Másolja be az alábbi Arduino kódot a vázlatába az Arduino IDE -ben

Amit ez a kód fog tenni, az a PWM a Resolver Module. Ez a modul fel fogja gerjeszteni a feloldót, és négyzetes hullámot fog kelteni a feloldó másodlagos tekercsén. A Sin+ és Cos+ jelek egy OPAMP-hoz kerülnek, amely középre állítja a hullámot, és csökkenti a kimenetet úgy, hogy 0-5 volt között legyen.

A Sin+ és a Cos+ olyanok, mint amilyenek. A bűn 90 fokkal kiesik a fázistól a Cos hullámmal.

Mivel 90 fokban vannak a fázisban, az Atan2 (Cos, Sin) függvényt kell használnunk a felbontó pozíció helyes koordinátájának meghatározásához.

Ezután az Arduino kiköpi, miután 4 mintát kapott, -3,14 és 3,14 közötti érték, amely -180 fokot és +180 fokot jelent. Éppen ezért, ha abszolút helyzetben szeretné használni a feloldót, akkor csak -180 és 180 közötti értéket kell használnia anélkül, hogy elforgatná, különben felborul, és azt hiszi, hogy visszatért a hajtómű löketének kezdetéhez vagy végéhez. Ez gondot okozna, ha úgy döntene, hogy egy 3D nyomtató x vagy y tengelyére használ feloldót, és felborul, ami miatt a 3D nyomtató összezavarodik.

Megszakításokkal kicsit javíthattam volna a kódon, hogy folyamatosabb legyen a PWMing, de ez elegendő lesz ehhez az alkalmazáshoz.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; úszó kimenet = 0,00; int sin1 = 0; int cos1 = 0; int pozíció_állapot = 1; int get_position = 0; void setup () {// tegye ide a beállítási kódot, hogy egyszer fusson: pinMode (pwm, OUTPUT); Sorozat.kezdet (115200); }

void loop () {

ha (get_position = 5) {cos1 = (c1+c2)-(c3+c4); sin1 = (s1+s2)-(s3+s4); output = atan2 (cos1, sin1); c1 = 0; c2 = 0; c3 = 0; c4 = 0; s1 = 0; s2 = 0; s3 = 0; s4 = 0; Serial.print ("Pozíció:"); Serial.println (kimenet); get_position = 1; }

// tegye ide a fő kódot az ismételt futtatáshoz:

}

4. lépés: 3. lépés: Jó szórakozást

3. lépés: Jó szórakozást
3. lépés: Jó szórakozást
3. lépés: Jó szórakozást
3. lépés: Jó szórakozást

Élvezze a felbontó forgatását, és megtanulja, hogyan működik a felbontó, és milyen alkalmazásokat használhat a felbontó modulhoz.

Ajánlott: