Jest sobie taki układ - uC za pośrednictwem mosfeta reguluje prędkość silnika szczotkowego DC.
W układzie mosfeta jest jeszcze rezystor pozwalający na pomiar prądu pobieranego przez silnik - żeby wyłączyć przy przeciążeniu silnika. Znaczy banał.
I teraz - silnik zasilany jest napięciem w zakresie 20-30v (no takie nietypowe źródło zasilania) - nie ma dokładnej stabilizacji. Ale - ponieważ chcemy zachować jaką-taką stałą prędkość obrotową, to MCU mierzy to napięcie zasilające, i odpowiednio reguluje via PWM prędkość silnika.
Przy czym robi to "na ślepo" w oparciu o pomiary i wyliczoną tablicę napięcie/PWM. I generalnie toto działa.
Niemniej fajnie by było, gdyby można zrobić to porządnie - czyli mierząc faktyczną prędkość silnika. Sam silnik pobiera około 1A - i z oscylogramu prądu wynika, że prąd ten delikatnie oscyluje z częstotliwością ok. 400Hz - zapewne z taką szybkością obraca się wał silnika - tego nie wiadomo zresztą, ponieważ silnik zamknięty jest w obudowie z przekładnią zmniejszającą obroty do ok. 1 / sek. Delikatnie oscyluje - znaczy jak pamiętam - to przy 1A są to oscylacje na może 20 mA - coś koło tego. Sinusoida zresztą.
No i teraz - żeby wykryć rzeczywistą prędkość silnika, należałoby odczytać te wahania prądu. Przychodzą mi tu do głowy jakieś rozwiązania "normalne" - czyli odseparować składową stałą, wzmocnić itp.
Ale może - i tu docieram do clue - jest jakiś wynalazek (driver silnika), który takie cudo ma zaimplementowane ?