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

[Rozwiązano] Układ na bazie licznika rowerowego

25 Lis 2017 23:38 1119 30
  • Poziom 6  
    Witam , jeśli temat jest w złym dziale to prosiłbym o przeniesienie ,potrzebuję pomocy w budowie układu który pod wpływem wzrostu prędkości w rowerze będzie napędzał silnik elektryczny w regulowanym zakresie , już tłumaczę o co mi dokładnie chodzi.Myślę że można by do tego wykorzystać po prostu licznik rowerowy lub sam czujnik otóż układ musi sterować małym silnikiem elektrycznym który będzie kręcił wolno osią tzn np od 0-180 stopni stale czyli np prędkość roweru wynosi 0 to silnik stoi , prędkość wynosi 10km/h to oś silnika przesunie się do 45 stopni i pozostanie i tak dalej , wraz ze wzrostem prędkości stopnie osi będą rosły bądź malały , płynnie oraz bez opóźnień , brzmi to może trochę zawile ale jest tu masa wyjadaczy więc mam nadzieje że ktoś mi pomoże ponieważ pracuję nad pewnym projektem i taki układ jest mi nieodzowny.Oczywiście mogę to jeszcze wytłumaczyć dokładniej.Głównie chodzi mi działanie podobne jak przy licznikach samochodowych tylko zamiast osi wskazówki licznika będzie to oś silnika.

    Z góry dzięki za pomoc
  • PCBway
  • Poziom 37  
    Witam,
    w Twoim przypadku chyba najprostsze będzie użycie serwa.
    Czujnik prędkości roweru generuje impulsy o częstotliwości proporcjonalnej do prędkości, możesz tę częstotliwość mierzyć za pomocą jakiegoś mikrokontrolera, w zależności od tej częstotliwości wytwarzasz odpowiedni sygnał sterujący serwem.

    Pozdrawiam
  • Poziom 42  
    Licznika rowerowego w to nie mieszajmy. Możesz ew. z jego czujnika obrotów koła pobierać impulsy, które powinny trafić na wejście jakiegoś małego AVR'ka. No i jakiś nieskomplikowany programik licząc ilość impulsów w ciągu jakiegoś czasu (czyli prędkość) będzie sterował PWM'em dla silniczka. Tak to widzę w ogólnym zarysie. Myślę, że jak już napiszesz jasno, o jakie konkretnie zastosowanie chodzi, wtedy otrzymasz cenniejsze porady.
  • PCBway
  • Poziom 6  
    Bardzo trafny pomysł , charakterystyka serwa będzie do tego idealna Krzysiek , nie chciałbym na razie zdradzać konkretnie do czego go użyję ponieważ trochę już nad tym siedzę ale pomysł jest dość innowacyjny i wart zachodu :-) serwo jakie potrzebuję musi mieć siłę porównywalną do zakręcania nakrętki 10mm na śrubie z lekkim oporem , idąc dalej to najlepiej licznik jak mówi yogi zostawić w spokoju a użyć tylko czujnika , pozostaję nam kwestia tego mikrokontrolera , co do zasilania zdecydowałem się już wcześniej na ogniwo 18650 , są dość tanie , mocne ,nie duże i do tego można zrobić prostą ładowarkę nawet na usb albo kupić gotowca również za nieduże pieniądze , chyba że macie jakiś ciekawszy pomysł :-)
  • Poziom 37  
    Cruiser92 napisał:
    Bardzo trafny pomysł , charakterystyka serwa będzie do tego idealna Krzysiek , nie chciałbym na razie zdradzać konkretnie do czego go użyję ponieważ trochę już nad tym siedzę ale pomysł jest dość innowacyjny i wart zachodu :-) serwo jakie potrzebuję musi mieć siłę porównywalną do zakręcania nakrętki 10mm na śrubie z lekkim oporem , idąc dalej to najlepiej licznik jak mówi yogi zostawić w spokoju a użyć tylko czujnika , pozostaję nam kwestia tego mikrokontrolera , co do zasilania zdecydowałem się już wcześniej na ogniwo 18650 , są dość tanie , mocne ,nie duże i do tego można zrobić prostą ładowarkę nawet na usb albo kupić gotowca również za nieduże pieniądze , chyba że macie jakiś ciekawszy pomysł :-)

    Serwo możesz sobie dobrać, na przykład:
    https://botland.com.pl/200-serwa-typu-standard
    https://botland.com.pl/376-serwa-typu-medium
    https://botland.com.pl/199-serwa-typu-micro
    itp, itd.
    Na początek możesz użyć jakiejś wersji Arduino, jak już wdrożysz urządzenie do produkcji zaprojektujesz sobie coś dedykowanego. Ogniwo li - ion może mieć zbyt niskie napięcie, będziesz jeszcze potrzebował stosownej przetwornicy step - up.
  • Poziom 6  
    Ok to serwa już mamy , zasilanie to akurat najmniejszy problem , połączę może dwa takie ogniwa albo jakiś pakiet ,co do tego kontrolera to jaki mi polecasz ? bo jest tego mnóstwo to kupię sobie w chinach bo jest sporo taniej , jakbyś mi podał konkretne jakieś modele to będę wdzięczny bo czujnik to już sobie jakiś kupie bo są bardzo tanie.
  • Poziom 6  
    W sumie może i taki silnik będzie lepszym rozwiązaniem , głownie mi zależy na precyzji obrotu oraz szybkości rekacji , podał byś jakiś konkretny do tego zastosowania i siła odpowiednią?
  • Specjalista elektronik
    Silniki krokowe zwykle mają 200 kroków na obrót (niektóre 400, inne ilości stanowią rzadkość). Bardziej zaawansowane sterowniki potrafią obracać o ułamek kroku - nawet o 1/32. Czasem silniki mają przekładnię - ten najtańszy 1:64, czyli nawet bez obracania o ułamek kroku ma dużą precyzję - ale z przekładnią kręci powoli, minuta, albo i dwie na cały obrót; bez przekładni cały obrót np. w 2 sekundy.

    A konkretny typ - trzeba wziąć konkretne wymagania (moment siły, prędkość obrotu) i przejrzeć, co jest oferowane, co z tego pasuje. Unipolarne łatwiej sterować bez wyspecjalizowanego sterownika, z takim sterownikiem bipolarne działają lepiej od unipolarnych. Sterownik bipolarnego na prąd 1A (w porywach 2A) kosztuje kilkanaście zł, a na prąd 3-4A około 50zł.

    Oprócz silnika i sterownika potrzebny byłby mikrokontroler, który by zliczał impulsy z czujnika i wyliczał, w którą stronę i o jaki kąt trzeba obrócić silnik.
  • Poziom 6  
    Ten czas jest bardzo wolny jak potrzebuje czegoś dynamicznego , chyba jednak zostanę przy serwie bo i chyba będzie tańsze i na pewno szybsze , to podsumujmy czego potrzebuję:
    -Serwo
    -Arduino (nie wiem na jaki się finalnie zdecydować ale chyba wezmę ten podstawowy model nano v3) pytanie czy wystarczy
    -Zasilanie , chyba połączę dwa ogniwa 18650 lub jakiś pakiet
    -Przetwornica step-up choć nie wiem do czego ona ma służyć :-)
    -Czujnik prędkości
    To chyba wszystko , teraz tylko dobrać konkretne modele żeby to dobrze ze sobą grało :-)
  • Specjalista elektronik
    Ile czasu potrwa rozpędzenie roweru (czy czegoś innego, czego prędkość chcesz przekładać na obrót) na tyle, żeby silnik miał wykonać obrót o 180°? Bo jak sekundę, to typowy silnik krokowy bez przekładni powinien zdążyć (on potrzebuje 2 sekund na pełny obrót, 10ms na krok); jeśli trochę mniej, to wypadałoby wybrać jakiś szybszy.
  • Poziom 6  
    Tak sekunda będzie z zupełności wystarczająca do obrotu 180 ,zależy mi głownie na jak najmniejszy koszcie całego projektu oraz miniaturyzacji oraz musi być niezawodny i trwały.
    Także trzeba wybrać tańsze i bardziej niezawodne rozwiązanie oraz im mniejszy silnik czy serwo tym lepiej bo waga nie ma znaczenia.Musi być też odporny na warunki atmosferyczne , woda itp ale to zapakuję go w jakąś obudowę i będzie ok.
  • Poziom 43  
    To napisz jeszcze jak dokładne muszą być ustawienia.
  • Poziom 6  
    Ustawienia następujące zakres prędkości regulowany np od 0-25km/h obrót silnika od 0 -180 stopni ,następny od 0-40km/h również 0-180 stopni i jakiś jeszcze 3 wyższy zakres do 60km/h.Płynny skok obrotu silnika w tych prędkościach czyli wraz ze wzrostem prędkości obraca się silnik czyli np w pierwszym zakresie do 25km/h prędkość 0 silnik 0 stopni , prędkość 10 silnik 90 stopni i jeśli prędkość się nie zmienia to i silnik pozostaje bez ruchu.
  • Poziom 34  
    Możliwości jest kilka. Korzystając z czujnika od licznika prędkości i uC z servem modelarskim:
    http://www.arduinopolska.cba.pl/projects/speedmeter/speedmeter.html
    Powyżej przykład.
    Albo zliczać częstotliwość impulsów z licznika i dalej scałkować sygnał PWM i sterować wskaźnikami analogowymi. Wyszedł by przetwornik częstotliwość-napięcie.
    https://www.elektroda.pl/rtvforum/topic3123419.html
    https://www.elektroda.pl/rtvforum/topic2530795.html
    Albo zastosować uC z DAC np. Xatemga i bezpośrednio sterować wskaźnikiem.
    Zresztą dałby się bez procesorów też. Timer 555 do sterowania takim wskaźnikiem analogowym. Tylko czujnik z rowerowego licznika poda za rzadko impulsy, lepsza była by tarczka przy osi z rozmieszczonymi czujnikami chyba.
  • Poziom 6  
    Jawi chyba masz rację , czujnik poda tylko jeden impuls na jeden obrót koła i o ile licznik się tym zadowala to chyba sterownikowi to nie wystarczy.Ta wskazówka trochę mu skakała także chyba ten czujnik się jednak nie nadaje do serwa ani silnika , bo widać że np jak mało dostawał impulsów przy małej prędkości to dopiero jak je nazbierał przestawił wskazówkę.Te drugie projekty fajne ale jak dla mnie zbyteczne :-) Chodzi o to by to dobrze działało płynnie razem z prędkością i żeby było jak najtańsze i proste w budowie ale przydały by się jakieś różne ustawienia te co wspomniałem wyżej.
  • Poziom 34  
    Sokoro jeden wystarcza licznikowi, to do prędkościomierza analogowego też wystarczy. Zasada jest dokładnie ta sama.
    Tam nie ma co zliczać impulsów tylko mierzyć czas między nimi, bo żeby zliczać, to koło musi zrobić ileś obrotów na jednostkę czasu, przy jakimś określonym czasie po prostu licznik daje stop.
    Przy zliczaniu impulsów będą większe opóźnienia w zależności od tego interwału.
  • Poziom 6  
    Tylko że to nie ma mieć zastosowania jako licznik tylko serwo lub silnik będzie sterował innym podzespołem ale skoro mówisz że będzie ok , to teraz tylko pozbierać wszystkie podzespoły w jedno.
  • Poziom 37  
    _jta_ napisał:
    Odnoszę wrażenie, że serwo to nie całkiem to, czego potrzeba: ono jest do obrócenia w ułamku sekundy. Do precyzyjnego obracania jest silnik krokowy - najtańszy kosztuje kilka zł.

    Duża szybkość działania serwa nie jest problemem, zawsze można je spowolnić zgodnie z zasadą "łatwiej kijek obcienkować niż go potem pogrubasić".
    Musisz wziąć pod uwagę pewną ułomność silnika krokowego, nie ma żadnej możliwości zwrotnego ustalenia aktualnego położenia silnika, trzeba albo liczyć kroki albo zastosować enkoder nawet nie inkrementalny ale absolutny, wzrosną koszty tego układu.
    Po jakimś przypadkowym upadku zasilania lub resecie, itp, po powtórnym podniesieniu całego systemu przeliczamy na nowo ustawienie serwa, wydajemy komendę "ustaw ileś tam stopni" i serwo ustawia się tam gdzie trzeba. W podanej sytuacji w przypadku silnika krokowego nie mamy żadnej informacji o jego aktualnym położeniu, musimy albo przeczytać enkoder albo pojechać silnikiem do jakiejś pozycji "home" i dopiero odliczyć stosowną liczbę kroków. Może to dla autora nie jest problem a może jest.
    W przypadku serwa również trzeba się zabezpieczyć przed przypadkowym resetem, na przykład odcinając mu zasilanie, będzie się utrzymywało "mechanicznie" w ostatniej znanej pozycji.
    Cruiser92 napisał:
    -Arduino (nie wiem na jaki się finalnie zdecydować ale chyba wezmę ten podstawowy model nano v3) pytanie czy wystarczy

    Jakkolwiek jest to platforma cokolwiek "zabawkowa" jednak są pewne korzyści:
    - jest tanie jak barszcz
    - środowisko jest za darmo i nie potrzeba nic dodatkowo, na przykład programatora
    - tłum ludzi się tym zajmuje, jak natrafisz na jakieś problemy, niemal na pewno ktoś Ci pomoże
    Jak Ci ten biznes nie wyjdzie nie stracisz zbyt wiele.
    Cruiser92 napisał:
    -Przetwornica step-up choć nie wiem do czego ona ma służyć

    Pojedyncze ogniwo li - ion ma napięcie z zakresu 2.8 V - 4.2 V, zasilanie serwa to około 5 V, płytki mikrokontrolera również więc potrzebna jest przetwornica step - up
    Cruiser92 napisał:
    -Zasilanie , chyba połączę dwa ogniwa 18650 lub jakiś pakiet

    Wówczas będziesz miał 5.6 V - 8.4 V więc będzie potrzebna przetwornica, dla odmiany step - down
    Cruiser92 napisał:
    czujnik poda tylko jeden impuls na jeden obrót koła i o ile licznik się tym zadowala to chyba sterownikowi to nie wystarczy

    Może zastosuj jeden czujnik i pewną liczbę równomiernie rozmieszczonych magnesów, jeżeli to rower - na różnych szprychach, częstotliwość impulsów odpowiednio wzrośnie, przy małych prędkościach będzie bardziej płynnie.
    Jawi_P napisał:
    Tam nie ma co zliczać impulsów tylko mierzyć czas między nimi,

    Dość standardowa strategia przy pomiarze małych częstotliwości.

    Jeżeli chodzi o serwa, słabo się na tym znam, popytaj może na forum kolegów modelarzy. Są serwa o bardzo dużej precyzji pozycjonowania. Są serwa sterowane cyfrowo, to znaczy nie trzeba im w kółko wysyłać ustawiającego sygnału PWM, wysyła się łączem komendę "ustaw tyle to a tyle" i trzyma do końca świata, chodzi mi o sytuację przypadkowego resetu, sygnał PWM zniknie, serwo w tym czasie przestawi się w jakąś pozycję, żeby tego nie zrobiło trzeba mu odciąć zasilanie.
  • Specjalista elektronik
    Duża szybkość działania serwa nie jest problemem, zawsze można je spowolnić

    Z szybkością łączy się niedokładne ustawianie, jakkolwiek sterownik może skorygować pozycję na podstawie sygnału z enkodera. Silnik krokowy z dobrym sterownikiem może, jeśli ma duży zapas momentu siły, ustawiać pozycję z dokładnością lepszą od 0.1° - znajdziesz enkoder na 4000 pozycji do serwomotoru?
  • Poziom 6  
    Bardzo dobrze to rozkminiłeś :-) pozostanę przy serwie i arduino , nie chcę wydać sporo kasy bo jak mówisz jak nie wyjdzie to doświadczenie mi zostanie a i kasy nie pójdzie za dużo.Zasilanie zrobię właśnie takie jedno ogniwo i do tego przetwornicę i jakaś prostą ładowarkę też kosztują grosze na usb od telefonu.Czyli tak:
    Zasilanie-ogniwo 18650
    Ładowarka-jakiś mały układ
    Przetwornica-jak wyżej step-up
    Sterownik-Arduino v3 będzie ok
    Serwo-nie wiem dokładnie jaka potrzebna mi siła , powiedzmy że siła równa kręceniu nakrętki na śrubie z małym oporem , nie wiem jak to policzyć:-)
    i to chyba wszystko , zerknijcie na to zestawienie i powiedzcie czy to będzie razem dobrze grało lub podajcie swoje typy.Będę wdzięczny :-)
    Potem oczywiście wszystko kupię w chinach ale na razie nie chce mi się czekać.
  • Poziom 37  
    Kup ładowarkę też na tym samym układzie ale z układem zabezpieczającym ogniwo, żebyś go przypadkiem podczas eksperymentów nie ukatrupił (nie daj Boże siebie też przy okazji).
    Przetwornica step - up w porządku, z wykazu parametrów wynika, że będzie działała z pojedynczego ogniwa, napięcie wyjściowe ustawisz sobie na 5 V (zrób to przy odłączonym układzie, nie wiadomo czy ktoś tam fabrycznie nie ustawił na przykład 15 V, mogłoby się coś uszkodzić).
    Arduino w porządku, będziesz musiał tylko wgrać driver do CH340, bez drivera IDE go nie rozpozna, ale to raczej nie problem.
    Cruiser92 napisał:
    Serwo-nie wiem dokładnie jaka potrzebna mi siła , powiedzmy że siła równa kręceniu nakrętki na śrubie z małym oporem

    Nie siła lecz moment siły, możesz jakoś zmierzyć przy użyciu sprężynowego siłomierza i ramienia o znanej długości, kup sobie serwo dysponujące momentem z jakimś zapasem.
    Zawsze możesz to dalej rozbudowywać: serwo o większej rozdzielczości i dokładności, dedykowany procesor, itp.
    P.S.
    Usuń linki do aukcji, one po jakimś czasie stają się nieaktualne, posty tracą sens, itd.
    Tak czy owak moderator je usunie po ich zauważeniu.
  • Poziom 6  
    No to mamy wstępne podzespoły , kupię ładowarkę z zabezpieczenie jest tylko parę zł droższa i reszta tak jak jest , a z serwem to po prostu kupię jakieś i przetestuję realnie bo takie sprawdzanie nigdy nie jest miarodajne , moment oczywiście z zapasem żeby serwo się nie męczyło bo będzie cały czas w pracy praktycznie.Linki pousuwam tylko potwierdźcie czy wszystko gra:

    Ładowarka
    3.1.18. Nie wysyłaj linków, które po pewnym czasie przestaną być aktywne. To spowoduje, że dyskusja straci jakikolwiek sens.
    [retrofood]

    Serwo już sobie dobiorę i ogniwo.
  • Poziom 6  
    To Panowie powiedźcie tylko czy wszystko gra i zamawiam :-)
  • Poziom 34  
    Cruiser92 napisał:
    serwo jakie potrzebuję musi mieć siłę porównywalną do zakręcania nakrętki 10mm na śrubie z lekkim oporem

    Przemyśl dobrze servo. Nie wiem co oznacza śruba 10mm z "lekkim"oporem, ale spójrz na moment serva, żeby było wystarczająco mocne. moment podawany jest w Kg*cm. Oznacza to, że taki ciężar jest w stanie servo utrzymać na ramieniu długości 1cm.
  • Poziom 6  
    Ok przemyślę sprawę z serwem a reszta jest ok ? i jaki ten sterownik wybrać z tych podanych?
  • Poziom 6  
    To który sterownik mam wybrać?
  • Poziom 6  
    Witam , wszystko mi doszło tylko mam problem z podlaczeniem arduino do komputera , wyskakuje że nie można wgrać na płytkę , mam imaca , zainstalowałem serowniki ch ale nic to nie dało.
  • Poziom 6  
    Niestety nie ale to też fajny pomysł :P
    Dodano po 13 [minuty]:
    ok na win 7 na lapku od razu poszlo :p
    Teraz mam inny problem , jak wgram cos na niego to jest ok jak jest podpiety tylko kabel , jak podpne zasilanie pozniej to tak jakby ten program na dzialal,tak jakby gubił ten wgrany program.