Krokový motor 28BYJ-48 |
Krokový motor je jedním z typů elektrických motorů. Otáčení zajistíme postupným zapínáním proudu do jednotlivých vinutí motoru. Směr otáčení je dán posloupností spínání, opačný směr otáčení docílíme obráceným postupem spínání vinutí. Rychlost otáčení je dána rychlostí přepínání vinutí.
Výhodou krokového motoru je, že při každém přepnutí vinutí (fází) vykoná právě jeden krok (pootočení o definovaný úhel). Proto můžeme snadno zajistit otočení o požadovanou hodnotu úhlu aniž bychom potřebovali nějaký snímač pro měření otáčení. Proto se tento typ motorů používá např. v 3D tiskárnách. Oproti jiným typům elektromotorů má však zase jiné nevýhody.
Zapojení:
Arduino | Budič krokového motoru | |
---|---|---|
GND | - | GND |
VCC | - | +5V |
D4 | - | IN1 |
D5 | - | IN2 |
D6 | - | IN3 |
D7 | - | IN4 |
13.1. Test krokového motoru
Pro pohyb krokového motoru musíme postupně zapínat proud do jednotlivých vinutí motoru. Je to úplně stejné jako když jsme programovali hada v úloze 2. Napíšeme tedy program, který bude postupně rozsvěcet led na pinech D4 až D7 stále dokola (na těchto pinech máme připojeno ovládání tranzistorů spínajících jednotlivá vinutí).
13.2. Ovládání krokového motoru
Upravte předchozí program tak, aby se motor točil jedním směrem pokud je stisknuto jedno tlačítko a druhým směrem pokud je stisknuto druhé tlačítko.
13.3. Řízení rychlosti otáčení krokového motrou
Rychlost otáčení motoru můžeme ovlivňovat rychlostí přepínání jednotlivých vinutí. Upravte předchozí program tak, aby se rychlost otáčení nastavovala potenciomerem připojeným na analogový vstup A1.
13.4. Řízení polohy krokového motrou
Sestavte program pro nastavování polohy krokového motoru. Požadovaná poloha je určena pomocí potenciometru připojeného na vstup A1. Tato hodnota je přepočítána na rozsah 0 - 270°, resp. tomu odpovídající počet kroků. Při změně požadované polohy se motor maximální rychlostí přemístí do nové polohy.