Jest sobie silniczek sterowany z L293D. Na wejścia ENABLE podawany jest PWM. Problemem jest oczywiście uzyskanie stabilnych niskich obrotów przy małym współczynniku wypełnienia. Można podłączyć bieguny silnika pod ADC i mierzyć różnicowo napięcie. Pytanie teraz jak to należy robić? Mierzyć pomiędzy impulsami PWM i uśrednić, mierzyć w konkretnym momencie (np, tuż przed początkiem kolejnego impulsu?) - sprawa się komplikuje jeśli używam sprzętowego PWM. A może jest gotowy scalak do takiego rozwiązania a ja próbuję wyważać otwarte drzwi? Muszę mieć sterowanie prawo. lewo. stop i choćby dwustopniową regulację prędkości.
Back EMF
Nov 11, 2016
24 Replies
W dniu 2016-11-11 o 14:15, Mirek pisze:
TPIC2101 Texasa. Ale prawo-lewo będziesz musiał dorzeźbić.
P.P.
W dniu 11.11.2016 o 14:15, Mirek pisze:
Witam Czym sterujesz tego L293D ? Jakimś AVR-em? Sprzętowy PWM to raczej nie problem, bo zazwyczaj timer używany do PWM ma też możliwość zgłoszenia przerwania, w którym możesz obsłużyć pobranie próbki przez ADC. Niektóre uC mają nawet możliwość sprzętowego wyzwalania pomiaru ADC przez timer. Pomiar najlepiej robić jak najpóźniej od wyłączenia prądu (czyli w sumie zaraz przed włączeniem), bo zaraz po wyłączeniu indukcyjność uzwojeń będzie mocno "dzwonić" samoindukcją.
W dniu 11.11.2016 o 16:51, Grzegorz Kurczyk pisze:
Na razie attiny13. Nie ma nic do roboty oprócz wpisania wartości PWM. To może mierzyć ciągle i wybrać najniższą wartość? Jest jeszcze problem z zasilaniem: mam w tej chwili zasilanie z 4-ech NiCd, attiny przez diodę i 1000 mikro - inaczej mi się resetował przy starcie silniczka. Do ADC pasowało by zasilanie stabilizowane...
W dniu 2016-11-11 o 14:15, Mirek pisze:
Taki pomiar nadal Ci nic nie mówi na temat obrotów, możesz mierzyć średni prąd, jak przekroczy jakiś próg znaczy że silnik stoi. A najlepiej to czujnik na silniku.
W dniu 2016-11-11 o 17:32, Mirek pisze:
ciach
Po co? Masz przecież w procku nap ref 1,1V do ADC, wystarczająco stabilne.
W dniu 11.11.2016 o 20:57, janusz_k pisze:
Taki pomiar jak najbardziej mówi o obrotach silnika. W momencie gdy PWM ma "przerwę" silnik nie jest zasilany ale nadal się kręci zamieniając się w prądnicę, której napięcie wyjściowe jest zależne od obrotów. Pomiar prądu bardziej mówi o momencie obrotowym.
W dniu 11.11.2016 o 17:32, Mirek pisze:
Z tego co pamiętam w attiny13 TIMER0 ma dwa rejestry COMPARE OCR0A i OCR0B. Jednym generujesz PWM, a drugim ustawiasz moment przerwania uruchamiającego pomiar ADC. Do regulacji obrotów będziesz musiał zaprogramować jakiś prosty regulator PID (choć w tym przypadku wystarczy PI lub nawet sam człon proporcjonalny).
P.S. Zerknąłem do dokumentacji attin13 i on ma nawet sprzętowe wyzwalanie ADC przez rejestry OCR0A lub OCR0B czyli wystarczy obsłużyć przerwanie zakończenia przetwarzania przez ADC
W dniu 2016-11-11 o 20:57, janusz_k pisze:
National Semiconductor Application Note 292, jest tam sterownik silnika w oparciu o pomiar "pomiędzy impulsami PWM".
P.P.
W dniu 2016-11-11 o 22:50, Grzegorz Kurczyk pisze:
Wiem o tym, tyle że ze względu na przepięcia pomiar nadal nie jest trywialny, a On szukam prostych rozwiązań.
W dniu 2016-11-11 o 23:39, Paweł Pawłowicz pisze:
Powodzenia.
W dniu 2016-11-12 o 22:44, janusz_k pisze:
Spóźniłeś się ;-) Zrobiłem to jakieś 20 lat temu. Z małym silniczkiem z przekładnią działało fajnie, z wiertarką do PCB już nie za bardzo. Wtedy znalazłem TPIC2101, używam do dziś :-)
P.P.
W dniu 2016-11-12 o 22:51, Paweł Pawłowicz pisze:
No właśnie :) wszystko zależy od silnika i wymaganej dokładności regulacji, dla byle jakiej działa.
W dniu 2016-11-13 o 17:13, janusz_k pisze:
A w tej kwestii wątkotwórca bardzo dba o to, aby nie udzielić jakiejkolwiek informacji :-) Nie wiemy jaki silnik, na jakie napięcie, jakie będą prądy, jaka jest indukcyjność uzwojeń, jakie obroty, jaki charakter obciążenia... P.P.
W dniu 13.11.2016 o 17:32, Paweł Pawłowicz pisze:
Wypraszam sobie ;) Napisałem z czego to zasilam i jaki scalak to steruje - to wszystko wyjaśnia. Właściwie dla mnie tematu już nie ma. Back EMF wymaga za dużo nakładów jak na ten projekt. Zastosowałem póki co silniczek z większym przełożeniem i zadowalam się jedną prędkością. Będę jeszcze robił próby z silnikiem krokowym, który paradoksalnie uprości sterowanie i do tego wyjdzie taniej.
W dniu 2016-11-13 o 20:35, Mirek pisze:
To Ci się tak tylko wydaje, krokowiec potrafi gubić kroki, ciekaw jestem jak to wykryjesz :)
Użytkownik "Mirek" napisał w wiadomości grup dyskusyjnych:o04g96$pl4$ snipped-for-privacy@node1.news.atman.pl...
A czestotliwosc jaka ? IMO - przyjdzie wylaczyc zasilanie na dosc dlugo, zanim sie prady ustabilizuja.
Dzialalo to dosc dobrze (stabilizatory do magnetofonow, czasem gramofonow) w rozwiazaniu analogowym - ale tam trzeba bylo odjac spadek spowodowany pradem
U=SEM+I*R => SEM=U-I*R.
enkoder dodac ?
J.
W dniu 14.11.2016 o 13:11, J.F. pisze:
No działało super... ale kilka magnetofonów doprowadzało mnie do szału: co parę dni albo godzin obroty się zmieniały o pewien poziom (nieznacznie, jednak nawet moje niezbyt muzykalne ucho to drażniło), po czym znowu nie wiadomo kiedy wracały do normy. Próbowałem to wytłumaczyć pogorszeniem się izolacji między blaszkami komutatora, ale dziś nie jestem pewien.
No właśnie, czyli mógłbym mierzyć uśrednione napięcie i uśredniony prąd i przeliczać... albo mierzyć napięcie, kiedy prąd nie płynie - teoretycznie zaraz po wyłączeniu klucza ale nie wiem na ile jest tu istotna indukcyjność.
Pan Mirek napisał:
Pamiętam jeden magnetofon kasetowy, który miał silnik z mechanicznym regulatorem odśrodkowym. Takm jak w maszynie parowej. Albo nawet nie to, bo był on dwustanowy -- przy określonej prędkości styki rozwierały opornik szeregowy. Trudno powiedzieć jaki to miało wpływ na jakość dźwięku, bo tak ogólnie z tego sprzęta ledwie co było słychać.
Join the Discussion
Have something to add? Share your thoughts — no account required.
Didn't find your answer?
Ask the community — no account required