W jaki sposób Arduino może sterować urządzeniami o wyższym prądzie (silniki, elektrozawory, światła itp.)?


18

Szukam rozwiązania o szerokim zastosowaniu, które można dostosować do różnych projektów.

Obecnie pracuję nad kilkoma projektami, z których każdy wymaga sterowania urządzeniami od 800mA do 2A z Arduino Uno. Jeden steruje silnikami krokowymi, jeden steruje siłownikami elektromagnetycznymi 12 VDC, a drugi steruje zaworami pneumatycznymi 12 VDC.

Na przykład:

Arduino monitoruje przycisk i po każdym naciśnięciu przycisku uruchamia siłownik elektromagnetyczny. Ponieważ Arduino nie jest w stanie pobierać prądu wymaganego przez elektromagnes, wymagane jest oddzielne zasilanie z Arduino sterującym przełącznikiem (przekaźnik, tranzystor itp.), Który pozwala na przepływ większego prądu. W przypadku silnika krokowego układ jest bardziej złożony, ponieważ musiałyby istnieć cztery piny sterujące czterema osobnymi przełącznikami (w celu zachowania interoperacyjności obwodu). Przekaźnik steruje zaworem powietrza i wymaga również 12 VDC.

Próbuję wymyślić, jak użyć pojedynczego obwodu, który można zastosować w każdej z tych aplikacji (i wszelkich przyszłych projektów), które wymagają kontrolowania urządzeń o wyższym natężeniu prądu niż piny Arduino.

Czynniki napędowe to szybkość prototypowania, znormalizowane komponenty i niski koszt. Ważna jest również szybkość przełączania, okres użytkowania i hałas.

Czy istnieje płyta Breakout, obwód lub komponent, który można podłączyć do pinu Arduino i użyć do sterowania urządzeniem wysokoprądowym? Idealnie z potencjometrem sterowanym programowo, aby opór dla różnych projektów mógł być ustawiony w samym szkicu.


1
Więc co kontrolowałaby ta tablica? Rezystancja czy napięcie? Czy samo urządzenie?
hichris123

Płyta sterowałaby samym urządzeniem. Dodałem szczegóły do ​​pytania.
jlbnjmn

Zdefiniuj „wysoki prąd”.
jippie

Odpowiedzi:


13

Aby sterować tak wysokimi prądami, konieczne może być kaskadowanie kilku tranzystorów (możesz także użyć tranzystora Darlington ). Istnieją układy Darlingtona zamontowane w układzie (np. ULN2803A ma 8 tranzystorów Darlingtona, ale jest ograniczony do 500 mA).

Prawdopodobnie będziesz musiał poradzić sobie z tranzystorami o większej mocy; jako przykład znalazłem STMicroelectronics TIP110, który może obsługiwać przełączanie prądu 2A (szczyt 4A), ale prawdopodobnie potrzebowałby radiatora do rozpraszania ciepła.

Zauważ, że zastanawiam się, czy twoje steppery naprawdę potrzebują prądu 2A (czy są tak duże?). W przypadku stepperów ogólnie można znaleźć układ scalony, który może je łatwo prowadzić, np. L293D, ale ten może sterować „tylko” 600mA).

Podsumowując, obawiam się, że nie znajdziesz rozwiązania „jednego rozmiaru dla wszystkich”, ponieważ wszystkie twoje urządzenia są inne i powinny być sterowane odpowiednim obwodem.

Edytować:

Ponieważ przewymiarowanie nie stanowi problemu w przypadku prototypowania, można zastosować MOSFET zamiast zwykłych tranzystorów bipolarnych. MOSFET będzie w stanie przenosić wyższe prądy i napięcia niż standardowe tranzystory.

Minusem jest to, że można go używać tylko jako przełącznika (np. Przekaźnika), a zatem nie może tak naprawdę zasilać dokładnej mocy urządzeń. Myślę, że to nie ma znaczenia dla silnika krokowego lub solenoidu, ale może to być ważne na przykład dla świateł drogowych.

Jednak dobrą rzeczą jest to, że nadal można do tego używać PWM, ponieważ prędkość przełączania MOSFET jest wystarczająca do takich celów.

Jeśli chodzi o cenę, istnieje wiele różnych rodzajów MOSFETÓW, ale myślę, że możesz znaleźć taki, który pasuje do twoich potrzeb (12 V, 2 A) za mniej niż 1 USD.

Radzę rzucić okiem na ten świetny artykuł na ten temat.


2A dotyczy elektrozaworów. Rozumiem, że jeden rozmiar dla wszystkich jest wyzwaniem i nie jest idealny do produkcji. W tym przypadku celem jest szybsze prototypowanie, w przypadku którego dopuszczalne jest nadmierne budowanie.
jlbnjmn

1
Zauważ, że nawet w przypadku TIP110 prawdopodobnie będziesz musiał dodać mniejszy tranzystor pomiędzy nim a stykiem wyjściowym Arduino, ponieważ TIP110 może pobierać 50mA na swojej podstawie, co jest znacznie za wysokie dla styku Arduino.
jfpoilpret

Myślę, że TIP 120 jest idealny do tego, zgodnie z
arkuszem

7

Istnieje wiele sposobów przełączania wyższych obciążeń, a jfpoilpret opisał kilka dobrych opcji. Podsumuję kilka rozwiązań opartych na przekaźnikach, które są odpowiednie głównie dla stosunkowo wolnych prędkości przełączania (tj. Zwykle nie są odpowiednie dla PWM).

