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

[Bascom] Pomiar obrotów wentylatora

wiewioor222 30 Mar 2012 22:30 2790 16
  • #1 30 Mar 2012 22:30
    wiewioor222
    Poziom 13  

    Witam

    Od jakiegoś czasu próbuje napisać program(na atmege8) który by mierzył mi obroty wentylatora.
    Posiadam wentylator od laptopa 5v 4Pin. Wentylator steruje Pwm.
    Przeszukałem chyba wszystko na forum i nie znalazłem konkretnej odpowiedzi na mój problem. Pisałem już program który wykorzystuje do zliczania wejście Int0, również konfigurowałem timer0 jako counter, Edge na zbocze rosnące lub opadające i na wejście T0 podawałem impuls z żółtego kabelka lecz ciągle nic. Wklejałem również programy z forum te bardziej i mniej poprawne np.

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod


    Korzystałem również z takiego kody i dalej nic albo wywala mi jakieś przypadkowe liczby albo 0
    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod


    Czy ktoś mógłbym mnie nakierować lub posiada coś podobnego bym mógł zrozumieć jak to napisać??

    Zauważyłem jeszcze ze gdy używam
    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod


    to zlicza mi w koło nawet bez podpiętego sygnału

    Pozdrawiam

    0 16
  • #3 06 Kwi 2012 18:21
    wiewioor222
    Poziom 13  

    Niestety żaden nie działa program.
    Pierwszy program z linku wywala mi same syfy ogólnie jak sie kręci to ciągle mi daje 0 30 lub 60 jak przykładam rękę do żółtego kabla daje 750 780 jak odlutuje kabel daje mi tyle samo 750 780.

    Ostatni działający podobno program daje mi ciągle 0 tylko jak silnik kreci sie szybciej to szybciej wskakują 0 a jak wolniej to wolniej wskakują 0.

    Gdy wstawiłem by mi wyświetlało wartość W1 przed IF W1>1000
    To przy zerowych obrotach wskazuje mi 2 przy najszybszych 105 i ogólnie im wolniej tym więcej obrotów

    0
  • #4 06 Kwi 2012 19:32
    sulfur
    Poziom 24  

    A możesz pokazać schemat, jak podłączyłeś ten wentylator (możesz ewentualnie z grubsza opisać układ połączeń) ? Rozumiem, że jest to wentylator komputerowy?
    P.S. Od razu Ci napiszę, że podejrzewam, że podłączyłeś żółty kabel bezpośrednio do uC, a tam jest 12V.

    0
  • #5 06 Kwi 2012 19:35
    wiewioor222
    Poziom 13  

    Ogólnie to wentylator pc z laptopa wiec 5v(wynika z opisu DC05) zasilanie ciągnie z usb a żółty kabel wpięty do oc1b do oc1 a ciągnę niebieski kabel Pwm gdyż jest to wentylator 4pin

    zmierzyłem napięcie na żółtym kablu i waha się miedzy 2,5 a 3,5 v

    [Bascom] Pomiar obrotów wentylatora

    0
  • Pomocny post
    #6 06 Kwi 2012 19:54
    sulfur
    Poziom 24  

    Taki pomiar nic Ci nie da. Wentylator komputerowy daje 2 sygnały na obrót. Mój 4pin obraca się z prędkością 600 rpm przy PWM=0% oraz około 2k przy PWM=100%. Jestem przekonany, że sygnał z impulsatora idzie na 12V. Wstaw rezystor i diodę zenera w odpowiedniej konfiguracji. Z BASCOMem Ci nie pomogę, ale pamiętaj, że np 600 obrotów jest na minutę, a Ty pomiar pewnie chcesz robić co sekundę. Trzeba więc dać odpowiedni mnożnik.

    0
  • #7 06 Kwi 2012 20:00
    wiewioor222
    Poziom 13  

    postaram się jutro wstawić diodę i rezystor, i zobaczę jak będzie

    0
  • #9 06 Kwi 2012 21:02
    wiewioor222
    Poziom 13  

    zaraz przejrzę dokument, ogólnie wstawienie diody i rezystora nic nie dało.

    Dodano po 2 [minuty]:

    Akurat odrazu wszedłem w specyfikacje i to jest opisany wentylator i sterowanie pwm ale wentylatorem 12v mój jest 5v dlatego nie jestem pewien. wiem ze to co mierze miernikiem to wartość średnia ale jak mierze normalny wentylator Pc od stacjonarnego 12v to na zółtym jest wartość średnia 8v

    0
  • Pomocny post
    #10 06 Kwi 2012 21:37
    arktik1
    Poziom 27  

    Podłącz to przez tranzystor i będzie ok.
    [Bascom] Pomiar obrotów wentylatora

    0
  • #11 06 Kwi 2012 23:29
    wiewioor222
    Poziom 13  

    Jaki jest sens podłączania przez tranzystor skoro mój wentylator jest na 5v

    Dodano po 22 [minuty]:

    podłączyłem i nie działa niestety

    0
  • Pomocny post
    #12 07 Kwi 2012 07:47
    sulfur
    Poziom 24  

    wiewioor222 napisał:
    przykładam rękę do żółtego kabla daje 750 780 jak odlutuje kabel daje mi tyle samo 750 780
    To sugeruje, że nie masz podciągania do napięcia zasilania. W dokumencie, który Ci wkleiłem jest napisane, że płyta główna powinna mieć rezystor podciągający.

    Wartości 30 lub 60 mogą być prawidłowe pod warunkiem, że pomiar został wykonany w jedną sekundę. Jak podzielisz zmierzoną wartość na dwa (bo masz dwa sygnały na obrót) to otrzymasz ilość obrotów w czasie jednej sekundy. Później jak pomnożysz tą wartość razy 60 to otrzymasz ilość obrotów na minutę, czyli rpm.
    Wyjdzie więc
    30/2*60 = 900 rpm
    60/2*60 = 1800 rpm

    0
  • #13 07 Kwi 2012 11:23
    wiewioor222
    Poziom 13  

    ja to rozumiem ale to były wahania ze raz dawał 0 potem następny 30, a następny pomiar 60...
    0
    0
    30
    60
    60
    0
    30
    trochę duża rozbieżność...
    zlutuje to jeszcze raz zobaczę co się będzie działo

    Dodano po 2 [godziny] 26 [minuty]:

    Wywaliłem tranzystor wstawiłem sam rezystor podciagajacy .
    załadowałem program

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod


    i ruszyło ale trochę słaba dokładność bo około 100 obrotów lecz jak ustawie
    wait 10 i timer0 *3 to pokazuje mi bardzo małe obroty około 180 przy najwyższych obrotach i im bardziej wydłużę czas pomiaru tym mniejsze obroty

    0
  • Pomocny post
    #14 07 Kwi 2012 11:38
    sulfur
    Poziom 24  

    Tzn mam nadzieję, że masz tylko rezystor podciągający i impulsator podłączony bezpośrednio do pinu mikrokontrolera. Zgadza się ?

    0
  • #15 07 Kwi 2012 13:51
    wiewioor222
    Poziom 13  

    tak

    Dodano po 2 [godziny] 2 [minuty]:

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod


    Napisałem coś takiego są małe wahania ale powiedzmy jak max obroty mam 3720
    to średnio co 20 pomiarów wskakuje mi 60 obrotów mniej.

    Wiec w sumie układ działa lecz zastanawiam się czy gdybym zamiast wait dał odmierzanie na Timer0 to czy, to by nie było dokładniejsze..
    Bądź czy są jakieś dokładniejsze pomiary oczywiście programowe bez stosowania fotodiod itp. Zastanawiam się czy te skoki to tez nie wina wentylatora, czy są one dokładne, czy dokładne jak na domowe zastosowanie czyli tylko informują ze wentylator kreci się około 4tys rmp.

    0
  • #16 07 Kwi 2012 14:14
    sulfur
    Poziom 24  

    To jest dokładne, tylko zauważ, że pomiar następuje w czasie jednej sekundy i wynik idzie *30. Oznacza to, że w czasie sekundy zliczono 2 impulsy więcej. Co 20 pomiarów. Możesz obroty mierzyć co 5 sekund. Wtedy powinno być stabilniej, ale na cuda nie licz. W skrajnym wypadku mierz obroty faktycznie w jednej minucie, ale odświeżanie będzie kiepskie. Tak to niestety działa.

    0
  • #17 07 Kwi 2012 16:12
    wiewioor222
    Poziom 13  

    Minutowy pomiar
    4204
    4259
    4254
    4250
    4240
    4231
    4237
    4231
    4201
    4198
    Zastanawiam od czego to jest zależne skoro pomiar jest "dokładny" to takie błędy możne wnosić wentylator? bo nie wiem jak wyglądają inne projekty na takich wentylatorkach.

    Dodano po 1 [godziny] 27 [minuty]:

    W sumie nie ma co grzebać uśrednię jakoś te obroty z 10-20 pomiarów i powinno być ok.
    Zrobiłem by dodawało pełne obroty a nie impulsy, czyli zlicza po dwa impulsy.
    Dzięki wielkie wszystkim za pomoc "pomógł" już rozdałem
    Pozdrawiam

    0
  Szukaj w 5mln produktów