Obsah:

Modul Arduino Resolver: 4 kroky
Modul Arduino Resolver: 4 kroky

Video: Modul Arduino Resolver: 4 kroky

Video: Modul Arduino Resolver: 4 kroky
Video: Arduino IDE 2.0.4 Tutorial For beginners / compilation error solving 2024, Červenec
Anonim
Modul Arduino Resolver
Modul Arduino Resolver

Tinee9 je zpět s novým modulem. Tento modul se nazývá modul Resolver.

Ve světě řízení motoru existují různé typy nebo způsoby zjišťování polohy. Mezi tyto metody patří Hallovy senzory, XY senzory, resolver, RVDT, LVDT, polní direktory, potenciometr atd. V závislosti na tom, jak jsou tyto senzory nastaveny, můžete dokonce určit svou absolutní polohu, aniž byste museli poslední pozici uložit do paměti..

Modul, který používám, lze použít k demodulaci RVDT, LVDT a Resolver, ale pro dnešní účely bude demodulovat resolver.

Technické porozumění: Expertní úroveň

Výukový program Plug and Play: Střední úroveň

Zásoby

1: Arduino Nano

2: Resolver Module

3: Chlebová deska

4: 9,0voltová baterie nebo NScope

5: Řešitel

6: 10x propojovací dráty na prkénko

Krok 1: Modul řešiče

Modul resolveru
Modul resolveru

Existuje několik věcí, které můžete udělat s resolverem, můžete demodulovat motor pro komutaci motoru, můžete získat absolutní polohu, pokud nepřejdete kolem nulového bodu, a můžete načíst rychlost z motoru.

Nejčastěji jsem je viděl v leteckých aplikacích křidélek, směrovek, ploutví raket nebo ovládání kamery.

Bývají o něco dražší než hrnec nebo halový senzor, ale poskytují neuvěřitelné rozlišení.

Krok 2: Nastavení

Založit
Založit
Založit
Založit
Založit
Založit
Založit
Založit

1: Nejprve budete muset své arduino nano umístit na chlebovou desku

2: Musíte připojit 5V Pin na Arduinu na +3V3 Pin a 5V pin na Resolver Module (Modul může mít napájení 3,3V a zároveň poskytuje 5V buzení na resolveru)

3: Připojte RTN na Arduinu k RTN na modulu Resolver

4: Připojte D9 na Arduinu k PWM na modulu Resolver

5: Připojte A0 na Arduinu k MCU_COS+ na modulu Resolver

6: Připojte A1 na Arduinu k MCU_SIN+ na modulu Resolver

7: Připojte vodič Resolver EX+ k EX+ na modulu Resolver

8: Připojte kabel Resolver EX k EX- na modulu Resolver

9: Připojte kabel COS+ Resolver k COS+ na modulu Resolver

10: Připojte 2 vodiče RCOM Resolver k RCOM na modulu Resolver

11: Připojte vodič SIN+ Resolver k SIN+ na modulu Resolver

12: Připojte 9V baterii k RTN (-) a VIN (+)

13: Nebo připojte Nscope +5V až 5V Pin na Arduino a RTN na Nscope na RTN na Arduino

14: Připojte Scope k USB na PC

15: Připojte Arduino k USB na PC

Krok 3: Načtěte kód

Načtěte kód
Načtěte kód
Načtěte kód
Načtěte kód

Zkopírujte níže uvedený Arduino kód do své Skici v Arduino IDE

Tento kód bude dělat PWM modul Resolver. Tento modul rozruší resolver a vytvoří na sekundárních cívkách resolveru čtvercovou vlnu. Signály, které přicházejí ze Sin+ a Cos+, se poté přivádějí do OPAMP, který vycentruje vlnu a sníží výstup tak, aby se pohyboval mezi 0-5Volty.

Sin+ a Cos+ jsou takové, jaké znamenají. Hřích je o 90 stupňů mimo fázi s vlnou Cos.

Protože jsou o 90 stupňů mimo fázi, musíme použít funkci Atan2 (Cos, Sin), abychom získali správnou souřadnici polohy resolveru.

Poté, co Arduino získá 4 vzorky, vyplivne, hodnota mezi -3,14 a 3,14, což představuje -180 stupňů, respektive +180 stupňů. To je důvod, proč chcete -li použít resolver pro absolutní polohu, musíte použít pouze -180 až 180 bez otáčení, jinak se převrátíte a budete si myslet, že jste zpět na začátku nebo na konci zdvihu aktuátoru. To by byl problém, kdybyste se rozhodli použít resolver pro osu x nebo y 3D tiskárny a převrhli byste, aby 3D tiskárna zpackala.

Mohl jsem kód trochu vylepšit pomocí přerušení, abych měl kontinuálnější PWMing, ale to bude pro tuto aplikaci dostačující.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; plovoucí výkon = 0,00; int sin1 = 0; int cos1 = 0; int pozice_stav = 1; int get_position = 0; void setup () {// sem vložte svůj instalační kód, aby se spustil jednou: pinMode (pwm, OUTPUT); Serial.begin (115200); }

prázdná smyčka () {

if (get_position = 5) {cos1 = (c1+c2)-(c3+c4); sin1 = (s1+s2)-(s3+s4); výstup = atan2 (cos1, sin1); c1 = 0; c2 = 0; c3 = 0; c4 = 0; s1 = 0; s2 = 0; s3 = 0; s4 = 0; Serial.print ("Pozice:"); Serial.println (výstup); get_position = 1; }

// sem vložte svůj hlavní kód, aby se spustil opakovaně:

}

Krok 4: Krok 3: Bavte se

Krok 3: Bavte se
Krok 3: Bavte se
Krok 3: Bavte se
Krok 3: Bavte se

Užijte si otáčení resolveru a naučte se, jak resolver funguje a jaké aplikace můžete použít tento modul resolveru.

Doporučuje: