To jest tylko wersja do druku, aby zobaczyć pełną wersję tematu, kliknij TUTAJ
ROWERY I INNE POJAZDY ELEKTRYCZNE - FORUM ARBITER
Rowery, trójkołowce, ryksze, skutery, hulajnogi i inne lekkie pojazdy elektryczne
Porady, zdjęcia, filmy, konstrukcje, opinie

Tematy elektryczne - Sprytne ustrojstwo

Marcin1812 - Pią 31 Lip, 2020
Temat postu: Sprytne ustrojstwo
Witam Szanownych Forumowiczów :)

Chciałbym podzielić się swoim wynalazkiem, który można zastosować w zasadzie do każdego roweru posiadającego manetkę.

Temat może jest już otrzaskany, niemniej zrobiłem go po swojemu, wykorzystując ogólnodostępne elementy. Zaleta jest taka, że zrobiłem dokładnie to czego oczekiwałem i cieszę się z jego użytkowania :)

Jest to tempomat, poszerzony o kilka przydatnych funkcji.


Co moje ustrojstwo umożliwia?
1. Po wciśnięciu przycisku (przycisk chwilowy) uaktywnia się tempomat, który utrzymuje zadaną wcześniej prędkość.

O wyższości przycisku nad manetką podczas poruszania się w terenie „wyboistym” nie muszę chyba nikogo przekonywać ;)
Ustalenie prędkości tempomatu jest bardzo proste. Wystarczy w dowolnym momencie wcisnąć inny przycisk (chwilowy), by zapamiętać bieżącą prędkość, jako prędkość tempomatu.
Tak ustaloną prędkość możemy również w dowolnej chwili modyfikować (zwiększać, zmniejszać), dzięki zastosowaniu dedykowanych przycisków.


2. Urządzenie posiada dwie szybko dostępne prędkości tempomatów:
- Limit1
- Limit2
Za wybór danego limitu odpowiada przełącznik dwupozycyjny.

Po co mi aż dwie prędkości tempomatu?
Moja potrzeba jest prosta: Szosa / las.
Zazwyczaj w lesie, lub w terenie trudniejszym (jeśli jadę na manecie) jadę wolniej niż na szosie.
Na szosie mogę jechać z wyższą prędkością i tutaj jednym ruchem zmieniam sobie dedykowany limit.

A po co mi na szosie maneta? Zwykle wykorzystuję ją podczas jazdy na drogach - „ulepach”, gdzie jest więcej połatanych dziur niż asfaltu. Mimo że mam fulla, to i tak wqurwia mnie trzęsawka. Więc staję na nogach i jadę na manecie.

Ale równie dobrze można by ustalić sobie tryb2 jako miejski (np. Ograniczenie do 25km/h) i w chwili wjazdu do miasta zrobić „pyk” i mamy zduszony rower :)


3. Możliwość blokady maksymalnej prędkości również dla manetki
Ogólnie urządzenie ma dwa tryby działania (jak wspomniałem wyżej, wybierane przełącznikiem):
- Tryb1:
- Guzik tempomatu z limitem prędkości1
- Manetka bez żadnych ograniczeń

- Tryb2:
- Guzik tempomatu z limitem prędkości2
- Manetka z limitem prędkości2

Można by pokusić się jeszcze o szybkie wprowadzenie trybu3 (jakąś kombinacją przycisków), gdzie manetka zostałaby całkowicie odłączona i przerobiona np. na... dzwonek (urządzenie ma beeper na pokładzie), co spowoduje że nasz e-bike będzie „konstrukcyjnie umożliwiał poruszanie się jedynie przy pomocy pedałów”, a sama manetka nie pozostanie bezużyteczna ;) No ale tego trybu na razie nie wprowadziłem.

Po co w ogóle blokada prędkości dla manetki, skoro na kontrolerze można sobie zablokować prędkość?
Odpowiedź jest prosta: Na kontrolerze to masa kombinacji z menu i tajemniczymi kombinacjami przycisków. A tutaj „pyk” i już mamy blokadę.
Mało tego - w każdej chwili, w prosty sposób możemy sobie ustawić dowolną wartość blokady. A w razie potrzeby „pyk” i mamy dostępną pełną moc!
Na kontrolerze tyle byłoby z tym pierdzielenia, że ja... ustawiałem sobie na nim limit raz na sezon ;)

