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

[atmega8][Bascom] Pozycjonowanie silnika krokowego.

wrpablo 17 Kwi 2013 07:59 2253 1
REKLAMA
  • #1 12208498
    wrpablo
    Poziom 10  
    Witam

    Zastanawiam się nad programem, który miałby pozycjonować silnik krokowy unipolarny w Bascom. Silnik robi 200kroków na jeden obrót.
    Program miałby działać na takiej zasadzie:
    Najpierw ustawienia silnika w punkcie zero, później przyciśniecie danego przycisku miało by spowodować:

    przycisk 1 - silnik obraca się 4obroty w prawo od punktu zero
    przycisk 2 - silnik obraca się 2obroty w prawo od punktu zero
    przycisk 3 - silnik obraca się 4obroty w lewo od punktu zero
    przycisk 4 - silnik obraca się 2obroty w lewo od punktu zero.

    I teraz mam problem tego typu. Jak zliczać impulsy silnika żebym wiedział w którym punkcie on się znajduje od punktu zero? Powiedzmy, że ustawie silnik 2 kroki w prawo, później chciałbym ustawić 4 w lewo , jakiej procedury można by użyć żeby silnik dodawał i odejmował wartości położenia od punktu zerowego, żeby wiedzieć ze najpierw jest 2 obroty w prawo, jak wcisnę przycisk "4lewo" , to żeby ustawił się w punkcie 4obroty w lewo a nie 2 obroty prawe + 4 lewe i ustawi się w pozycji 2prawe.

    Czy może mi ktoś pomóc ?
  • REKLAMA
  • #2 12208603
    Pittt
    Poziom 32  
    W funkcji w której generujesz kroki od razu je licz. A działanie funkcji uzależnij od porównania tego co zliczyłeś z wartością zadaną. Wszystko będzie ok do póki silnik nie dostanie poślizgu, czyli nie przeciążysz go i nie zablokujesz napędu, gdy kroczki będą leciały dalej.
REKLAMA