Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek dla www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

2 niezależne kanały PWM, sterowanie silnikami krokowymi

15 Paź 2008 17:06 2001 3
  • Poziom 9  
    Witam.

    Potrzebuję napisać oprogramowanie do uC które wysteruje mi 2 wyjścia sygnałami PWM o różnej częstotliwości (z jednakowym wypełnieniem dla obu wyjść) i określonej liczbie impulsów.
    Np. na wyjście 1 częstotliwość 50Hz, wypełnienie 50% i 50 impulsów, oraz na wyjście 2 częstotliwość 25Hz, wypełnienie 50% i 100 impulsów. Oba generatory muszą rozpocząć pracę w jednakowym czasie i skończyć po wykonaniu zadanej dla nich liczby impulsów.
    Czy jest to w ogóle wykonalne za pomocą 1 uC?

    Potrzebuję tego do sterowania 2 silnikami krokowymi w drukarce przerabianej na ploter ;) http://youtube.com/watch?v=gEmDvghb378
    Czyli uogólniając potrzebuję sterować dwoma silnikami naraz z różna prędkością (aby móc malować ukośne linie), w jaki sposób mogę to zrobić?

    Obecnie silniki sterowane są przez L298 a ten przez mikrokontroler, zamierzam jednak dorzucić sterowniki L297 aby uprościć sterowanie z uC
  • Poziom 38  
    gumispl napisał:
    Czy jest to w ogóle wykonalne za pomocą 1 uC?

    Za pomocą 1 mikrokontrolera i w dodatku przy użyciu jednego timera - warunek generacji w tym samym czasie. Trzeba tylko znać częstotliwość z jaką maksymalnie będzie sterowany krótykolwiek z silników.
  • Poziom 10  
    Możńa to zrobić z użyciem 1 timera, ale tylko dla prędkości będący wielokrotnościamy samych siebie (np. 25 i 50 Hz) jeśli byłoby 24 Hz i 25 Hz to timer musiałby co chwilę się wyzwalać. Wydaje mi się że prościej by było zastosować 2 timery, 2 przerwania. Na początku programu ustawia się początkowe właściwości timerów, czyli tryby pracy (np. tryb CTC) czestotliwość, zezwala się na przerwania. Jeśli timer A zgłosi przerwanie, zmieniasz stan pinu, jeśli timer B analogicznie. w przerwaniach trzeba jeszcze zamieścić warunek, np. jeśli wykonało się przerwanie np 20k razy to ma się wyłączyć (albo zwiększyć częstotliwość i liczyć od nowa)
  • Poziom 9  
    Hm.. temat lekko nieaktualny, obawiam się, że dostaniesz burę od moderatorów :)

    Pozostaje mieć nadzieję, że odpowiedź przyda się komuś innemu przeglądającemu wątek:-)