Elektroda.pl
Elektroda.pl
X

Search our partners

Find the latest content on electronic components. Datasheets.com
Elektroda.pl
Altium Designer Computer Controls
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Obrotomierz - cewka ==> At89S8252

Katowiczanin 05 Apr 2006 17:26 3822 15
  • #1
    Katowiczanin
    Level 12  
    Witam !

    Zrobilem prosty obrotomierz na procesorku AT89S8252. Testowalem go narazie podając na wejscie T0 sygnal z portu LPT i dziala wporzadku. Chce go zamontowac w maluszku (elegant) i za bardzo nie wiem jak pobrac sygnal z cewki tak by nie uszkodzic mikroprocesora. W załaczniku przesylam schemat instalacji eleganta. Myslalem nad podpieciem sie pod 7 przewod z modulu zaplonowego, ten ktory idzie na cewke, nastepnie przez rezystor podac go na baze tranzystora, a kolektor z emiterem zwieral by port T0 do masy. Czy w ten sposób jest mozliwy i czy bedzie dzialal ???. Ze schematu domyslam sie ze na 7 przewodzie jest sygnal prostokatny 0-12V.

    Pozdrawiam !! i dzieki za pomoc
    Ethernet jednoparowy (SPE) - rozwiązania w przemyśle. Szkolenie 29.09.2021r. g. 11.00 Zarejestruj się za darmo
  • Altium Designer Computer Controls
  • #2
    jony15
    Level 23  
    ja bym jeszcze dodał transoptor i z transoptora brał impulsy do up. pozdrawiam
  • Altium Designer Computer Controls
  • #3
    Katowiczanin
    Level 12  
    dobry pomysl :) dzieki <piwo>
  • #4
    szymtro
    Level 30  
    Tam jest sygnał ale nie przypomina prostokątu. Zamiast zera jest sporo minus i sporo na plus - takie dosć mocne oscylacje napiecia - oprócz tego reszta przypomina prostokąt - a to ze wzgledu na indukcyjność cewki. Niektórzy robia tak iż przez rezystor (5-10k) podaja sygnał na diodę zenera (5-15V), dalej rezystor do masy, kondensator szeregowy 220nF rezystor do masy i rezystor do bazy tranzystora.

    Mozna też zrobic inaczej. TRanzystor npn podciagniety szeregowo przez dwa rezystory do zasilania (to samo co modułu (moze byc stacyjka) i jeden rezystor od bazy do masy. Górne dwa rezystory tworzą dzielnik gdzie ze srodka wychodzi dioda do wejscia, kondensator do masy i druga dioda do masy. I wtedy ukłąd reaguje na zwarcie do masy i ujemne napiecie na wejsciu (wyjsciu cewki). Tu nie ma kondensatora szeregowego wiec tylko zbocze opadające pozostaje do wykrycia.
  • Helpful post
    #5
    Andy74
    Level 25  
    To ja może zarzucę fragmentem schematu obrotomierza który praktycznie wykonałem i był on używany przez dłuższy czas we fiacie 126p. Tyle tylko że tam był przerywacz mechaniczny (platynki), ale impulsy też brałem z zacisku cewki zapłonowej.

    Obrotomierz - cewka ==> At89S8252

    Budując układ wejściowy wzorowałem się na jakimś gotowym rozwiązaniu, ale nie pomnę już jakim... Ważne że działał dobrze.
    Impulsy na INT0 wyglądają mniej więcej tak (symulacja):

    Obrotomierz - cewka ==> At89S8252

    Wystarczy więc wyzwalać przerwania zboczem opadającym.
    Pozdrawiam
    Andy
  • #6
    Katowiczanin
    Level 12  
    Wielkie dzieki wszystkim za pomoc a najbardziej Andy74 <piwo>. Mam jeszcze pytanko do Andy74 - jakim programem wykonałes ta symulacje ??? :)
  • #7
    Andy74
    Level 25  
    Jest taki nieduży i dość prosty w obsłudze program: Circuit Maker 2000.

    Trial do pobrania tutaj.
    Jest nawet spolszczenie, ale go nie testowałem bo preferuję wersję angielską.
    :)
    Pozdrawiam!
    Andy
  • #8
    szymtro
    Level 30  
    No schemacik też dobry. Natomiast z ta symulacja w cm200 to bym nie przesadzał. Bardzo czesto działa prawidłowo tylko na elementach tzw idealnych. I nie pomaga zmiana minimalnego kroku jak podpowiada instrukcja. Polecam Multisim 8 - następca electronic workbench 5. A co do shematu to można by zastąpić 220nF mniejszym bo coś wolno napięcie przez niego narasta. Albo zostawić tak jak jest jezeli pokazuje dobrze wysokie obroty.
  • #9
    Andy74
    Level 25  
    :arrow: szymtro Zgadzam się z Tobą co do symulacji w CM, dlatego napisałem że impulsy wyglądają "mniej więcej tak" jak na rysunku. Co do wartości C6 to pamiętam że też miałem wątpliwości, ale przetestowałem 220n i okazało się że jest OK, więc tak zostawiłem. Symulację zrobiłem dla przebiegu 50Hz co dla dwucylindrowego czterosuwa 126p daje 3000 obr/min. Można oczywiście wstawić np. 100n i potestować. Myślę że też będzie dobrze działać.

    Pozdrawiam
    Andy
  • #10
    Katowiczanin
    Level 12  
    a czy zamiast diody zenera 8V2 moge dac 9V1 ?? :)
  • #11
    szymtro
    Level 30  
    Oczywiście. Ta dioda jest poto aby zabezpieczyć kondensator 100nF przed przebiciem i uszkodzeniem. Śmiało dawaj taką jaką masz. Kondensatory ceramiczne zwykle wytrzymują 63V ale uwaga - niektóre mają sporo niższe napiecie - jest to i tak sporo ponad 12V więc nic sie nie stanie.
    Tranzystor w brew pozorom wytrzymuje 30V (mozna dac taki 50V) ale tu chodzi o napięcia C-E i nie ma nic wspólnego z napieciem bazy (tu jest max 0,65V - no chyba ze uszkodzi go wysoki prąd bazy - ale tu sie nie wydarzy aż do kilku kv - inaczej: prędzej uszkodzą się rezystory niż padnie baza tranzystora - przynajmniej w tym układzie).
    Takze można modyfikować wszystko na tym schemacie - ale uwaga: autor przetestował z takimi parametrami i są one sprawdzone do tego zastosowania. Polecam pomysł andy'iego.
  • #12
    Katowiczanin
    Level 12  
    Dzieki za odpowiedz :). Jeszcze jedno mnie zastanawia...Czy rezystor R4 i napiecie Vcc podawane na kolektor tranzystora jest potrzebne ?? Ja generowalem impulsy na porcie LPT...nastepnie przez rezystor podawalem na baze tranzystora, emiter na mase a kolektor na wejscie INT0 i dzialalo super. Byłbym wdzieczny jakby ktos mi jeszcze wyjasnil poco to napiecie podawane na R4. Z gory dzieki <piwo>

    Pozdrawiam !!
  • #13
    bolek
    Level 35  
    R4 to taki zdrowy zwyczaj ;) Wydajnośc prądowa portu w stanie wysokim to ok 20uA, więc bardzo łatwo (niewielkim prądem) ustawić tam stan niski.

    ale jeśli działa to powinno być ok
  • #14
    Katowiczanin
    Level 12  
    zmontowalem uklad, podpiołem do maluszka i pokazuje dwukrotnie wiecej. Przyjołem ze 1 impuls to 1 obrót silnika.

    Dodano po 1 [godziny] 33 [minuty]:

    Tak wyglada moj program, w sumie nie zadelarowalem na jakie zbocze ma reagowac licznik moze to byc przyczyną ???

    Code:
    $regfile = "89s8252.dat"
    
    $crystal = 16000000
    $large


    Config Lcdpin = Pin , Db4 = P0.4 , Db5 = P0.5 , Db6 = P0.6 , Db7 = P0.7 , E = P3.5 , Rs = P3.6
    Config Lcd = 16 * 2
    Cursor Off
    Cls

    Dim Tempo As Byte
    Dim Obroty As Integer


    Config Timer1 = Timer , Gate = Internal , Mode = 1
    Config Timer2 = Counter , Gate = Internal , Mode = 1

    Enable Interrupts
    Enable Timer1
    Enable Timer2
    On Timer1 1s

    Counter2 = 0
    Start Counter2

    Counter1 = 14336
    Start Timer1


    '-------------------------------------------------
    Declare Sub Program_glowny

    Tempo = 0
    '-----------------program glowny-----------------

    Start Timer1
    Program_glowny
    End

    Sub Program_glowny
    Do

    Locate 1 , 1
    Lcd Obroty

    Loop
    End Sub
    '------------------------------------------------

    1s:
    Counter1 = 14336

    Start Timer1

    Incr Tempo

    If Tempo = 26 Then
    Obroty = Counter2
    Counter2 = 0
    Start Counter2
    Tempo = 0
    End If

    Return
  • #15
    Warhard
    Level 12  
    Witam niewiem czy temat jest jeszcze aktualny.

    Ale przyczyna jest taka że prawdopodobnie opadające zbocze w Pana przypadku jest dosyć szerokie przez co procesor interpretuje dwa przerwania na zboczu opadającym a nie jedno.
    Symulacja przeprowadzona programikiem jest pokazana w warunkach idealnych jak ktoś wcześniej opisał w poście, i tak naprawdę niema takiego stromego zbocza.
    W Pana przypadku proponuje zmienić troszke wartości układu przekształcającego impulsy. Napewno kondesatro powinien byc dużo mniejszy niż 220nF ja bym wstawił koło 10nF albo jeszcze mniejszy.
    Co do rezystorka R4 to jest rezystorek podciągający i niejest prawdą iż w tym wypadku zwiększa wydajność prądową portu. Nieznam na tyle at89s8252 ale być może ma on już wsobie rezystory podciągające.
    pozdrawiam
  • #16
    nasiono
    Level 17  
    Ja zrobiłem kiedyś taki obrotomierz który działał tak, że do uP był podpięty czujnik Halla i przyczepiony był on do krańcowego kabla od świecy działało to bez problemu i wymagało minimum elementów dodatkowych.
    Pozdrawiam.
pcbway logo