Dla posiadaczy mocniejszych maszynek (bez PAS-a), „guzik utrzymania stałej prędkości” jest również niebagatelną zaletą! Po precyzyjnym dobraniu pożądanej prędkości, możemy cieszyć się równomiernym pedałowaniem, utrzymywaniem idealnej kadencji, bez konieczności jednoczesnego żonglowania manetą w celu dobrania najlepszego „przełożenia”. Sam to dziś odkryłem, choć mam tylko 1.6K w piku i mam PAS.
Magiczny guzik całkiem dobrze mi się sprawdził również i w tym zadaniu :)


4. Funkcja "expo" dla manetki
Modelarze zapewne wiedzą o co chodzi ;)
Ogólnie chodzi o to, by "liniowy" zakres pracy manetki w pewien sposób zmodyfikować, np.:
- Na początku zakresu dać mocny wzrost mocy, potem wzrost ten znacznie spowolnić, by na końcu zakresu znów dać mocniej w palnik.
- Albo na odwrót: Na początku zakresu dać bardzo słaby wzrost mocy, po środku zakresu dać silny wzrost, a na końcu znów słaby.

Ogólnie możemy ustawiać sobie expo od -100%, do 100% ze skokiem 5%, przechodząc od:

Expo=-100:

poprzez:
Expo=0

aż do:
Expo=100



Oznaczenie wykresu:
Oś X: Fizyczne wychylenie manetki w %
Oś Y: Wynikowe wychylenie manetki generowane po funkcji expo

Po co to? Ano po to, że np. W moim Bafangu obserwuję dość nieliniową pracę manetki (nagle silnik dostaje kopa przy niewielkiej zmianie). W tej sytuacji expo pozwala mi utemperować zachowanie manetki w pożądanym zakresie, jak również zmniejszyć wrażliwość na "drgania palucha" w pożądanym zakresie wychylenia.

Fajnie byłoby jeszcze przesuwać ten wykres w osi Y (góra dół) tak mi się wydaje po wstępnych testach. Może coś takiego zrobię i sprawdzę...




Ogólny opis przycisków:



- "T" (chwilowy) - tempomat ("magiczny guzik")
Gdy go wciskamy, zaczyna działać tempomat

- "SET" (chwilowy)
Jego krótkie wciśnięcie powoduje zapamiętanie aktualnej prędkości jako limit

- "PM" i "PW" - dwa przyciski. Niestety nie są chwilowe, tylko utrzymują swój stan.
„Prędkość Mniejsza” / „Prędkość Większa”
Dzięki nim można ręcznie zmieniać ustalony limit prędkości.
np.: W celu zwiększania limitu, ustawiamy przełącznik na „PW” i wciskamy „SET”
Za każdym wciśnięciem „SET” limit się zwiększa

- "O" (nie chwilowy - trwały) - „Ogranicznik manetki”
Gdy nie jest wciśnięty, obowiązuje limit1
Gdy jest wciśnięty, obowiązuje limit2, dodatkowo maksymalna prędkość na manetce jest również ograniczona do limitu2


Wybór przycisków podyktowała dostępność. Z chęcią zamieniłbym przełączniki stałe lewo/prawo („PM”, „PW”) na jakiś joystick. Problemem nie jest dostępność, lecz sposób zamocowania na rowerze. Żeby nie kombinować z obudową, skorzystałem z dostępnych rozwiązań.


Zasada działania i budowa:
Ogólna zasada działania układu opiera się na separacji manetki od kontrolera. Między te dwa elementy wsadzam swoje urządzenie, co powoduje, że mogę dowolnie wpływać na sygnał manetki.

Ponieważ niezbyt lubię platformę Arduino za (moim zdaniem) niepotrzebne uproszczenie podstaw działania procka, mój wybór padł na STM i płytkę nucleo-f042k6, dostępną np. tu:
https://kamami.pl/stm32-nucleo/560185-nucleo-f042k6-zestaw-startowy-z-mikrokontrolerem-stm32f042k6t6.html

Widok od strony płytki bazowej:


