How To Use Our Actuators with an Arduino and MegaMoto

Jak używać naszych siłowników z Arduino i MegaMoto

Guninder Malhi
Guninder Malhi
PA Engineer

Mikrokontrolery Arduino idealnie nadają się do sterowania siłownikiem liniowym Progressive Automations. Jednak, jak większość mikrokontrolerów, mają ograniczenia prądowe dla wejść/wyjść pinów. Przekroczenie tych limitów może spowodować natychmiastowe i trwałe uszkodzenie Arduino, zwłaszcza przy sterowaniu wysokoobciążonym przemysłowym siłownikiem liniowym. Nawet mikro lub mini siłownik liniowy może być zbyt wymagający, aby zasilać go bezpośrednio z Arduino.

Rozwiązaniem jest użycie nakładki sterującej silnikiem MegaMoto z Arduino (MegaMoto Plus mostek H lub kontroler MegaMoto GT). Te nakładki pozwalają zasilać siłownik liniowy osobno, bez ryzyka uszkodzenia Arduino. Umożliwiają też wyzwalanie ruchu do przodu i do tyłu sygnałem z Arduino.

Przejdźmy przez możliwości MegaMoto i zobaczmy, jak sterować siłownikiem liniowym za pomocą Arduino.

Przeglądaj naszą ofertę siłowników liniowych i znajdź idealne dopasowanie do swojego zastosowania!

Przeglądaj siłowniki

Który model MegaMoto będzie odpowiedni do Twojego projektu?

MegaMoto shield

MegaMoto to nakładka, co oznacza, że możesz podłączyć ją bezpośrednio na Arduino bez konieczności lutowania dodatkowych przewodów. Dzięki tej konstrukcji możesz ułożyć w stos 3 sztuki modeli Plus, aby zapewnić sterowanie dwukierunkowe 3 siłowników liniowych lub jednokierunkowe 6 siłowników liniowych. Jeśli planujesz układanie w stos, zalecamy model Plus, ponieważ wentylator modelu GT utrudnia piętrowanie.

MegaMoto Plus przyjmuje napięcie wejściowe 5–28 V i może dostarczać 20 A prądu z chwilowymi skokami do 40 A. MegaMoto GT, dzięki wentylatorowi i radiatorom, przyjmuje 6–35 V i może dostarczać 35 A prądu z chwilowymi skokami do 50 A. Oba modele się sprawdzą, ale w zależności od zastosowania upewnij się, że wybrany siłownik liniowy przy pełnym obciążeniu nie pobiera prądu przekraczającego maksymalny prąd MegaMoto.

 

Czego będziesz potrzebować

Oto lista elementów potrzebnych do uruchomienia MegaMoto:

Nowy i ulepszony mini siłownik PA-01 (następca PA-14) to aktualnie oferowany przez nas model z szeregiem dodatkowych korzyści. Aby porównać, zobacz tabele poniżej i aktualizuj bez obaw!

 

PA-01

PA-14

Opcje obciążenia dynamicznego

16, 28, 56, 112, 169, 225 lbs

35, 50, 75, 110, 150 lbs

Maksymalne obciążenie

225 lbs

150 lbs

Najszybsza prędkość

3.54 "/sec

2.00"/sec

Klasa szczelności IP

IP65

IP54

Opcje skoku

1" to 40"

1" to 40"

Sprzężenie zwrotne efektu Halla

Opcjonalne

No

Krok 1: Okablowanie pinów sterujących/zasilania

Okablowanie do sterowania siłownikami liniowymi za pomocą Arduino jest dość proste i można je podzielić na trzy główne części: połączenie MegaMoto z Arduino, MegaMoto z zasilaczem oraz MegaMoto z siłownikiem liniowym. Dodatkowym, opcjonalnym krokiem jest dodanie czujnika ultradźwiękowego do wyzwalania ruchu siłownika liniowego do przodu i do tyłu. Jeśli zdecydujesz się nie używać czujnika ultradźwiękowego, będziesz musiał dostosować kod Arduino dla tego projektu.

MegaMoto do Arduino

Nie wymaga to dodatkowego okablowania. Wystarczy wyrównać piny MegaMoto z pinami Arduino.

MegaMoto do zasilacza

  • MegaMoto + do V+
  • MegaMoto - do V-

Siłownik (złącze 6-Pin) do Arduino/MegaMoto

  • Motor+ do MegaMoto A
  • Motor- do MegaMoto B 

Czujnik ultradźwiękowy do Arduino/Megamoto

  • VCC do 5V
  • GND do GND
  • Trig do pinu 35
  • Echo do pinu 40

