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

Oświetlenie, przetwornice DC/DC, manetki, panele słoneczne, itp. - Licznik rowerowy minimum

wwojciech - Pon 14 Mar, 2016

Można jeszcze prosić o dodanie na schemacie jak wpiąć ACS711EX? Gdyby tak jeszcze dodac pomiar temperatury silnika to wiecej do szczescia nie trzeba:)
pjwasowicz - Pon 14 Mar, 2016

W załączniku dodałem schemat podłączenia modułu czujnika. Wyjście z potencjometru trzeba połączyć do pinu (A1) 19 płytki. Prąd należy mierzyć na kablu (-) baterii. Kalibracja pomiaru prądu jest bardzo prosta. Wystarczy wyzerować za pomocą potencjometru wskazanie licznika. Czujnik mierzy pobór prądu w obie strony, dlatego wykorzystałem tą właściwość do zerowania licznika energii. Wystarczy włączyć na chwilę licznik podczas ładowania, aby wyzerować tą wartość. Można też mierzyć energię dostarczoną do pakietu podczas ładowania.

Wiem, że można wszystko złożyć na module ESP ale musiałbym całkowicie od nowa zlutować cały licznik, a tego mi się specjalnie nie chce robić. Modułu ESP2866 można nie dołączać. Licznik będzie działał, tylko niemożliwe będzie ustawianie jego paramettrów z przeglądarki internetowej.

Szwagier - Pon 14 Mar, 2016

ten dzielnik z rezystora 2,2k i potencjometru 2,2k można zastąpić innym, np 10k/10k..?
pjwasowicz - Pon 14 Mar, 2016

Oczywiście. Moduł do pomiaru prądu mam umieszczony poza licznikiem. Im dzielnik będzie miał większą rezystancję, tym całość będzie mniej odporna na zakłócenia.

Ja użyłem tego modułu.

Moduł


I Jeszcze jedno:

W kodzie podałem nieprawidłowe współczynniki do przeliczania prądu.

Powinno być

const float currentCoef = 73.3 / 1024.0;
const float currentConst = -36.65;


zamiast

const float currentCoef = 60.0/1024.0;
const float currentConst = -30;

Szwagier - Pon 14 Mar, 2016

Od dawna chodziło za mną zrobienie swojego licznika - zacząłem nawet pisać program, graty mam już od dawna, ale prace nad rowerami przyspieszyły i w międzyczasie kupiłem "watomierze V02" od kolegi z forum. Ale Twoja konstrukcja ponownie mnie zmotywowała - w domu zagłębię się w kod, jestem ciekawy, co i jak rozwiązałeś (co robisz w przerwaniach, co w pętli głównej itd).

Pomiar napięcia z czujnika robisz bezpośrednio kontrolerem - jak z dokładnością, zakłóceniami? Ja mam już czujnik Allegro ACS758, ale też oprócz tego kupiłem przetwornik A/C 16 bit - tylko czy warto z nim kombinować, jeśli pomiar mikrokontrolerem jest wystarczająco dobry..?

pjwasowicz - Pon 14 Mar, 2016

Pomiar robię bezpośrednio kontrolerem. Nie zauważyłem wpływu zakłóceń na działanie licznika. Na przerwaniach działa tylko impulsator od koła, bo tam jest potrzebny dokładny pomiar. Reszta działa normalnie w pętli.
madejp - Pon 14 Mar, 2016

@pjwasowicz Rozumiem. A do tego muszę się wycofać z twierdzenia, że to co robisz da się zrobić na ESP. ESP ma tylko jeden kanał do ADC, więc trzeba by wybrać czy mierzymy prąd czy napięcie albo używać jakiegoś dodatkowego układu.

@Szwagier Jeśli chodzi o użycie 16bit ADC, to musisz się zdecydować, czy chcesz się bawić w zużycie prądu na postoju (z 16bit ADC jesteś wstanie uzyskać dokładność do 1mA przy 50A czujniku), czy wystarczy Ci obliczanie zasięgu (dokładność ok 50 mA przy 10bit ADC w ATMegach). :)

Ja się przymierzam do zrobienia monitoringu cel w baterii na BT/WiFI stąd można zauważyć pewną manie na punkcie bitów ADC. :mrgreen:

pjwasowicz - Wto 15 Mar, 2016

Zajmowałem się trochę przetwornikami AD, i rozdzielczość 16 bitów jest praktycznie nie do osiągnięcia. Zwłaszcza w rowerze, gdzie występują duże zakłócenia.
madejp - Wto 15 Mar, 2016

No tak, ale tylko w czasie jazdy. Gdy odstawiasz rower po jeździe zakłóceń już nie ma i wtedy możesz mierzyć ile miesięcy postoi bez ładowania - to jest zabawa, ale jak ktoś lubi. ;)
Do sprawdzania pojemności baterii i obliczania zasięgu 10bit w zupełności wystarczy.

A jak już się chwalisz pewnym doświadczeniem, to się podpytam. Czy warto dać jakiś kondensator na wejściu ADC jeśli interesuje nas całka, a nie chwilowa wartość prądu?

pjwasowicz - Wto 15 Mar, 2016

Do przetwornika na wejście dałbym nie tylko kondensator ale i rezystor, aby obwód całkujący zrobić. Do przetwornika o tej rozdzielczości trzeba oddzielać masę cyfrową od analogowej i ekranować całość. Np czujnik ACS758 ma nieliniowość 1%, więc to co zmierzy przetwornik będzie bardziej pobożnym życzeniem, niż prawdziwym pomiarem. W praktyce osiągnięcie prawdziwej dokładności pomiaru większej niż 12 bitów jest bardzo trudne.
Szwagier - Wto 15 Mar, 2016

pjwasowicz napisał/a:
Do przetwornika o tej rozdzielczości trzeba oddzielać masę cyfrową od analogowej i ekranować całość.

No właśnie - a jak to uzyskałeś stosując gotowy układ Arduino? Tam nawet nie ma kondensatora między zasilaniem analogowym a masą, a co dopiero mówić o ekranowaniu części analogowej...

pjwasowicz - Wto 15 Mar, 2016

Napisałem, że do przetwornika o "tej rozdzielczości" czyli 16 bitów jest to niezbędne. W przypadku arduino i przetwornika 10 bitów nie ma to znaczenia. Uważam, że pakowanie przetwornika 16 bitów do roweru nie ma sensu. 16 bitowy przetwornik ma teoretyczną dokładność 0,0015 %. Przy napięciu odniesienia 4V najmłodszy bit zmieni się, gdy napięcie wejściowe zmieni się 60 mikrowoltów. Poza tym przeczytaj w karcie katalogowej jaką twój przetwornik ma dokładność, a jaką rozdzielczość. To są zupełnie różne parametry.


Powered by phpBB modified by Przemo © 2003 phpBB Group