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

[m8][bascom] pomiar prędkości kontaktronem

Ficu 10 Sie 2011 17:21 6940 32
  • #1 10 Sie 2011 17:21
    Ficu
    Poziom 31  

    Witam,
    potrzebuje w najprostszy sposób zrobić pomiar prędkości przy wykorzystaniu czujnika (kontaktronu) który jest używany w licznikach rowerowych. Układ ma załączać diodę przy osiągnięciu prędkości np 30km/h. Dokładność jaka mnie interesuje to ok +-5km/h. Pytanie jest której funkcji najlepiej użyć aby zliczać obroty koła? Kontaktron jest normalnie otwarty, może zwierać do VCC/GND.
    Po zliczeniu obrotów podstawię dane do wzoru: prędkość = [obwód koła (opony) * ilość obrotów]/czas.

    Pozdrawiam

    0 29
  • Sklep HeluKabel
  • #4 10 Sie 2011 21:08
    Ficu
    Poziom 31  

    piotrva napisał:
    Cóż, niestety ale o ile to klasyczny kontaktron to przy wyższych obrotach może być zbyt powolny. Lepiej wykorzystać jakiś hallotron - cena porównywalna.

    To czemu licznik rowerowy działa bez problemu nawet przy prędkości 100km/h?
    Myślę że jest wystarczający.

    0
  • #5 10 Sie 2011 21:43
    Press
    Poziom 22  

    Ficu napisał:
    piotrva napisał:
    Cóż, niestety ale o ile to klasyczny kontaktron to przy wyższych obrotach może być zbyt powolny. Lepiej wykorzystać jakiś hallotron - cena porównywalna.

    To czemu licznik rowerowy działa bez problemu nawet przy prędkości 100km/h?
    Myślę że jest wystarczający.


    Bo kontaktrony w licznikach rowerowych są jakieś szybsze. Robiłem kiedyś eksperymenty z rowerem i faktycznie zwykłe kontaktrony "rurkowe" nie nadążały się przełączać.

    0
  • #6 10 Sie 2011 21:48
    Ficu
    Poziom 31  

    Press napisał:
    Ficu napisał:
    piotrva napisał:
    Cóż, niestety ale o ile to klasyczny kontaktron to przy wyższych obrotach może być zbyt powolny. Lepiej wykorzystać jakiś hallotron - cena porównywalna.

    To czemu licznik rowerowy działa bez problemu nawet przy prędkości 100km/h?
    Myślę że jest wystarczający.


    Bo kontaktrony w licznikach rowerowych są jakieś szybsze. Robiłem kiedyś eksperymenty z rowerem i faktycznie zwykłe kontaktrony "rurkowe" nie nadążały się przełączać.

    I właśnie takiego używam.

    0
  • Sklep HeluKabel
  • Pomocny post
    #8 11 Sie 2011 00:45
    dondu
    Moderator Mikrokontrolery Projektowanie

    Jeżeli dobrze policzyłem to dla kół 28" 100km/h to 12,6 obrotów/s czyli 12,6Hz.
    Nie powinno więc być większych problemów z kontaktronem.

    0
  • #9 11 Sie 2011 00:52
    gaskoin
    Poziom 38  

    Wydaje mi się, że rzadko kiedy się popyla z taką prędkością, chyba, że z przepotężnej górki albo z silnikiem :)

    0
  • Pomocny post
    #10 11 Sie 2011 08:48
    tmf
    Moderator Mikrokontrolery Projektowanie

    Ja bym jednak wymienił kontaktron na czujnik halla, sygnał z kontaktronu trzeba kondycjonować, zrobić eliminację drgań, a ciągle zostajemy z zawodnym elementem mechanicznym. Wyjście z cz. halla (i po odpowiednim filtrowaniu z kontaktronu) wystarczy podłączyć pod pin ICP procesora i mierzyć wsp. wypełnienia. Z tego masz w prosty sposób prędkość.

    0
  • Pomocny post
    #11 11 Sie 2011 09:17
    snnaap
    Poziom 25  

    Cytat:

    Bo kontaktrony w licznikach rowerowych są jakieś szybsze. Robiłem kiedyś eksperymenty z rowerem i faktycznie zwykłe kontaktrony "rurkowe" nie nadążały się przełączać.


    Pierwszy z brzegu kontaktron KA-02 ze sklepu na literę T przy napięciu 5V i i prądzie 100mA ma częstotliwość przełączania 125Hz.
    Czas załączania do oporu 1Ohma wynosi ok 2,5 ms
    Czas odpuszczenia to ok 1 ms.

    Jest to zwykły kontaktron rurkowy za 2,99 + VAT ;)

    Reasumując, zdaje mi się że nie ma powodów do obaw stosując takie "cudo" - no chyba że jesteś szalony i przekraczasz prędkość 190 m/s, nie wiem czy wtedy patrzy się jeszcze na licznik.

    A wracając do tematu zdaje mi się że liczniki rowerowe zliczają ilość impulsów w jednostce czasu. Z tego co pamiętam mój licznik z jakiegoś supermarketu odświeżał się co 1 sek podając aktualną prędkość. Minimalną prędkość jaką pokazywał wynosiła ok 8 km/h (dokładność licznika nie powalała, no ale czego można było się spodziewać za 10 zł)

    Wykonanie nr 1:
    Konfigurujesz timer aby się przepełniał co 1 sek a dla większej dokładności na co 2 sek. Sygnał z kontaktronu podajesz na INT0.
    Przy każdym przerwaniu z INT instrumentujesz zmienną odpowiedzialną za zliczanie obrotów.
    Przy przepełnieniu timera ilość obrotów mnożysz przez obwód koła w cm mnożysz przez 3,6 i masz wynik w km/h. Następnie zerujesz licznik obrotów. I tak w kółko.

    Wykonanie nr 2:,
    Sygnał z kontaktronu podajesz na INT0. Przy pierwszym przerwaniu od INT włączasz timer przy drugim wyłączasz timer. Znając czas obrotu i wielkość koła obliczasz prędkość.

    0
  • #12 11 Sie 2011 09:59
    tmf
    Moderator Mikrokontrolery Projektowanie

    snnaap napisał:

    Wykonanie nr 2:,
    Sygnał z kontaktronu podajesz na INT0. Przy pierwszym przerwaniu od INT włączasz timer przy drugim wyłączasz timer. Znając czas obrotu i wielkość koła obliczasz prędkość.


    Czyli niepotrzebnie robisz programowo to co procesor ma zaimplementowane sprzętowo - a nazywa się to właśnie ICP.
    IMHO tylko pomiar wsp. wypełnienia ma sens, przy 12Hz rozdzielczość pomiaru polegającego na integracji w czasie 1-2s jest żałosna.

    0
  • #13 11 Sie 2011 10:22
    snnaap
    Poziom 25  

    tmf napisał:
    Czyli niepotrzebnie robisz programowo to co procesor ma zaimplementowane sprzętowo - a nazywa się to właśnie ICP.


    Napisałem tylko wstępny algorytm, nie opisywałem sposobu zaimplementowania tego w uK. Można to zaimplementować na kilka sposobów. Nie twierdze że nie można tego zrobić za pomocą ICP.

    tmf napisał:
    MHO tylko pomiar wsp. wypełnienia ma sens, przy 12Hz rozdzielczość pomiaru polegającego na integracji w czasie 1-2s jest żałosna.


    Z tego co czytam w pierwszym poście oraz tego jakie środki kolega Ficu chce wykorzystać do pomiaru prędkości

    Ficu napisał:
    Witam,
    potrzebuje w najprostszy sposób zrobić pomiar prędkości przy wykorzystaniu czujnika (kontaktronu) który jest używany w licznikach rowerowych.


    nie wydaje mi się, że zależy mu na wielkiej rozdzielczości, no ale mogę się mylić.
    Wiadomo, że podany przeze mnie wariant nr 1 jest kiepskim rozwiązaniem ale pozwala w łatwy sposób wykonać zadanie.

    Pragę zauważyć że autor nie podał szczegółowych danych i wymagań co do projektu.

    Przydałoby się wiedzieć jaka jest maksymalna, minimalna prędkość, dokładność itp.

    Pozdrawiam

    0
  • #14 11 Sie 2011 12:54
    Ficu
    Poziom 31  

    Napisałem że dokładność może być +-5km/h. Chętnie zastosuje czujnik halla, podajcie mi tylko jakiś konkretny model oraz jakie magnesy. Prędkość maksymalna do ok 100km/h ale tak jak napisałem przy ok 40 km ma się włączyć dioda a jak prędkość spadnie to ma się wyłączyć. Koło ma 13" - skuterowe.

    Tu mam gotowca w sumie: http://portalnaukowy.edu.pl/obrotomierz.htm

    0
  • Pomocny post
    #15 11 Sie 2011 12:57
    dondu
    Moderator Mikrokontrolery Projektowanie

    Ficu napisał:
    Koło ma 13" - skuterowe.

    To ledwie 28Hz dla 100km/h, więc nadal kontaktron da radę. Ale hallotron to hallotron :)

    0
  • Pomocny post
    #18 11 Sie 2011 14:43
    tmf
    Moderator Mikrokontrolery Projektowanie

    Tak, podany czujnik Halla jest zupełnie ok, co do magnesu - masz dla niego podany próg zadziałania w mT, wiedząc jaką masz odległość czujnik-magnes dobierzesz sobie odpowiedni, może niekoniecznie musi być neodymowy :)

    0
  • Pomocny post
    #20 11 Sie 2011 15:17
    dondu
    Moderator Mikrokontrolery Projektowanie

    Dwa? W jakim sensie?
    Jeżeli chodzi Ci o ich rozmieszczenie na kole w 2 miejscach to ma to sens gdy chcesz mieć dokładniejsze pomiary przy malutkich prędkościach. Wtedy można dać nawet więcej. Ty o tym decydujesz.

    0
  • #22 11 Sie 2011 15:26
    Ficu
    Poziom 31  

    Właśnie przeglądałem kilka projektów i często były stosowane po 2 magnesy. Mi dokładność duża nie jest potrzebna więc wybieram jeden.

    Zamówienie złożone, jutro będę brał się za program.

    0
  • #23 21 Wrz 2011 15:32
    Ficu
    Poziom 31  

    W końcu udało mi się wszystko złożyć ale niestety instalacja skutera "sieje" ostro i wskazania są błędne. Świeca mam wewnętrzny opornik ale zakłóceniami nadal sieje. Może jednak lepiej powrócić do kontaktrona? Ewentualnie jak odseparować dane pożądane od zakłóceń?
    [m8][bascom] pomiar prędkości kontaktronem

    0
  • #25 21 Wrz 2011 16:08
    Ficu
    Poziom 31  

    Oscyloskopu nie posiadam, jedyne co wiem to że wartość obrotów skacze do liczb trzycyfrowych - mam podłączony wyświetlacz 2x16.

    0
  • #27 21 Wrz 2011 18:26
    xamrex
    Poziom 28  

    Dołączę się do tematu

    Ficu napisał:
    Magnesy muszą być dwa czy jeden wystarczy?

    piotrva napisał:
    Wystarczy 1

    To teraz mnie zmyliliście
    Tutaj:
    http://portalnaukowy.edu.pl/obrotomierz.htm
    Czytamy:
    Cytat:
    TLE 4905g. Jest to malutki układzik scalony, który reaguje na obecność pola magnetycznego w ten sposób, że jeśli wykryje jeden z biegunów pola magnetycznego otwiera swój tranzystor w stopniu wyjściowym i dopiero jak wykryje przeciwny przywraca go do stanu poprzedniego.

    dalej..
    Cytat:
    Wybrałem ten układzik dlatego, że na obracającym się wałku wystarczy umieścić przynajmniej dwa malutkie magnesiki


    Więc jak to jest?

    0
  • #28 21 Wrz 2011 18:59
    kiziu13
    Poziom 16  

    Możesz tak ustawić magnes, żeby bieguny nie były "przód-tył" (patrząc na obracający się przedmiot od osi obrotu) tylko "lewo-prawo", wtedy dostaniesz krótki impuls kiedy magnes minie hallotron. Jeśli będziesz chciał wydłużyć impuls, to trzeba dwa magnesy, albo jeden długi. Ewentualnie może są takie hallotrony, które wykrywają nie zmianę biegunowości, ale zmianę w sile pola magnetycznego.

    0
  • #29 21 Wrz 2011 19:17
    Ficu
    Poziom 31  

    Program raczej na pewno jest ok ponieważ na biurku działa bez problemu.

    Załóżmy że zrobię oscyloskop z wzmacniaczem operacyjnym - kit avt2767, nawet będzie działał to wtedy jak mam zmierzyć te zakłócenia? - pytanie może banalne ale oscyloskop widziałem tylko na obrazku.

    0
  • #30 22 Wrz 2011 07:43
    emarcus
    Poziom 35  

    xamrex napisał:
    Dołączę się do tematu

    Czytamy:
    Cytat:
    TLE 4905g. Jest to malutki układzik scalony, który reaguje na obecność pola magnetycznego w ten sposób, że jeśli wykryje jeden z biegunów pola magnetycznego otwiera swój tranzystor w stopniu wyjściowym i dopiero jak wykryje przeciwny przywraca go do stanu poprzedniego.


    Więc jak to jest?

    Autor tego cytatu niepoprawnie podaje właściwości tergo układu (TLE4905G).
    Albo nie doczytał dokładnie, albo jego referencje odnoszą sie do innej części w Datasheet omawiający inny układ.
    Zgodnie z Datasheet ten 'hall effect switch' jest układem unipolarnym, to znaczy nie musi wystąpić odmiennej biegunowości pole magnetyczne aby uzyskac pełna funkcjonalność układu. Wystarczy że dodatnia (S) indukcja pola magnetycznego wzrośnie powyżej określonego progu (Bop), tranzystor wyjściowy wchodzi w stan przewodzenia. Przy zmniejszaniu indukcji magnetycznej (w dalszym ciągu jesteśmy w tej samej polaryzacji) zaobserwujemy że rozłączenie tranzystora nastąpi przy nieco innej wartości indukcji (Brp). Różnica tych dwóch "progów" jest histerezą (Bhy) układu.
    Referencje autora 'pasuja' do troche odmiennych układów (omawianych również w tymsamym DS), które są bipolarnymi (TLE4935/TLE4945). W tych układach musi nastąpić zmiana biegunowości (polaryzacji) pola manetycznego.

    Różnica jest widoczna na diagramach st.r 9 w datasheet.

    Są także dostępne układy (A3213/3214) działające podobnie, również unipolarne, lecz działające na zmiany dowolnejej polaryzacji indukcji magnetycznej (nie tylko dodatniej).
    Cytat:


    Więc jak to jest?


    Potrzebujesz tylko jeden magnes lecz usytuowany wzgłędem 'sensora' prostopadle do jego powierzchni. Jest bez znaczena czy magnes jest zbliżany do sensora, czy jest obok niego przesuwany. W innych rozwiązaniach oba elementy: sensor i magnes są stacjonarne a między nimi stosuje się tarczę metalową (ferromag.) z wycięciami (daisy wheel) podobnie jak w myszce optycznej.

    Przy podłączaniu takiego układu należy pamietać że jest to OC (open collector), lub open drain dla innych. Przykłady są w datasheet.
    Sygnał wyjściowy może być podłączony bezpośrednio do weścia uC.

    e marcus

    0