Mobile
Jak wprowadziliśmy w lekcjach 19 i 20 z wprowadzenia kursu do Arduino UNO, Stepper Motors (PAP) to silniki DC, które potrzebują sterownika do ich kontroli. W tym poradniku użyjemy silnika NEMA i sterownika TB6612FNG.
TB6612FNG jest sterownikiem silnika, który pozwala nam zmieniać zarówno prędkość, jak i kierunek obrotów dwóch silników prądu stałego z naszych Arduino.
TB6612FNG można uznać za ulepszoną wersję L298N. Jego główną różnicą jest to, że h-mostki wykorzystują tranzystory MOSFET zamiast BKT L298N, co daje większą wydajność i mniejszy rozmiar.
Jeśli chodzi o prądy, pozwala kontrolować wyższe natężenia, dostarczając do 1,2A na kanał i maksymalny szczyt 3.2A.
Sterownik ten umożliwia sterowanie maksymalnie 2 silnikami DC lub dwubiegunowym silnikiem krokowym. Pozwala również na sterowanie jednobiegunowym silnikiem krokowym skonfigurowanym jako dwubiegunowy, który jest idealny do Arduino.
Chociaż sterownik ten jest specjalnie zaprojektowany do sterowania dwoma silnikami (oddzielając go cewkami A i B), w tym przykładzie będziemy sterować silnikiem krokowym NEMA 17, który ma dwa uzwojenia w środku, za pomocą tego sterownika.
Połączenia
Moduł jest zasilany bezpośrednio z Arduino, więc nie potrzebujemy zewnętrznego źródła zasilania. Jednak do zasilania silnika, jeśli napięcie zewnętrzne jest wymagane do zasilania wymaganego natężenia na pinach maszyny Wirtualnej.
Moduł posiada następujące piny, które łączą się z odpowiednimi Arduino:
Styki są połączone zgodnie z tabelą:
Moduł pinów
Pin de Arduino UNO
PWMA (pwma)
Vdc
AIN2 (AIN2)
D4
AIN1 (AIN1)
D5
Okręg wyborczy Stby
O: 10K -> VCC
BIN1
D6
Bin2 (włas ie
D7
PWMB (pwmb)
Gnd
Silnik pin/moc
Vm
225
5v
A1
A01 Cewka A
A2 (w ach)
A02 Cewka A
B1
Cewka B01 B
B2
Cewka B02 B
UWAGA: Gdy istnieje zasilanie zewnętrzne, jak w tym przypadku, musimy zawsze umieścić wspólne GND, połączyć wszystkie ziemie.
Silniki NEMA 17, których będziemy używać, mają 6 pinów łączących, których kolejność w górę: A1, 0, A2, B1, 0, B2
Wynikowy diagram wygląda następująco:
UWAGA: Jeśli źródło pochodzi z prądu przemiennego, zawsze najlepiej jest umieścić kondensator szeregowo.
Gdy wszystko jest połączone, otwieramy pusty szkic w Arduino IDE i kopiujemy następujący kod:
#include <Stepper.h>
zmienić to na liczbę kroków na silniku
#define KROKI 200
utworzyć wystąpienie klasy krokowej, określając
liczbę stopni silnika i styków, które
dołączone do
Krokowy krokowy(KROKI, 4, 5, 6, 7);
void setup()
{
Serial.begin(9600);
Serial.println("Test Krokwi!");
ustawić prędkość silnika na 30 OBR./r
stepper.setSpeed(60);
}
pętla void()
Serial.println("Prześlij dalej");
stepper.step(KROKI);
Serial.println("Wstecz");
stepper.step(-STEPS);
Musimy pobrać bibliotekę "Stepper", upewnić się o porcie i planszy, i zrezygnować z niego.
Za pomocą tego kodu widzimy, jak liczba kroków wskazanych przesuwa się do przodu, w tym przypadku 200, a następnie wykonuje je w przeciwnym kierunku. Odbywa się to z prędkością 30 obrotów na minutę, wskazanych przez podwójne, ze względu na dwa uzwojenia.
Silniki te osiągają wysoką dokładność na każdym kroku. Możesz spróbować zaprojektować kod dla aplikacji, której potrzebujesz, i zmodyfikować jego szybkość.