Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Poszukiwane rozwiązanie sterowania.

Richi 17 Mar 2010 18:26 4529 20
  • #1
    Richi
    Level 39  
    Poszukuję prostego rozwiazania (najlepiej na jednym scalaku) ukladu, który by mial cztery wyjścia na ktorych byly by stany logiczne 0 - 1 przełączanych- sterowanych poprzez dwa wejścia na zasadzie plus i minus - do góry, na dół lub ewentualnie pokrętłem enkodera.
  • #2
    slawussj
    Level 34  
    Witam. Chodzi o dwukierunkowy licznik Johnsona ?
  • #3
    Richi
    Level 39  
    Wiec chodzi mi o takie cos zeby przy nacisnieciu np. plus czy tez w gore dodawal jedynke logiczna na nastepne wyjscie nie wygaszajac stanu logicznego wyjscia poprzedniego.
    W tabeli wyglada to mniejwiecej tak:

    wyjscie 1 - 2 - 3

    1 stan logiczny 0 - 0 - 0
    2 stan logiczny 1 - 0 - 0
    3 stan logiczny 1 - 1 - 0
    4 stan logiczny 1 - 1 - 1

    nastepnie uklad wraca do poczatku. Czwarte wyjscie moze byc podlaczone do reset lub nie byc wcale uzyte.
    Jak pisalem dla mnie tu nie gra roli czy bedzie sterowanie +/- czy tez z pokretla enkodera (w lewo/prawo) choc enkoder bylby lepszym rozwiazaniem.
  • #5
    prezeswal
    VIP Meritorious for electroda.pl
    Witam.
    Poza układami programowalnymi (µC) można realizować opisany układ z użyciem np. liczników rewersyjnych.
    Wersja z przyciskami "góra/dół":
    Poszukiwane rozwiązanie sterowania.

    Układ kombinacyjny z bramkami OR i AND można wykonać w technice RDTL (rezystory, diody, tranzystory).
    Przyciski sterujące (S1 i S2) należy oczywiście uzupełnić w układy eliminacji efektu drgań styków.

    Natomiast prosty układ z użyciem impulsatora (eksperymentowałem z takim zdemontowanym z myszy komputerowej) może wyglądać tak:
    Poszukiwane rozwiązanie sterowania.
    Do wyjść Q0 i Q1 należy dołączyć identyczny układ kombinacyjny, jak na poprzednim obrazku. Przełączniki S1 i S2 symbolizują styki impulsatora.
    Układ współpracujący z enkoderem można zaprojektować znając jego konkretny typ (sygnały wyjściowe).
    Pozdrawiam.
  • #7
    Richi
    Level 39  
    Witam,
    dzieki za zainteresowanie.
    Z TTLkami eksperymentowalem za mlodszych lat, wiec cos tam jeszcze zostalo.
    Ja mam cos takiego:

    Poszukiwane rozwiązanie sterowania.

    jednak nie ma rewersu.
    Na 141 trzeba by bylo jeszcze troche pozmieniac ale to szczegoly.

    prezeswal,
    poeksperymentuje troche z tym 193, dobrze sie zapowiada.
    Co do eliminacji drgan stykow to mam juz rozwiazanie, stara dobra ksiazka Pienkos/Turczynski daje pare rozwiazan na ten temat.
    Zamiast bramek AND i OR zastosuje chyba rozwiazanie diodowe, zaoszczedzi mi to dwa scalaki. Poza tym zastanawiam sie czy podlaczenie Q3 do resetu byloby dobrym rozwiazaniem aby uklad powrocil do do stanu wyjscia.

    Co do rozwiazania na rejestrach przesuwanych to 95 odpada bo jest PIPO, 164 jest SIPO i bardziej by sie nadawal.
    Na przezutnikach mozna by tez cos zrobic. Mozliwosci duza ale wolalbym jaknajbardziej proste i sukteczne.
    Narazie musze troche poeksperymentowac.
    Dzieki za zainteresowanie.
    Dalsze propozycje mile widziane
  • #8
    prezeswal
    VIP Meritorious for electroda.pl
    Richi wrote:
    zastanawiam sie czy podlaczenie Q3 do resetu byloby dobrym rozwiazaniem aby uklad powrocil do do stanu wyjscia.

    Moim zdaniem jest to zbędne, układ pracuje wg. oczekiwanej sekwencji:
    wyjscie 1 - 2 - 3

    1 stan logiczny 0 - 0 - 0
    2 stan logiczny 1 - 0 - 0
    3 stan logiczny 1 - 1 - 0
    4 stan logiczny 1 - 1 - 1
    Pokazuje to symulacja:
    Poszukiwane rozwiązanie sterowania.
    W pierwszej części przebiegów - liczenie w górę, w drugiej - w dół.
    Pozdrawiam.
  • #9
    Richi
    Level 39  
    No w sumie racja, wynika to z powtarzajacego sie cyklu stanow logicznych na wyjsciach A i B ukladu 193.

    Dodano po 2 [minuty]:

    A tak apropo, jakim programem robisz symulacje ??
  • #10
    prezeswal
    VIP Meritorious for electroda.pl
    CircuitMaker Student Version (CM w avatarze :D )
  • #11
    _jta_
    Electronics specialist
    95 przesuwa w jedną stronę, a przesunięcie w drugą robi się przez ładowanie równoległe i nie ma resetu - jeśli ma
    być przesuwanie w obie strony, i jeszcze po dojściu do końca ładowanie, albo resetowanie, to na 95 nie da rady.
    164 przesuwa tylko w jedną stronę, więc też nie załatwi sprawy, jeśli potrzeba przesuwać w obie.
    Nie wiem, co dokładnie chcesz uzyskać - czy przełączanie w kółko 000 001 011 111 w obie strony?
    To powinien załatwić pierwszy układ podany przez prezeswal... tylko kłopot, że potrzeba po 1 AND i OR.
    Niestety nie widzę szansy, by je zastąpić jakimś układem z 4 bramek NAND, albo NOR.
    Hm... jest chyba coś takiego, jak podwójna bramka AND-OR-INVERT z dodatkowym inwerterem
    - na tym powinno się dać (w połączeniu z licznikiem rewersyjnym - 193).
    A może jest jakiś rejestr przesuwny 2-kierunkowy z możliwością SET/RESET?
  • #12
    Richi
    Level 39  
    Po przegladnieciu tablicy stanow tego 193 doszlem do wniosku ze resetu nie trzeba, na wyjsciach A i B stany sie powtarzaja wiec zawsze po czwartym wroci do poczatkowego.
    Co do pytania czy potrzebny jest w obie strony to powiem ze tak, potrzebny w obie. Bramki AND i OR zastapilem dwiema diodami i jednym tranzystorem, musze tylko wyprobowac w praktyce.

    Waldek,
    dzieki za info o programie.
  • #13
    Richi
    Level 39  
    Jaki scalak mozna zastosowac do pokretla enkodera ??
    Jeden przeskok enkodera daje zmiane stanu logicznego z zera na jednyke lub z jedynki na zero.
  • #14
    prezeswal
    VIP Meritorious for electroda.pl
    Richi wrote:

    Jeden przeskok enkodera daje zmiane stanu logicznego z zera na jednyke lub z jedynki na zero.

    Enkoder inkrementalny (w moim pierwszym poscie nazwałem go "impulsatorem") ma dwa wyjścia
    http://napedyonline.pl/index2.php?option=com_content&do_pdf=1&id=259
    Jak napisałem - używałem do współpracy z nim licznika rewersyjnego 4029 (patrz obrazek nr 2).
    Na forum były już podobne tematy.
  • #15
    Richi
    Level 39  
    Witam,
    cos ten uklad z impulsatorem nie chodzi jak trzeba.
    Styk 1 zlicza w prawdzie impulsy ale styk drugi nie ma zadnej funkcji, przynajmniej nw CircuitMaker Student Version.
    Uzywajac styku pierwszego mam zmiany na wyjsciach Q cos na podobienstwo 193 a ja potrzebuje serje impulsow z jednego wyjscia przy kreceniu w jedna strone i serie impulsow z drugiego wyjscia krecac w druga strone.
    W sumie uklad juz gotowy tylko sprawa z enkoderem.
  • #17
    slawussj
    Level 34  
    Chodzi o to, że to ty musisz tak zaprojektować układ, aby na podstawie przesunięcia impulsów wykrywał kierunek.
  • #18
    Richi
    Level 39  
    _jta_ wrote:
    Według opisu (link z ostatniego postu prezeswal), enkoder inkrementalny ma wyjścia A i B, i obydwa mają swoje funkcje.


    To ja tez wiem.

    slawussj wrote:
    Chodzi o to, że to ty musisz tak zaprojektować układ, aby na podstawie przesunięcia impulsów wykrywał kierunek.


    No wlasnie taki uklad poszukuje. Ten na 4029 w CircuitMaker Student nie zlicza impulsow z drugiego styku.
    Dzialanie enkodera inkrementalnego jest mi znane jedynie potrzebny uklad elektroniczny ktory mi to przetworzy na serie impulsow w"przod" i "wstecz".
    Bede musial chyba rozebrac myszke komputerowa i zobaczyc jakie tam jest rozwiazanie tego kolka.
  • #19
    prezeswal
    VIP Meritorious for electroda.pl
    Do swoich eksperymentów użyłem takiego impulsatora (enkodera?) z myszy:
    Poszukiwane rozwiązanie sterowania.
    Na moim drugim obrazku w poprzednim poscie zewnętrzne wyprowadzenia sterują wejściami CP i U/D licznika (powinien on być połączony w trybie liczenia binarnego, czyli - p.9 B/D -> +V). Oznaczyłem je jako przełączniki S1 i S2.
    Symulacja wyjaśnia, jak działa układ:
    Poszukiwane rozwiązanie sterowania.
    Przebiegi TP1 i TP2 odpowiadają sygnałom wyjściowym A i B enkodera:
    - gdy narastające zbocze sygnału na U/D (TP1) wyprzedza takie zbocze sygnału na CP (TP2) -> liczenie "w górę" (lewa część przebiegów - przed czerwoną linią),
    - w sytuacji odwrotnej (TP1 "opóźniony" względem TP2) -> liczenie "w dół" (prawa część przebiegów).
    Innymi słowy: przebiegi w lewej części opowiadają obracaniu pokrętła w jedną stronę, a w prawej - w przeciwną.
    Pozdrawiam.

    ps. analogicznie powinien działać układ z licznikiem 74193:
    Poszukiwane rozwiązanie sterowania.

    ale tego nie sprawdzałem "w realu" :D
  • #20
    Richi
    Level 39  
    Witam,
    problem mam w tym ze ja potrzebuje na jednym wyjsciu (umownie Q0) serie impulsow kiedy sie "kreci w gore" a na drugim Q1 nic. Podobnie "krecenie w dol" musi dawac serie impulsow na drugim wyjsciu (umownie Q1) a na pierwszym Q0 nie moze byc nic.
    O co mi chodzi wyjasni moze ten schemat.

    Poszukiwane rozwiązanie sterowania.

    W miejsce elementow RC przy stykach ma przyjsc elektronika impulsatora.
    I teraz jezeli obydwa wyjscia z elektroniki impulsatora beda dzialac to caly uklad nie bedzie chodzil poprawnie.
    Impulsator mam inny ale cos na zasadzie jak w radiach samochodowych.
    Jezeli trzeba to zalacze foto tego impulsatora.

    Dodano po 1 [minuty]:

    Aaa i zapomnialem , czy jest jakis scalak ktory ma podwojny licznik w sobie - 193 ??
  • #21
    _jta_
    Electronics specialist
    Możesz użyć np. 2 NE555 (albo NE556 - ma w środku 2 NE555) - podłączyć tak, żeby każdy z nich
    wyzwalało zbocze z jednego wyjścia impulsatora, ale tylko przy określonym stanie na drugim jego
    wyjściu - i w zależności od kierunku kręcenia impulsy będą na jednym, albo na drugim z nich.

    To by było najprostsze rozwiązanie - poza użyciem licznika, który liczy w jedną, bądź drugą stronę
    w zależności od przesunięcia fazy między impulsami na wejściach. Bardziej zaawansowany układ
    mógłby dawać impuls na jednym z wyjść przy każdej zmianie na którymkolwiek wejściu i wybierać
    to wyjście, na które da impuls, w zależności od kierunku obracania tarczy.