Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Witam.
Jeżdżąc na motocyklu doszedłem do wniosku że przydał by mi się wskaźnik aktualnie włączonego biegu. No i tak narodził się pomysł żeby sobie skonstruować takie urządzenie i dołożyć do niego dwie przydatne opcje, zegarek i licznik przejechanych kilometrów ponieważ zegary jakie mam w swojej hondzie cb 500 są wyskalowane w milach a do tego zerowanie przebiegu jest uszkodzony.
Czyli miałem już plan zęby wykorzystać wyświetlacz 2x8 z bursztynowym podświetleniem który będzie wyświetlać:
- aktualny bieg
-zegarek
-przebyty dystans
Wszystko to zrealizowane będzie na uC atmega8
Zostało wymyślić dobre miejsce na umieszczenie tego wyświetlacza.
Wymyśliłem sobie że będzie się on znajdował nad zegarami w ręcznie zrobionej obudowie:
Pozostało wykombinować jak to zrobić, no i zaczęła się zabawa w wycinanki z kartonu, zabawa żywicą epoksydową , szpachlówką, podkładem a w późniejszym czasie sprajem czarny mat :
Kartonowych wersji obudowy powstało kilka aż doszedłem do ostatecznych wymiarów.
Wyświetlanie informacji będzie się odbywało w 3 trybach:
1:
zegarek
bieg
2:
dystans
zegarek
3:
bieg
dystans
Wszystko będzie przełączane mikro stykiem wykonanym z klawisza pilota, drugi będzie służył do resetu przebytego dystansu :
Wykrycie zmiany biegu będzie realizowane na dwóch kontaktronach które będą wykrywały ruch dźwigni zmiany biegów a sygnał z czujnika luzy do resetu wskaźnika, dzięki temu będzie możliwość wykrycie luzu zamiast redukcji z 2 na 1 bieg lub na odwrót.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
A pozostałe biegi ? - trzy ruchy dzwignią w górę, wystarczy je zliczać. Tak nota bene rozwiązany jest wskaźnik zapiętego biegu w wiekszości ,,Chinoli" :D
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Pytanie zasadnicze, czy ten skonstruowany układ przeszedł już jakieś testy eksploatacyjne, czy to są tylko zamierzenia i "pobożne życzenia", a obudowa i wygląd już dość dokładnie zostały określone, niejako na zapas.
Rozwiązanie wskażnika biegów w motocyklu nie jest takie proste, było już kilka tematów o tym na elektrodzie. Jezeli do określenia biegu są wykorzystywane kontaktrony, to nie potrzebna jest duża komplikacja w postaci procesora.
Dla porównania podam, jak to można rozwiązać w samochodzie:
http://www.elektroda.pl/rtvforum/topic586433.html Problem z motocyklem jest taki, że niema bezpośredniego dostępu do mechanizmu zmiany biegów (trzeba sie dobierać do wnętrza skrzyni biegów), a gdy takiego dostępu niema, trzeba mierzyć prędkość motocykla i prędkość obrotową silnika, aby uzyskać wartości potrzebne do wyświetlenia aktualnego biegu.
Oczywiście najlepszym, nie przekłamującym rozwiązaniem będzie skonstruowanie wskażnika biegu w oparciu o polożenie widełek/dżwigni przesuwających koła zębate. Wszystkie inne rozwiązania bedą obarczone błędem pomiarowym, i nie dadzą wskazania biegu gdy nie pracuje silnik, lub gdy motocykl nie porusza się.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Wymyślenie sposobu zrobienia obudowy i wykonanie jej jest trudniejsze od wykonanie i dopracowanie układu elektronicznego ponieważ nigdy nie robiłem takie rzeźby z kartonu i żywicy dla tego była ona robiona jako pierwsza.
Owszem zliczanie ruchów dźwigni zmiany biegów jest obarczone możliwością błędu np. nie zawsze bieg się wbije przy redukcji stojąc na światłach na skrzyżowaniu lub podczas zabawy biegami na wyłączonym silniku i dla tego sygnał z kontrolki luzu służy nie tylko do określenia biegu jałowego ale i do resety wskazania. Rozwiązanie to nie jest idealne ale ingerencja w skrzynie biegów to zbędna poważna komplikacja a zliczanie prędkości obrotowe i prędkości jazdy też nie jest zbyt dobrym rozwiązanie i dość skomplikowane. Co do wykorzystania uC, jest na nim jeszcze realizowany zegarek i licznik przejechanych kilometrów no i sterowanie wyświetlaczem LCD i bez niego raczej nie wyobrażam sobie takiego układu :)
Tak teraz siedzę i myślę że można by też dołożyć coś w rodzaju alarmu tzn jeżeli motocykl stoi na bocznej stopce i zostanie postawiony do pianu to włączył by się klakson. Zrealizował by to na wyłączniku rtęciowym.
Dim Licz_8ms As Byte Dim Minuta As Byte Dim Godzina As Byte Dim Dystans AsInteger Dim Kilometrow AsInteger Dim Stometrow AsInteger Dim Tryb As Byte Dim Bieg As Byte
Enable Interrupts
Kilometrow =0 Stometrow =0 Tryb =2 Godzina =0 Minuta =0 Bieg =0 Enable Timer0
Load Timer0 =250 Cls Cursor Off
'włączenie wyświetlacza i podświetlenia po włączeniu stacyjki Do If Portc.5 =0Then Portb.1 =1 Display On
If Portd.4 =0And Bieg <6Then'zlicznie biegów Waitms 10 If Portd.4 =0And Bieg <6Then Incr Bieg EndIf EndIf
If Portd.0 =0And Bieg >1Then Waitms 10 If Portd.0 =0And Bieg >1Then Decr Bieg EndIf EndIf
If Portd.0 =0And Bieg =0Then'zmiana biegu z luzu ( czyli 0 ) na 1 bieg Waitms 10 If Portd.0 =0And Bieg =0Then Bieg =1 EndIf EndIf
If Portc.4 =0Then'luz Waitms 10 If Portc.4 =0Then Bieg =0 EndIf EndIf
If Portb.0 =0Then'ustawienie godziny Waitms 10 If Portb.0 =0Then Incr Godzina If Godzina =24Then Godzina =0 EndIf EndIf EndIf
If Portd.7 =0Then'ustawienie minut Waitms 10 If Portd.7 =0Then Incr Minuta If Minuta =60Then Minuta =0 EndIf EndIf EndIf
If Tryb =0Then'wyświetlenie zegarka i przebiegu
Locate1 , 4 Lcd ":"
If Godzina >9Then Locate1 , 1 Lcd Godzina EndIf
If Godzina <10Then Locate1 , 1 Lcd "0"; Godzina EndIf
If Minuta >9Then Locate1 , 6 Lcd Minuta EndIf
If Minuta <10Then Locate1 , 6 Lcd "0"; Minuta EndIf
Locate2 , 1 Lcd Kilometrow ;"."; Stometrow ;" km"
EndIf
If Tryb =1Then 'wyświetlenie biegu i zegarka If Bieg >0Then Locate1 , 1 Lcd "Bieg - "; Bieg EndIf
If Bieg =0Then Locate1 , 1 Lcd "Masz luz" EndIf
Locate2 , 4 Lcd ":"
If Godzina >9Then Locate2 , 1 Lcd Godzina EndIf
If Godzina <10Then Locate2 , 1 Lcd "0"; Godzina EndIf
If Minuta >9Then Locate2 , 6 Lcd Minuta EndIf
If Minuta <10Then Locate2 , 6 Lcd "0"; Minuta EndIf
EndIf
If Tryb =2Then'wyświetlenie przebiegu i biegu
Locate1 , 1 Lcd Kilometrow ;"."; Stometrow ;" km"
If Bieg >0Then Locate2 , 1 Lcd "Bieg - "; Bieg EndIf
If Bieg =0Then Locate2 , 1 Lcd "Masz luz" EndIf
EndIf
EndIf
If Portc.5 =1Then'Wyłączenie Wyświetlacza I Podświetlenia Po Wyłączeniu Stacyjki Portb.1 =0 Display Off EndIf Loop
End
Zegarek: 'zegarek
Load Timer0 =250 Incr Licz_8ms
If Licz_8ms =75000Then Incr Minuta Licz_8ms =0 If Minuta =60Then Incr Godzina Minuta =0 If Godzina =24Then Godzina =0 EndIf EndIf EndIf Return
Pomiar: Incr Dystans 'pomiar przejechanego dystansu, OBWÓD KOŁA 2m If Dystans =50Then Incr Stometrow Dystans =0 If Stometrow =10Then Incr Kilometrow Stometrow =0 If Kilometrow =1000Then Kilometrow =0 EndIf EndIf
EndIf
Return
Wyswietlacz: 'zmiana trybu wyświetlania If Portd.3 =0And Portd.6 =1Then Incr Tryb If Tryb =3Then Tryb =0 EndIf EndIf
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
"Myślenie ma przyszłość" to taki cytat z jakiegoś klasyka. Życzę powodzenia, i jednocześnie podpowiadam, że im rozwiązanie jest prostsze, tym bardziej skuteczne i pewniejsze w dzialaniu. Zbędna komplikacja prowadzi do nikąd, bo w końcu nic z tego nie wyjdzie. To jest dokładnie tak, jak ze scyzorykiem o 20 funkcjach. W koncu niema w nim żadnego porządnego narzędzia, nawet śrubokręta, ani noża.
Skonstruowalem i wykonałem okolo 20 różnych urządzonek, co prawda do samochodu, nie do motocykla, ale powiem tak, że problem w motoryzacji zawsze się rozbija o czujniki. Można mieć śmałe pomysły, ale nie można ich zrealizować nawet przez niemożność zamontowania zwykłego mikroprzełącznika, nie mówiąc już o bardziej skomplikowanych , np. czujnik ciśnienia, obrotów, i inne takie.
Budowanie zegarka? Po co, kiedy można gotowy zamontować za około 15÷20 zł. Problemem przy montażu takiego zegarka bedzie tylko wykonanie odpowiedniego podświetlenia (wcale nie jest to maly problem to podświetlenie)
Moim zdaniem trochę błędna jest koncepcja zbudowania kombajnu obsługujacego dużo funkcji. Aby z tych funkcji skorzystać, potrzebne będzie ciągłe przełączanie, a to nie wygoda w użytkowaniu. Lepszym rozwiązaniem będzie zbudowanie kilku urządzeń, bo wtedy wszystko można ogarnąć jednym spojrzeniem na pulpit.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Według mnie koncepcja kilku urządzeń jest zupełnie nie trafna. Przede wszystkim chodzi o miejsce, w samochodzie masz całą deskę rozdzielczą do umieszczenia kilku urządzeń, w motocyklu nie ma takiej możliwości a do tego jakoś to się musi też prezentować. Myślałem też o wyświetlaczu 4x16 ale zależy mi na małych wymiarach i dla tego zrezygnowałem z tego, idealny był by graficzny wyświetlacz z noki 3310 ale to za wysokie progi jak na moje nogi :) Piszesz wielu funkcji, na wyświetlaczu będą tylko trzy. Wyobraź sobie jak według twojej koncepcji będzie się prezentować kierownica i zegary, jakiś nie pasujący zegarek zegarek, z boku jakiś pojedynczy wyświetlacz biegów, po drugiej stornie kolejny wyświetlacz do pomiaru dystansu. Niektórzy montują rowerowy licznik żeby mieć pomiar dystansu i zegarek w jednym urządzeniu ale takie rozwiązanie też mi nie odpowiada. Ja to widzę tak że podczas jazdy na co dzień na wyświetlaczu będzie głównie wyświetlany zegarek i biegi bo na tych funkcjach najbardziej mi zależy, natomiast dystans sprawdza się co jakiś czas, a na pewno nie jest potrzebne sprawdzanie go podczas jazdy, jak już to na postoju podczas jakieś wycieczki z ciekawości lub po dojechaniu na miejsce wiec naciśniecie tego mikro styku to żaden problem.
Całe urządzenie ma się komponować z oryginalnymi zegarami, oczywiście w miarę możliwości ;)
Kolejną przeszkodą do przeskoczenia będzie zamontowanie kontaktronów w taki sposób żeby nie rozleciało się to pod wpływem wibracji czy wody, no i ma to też jakoś wyglądać. Myślałem o zastąpieniu kontaktronów halotronami, teoretycznie są leprze bo nie ma drgania styków i są mniejsze ale większy kłopot z uszczelnieniem przewodów, chyba że umieści się je w obudowie po kontaktronach ale wtedy zaleta w postaci wymiarów jest już nie aktualna.
Dim Licz_8ms AsInteger Dim Sek As Byte Dim Minuta As Byte Dim Godzina As Byte Dim Dystans AsInteger Dim Kilometrow AsInteger Dim Stometrow AsInteger Dim Tryb As Byte
Dim Bieg As Byte
Kilometrow =0 Stometrow =0 Tryb =0 Godzina =0 Minuta =0 Bieg =0
Cls Cursor Off
Pinb.0 =1 Pind.7 =1 Do If Portc.5 =0Then Portb.1 =0 Display On
If pinb.0 =0Then'ustawienie godziny Waitms 25 If Pinb.0 =0Then Incr Godzina If Godzina =24Then Godzina =0 EndIf EndIf EndIf
If Pind.7 =0Then'ustawienie minut Waitms 25 If Pind.7 =0Then
Incr Minuta If Minuta =60Then Minuta =0 EndIf EndIf EndIf
If Pind.4 =0And Bieg <6Then'zlicznie biegów Waitms 25 If Pind.4 =0And Bieg <6Then Incr Bieg EndIf EndIf
If Pind.0 =0And Bieg >1Then Waitms 25 If Pind.0 =0And Bieg >1Then Decr Bieg EndIf EndIf
If Pind.0 =0And Bieg =0Then'zmiana biegu z luzu ( czyli 0 ) na 1 bieg Waitms 25 If Pind.0 =0And Bieg =0Then Bieg =1 EndIf EndIf
If Pinc.4 =0Then'luz Waitms 25 If Pinc.4 =0Then Bieg =0 EndIf EndIf
If Tryb =0Then'wiswietlenie zegarka i przebiegu
Locate1 , 3 Lcd ":" Locate1 , 6 Lcd ":
If Godzina > 9 Then Locate 1 , 1 Lcd Godzina End If
If Godzina < 10 Then Locate 1 , 1 Lcd "0" ; Godzina End If
Locate 1 , 3 Lcd ":" Locate 1 , 6 Lcd ": If Minuta >9Then Locate1 , 4 Lcd Minuta EndIf
If Minuta <10Then Locate1 , 4 Lcd "0"; Minuta EndIf
If Sek >9Then Locate1 , 7 Lcd Sek EndIf
If Sek <10Then Locate1 , 7 Lcd "0"; Sek EndIf
Locate2 , 1 Lcd Kilometrow ;"."; Stometrow ;" km "
EndIf
If Tryb =1Then 'wyświetlenie biegu i zegarka If Bieg >0Then Locate1 , 1 Lcd "Bieg - "; Bieg ;" " EndIf
If Bieg =0Then Locate1 , 1 Lcd "Masz luz " EndIf
Locate2 , 3 Lcd ":" Locate2 , 6 Lcd ":"
If Godzina >9Then Locate2 , 1 Lcd Godzina EndIf
If Godzina <10Then Locate2 , 1 Lcd "0"; Godzina EndIf
If Minuta >9Then Locate2 , 4 Lcd Minuta EndIf
If Minuta <10Then Locate2 , 4 Lcd "0"; Minuta EndIf
If Sek >9Then Locate2 , 7 Lcd Sek EndIf
If Sek <10Then Locate2 , 7 Lcd "0"; Sek EndIf
EndIf
If Tryb =2Then'wyświetlenie przebiegu i biegu
Locate1 , 1 Lcd Kilometrow ;"."; Stometrow ;" km "
If Bieg >0Then Locate2 , 1 Lcd "Bieg - "; Bieg ;" " EndIf
If Bieg =0Then Locate2 , 1 Lcd "Masz luz " EndIf
EndIf
EndIf
If Portc.5 =1Then'Wylączenie Wyswietlacza I Podswietlenia Po Wyłączeniu Stacyjki Portb.1 =0 Display Off EndIf Loop
End
Zegarek: 'zegarek
Load Timer0 =250 Incr Licz_8ms
If Licz_8ms =125Then Incr Sek Licz_8ms =0
If Sek =60Then Incr Minuta Sek =0
If Minuta =60Then Incr Godzina Minuta =0
If Godzina =24Then Godzina =0 EndIf EndIf EndIf EndIf Return
Pomiar: Incr Dystans 'pomiar przejechanego dystansu, OBWÓD KOŁA 2m If Dystans =50Then Incr Stometrow Dystans =0 If Stometrow =10Then Incr Kilometrow Stometrow =0 If Kilometrow =1000Then Kilometrow =0 EndIf EndIf
EndIf
Return
Wyswietlacz: 'zmiana trybu wyswietlania If Pind.3 =0And Pind.6 =0Then Incr Tryb If Tryb =3Then Tryb =0 EndIf EndIf
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
"Wymyślenie sposobu zrobienia obudowy i wykonanie jej jest trudniejsze od wykonanie i dopracowanie układu elektronicznego"
Podziwiam optymizm i wiarę w możliwości konstruktorskie. Z reguły jest tak, że najpierw buduje się elektronikę, nawet prowizorycznie, w "pająku", następnie sprawdza się działanie i wnosi się potrzebne poprawki (z reguły nie uniknione), a na samym końcu projektuje się obudowę, bo będzie ona wynikiem wszystkich poprawek.
Dodatkowo, zbudowanie działającego układu "na stole", wcale nie znaczy, że będzie on poprawnie działał po zamontowaniu do motocykla lub samochodu.
Nie polemizował bym w tej sprawie, ale moim zdaniem zbytnia pewnośc siebie co do możliwości, może sie skończyć niepowodzeniem, szczególnie w układzikach związanych z motoryzacją.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
alltech2 W km jest prędkość, przebieg i dystans jest w milach a do tego zerowanie dystansu jest uszkodzone :/
Marian B Problemy są po to żeby je rozwiązywać, jak nie dam rady samemu to do pomocy ma wiedzę użytkowników z forum :)
--------------------------
Modyfikacja układu pod kontem zegarka. Wykorzystanie wewnętrznych timerów uC do odmierzania czasu okazały się nie dokładne i trzeba wykorzystać zewnętrzny układ RTC
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Mimitron wrote:
root is Ekranowane przewody i metalowa obudowa nic ci nie dały ?
Zanim takie metody się zastosuje, warto prawidłowo podłączyć mikrokontroler. Niestety Twój schemat nie należy do tych prawidłowych. Brak niezbędnych połączeń po stronie zasilania (wraz z jego filtrowaniem) oraz pinu RESET, objawi się prędzej czy później nieprzewidywalnym działaniem całego układu, tym bardziej, że pracuje w motocyklu.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Mi nic nie pomagało , z kontaktronu przy wyższych obrotach lub np. skokacz obrotów było najgorzej . W końcu i tak wycofuje się z wspierania mojego sprzętu elektronicznie - 4suw i crossidło z elektroniką nie pasują.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Na schemacie jest błąd przy resecie :P w rzeczywistości mam podpięte go do +5V za pomocą rezystora 4.7k i kondensatora do masy przez co podłączenie zasilania wywołanie resetu przed startem programu. Co do AVCC nie używam analogowej części uC więc nie musi być podpięty ale nie zaszkodzi też jak go podepnę. Cewki nie ma sensu stosować bo nie używam ADC do pomiaru napięcia.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Mimitron wrote:
Co do AVCC nie używam analogowej części uC więc nie musi być podpięty ...
Następny forumowicz, który nie czyta datasheetów, ani nawet tego co podaje mu się w linkach, gdzie na samym początku ten mit obalamy, pokazując konkretny fragment datasheet, który jasno informuje, że AVCC ma być podłączony.
Jeżeli tak dalej będziesz podchodził do datasheetów (autorstwa inżynierów producentów) i podpowiedzi na forum, to skończysz w Piekle Początkujących drapiąc się po głowie, czemu ten skubany projekt raz działa, a raz nie.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Kolejna zmiana. Do taktowania uC zostanie użyty wewnętrzny generator ustawiony na 8MHz, kwarc o częstotliwości 32kHz na wejściach TOSC1, TOSC2 posłuży do taktowania timera za pomocą którego będzie realizowany zegarek.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
No jestem bardzo ciekawy wyniku końcowego.... Oczywiście projekt od strony estetycznej zasługuje na pochwałę, ale coś z elektroniką nie gra... Próbowałeś chociaż podłączyć ten układ instalacji motorka? Robiłeś testy po uruchomieniu silnika? Mogę się mylić, ale, według mnie, twoim problemem będą "krzaczki" na wyświetlaczu LCD. Nie mam na to żadnego argumentu, ale obstawiam w ciemno. Ostatecznie AREF pozostawiasz niepodłączone?
Oczywiście życzę powodzenia, wcale nie sarkastycznie, projekt zaczyna nabierać ciekawego wyglądu.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Nie ale to dobry pomysł w razie zawieszenia uC, ale nie wiedziałem że atmeg8a ma taką funkcje :)
Układ na razie działa na biurku, zostało jeszcze dużo do zrobienia i dopracowania zanim przejdę do testów. Co to LCD nie ma żadnych "krzaków", czemu tak sądzisz ? AREF służy do wyznaczenia napięcia odniesienia, według datasheet musi być podłączony VCC i AVCC do zasilania i zabezpieczone kondensatorem.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Co do "krzaczków", to, jak powiedziałem, mam tylko takie przeczucie, ale miałem na myśli ich pojawienie się po podłączeniu układu do instalacji motoru i uruchomieniu silnika... Co do psiego zegara, to myślałem, że mega8 ma ta funkcję, ale pewności nie mam.
Przy okazji, projekt robisz na tych "nowych" Atmegach8, czy masz jakieś stare zapasy?
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Kupiłem ją jakieś 4 miesiące temu. A czym się różnią "stare" atmegi od "nowych" ?
Ja też jestem przekonany że po podłączeniu do motocykla pojawią się nowe problemy. chociaż mam nadzieje że przez to że układ i wyświetlacz są w jednej obudowie i przez to nie ma metrowej taśmy między nimi no i sam fakt że całe urządzenie będzie zamontowane poza motocyklem to oszczędzi to paru problemów.
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Mimitron wrote:
A potem testy na motocyklu :)
Zrób testy zanim zabierzesz się za zegarek :)
I rób je na przewodach docelowej długości (a nie na krótkich) i rozmieszczonych mniej więcej tak, jak będą prowadzone - to istotne.
Trzymam kciuki! :)
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Najpierw muszę zamontować kontaktrony i magnes w odpowiedni ich miejscach przy dźwigni zmiany biegów i w taki sposób zęby ich nie pogubić podczas jazdy hahaha
Re: Wyświetlacz biegów, zegarek, licznik przejechanych km do motocykla
Wystarczy że testów dokonasz na postoju przy włączonym silniku, zmieniając ręcznie magnesem jak na filmie. Chodzi o to by sprawdzić, czy układ jest podatny na zakłócenia. Bo narobisz się montując wszystko na tip-top, a okaże się, że zakłócenia dobijają projekt i trzeba gruntownej zmiany.