logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

[Bascom][ATtiny24] - Regulator prędkości obrotowej silnika DC

karol1996 14 Gru 2016 15:07 1239 1
REKLAMA
  • #1 16126460
    karol1996
    Poziom 19  
    Witam
    Potrzebuję zrobić regulator do silnika komutatorowego DC ze sprzężeniem zwrotnym w postaci enkodera optycznego (ENC, PA.0). Rozdzielczość enkodera to 32 imp/obr.
    Napisałem program w Bascomie, ale ten zdaje się nie działać.
    Założenia są takie:
    W zależności od tego, który pin uC (PB.0, PB.1) są aktywne, silnik ma kręcić się z dwoma różnymi prędkościami. Każda z tych prędkości ma się dać płynnie regulować za pomocą potencjometrów PV1 (prędkość 1), PV2 (prędkość 2).

    Po pierwsze, wraz ze wzrostem prędkości obrotowej silnika, odczytana przez uC częstotliwość maleje (wartość zmiennej F), a powinna wzrastać (na mierniku częstotliwości wszystko jest ok)

    Efekt działania programu jest taki, że silnik rozkręca się do jakiejś bardzo małej prędkości po czym zwalnia i tak cały czas.
    Silnik sterowany jest za pomocą PWM poprzez MOSFET'a.

    Wartość zmiennej F (odpowiadającej za pomiar częstotliwości), przy maksymalnych obrotach silnika to ok. 75, gdy miernik częstotliwości pokazuje ok. 1500Hz.
    Wartości częstotliwości (aktualną i zadaną) dodaję do siebie, ponieważ wraz ze wzrostem prędkości obrotowej silnika wartość zmiennej F maleje.

    Kod: VB.net
    Zaloguj się, aby zobaczyć kod


    Schemat:
    [Bascom][ATtiny24] - Regulator prędkości obrotowej silnika DC

    Pozdrawiam,
    Karol
  • REKLAMA
  • #2 16126499
    PiotrPitucha
    Poziom 34  
    Witam
    Podejrzewam, że masz śmiecie na procesorze od strony enkodera. Jaki sygnał daje enkodera?
    Jeśli poziom jest dobry i impedancja w rozsądnym zakresie, to podłącz na wyjście enkodera rezystor 1K, a do masy z wejścia na procesorze 10nF.
    Nie patrzyłem na program, bo miałem identyczny problem i filterek pomógł.
REKLAMA