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

Sterownik silnika DC z układem CPLD

Kubald 09 Sie 2012 17:09 4179 0
  • Sterownik silnika DC z układem CPLD

    Na stronie PyroElectro.com można znaleźć projekt sterownika silnika opartego na układzie CPLD. Praca silnika sterowana jest przy użyciu potencjometru – sygnał analogowy jest przekształcany przy użyciu konwertera A/D MAX150 i po digitalizacji trafia do układu CPLD EPM7128, który generuje sygnał PWM podawany do kontrolera silników prądu stałego SN755410NE. Kod dla układu CPLD został napisany w języku VHDL.

    Sterownik silnika DC z układem CPLD

    Na schemacie urządzenia można wyróżnić 3 podstawowe bloki. Sterownik silnika jest połączony z układem CPLD za pomocą 2 przewodów. Kondensator powinien być umieszczony jak najbliżej układu, aby zapewnić stabilną pracę silnika. Układ przetwornika A/D dokonuje konwersji w momencie podania impulsu na wejście WR, będące pod kontrolą układu CPLD. W układzie zastosowano również blok diod LED, wizualizujących sygnały PWM. Szczegółowe działanie wszystkich bloków zostało omówione w innych artykułach autora.

    Opisując teorię działania sterownika, należy omówić działanie przetwornika A/D. Układ MAX150 pracuje w trybie WR – po podaniu impulsu na to wejście konwersja rozpoczyna się. Proces działania całego sterownika został przedstawiony na poniższym rysunku:

    Sterownik silnika DC z układem CPLD

    Przetwornik MAX150 digitalizuje napięcia z zakresu ograniczonego dwoma wartościami: Vref+ i Vref- (w projekcie odpowiednio +5V i 0V). Poniższy wzór pozwala obliczyć wartość napięcia po konwersji w 8-bitowym formacie.

    Sterownik silnika DC z układem CPLD

    Z kolei poniższe 2 rysunki objaśniają działanie sygnałów PWM (modulacja szerokości impulsu). Pierwszy z nich pozostaje przez 80% czasu włączony – to znaczy, że napięcie +5V jest podawane przez 80% czasu trwania sygnału. Jest to „mocny” sygnał – podany na wejście układu SN754410 sprawi, że silnik będzie obracał się szybko do przodu. Drugi z sygnałów jest zbliżony do pierwszego, lecz tutaj napięcie +5V jest podawane przez jedynie 30% czasu trwania sygnału. Ponieważ przez 70% czasu trwania sygnału podawane jest napięcie 0V, układ SN754410 sprawi, że silnik będzie obracał się do tyłu z umiarkowaną prędkością. W razie podawania sygnału 50%/50% silnik nie będzie się obracał. Również poniższe 2 animacje ilustrują sposób sterowania silnika sygnałami PWM.

    Sterownik silnika DC z układem CPLD

    Sterownik silnika DC z układem CPLD

    Sterownik silnika DC z układem CPLD

    Oprogramowanie układu CPLD składa się z dwu bloków. Pierwszy z nich odpowiada za sterowanie przetwornikiem A/D, drugi – generacją impulsów PWM. W przypadku konwersji A/D układ CPLD wysyła impuls na wejście WR przetwornika i po kilku mikrosekundach odbiera dane cyfrowe. Kod generujący impulsy PWM pozwala uzyskiwać sygnały z zakresu od 99/1 do 1/99.

    Kod: VHDL
    Zaloguj się, aby zobaczyć kod


    Kod: VHDL
    Zaloguj się, aby zobaczyć kod


    Działanie całego urządzenia można obejrzeć na zamieszczonym nagraniu.




    Źródło

    Fajne? Ranking DIY
    O autorze
    Kubald
    Poziom 15  
    Offline 
    Specjalizuje się w: spektroskopia exafs/xanes, uc, it
    Kubald napisał 188 postów o ocenie 112. Mieszka w mieście Kraków. Jest z nami od 2004 roku.
REKLAMA