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

silnik krokowy - inne zastosowanie [Atmega][bascom]

ElektroTME 04 Gru 2009 14:58 4353 15
REKLAMA
  • #1 7344136
    ElektroTME
    Poziom 14  
    Witam,
    ostatnio na lekcji nauczyciel zadał do wykonania jako moduł do starter kitu zamek szyfrowy, większość z kolegów pewnie zrobi coś w stylu klawiaturki i kodu, ja chciałem odbiec od prostych rozwiązań i wpadłem na pomysł aby wykorzystać silnik krokowy jako pokrętło na podobę szyfru w starych sejfach, jak wiecie gdy na 'sucho' kręcimy silnikiem krokowym, to czujemy takie przeskakiwanie, i to chciałem wykorzystać.

    Poczyniłem pewne kroki, wziąłem atmegę, podłączyłem silnik 4 liniami do adc, minusem do vcc, ustaliłem że przy próbie przekręcenia delikatnie w prawo 1 z 4 lini daje wysoki impuls, większy niż inne, potem następna i tak w kółko, dla obrotu w drugą stronę analogicznie linie pulsowały w odwrotnej kolejności, pisałem program już do obsługi ładnego pokrętła od sejfu, nagle okazało się że spaliłem przetwornik ADC, za szybko przekręciłem silnikiem.
    [wiem że takie pokrętła co dają impulsy przy kręceniu są w sprzedaży, ale chciałem to wykonać jednak na silniku, aby pokazać, że nadaje sie on nie tylko do napędzania zabawek]
    Nie jestem dobry z analogówki, chciałbym abyście pomogli mi stworzyć układ który zabezpieczał by atmegę przed wielkimi prądami z silnika, a jednocześnie wykrywał najmniejsze (lub drobne) oznaki napięcia na liniach.
    Myślałem o optoizolacji tylko czy silnik nie spali optoizolatorów.
    Można także jakiś układ z tranzystorami i diodami, tak aby po otrzymaniu impulsu z linii na wyjściu było '1' a przy braku '0'. czułość regulowana potencjometrem.
    Oczywiście dla każdej lini osobny identyczny układ.
    Spotkał się kiedyś ktoś z was z takim problemem?
    Jakie proponujecie rozwiązania?

    Pozdrawiam ElektroTME
  • REKLAMA
  • #2 7344182
    avatar
    Poziom 36  
    Ale belkot - no nie wazne nie da sie zabezpieczyc wejsc adc przed pradami...bo to nie one uszkodzili wejscia uC a za wysokie szpilki napiecia .
    Jaki jest to silnik ? Jezeli Unipolarny to np lm324 jako wzmacniacz operacyjny do kazdej fazy silniki podpiety bezposrednio do uC zalatwi sprawe , no ale trzeba tez pamietac o odpowiednim dzielniku napiecia tak aby nie spalic LM'a
  • #3 7344217
    ElektroTME
    Poziom 14  
    Jest to silnik Sankyo MSJC200B11 12V DC.
    (1 masa, 4 plusy)
    Można prosić o schemat, bo nie miałem jeszcze styczności z LM324
    Dodam że napięcie jakie się indukuje przy gwałtownym kręceniu to do 6VDC i do 18VAC
  • REKLAMA
  • #4 7344236
    avatar
    Poziom 36  
    ElektroTME napisał:
    Jest to silnik Sankyo MSJC200B11 12V DC.
    (1 masa, 4 plusy)
    Można prosić o schemat, bo nie miałem jeszcze styczności z LM324
    Dodam że napięcie jakie się indukuje przy gwałtownym kręceniu to do 6VDC i do 18VAC

    A jakim prawem twierdzisz ze jest to napiecie od 6 do 18V ? Moim zdaniem moze byc o wiele wieksze - pobawie sie tym silnikiem pod oscyloskopem .
    LM324 wpisujesz w google sa to 4 wzmacniacze operacyjne.. zapewne teorie wzmacniaczy, jak one dziala i jak je nalezy podlaczyc mieliscie w szkole ...
  • #5 7344263
    Freddy
    Poziom 43  
    Bełkot to mało powiedziane. Zwłaszcza to :
    Cytat:
    Dodam że napięcie jakie się indukuje przy gwałtownym kręceniu to do 6VDC i do 18VAC
    To już kompletna bzdura. Kolego jesteś następnym, któremu nie działa klawisz "szukaj", czy dostawca internetu wyciął dostęp do Google ?.
    Proponowanego przez Ciebie układu nie da sie wykonać. Zastanów się raczej nad enkoderem (rotary encoder) .
  • #6 7344292
    ElektroTME
    Poziom 14  
    Zgadzam się, napięcia mogą być o wiele większe, nie posiadam oscyloskopu, poprostu mierzyłem to prostym multimetrem, multimetr uśrednia wartości. Nie zmienia to faktu że atmega nie miała z silnikiem szans.

    Czy jest to najlepsze rozwiązanie?(na pewno jedno z tańszych :P)
    Lm mi się nie spali?


    wzmacniacze operacyjne miałem ale trochę pobieżnie.

    Dodano po 11 [minuty]:

    Freddy napisał:

    Proponowanego przez Ciebie układu nie da sie wykonać.

    To dziwne, wczoraj, przed spaleniem ADC w uC, miałem urządzenie które zlicza kroki silnika, ale to ja musiałem tym silnikiem obracać.
    Freddy napisał:

    Zastanów się raczej nad enkoderem (rotary encoder).

    Są prostsze elementy, nieprzyporządkowujące danej pozycji wartości liczbowej, lecz tylko wysyłające impulsy gdy poruszymy gałką w lewo bądź w prawo. Mam takie pokrętło w wieży elektronicznej(niestety nie wiem jak się nazywa) i nie jest to potencjometr!
    Pokuszę się i spróbuję przedstawić rozwiązanie na tym elemencie, chociaż ograniczając skoki napięcia do 5V na lini do uC poprzez jakiś układ miałbym problem z głowy.
  • Pomocny post
    #7 7344350
    Freddy
    Poziom 43  
    ElektroTME napisał:
    Zgadzam się, napięcia mogą być o wiele większe, nie posiadam oscyloskopu, poprostu mierzyłem to prostym multimetrem, multimetr uśrednia wartości. Nie zmienia to faktu że atmega nie miała z silnikiem szans.
    ...

    i pewnie już nie żyje, przy tak wysokich impulsach.
    Polecam lekturę Link

    Dodano po 4 [minuty]:

    ElektroTME napisał:

    ...
    Są prostsze elementy, nieprzyporządkowujące danej pozycji wartości liczbowej, lecz tylko wysyłające impulsy gdy poruszymy gałką w lewo bądź w prawo. Mam takie pokrętło w wierzy elektronicznej(niestety nie wiem jak się nazywa) i nie jest to potencjometr!
    ...

    To się właśnie nazywa rotary encoder.
  • #8 7344421
    ElektroTME
    Poziom 14  
    Freddy napisał:

    To się wqłaśnie nazywa rotary encoder, a wieża pisze się przez "ż", chyba, że chodzi Ci o wiarę.

    Poprawiłem, nie skomentuje, bo nie o to tu chodzi.

    Więc spróbuję z takim rotary encoder'em coś po kombinować.
    Jednak jak ktoś będzie miał jeszcze jakieś pomysły to chętnie obczaję.
  • REKLAMA
  • #9 7344435
    Freddy
    Poziom 43  
    Podałem Ci link do opisu i przykładów.
  • #10 7344453
    ElektroTME
    Poziom 14  
    Wiem, zauważyłem i dziękuję.
    Kliknąłem w 'pomógł' jeżeli o to Ci chodzi ;p
  • #11 7344469
    Freddy
    Poziom 43  
    Nie chodzi mi o to, po prostu przypomniałem, że masz tam link do obsługi enkodera w Bascomie.
  • #12 7345075
    jacekk232
    Poziom 17  
    Tu masz opis enkodera zrobionego z silnika krokowego.
  • #13 7347332
    tmf
    VIP Zasłużony dla elektroda
    Jesli chcesz zamiast enkodera zastosowac ten silnik to zabezpieczenie jest banalnie proste - wystarczy kazde wejscie ADC zabezpieczyc diodami - jedna od ADC (katoda) do masy (anoda) i druga od ADC (anoda) do Vcc (katoda). To ci obetnie szpilki napiecia do poziomow GND-Vcc (pomijajac nap. przewodzenia diody). Skoro stosujesz ADC to zaden opamp nie bedzie ci potrzebny.
  • REKLAMA
  • #14 7348985
    jacekk232
    Poziom 17  
    A czy to musi być z użyciem ADC? Bo po zastosowaniu tego układu na wyjściu otrzymujemy typowy sygnał jaki daje enkoder. W tym momencie wystarczy napisać zwykłą procedurę obsługi enkodera lub użyć bascomowego polecenia Encoder. To chyba prostsze niż bawić się ADC. No chyba, że autor postu koniecznie chce na ADC.
  • #15 7349376
    tmf
    VIP Zasłużony dla elektroda
    Zalezy, jesli podepniesz do zwyklego pinu to musisz zastosowac opampy, zeby z analogowego sygnalu zrobily cos co nadaje sie do wysterowana portow. Chyba prosciej to jednak zalatwic programowo niz sprzetowo.
  • #16 7354041
    ElektroTME
    Poziom 14  
    sama idea jest taka, zastosować silnik krokowy jako encoder, ale żeby uprościć płytkę wykorzystuję ADC, na Mega8 jest dużo miejsca i taki programik spokojnie się zmieści.
    Przywiozłem z domu encoder od wieży, mam silnik, wylutuję trochę diod i zrobię dwie wersje.

    Mam teraz inny problem
    Siadła mi karta grafiki, i jadę w Trybie awaryjnym na Xp, bascomavr mi nie działa oraz nie wykrywa mi urządzeń typu USBasp.
    Jest ktoś bardziej oblukany w tym temacie? Może da się coś zrobić, aby obie te rzeczy uruchomić w T.A.??

    Dobra, poradziłem sobie inaczej, po prostu odinstalowałem stery grafy i lece na softwarowym :)

    A więc biorę się za testy.

    Używa ktoś programiku MegaLoad? (chodzi o wsad bootloadera dla mega32 z kwarcem 16MHz)
REKLAMA