Witam
Napisałem taki program do regulacji prędkości silnika.
Do ADC0 mam podpięty potencjometr, do OC2 tranzystor sterujący silnikiem, a do T1 wyjście enkodera zamontowanego na silniku.
Zliczanie częstotliwości z enkodera oraz zmienianie wypełnienia przebiegu działają prawidłowo, gdy silnik jest odpięty od uC (zasilany z OSOBNEGO generatora przebiegu PWM), oraz gdy wypełnienie PWM'a jest równe 0 lub 100%.
Normalnie (z silnikiem odpiętym od uC), odczytywana częstotliwość przy maksymalnych obrotach silnika to ok. 1000. Sytuacja diametralnie zmienia się, gdy podepnę silnik pod wyjście PWM. Wartość odczytanej częstotliwości zwiększa się do ok. 7500 i zostaje na tym poziomie bez względu na aktualną prędkość silnika.
Na próbę podłączyłem do wyjścia PWM zwykłą diodę. W tym przypadku odczyt częstotliwości był poprawny.
Lecz tuż po odłączeniu silnika od uC, gdy silnik jeszcze nie zatrzymał się, odczyt częstotliwości wraca do normy.
Proszę o podpowiedź, co mogę z tym zrobić.
Pozdrawiam,
Karol
Napisałem taki program do regulacji prędkości silnika.
Kod: VB.net
Do ADC0 mam podpięty potencjometr, do OC2 tranzystor sterujący silnikiem, a do T1 wyjście enkodera zamontowanego na silniku.
Zliczanie częstotliwości z enkodera oraz zmienianie wypełnienia przebiegu działają prawidłowo, gdy silnik jest odpięty od uC (zasilany z OSOBNEGO generatora przebiegu PWM), oraz gdy wypełnienie PWM'a jest równe 0 lub 100%.
Normalnie (z silnikiem odpiętym od uC), odczytywana częstotliwość przy maksymalnych obrotach silnika to ok. 1000. Sytuacja diametralnie zmienia się, gdy podepnę silnik pod wyjście PWM. Wartość odczytanej częstotliwości zwiększa się do ok. 7500 i zostaje na tym poziomie bez względu na aktualną prędkość silnika.
Na próbę podłączyłem do wyjścia PWM zwykłą diodę. W tym przypadku odczyt częstotliwości był poprawny.
Lecz tuż po odłączeniu silnika od uC, gdy silnik jeszcze nie zatrzymał się, odczyt częstotliwości wraca do normy.
Proszę o podpowiedź, co mogę z tym zrobić.
Pozdrawiam,
Karol
