Serwisy partnerskie:
Close icon
Serwisy partnerskie

Arduino steruje prędkością i kierunkiem obrotów silnika prądu stałego

Trudno wyobrazić sobie dzisiejszą technikę bez wszelkiego rodzaju silników elektrycznych. W szczególności silników prądu stałego. To "konie robocze" automatyki i robotyki, służące jako elementy wykonawcze przekształcające prąd stały w obrót lub ruch. Oto prosty projekt rozwiązujący problem sterowania prędkością obrotową silnika prądu stałego i kierunkiem jego obrotu przy użyciu płytki Arduino UNO.
Article Image

Sterowanie silnika DC

Jest wiele rodzajów silników DC. Od najstarszych szczotkowych (wynalezione na początku XIX wieku przez węgierskiego fizyka Ányosa Jedlika) do bezszczotkowych (pierwsze wersje pochodzą z lat 60. XX wieku), przekładniowych, serwomechanizmów, liniowych i krokowych. Do ich sterowania najczęściej stosuje się sterowniki w postaci układów scalonych, na przykład popularne układy LB1668M (silnik jednofazowy) firmy ON Semiconductor.

W opisywanym projekcie do sterowania silnikiem DC użyto płytkę Arduino. Ponieważ prąd wyjściowy mikrokontrolera jest za mały, niewystarczający do napędu silnika, autor projektu zastosował tranzystorowy mostek H do napędzania silnika. W mostku H pracują cztery tranzystory 2N2222, które wzmacniają prąd wyjściowy płytki Arduino, wynoszący 50 mA do wartości 800 mA, wystarczającej do napędu silnika.

Schemat obwodu

Wykaz elementów
Ilość
Symbol
Nazwa/opis/gdzie kupić
4
R1, R2, R3, R4
Rezystor 1 KΩ
4
D1, D2, D3, D4
Dioda 1N4007
4
Q1, Q2, Q3, Q4
2N2222
1
BUT1
Przycisk

Działanie układu

Zacisk ślizgacza potencjometru (POT) jest podłączony do pinu analogowego (A0) Arduino. Potencjometr POT służy do regulacji prędkości obrotowej silnika. Pozostałe zaciski są podłączone do Vcc i GND. Cztery tranzystory są połączone tak, jak pokazano na schemacie.

Z obciążeniem, tj. silnikiem prądu stałego w środku, tworzą one mostek H. Tranzystory Q1 i Q4 tworzą ścieżkę kierunku wstecznego, natomiast tranzystory Q2 i Q3 tworzą ścieżkę kierunku naprzód.

Piny 3 i 2 Arduino są podłączone odpowiednio do bazy Q1 i Q4. Piny 5 i 4 są podłączone odpowiednio do bazy Q2 i Q3. Wszystkie te połączenia są wykonane przez cztery szeregowe rezystory 1 KΩ.

Silnik prądu stałego jest obciążeniem indukcyjnym i może wytwarzać wsteczną siłę elektromotoryczną, gdy zmieniamy kierunek obrotów. Dla zabezpieczenia przed wsteczną polaryzacją do końcówek kolektora i emitera każdego tranzystora podłączono równolegle diody.

Kiedy przycisk, który jest podłączony do pinu 7 Arduino, zostanie aktywowany lub naciśnięty, kierunek obrotu zostanie odwrócony i będzie się obracał w tym kierunku, dopóki przycisk nie zostanie naciśnięty ponownie.

Aby silnik obracał się do przodu, tranzystory Q2 i Q3 muszą być włączone. Stąd na wyjściach 5 i 4 Arduino jest stan wysoki.

Arduino jest zaprogramowane tak, aby wykrywać logiczny stan niski na pinie 7, gdy przycisk jest wciśnięty. Gdy przycisk zostanie wciśnięty raz, tranzystory Q1 i Q4 muszą zostać włączone. Stąd piny 3 i 2 Arduino są ustawione w stan wysoki. Silnik obraca się w odwrotnym kierunku, jeśli przycisk zostanie wciśnięty ponownie.

Kod

Kod można znaleźć pod adresem: Speed_Direction Control_DC_Motor_Arduino.ino hostowany przez GitHub

Artykuł opracowano w wersji polskiej na podstawie współpracy z portalem www.electronicshub.org (projekt Speed and Direction Control of DC Motor using Arduino).

Tematyka materiału: Arduino UNO, sterowanie silnikiem DC
Źródło
www.electronicshub.org
Udostępnij
UK Logo