Czemu akurat ten model? Bo mi się walał po szufladach ;)
I tak jest zbyt mocny, bo ma np. CAN, a to w obecnym projekcie nie jest potrzebne, choć może fajnie byłoby zamiast rosnącej liczby przewodów, zrobić jedną magistralę CAN jak w samochodzie ;) No ale z tym musimy poczekać aż nasi bardziej pracowici i mądrzejsi bracia ze Wschodu zrobią odpowiedni komplet podzespołów do zastosowania w eBiku ;)

Płytka ma na pokładzie programator, więc wystarczy ją podpiąć przez USB do kompa i mamy od razu w pełni funkcjonalny, szybki programator z debugerem, oraz jednocześnie UARTa do komunikacji z naszym programem. Genialne w swej prostocie i cenie!

- Za wejście manetki odpowiada zwykłe wejście analogowe, z dzielnikiem ½
- Za wyjście manetki odpowiada prosty PWM na timerze, oraz filtrem RC na wyjściu (jeden rezystor, jeden kondensator wystarczyły). To całkowicie sprawdza się w działaniu.
Pewnym mankamentem może okazać się zakres wyjściowego napięcia (0-3v3). Zwykle manetki dają napięcie maksymalne w granicach 4V.
Żeby takie napięcie osiągnąć, trzeba by zbudować stosunkowo skomplikowany układ Push-Pull (bo zwykłe rozwiązanie OpenDrain, czy OpenCollector raczej w przypadku PWMa się nie sprawdzi). Ponieważ mi łatwiej było ustawić w kontrolerze niższy zakres Vmax manetki, postanowiłem nie komplikować elektroniki.
Do detekcji prędkości wykorzystuję typowy czujnik od najtańszej Sigmy
Guziki, oraz hermetyczne złączki zakupione w Nexunie

Przydałby się chyba jakiś porządny algorytm PID do osiągania zadanej prędkości. Obecnie jednak zastosowałem proste swoje rozwiązanie regulatora (zaledwie kilka linijek kodu) i pierwsze testy pokazały całkiem przyzwoite działanie (choć nie pozbawione drobnych spraw, które można by poprawić). Zobaczę co dalej. Może znajdę jakiś sensowny algorytm PID, albo uznam, że to co zrobiłem sprawdza się OK. W każdym razie wprowadziłem kilka opcji konfiguracji mojego algorytmu i mogę go podczas jazdy „dokonfigurowywać” w celu badania poprawy działania.


No i to w zasadzie wszystko. Zasilanie z USB (5V), kilka rezystorów do podpięcia przycisków i ot cały układ:

Widok na dolepione elementy peryferyjne:



Konfiguracja
Ogólnie możemy ustawiać i zapamiętywać w pamięci nieulotnej:
- Kalibrację manetki (znaleźć jej minimalne i maksymalne napięcie)
- Ustawić expo
- Zapisać ustawione limity jako domyślne limity po włączeniu urządzenia
- Konfigurować algorytm regulatora utrzymania prędkości

Oczywiście wszystko w locie (bez kompa), za pomocą odpowiednich kombinacji przycisków.




Zaletą urządzenia jest jego olbrzymia prostota, oraz ogólność. Można je zastosować w każdym wehikule, który posiada analogową manetkę.


Jak ktoś chce, mogę udostępnić schemat podłączeń, oraz hex-a na priva – to sobie złoży podobne :)
Uprzedzam, że ręcznie klecić komuś takiego ustrojstwa nie zamierzam – jestem zbyt leniwy :P
No chyba, że zainteresowanie takim urządzeniem byłoby na tyle duże, że opłacałoby się zrobić dedykowane płytki i załatwić ich szybką obsadę na automacie. To dla mnie nie problem.
No ale to inna para kaloszy i bardziej biznes, niż dzielenie się swoim wynalazkiem pro bono ;)
W każdym razie dla entuzjastów samodzielnego, ręcznego lutowania, w razie potrzeby udostępnię hex-a.

Jak pisałem na wstępie, być może wyważyłem dawno otwarte drzwi, niemniej moja satysfakcja z jazdy jest jeszcze większa, gdy pod przyciskami czuwa idealnie dobrany pod siebie kawałek oprogramowania :)

Pozdrawiam



Powered by phpBB modified by Przemo © 2003 phpBB Group