- Krokový motor:
- Ovladač krokového motoru ULN2003:
- Potřebné materiály:
- Kruhový diagram:
- Kód a pracovní vysvětlení:
V tomto tutoriálu budeme propojovat krokový motor pomocí MSP430. MSP-EXP430G2 je vývojový nástroj aka LaunchPad poskytuje Texas Instruments učit se a praxe o tom, jak používat své Microcontrollers. Tato deska spadá do kategorie MSP430 Value Line, kde můžeme programovat všechny mikroprocesory řady MSP430. Pokud jste v oblasti MSP noví, podívejte se na náš úvod do kurzu MSP430.
Krokový motor:
Krokový motor je typ bezkartáčového stejnosměrného motoru, který převádí elektrické impulsy na odlišné mechanické pohyby. Hřídel krokového motoru se otáčí v jednotlivých krocích. Můžeme získat přesné kroky a rychlost podle našich potřeb.
Použijeme bipolární krokový motor 35BYJ46, který je levně dostupný na trhu. Má 6 vodičů, ale dodává se také s 5 vodiči. V našem krokovém motoru jsou 2 cívky. Každý z nich má 3 vodiče. Ze 3 vodičů je 1 vycentrován tak, že zbývající jsou 2 vodiče připojené přímo k cívce. Celkově máme 4 signální vodiče a 2 centrované odbočené vodiče, které jsou připojeny k napájecímu zdroji 5-12V.
V případě, že z motoru vychází celkem 5 vodičů, pak 4 vodiče jsou signální vodiče a 1 je vycentrován na obě cívky. Takhle.
Chcete-li zkontrolovat, který vodič je vycentrován nebo který je signálním vodičem, musíte zkontrolovat odpor vodičů vycházejících z motoru. Takže tyto vodiče, které jsou připojeny ke stejné cívce, mají vysokou hodnotu odporu ve srovnání s odporem vycentrovaného závitníku.
Ve výše uvedeném diagramu, pokud jsme zkontrolovali hodnotu odporu modrých a žlutých vodičů a odpor mezi nimi je větší než hodnota mezi žlutými a červenými nebo modrými a červenými. Červená je tedy vycentrovaný závitový drát.
Dříve jsme propojili krokový motor s jinými mikrokontroléry:
- Propojovací krokový motor s Arduino Uno
- Ovládání krokového motoru s Raspberry Pi
- Rozhraní krokového motoru s mikrokontrolérem 8051
- Propojovací krokový motor s mikrokontrolérem PIC
Krokový motor lze ovládat také bez mikrokontroléru, viz tento obvod ovladače krokového motoru.
Ovladač krokového motoru ULN2003:
Většina krokových motorů bude fungovat pouze pomocí modulu ovladače. Je to proto, že řídicí modul (v našem případě MSP) nebude schopen poskytnout dostatek proudu ze svých I / O pinů pro provoz motoru. Jako ovladač krokového motoru tedy použijeme externí modul, jako je modul ULN2003. Existuje mnoho typů modulů ovladače a hodnocení jednoho se bude měnit podle typu použitého motoru. Primárním principem pro všechny budicí moduly bude zdroj / odběr dostatečného proudu pro provoz motoru.
V tomto projektu použijeme IC ovladač motoru ULN2003. Pinový diagram IC je uveden níže:
Pokud použijeme IC, použijeme 4 vstupní a 4 výstupní porty.
Potřebné materiály:
- MSP430
- Krokový motor 35BYJ46 nebo 28-BYJ48
- ULN2003 IC
- Dráty
- Nepájivá deska
Kruhový diagram:
Ve výše uvedeném schématu, červený vodič krokových se není spojen s Pin5 IC.To musí být spojen s 5V. Barevný kód vašeho krokového motoru se může lišit od barev uvedených v schématu zapojení. Po kontrole správných signálních vodičů tedy připojte vodiče.
Náš kód napíšeme pomocí IDE Energia. Je to stejné jako Arduino IDE a snadno se používá. Ukázkový kód pro řízení stepperu najdete také v ukázkové nabídce Arduino IDE.
Kód a pracovní vysvětlení:
Než začneme programovat s naším MSP430, pochopme, co by se vlastně mělo uvnitř programu stát. Budeme používat čtyřkrokovou sekvenci, takže budeme muset provést čtyři kroky pro provedení jedné úplné rotace. Zvažte A, B, C a D jako čtyři cívky.
Krok |
Pin pod napětím |
Cívky pod napětím |
Krok 1 |
6 a 7 |
A a B |
Krok 2 |
7 a 8 |
B a C. |
Krok 3 |
8 a 9 |
C a D |
Krok 4 |
9 a 6 |
D a A |
V tomto tutoriálu budeme psát kód krokového motoru MSP430. Kompletní program najdete na konci tutoriálu, níže je vysvětleno několik důležitých řádků.
Počet kroků na otáčku pro náš krokový motor byl vypočítán na 32; proto to zadáme, jak je znázorněno na řádku níže
const int KROKY = 32;
Dále musíte vytvořit instance, ve kterých určíme piny, ke kterým jsme připojili krokový motor.
Stepper myStepper (KROKY, 6, 7, 8, 9);
Jelikož používáme knihovnu Stepper, můžeme nastavit rychlost motoru pomocí níže uvedeného řádku. U krokových motorů 35BYJ46 se rychlost může pohybovat mezi 0 až 200.
Mystepper.setSpeed (200);
Nyní, aby se motor pohnul o jeden krok, můžeme použít následující řádek.
myStepper.step (KROKY);
Protože máme 32 kroků a 64 jako převodový poměr, musíme přesunout 2048 (32 * 64 = 2048), abychom provedli jednu úplnou rotaci. Nyní nahrajte níže uvedený kód a změňte číslo. kroků podle vaší potřeby.
Takto můžete propojit krokový motor s mikrokontrolérem PIC, nyní můžete použít svou vlastní kreativitu a najít pro to aplikace. Existuje spousta projektů, které používají krokový motor.