Czy mogę bezpiecznie zmniejszyć zużycie energii przez silnik krokowy, stosując PWM do wejścia aktywacji kierowcy?


9

Mam płytkę wyłączającą sterownik silnika krokowego opartą na układzie Allegro A4988. Zauważyłem, że gdy silnik jest statyczny, ma znacznie lepszy moment trzymający niż podczas ruchu. Mam konfigurację na baterie i przez większość czasu silnik krokowy służy tylko do utrzymania pozycji. Potencjometr ustawienia limitu znajduje się już na płytce zabezpieczającej, więc nie mogę go zmienić za pomocą mojego mikrokontrolera.

Czy byłbym w stanie zastosować sygnał PWM do pinu włączania sterownika silnika, aby zmienić prąd płynący do silnika, aby móc napędzać silnik przy wyższym poziomie prądu podczas aktywnego ruchu i zmniejszyć prąd do pozycji trzymania?

Najbardziej interesuje mnie wpływ, jaki sygnał PWM będzie miał na życie obwodu sterownika. Nigdzie na karcie danych nie jest napisane, że możesz lub nie możesz zrobić czegoś takiego.

Odpowiedzi:


2

Nie jestem pewien, co rozumiesz przez „potencjometr ustawienia granicy”, ale (zakładając, że masz na myśli obecne rezystory i (co byłoby ciekawym projektem, powinny być dopasowane do niskiej impedancji) rezystory) Przeczytałem na stronie 9, w sekcji Wewnętrzna kontrola prądu PWM :RS1RS2

Maksymalna wartość ograniczenia prądu jest ustalana przez wybór RSx i napięcia na pinie VREF. Funkcja nadprzewodnikowa jest aproksymowana przez maksymalną wartość ograniczenia prądu, (A), która jest ustawiona przezITripMAX

ITripMAX=VREF/(8RS)

gdzie to rezystancja rezystora (Ω), a V_ {REF} to napięcie wejściowe na pinie REF (V).RS

Czy masz dostęp do styku REF (styk 17)? Jeśli tak, dostosowanie go za pomocą przetwornika cyfrowo-analogowego da taki sam efekt, jak zmiana rezystorów czujnikowych.

Jeśli nie, wejście Enable jest prawdopodobnie lepszym wyborem niż odcięcie zasilania lub użycie pinów uśpienia lub wyłączenia, spowoduje to opóźnienie 1 ms (zgodnie z opisem na str. 10).


Przepraszam, myślę, że oporniki są ustawione na stałe, potencjometr prawdopodobnie reguluje pin REF (choć nie wiem, nie wiem wystarczająco dużo o elektronice). Myślę, że problem polega na tym, że skończyłyby na mnie dwa nakładające się sygnały PWM. Po pierwsze, wewnętrzny, który wykorzystuje rezystor czujnikowy do sterowania prądem, a drugi ten, którego używam do wyłączenia FET.
Faken

Z tego, co mogę zebrać, układ wykorzystuje rezystor czujnikowy do wykrywania prądu i dostosowania PWM, tak aby uśredniał się do dowolnego ustawionego limitu prądu. Co się jednak stanie, jeśli nagle zacznę przerywać ten proces, włączając i wyłączając FET bardzo szybko? Może to nie wpływać na tryby pełnego kroku, ale co z trybami mikro? Wiem, że nie używam pinów wyłączających ani wyłączających, które zadzierają z obwodami logicznymi i mogą zresetować moją bieżącą pozycję kroku.
Faken

1
Będziesz musiał powoli PWM wyzwolić pin. Spójrz na przebiegi na p. 11: Chcesz być wolniejszy niż okres , ale znacznie szybszy niż . Przerwanie systemu podczas , gdy FET jest włączony, spowoduje błąd w napięciu wyjściowym. Sugeruję, aby gdzieś pomiędzy jako okres dla PWM, jeśli to możliwe. VSTEPtofftfd10toff <tPWM<0.1tSTEP
Kevin Vermeer

5

Nie widzę nic w arkuszu danych, który mówi, że pin aktywujący nie może być pulsowany. Trudno powiedzieć z wewnętrznego zespołu obwodów, czy może to spowodować problem. Styk odblokowujący wyłącza zewnętrzne płetwy, co może oznaczać, że układ nie jest w stanie prawidłowo przepłynąć ponownie prądu, powodując skoki napięcia. Spodziewałbym się jednak, że Allegro poradziłoby sobie z tą sytuacją, ponieważ zdarzałoby się to za każdym razem, gdy Enable przechodzi wysoko.

Jeśli masz zapasowy sterownik, radzę po prostu spróbować.

Alternatywnie, możesz zmniejszyć napięcie Vref, zamiast używać PWM. A4988 ładnie zadba o bieżącą redukcję. Można to osiągnąć, pociągając pin Vref nieco niżej za pomocą rezystora i tranzystora lub pinu MCU, który może przełączać między niską i wysoką impedancją.

Pociągnięcie szpilki Vref niżej.

Jeszcze lepszym rozwiązaniem może być uczynienie go automatycznym. Użyj sygnału krokowego, aby szybko naładować kondensator, który podnosi napięcie Vref do góry. Brak sygnałów krokowych pozwala na powolne rozładowanie kołpaka, a wraz z nim napięcie Vref i prąd silnika. Im szybsze kroki, tym wyższy Vref.

Oto bardzo przybliżony schemat jego działania. Właśnie zgadłem wartości rezystorów i nie sprawdziłem, czy w ogóle będą działać. (Ćwiczenie pozostawione czytelnikowi). Bardzo szorstki schemat


Dobra odpowiedź, naprawdę podoba mi się pomysł użycia pulsu do automatycznej zmiany bieżących ustawień. Niestety, znajduje się on na płycie Breakout i nie mam dostępu do szpilki Vref, więc nie mogę nic z tym zrobić poza regulacją za pomocą małego plastikowego śrubokręta.
Faken

Dzięki. Szkoda, że ​​nie mam dostępu do pinu Vref, ponieważ dałoby to niezłą płynną kontrolę prądu. Może mógłbyś wlutować mały drut do garnka?
Rocketmagnet

Jestem rozdarty pomiędzy odpowiedziami do zaakceptowania. Odpowiedź Nethera faktycznie odpowiada na moje pytanie. Odpowiedź Rocketa jest bardzo dobra i zawiera kilka naprawdę fajnych pomysłów, ale komentarze Kevina dają mi przynajmniej pewien wgląd w to, co robić.
Faken

Próbowałeś już? Myślę, że to będzie jedyny sposób na uzyskanie ostatecznej odpowiedzi. Ponieważ w arkuszu danych nie ma nic o tym, nikt tak naprawdę nie może tego wiedzieć bez wypróbowania.
Rocketmagnet

0

Jasne, że możesz użyć PWM, ale silnik krokowy może zacząć gwizdać nieco z częstotliwością PWM. Wybierz wysoką częstotliwość, której nie słyszysz (> 20 kHz) lub żyj z gwizdkiem.


Pytanie dotyczyło PWM elektroniki napędowej, a nie samego silnika.
vsz
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.