Witam
Chciałbym się zapytać jak można mierzyć prędkość na avr.
Chciałem zrobić licznik rowerowy na attiny2313 i lcd 2x8 mam akurat kontrakton od starego licznika i dla ułatwienia mógłbym go umieścić w tym miejscu w którym kółko robi 1m, tylko jak napisać program, chciałem zrobić że kiedy flaga 1s jest równa 1 wtedy zwiększ zmienna i prędkosc = zmienna x3.6 ale to kiepski pomysł i mam pytanie czy ktoś mógłby napisać kawałek kodu odpowiedzialny za pomiar i konwersje predkości do km/h czujnik dla ulatwienia bedzie ustawiony na wysokości kiedy 1impuls=1metr.
Z góry bardzo dziękuję
Re: Licznik
Można mierzyc impulsy w okeślonym czasie lub czas między impulsami, z czego pomiar czasu między impulsami wydaje mi się lepszym rozwiązaniem. To gdzie umieścisz czujnik na kole nie ma najmniejszego znaczenia, lepiej umieścić go mozliwie blisko osi żeby prędkość liniowa magnesu nie była duża (ułatwi to odczyt, reakcje kontaktronu).
Ważny jest dokładny pomiar obwodu koła wraz z oponą, przeważnie jest to około 2,14m, jeśli zarejestrujesz jeden impuls to znaczy że rower przebył dokładnie drogę obwodu koła. jeśli zliczysz impulsy w czasie kilku sekund to podzielisz 2,14m*impulsy przez czas i otrzymasz prędkość w m/s potem *3,6 i jest km/h.
Lepszym pomysłem wydaje mi się pomiar czasu między impulsami... wtedy dzielisz 2,14m przez ten czas w sekundach i masz prędkość roweru, z tym że dokładność pomiaru czasu jest znacznie większa, bo np dla 70km/h będzie to czas 100ms co nie jest problemem do pomiaru, za to jeśli w czasie sekundy zrobi ci się raz 5 impulsów a raz 6 jadąc z prędkością dającą taki niepewny odczyt to prędkośc uzyskasz zmieniającą się 38 do 46 km/h
----
W wolnej chwili napiszę ci parę linijek kodu... ale narazie sam pokombinuj.... Nie wiem jak będzie wyglądała sprawa ze zużyciem energii i drganiami podczas pracy więc jaki masz dokładnie cel robiąc swój własny licznik a nie kupując gotowego?
:: Zapoznaj się z regulaminem :: Załóż konto! :: Wesprzyj rozwój strony
Czyli mam zrozumieć że do
Czyli mam zrozumieć że do wykrycia impulsu mam użyć licznika w trybie counter a drugi w trybie timer i preskaler dac tak aby mierzyl czas rzedu kilka us ale jak dokladnie
zrobic to
napisz tylko jakis kawaleczek zebym mogl bardziej kombinowac.
A licznik robię na lekcje mieliśmy zadanie i pomyślałem że zrobię taki prędkościomierz razem z termometrem ds1820 i dam go siostrzeńcowi który mówił żeby zrobić mu licznik w jakieś fajnenj obudowie, zasilanie będzie z baterii 9v a kiedy licznik nie wykryje impulsu przez np 30 sekund to przejdzie do powerdown czy powersave nie pamiętam dokładnie.
Re: Licznik
Nie trzeba używać liczników w trybie counter... ja bym wykorzystał przerwanie zewnętrzne i timer skonfigurowany na przerwania co 1ms... Timer zwiększa zmienną co 1ms, jeśli wykryje impuls to na podstawie tej wartości oblicz prędkość, czas w ms to ilość impulsów z timera, potem zeruje zmienną. Taka prosta metoda daje dokładność do 1ms i to wystarczy
Mówię tutaj o pomiarze czasu między impulsami a nie o pomiarze impulsów, program poniżej dla attiny 2313, wejściem kontaktronu jest PD.2 (wejście INT0), piny do LCD musisz sobie sam pozamieniać
:: Zapoznaj się z regulaminem :: Załóż konto! :: Wesprzyj rozwój strony
Bardzo dziekuje za ten
Bardzo dziekuje za ten kawalek rzeczywiście bardzo proste czyli 2,14 mam sobie dostosować do własnych potrzeb tak jaki mam obwód koła, a wyświetlanie na lcd mogę sobie przenieść gdzie indziej do programu, i ostatnie pytanie gdzie najlepiej umieścić kontrakton przy osi czy przy oponie?
Quote:gdzie najlepiej
Tam gdzie pasuje. Niby im wyżej (bliżej opony), tym lepiej, ale zazwyczaj odległość od widelca jest tam większa, wiec może być zakłócony odbiór.
odległość
Mirley juz o tym pisął! Najlepiej umieścić kontaktron blisko osi obrotu, że względu na mniejszą prędkość liniowa magnesu nie była za duża. A czym mniejsza prędkość liniowa tym 'pewniejszy' bedzie odczyt.
Quote:Najlepiej umieścić
Hmm ciekawe, ale z tego co pamiętam, w instrukcjach liczników zawsze było napisane, żeby umieszczać jak najbliżej opony...
kontaktron
Ze względów fizycznych stabilniej będą pracowały bliżej osi. Jednak długość 'przelatywania' magnesu przy kontaktronie też może mieć wpływ. Im bliżej osi obrotu to odczyt jest stabilniejszy ale dłuższy, a czym dalej to traci się na stabilności, a zyskuje na szybkości impulsu... Z tego wszystkiego można wywnioskować, ze najlepiej całośc bedzia działała pomiędzy, czyli w połowie odległości od ośki do opony:-).
Zrobiłem ten licznik dodałem
Zrobiłem ten licznik dodałem pomiar temperatury i działa kontrakton dałem mniejwięcej w połowie i działa dobrze a i siostrzeniec zadowolony, dzięki mirley za pomoc.
Aha mam jeszcze jedno pytanie
Aha mam jeszcze jedno pytanie nie związane z licznikiem, chciałbym wykonać sobie zasilacz beztransformatorowy i pytanie po co w tych zasilaczach kondensator przed mostkiem skoro i tak nie robi ochrony galwanicznej układu i jakiej mocy musiała by być zenerka żeby pobrać 5A.
Quote:Zrobiłem ten licznik
Z ciekawości - możesz pokazać zdjęcia?
Sio na forum ( http://mirley.firlej.org/forum ) z tym pytaniem
Zdjecia narazie nie dam bo
Zdjecia narazie nie dam bo dosc popsulem obudowe ale jak to poprawie to napewno dam
Post new comment