Piny czujnika mają 2 zworki. Jedna zworka (pionowa), łącząca A2/A3, służy do połączenia czujników prądu obu połówek mostka H. W zastosowaniach wysokoprądowych (10 A+) zaleca się pozostawić tę zworkę, aby przez czujniki nie przepływał zbyt duży prąd, co wydłuży ich żywotność.

Połącz swój siłownik liniowy z mikrokontrolerem Arduino!

Przeglądaj Arduino

Krok 2: Programowanie Arduino

MegaMoto otrzymuje polecenia z Arduino, aby wyzwolić układ mostka H i dostarczyć zasilanie do siłownika liniowego. Kolejne polecenie z Arduino może przełączyć mostek H i odwrócić kierunek ruchu siłownika liniowego.

Podłącz Arduino przez USB do laptopa/komputera stacjonarnego i wgraj poniższy kod Arduino dla siłownika liniowego, korzystając z Arduino IDE. Upewnij się, że w IDE wybrano właściwą płytkę i port COM.

 

Kod znajdziesz tutaj

 

Czujnik ultradźwiękowy wysyła impuls (ping) wyzwalany przez jeden z pinów Arduino. Ten impuls odbija się od obiektu i jest wykrywany przez odbiornik. Gdy odbiornik wykryje ping, wysyła impuls do Arduino. Równanie w kodzie określa, jak daleko znajduje się obiekt.

Jeśli obiekt znajduje się w określonej odległości, Arduino można zaprogramować tak, aby w zależności od potrzeb wysuwał lub wsuwał siłownik. Ponieważ większość naszych siłowników ma wewnętrzne wyłączniki krańcowe, siłownik automatycznie zatrzyma się na końcach, nawet jeśli MegaMoto nadal dostarcza zasilanie, ponieważ wyłącznik krańcowy je odcina.

 

Krok 3: Modyfikacja kodu

Kod Arduino dla siłownika liniowego można modyfikować na różne sposoby w zależności od zastosowania. Na przykład możesz użyć siłownika liniowego Progressive Automations, który nie ma czujnika efektu Halla ani czujnika ultradźwiękowego. MegaMoto możesz wyzwalać z Arduino w zaprogramowanych odstępach czasu lub za pomocą przycisku podłączonego do Arduino.

W powyższym przypadku możesz zakomentować linie kodu dotyczące czujnika ultradźwiękowego i czujnika efektu Halla. PWMA/B będzie sterować wysuwem/wsuwem w zależności od tego, jak podłączysz siłownik do zacisków MegaMoto A/B.

Prędkość silnika można kontrolować poleceniem analogWrite na odpowiednim pinie, aby utworzyć sygnał PWM. Prędkości mogą być w zakresie 0–255, co daje silnikowi 0–100% napięcia z zasilacza.

Inny pomysł na kod Arduino dla siłownika liniowego to ustawienie limitów prądu, aby wyłączyć MegaMoto, gdy prąd przekroczy wartość progową, jednak wymaga to przeliczenia surowego wskazania prądu na rzeczywisty prąd i nie jest w 100% dokładne.

Przeglądaj naszą pełną gamę sterowników PLC dla maksymalnej kontroli!

Sterowniki PLC

Podsumowanie

Using linear actuators with microcontrollers, and sensors

Użycie MegaMoto z Arduino to wygodny sposób sterowania siłownikiem liniowym Progressive Automations, który przy pełnym obciążeniu pobiera wysoki prąd. Co więcej, zapewnia szybki i prosty sposób sterowania ruchem wysuwu i wsuwu siłownika. Teraz, gdy wiesz, jak sterować siłownikiem liniowym za pomocą Arduino, dostosuj kod do swojej aplikacji — zacznij od podstaw i stopniowo dodawaj bardziej złożone elementy oraz kod, aby uniknąć czasochłonnego rozwiązywania problemów.

Jeśli masz jakiekolwiek pytania dotyczące tego artykułu lub naszych produktów, skontaktuj się z nami, a chętnie pomożemy!

Guninder Malhi

Inżynier w Progressive Automations
Wyemigrowałem do Kanady w 2013 roku na studia licencjackie z mechatroniki. W czasie studiów rozpocząłem karierę zawodową, odbywając pierwsze praktyki typu co-op na uczelni. Pozwoliło mi to zgłębić programowanie i jego zastosowanie w urządzeniach medycznych oraz rolniczych. Zrealizowałem też kilka dodatkowych praktyk typu co-op, aby lepiej zrozumieć systemy wbudowane.