Przekaźniki
półprzewodnikowe Przekaźniki półprzewodnikowe (SSR) to przełączniki oparte na półprzewodnikach. Występują w różnych konfiguracjach, w zależności od wymagań, ale kluczowym czynnikiem jest to, że nie mają ruchomych części. Oznacza to, że mogą być bardzo niezawodne na dłuższą metę, jeśli są właściwie stosowane.

Wewnętrznie zazwyczaj składają się z tranzystorów MOSFET i tyrystorów lub podobnych. Dzięki temu mogą osiągnąć teoretycznie dość wysokie prędkości przełączania. W praktyce jednak, im większa moc jest przeznaczona, tym trudniej jest szybko się przełączać. Oznacza to, że duża prędkość i duża moc mogą stać się dość drogie.

Krytycznym czynnikiem, o którym należy pamiętać, jest to, że zwykle potrzebujesz innego rodzaju SSR, jeśli zamierzasz zmienić prąd przemienny zamiast prądu stałego. Warto również zauważyć, że niektóre będą miały wbudowany optoizolator lub podobny do oddzielenia zasilaczy.

Przekaźniki elektromechaniczne
Jest to bardziej „tradycyjne” podejście. Przekaźnik elektromechaniczny (EMR) jest dość prostym elementem, zawierającym przełącznik mechaniczny, sterowany przez cewkę elektromagnetyczną. Jeśli przełącznik jest normalnie otwarty, cewka pociąga go do zamknięcia, gdy przykładany jest prąd sterujący. W przeciwieństwie do tego normalnie zamknięty przełącznik zostałby wyciągnięty, gdy przyłożony zostanie prąd sterujący.

Istnieje wiele zalet EMR w porównaniu do takich jak SSR. Najbardziej oczywisty jest koszt - ich prostota sprawia, że ​​są one dość tanie, a koszt nie rośnie tak gwałtownie w przypadku wersji o większej mocy. Ponadto sterowanie i obciążenie są z natury izolowane i nie obchodzi ich, czy zmieniasz prąd przemienny czy stały.

Istnieje jednak kilka wad. Mechaniczny aspekt oznacza, że ​​EMR są zwykle znacznie wolniejsze niż niemechaniczne rozwiązania przełączające i mogą cierpieć z powodu odbicia styków. Dodatkowo mogą się fizycznie zużyć i mogą na nie oddziaływać wstrząsy, wibracje i (potencjalnie) inne pola magnetyczne.

Projektując obwód wykorzystujący EMR, należy koniecznie mieć świadomość wstecznego pola elektromagnetycznego (siły elektromotorycznej). Po przyłożeniu prądu sterującego cewka działa jak induktor, magazynując ładunek elektromagnetyczny. Gdy prąd sterujący zostanie zatrzymany, zgromadzony ładunek może przepłynąć z powrotem przez obwód sterujący, tworząc duży ujemny skok napięcia (potencjalnie znacznie większy niż pierwotnie zastosowany).

Ten kolec może niestety uszkodzić / zniszczyć wszystkie podłączone elementy lub piny mikrokontrolera. Zazwyczaj jest to zapobiegane / łagodzone poprzez umieszczenie diody w odwrotnej kolejności na stykach sterujących przekaźnika. W tym kontekście jest czasami nazywany diodą flyback i pozwala EMF bezpiecznie rozproszyć.


Czy powiedziałbyś, że MOSFET zastosowany jak opisano w artykule powiązanym z jfpoilpret byłby odpowiednią alternatywą dla przekaźnika elektromechanicznego dla tych zastosowań?
jlbnjmn

Tak, dla aplikacji, które opisałeś, oczekuję, że MOSFET będzie wystarczający. Pamiętaj tylko, że są wrażliwe na wyładowania elektrostatyczne, więc zachowaj odpowiednie środki ostrożności podczas ich obsługi.
Peter Bloomfield

3

Jak już powiedział jfpoilpret, MOSFET zasilający świetnie nadaje się do włączania i wyłączania zasilania 12 VDC dla urządzeń, które podciągają do 44 A. Istnieją dziesiątki takich MOSFET-ów mocy za mniej niż 1 $ każdy. Dostępne są droższe tranzystory MOSFET, które mogą obsługiwać znacznie wyższy prąd i napięcie.

Zasadniczo możliwe jest napędzanie silnika krokowego za pomocą mikrokontrolera i garści tranzystorów i kilku innych małych części. Jednak wiele osób woli używać „układu sterownika krokowego”, więc błąd oprogramowania nie może przypadkowo włączyć tranzystorów w taki sposób, aby doprowadzić do zwarcia zasilania z ziemią (zwykle niszcząc co najmniej 2 tranzystory). Wiele najnowszych układów sterownika krokowego obsługuje także mikrostop, ograniczanie prądu, termiczne zabezpieczenie przed przeciążeniem i inne przydatne funkcje.

Wszystkie układy sterownika krokowego, o których kiedykolwiek słyszałem, oraz kilka gotowych układów z tymi układami, są wymienione na stronie http://reprap.org/wiki/stepper_motor_driver .

W szczególności wiele drukarek RepRap 3D, które widziałem, podłączają Arduino do czterech sterowników krokowych Pololu (poniżej 15 USD każdy), aby napędzać pięć silników krokowych.


0

Zrobiłem obwód Arduino (Arduino Nano) do zasilania 12V Peltiera (który jest również źródłem dużej mocy). Używając tranzystora MTP3055V MOSFET 60V 12A. Obwód działa bardzo dobrze.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.