Skocz do zawartości

Mostek L298N jak zmierzyć prąd przy użyciu pinów CSA/CSB oraz Arduino?


Pomocna odpowiedź

Napisano

To on:

I te dwa piny po prawej CSA i CSB, jak mogę przy ich użyciu zmierzyć pobierany prąd przez kanał?

Mam je podłączyć bezpośrednio do analogowych wejść w Arduino i jakoś przeskalować wartości odczytane z Arduino z Voltów na Ampery, czy może dodatkowo jeszcze muszę zrobić jakiś dzielnik napięcia?

Jak dotąd zasilam mostek z baterii 9V, jak przyjdzie mi w tym tygodniu pakiet lipo 2S to będzie z tego zasilany.

Elektronicy zazwyczaj rozmawiają ze sobą za pomocą schematów. Na podstawie zdjęcia będę strzelał, że zamiast zwory trzeba wstawić rezystor pomiarowy, ale mogę się mylić.

Mi też tak się wydaje, ale pomiar nie będzie taki prosty. Ten mostek ma dwa specjalne wyprowadzenia, przez które "wypływa" prąd silnika do masy, niezależnie do kierunku wirowania wału. Zwykle są one zwarte do masy. W większości tego typu modułów - ścieżką a tu, na szczęście, zworkami. Wyjmując zworkę musisz nadal zapewnić przepływ prądu wiec wstawiasz coś, co prąd zmierzy. Najprostszy pomysł to rezystor, ale rezystor powoduje spadek napięcia przez co silnik "zobaczy" tego napięcia mniej. Mając ADC w Arduino z zakresem pomiarowym np. 3.3V musiałbyś uzyskać aż 3.3V przy pełnym prądzie rezystora/silnika żeby dobrze mierzyć. To może i miałoby sens przy 30V zasilaniu i prądzie 100mA, ale w Twoim przypadku nie dość że zje to większość napięcia jakie zostaje dla silnika (sam mostek zjada ponad 2V) to jeszcze przy 0.5A prądu wygeneruje 1.6W mocy strat w ciepło. Dlatego w przypadku pomiarów prądu stosuje się jak najmniejsze rezystory i wzmacniacze napięcia. Wstawiając rezystor np. 0.1Ω ten sam prąd 0.5A wytworzy napięcie 0.05V i dlatego musisz je wzmocnić jakieś 60 razy by zaspokoić ADC. Za to moc strat wyniesie wtedy tylko 25mW. Sprawdź w danych katalogowych L298 jak duże może być napięcie odłożone na rezystorze pomiarowym by mostek nie zaczął wariować - to też jest ograniczenie.

Możesz poratować się obniżeniem napięcia referencvjnego Vref przetwornika ADC, ale zbyt niskie powoduje spadek dokładności. Można tu trochę pożonglować liczbami i może znajdziesz swoje optimum.

Możesz tez wstawić moduł niekorzystający z opornika a badający przepływ prądu poprzez pomiar pola magnetycznego, taki jak kiedyś wskazałem. Wadą tego jest jednak mała dokładność w zakresie <1A, ale przynajmniej nie powoduje to strat mocy. Wtedy wyciągasz zworkę i dwa druty przepuszczasz przez taki moduł a na wyjściu dostajesz napięcie proporcjonalne do prądu. Niestety (kolejne) prąd jest w zworkach jednokierunkowy, więc marnujesz połowę możliwości bipolarnego pomiaru w module i jego zakresu.

Elektronicy zazwyczaj rozmawiają ze sobą za pomocą schematów. Na podstawie zdjęcia będę strzelał, że zamiast zwory trzeba wstawić rezystor pomiarowy, ale mogę się mylić.

To jest dokumentacja: http://wiki.sunfounder.cc/images/a/ad/L298N.pdf

A ten rezystor pomiarowy to już jest? Czy mam go wlutować i pomiędzy co, a co? I ten rezystor może być np. 34 Om, bo taki wylutowałem z myszki, a 0.5 Oma nie mam na stanie.

Tak jak na tym rysunku ma być, czy do Arduino ma iść zza rezystora, a nie przed?

[ Dodano: 30-10-2017, 10:29 ]

...

Sprawdził by Pan schemat, który wstawiłem powyżej, czy tak właśnie ten rezystor i podłączenie do Arduino ma być?

I mam dwa rezystory 34Ω, ale to chyba za dużo co?

Nie wiem czy dobrze liczę Moc strat= Prąd^2 * Rezystancja = (0.5A)^2 * 34Ω = 8.5W ??

@EDIT

Taki układ by się idealnie nadał:

Może to nie jest dokładnie ten sam moduł (bo jednak zdjęcia są inne), ale idea jest jedna: mostek L298 ma dwa piny SEN_A i SEN_B które są wyciągniete na schemacie (ostatnia strona) na zworki, a te zwierają to do masy. Wstawienie rezystora zamiast zwory daje pomiar prądu.

EasyPeasy, weź się trochę ogarnij. Miałeś sprawdzić jakie napięcie na tym pinie (odkładane na rezystorze) toleruje scalak L298. Zamiast tego piszesz jakieś bzdury o rezystorach 34Ω. No przecież to prawo Ohma, tego nie kumasz a napędy chcesz robić? Sprawdziłem za Ciebie: maksymalnie możesz tu odłożyć 2V, ale czy chcesz tego? Zastanów się dobrze, każdy mV to czysta strata. Weź prąd swoich silników, nie wiem, to tylko przykład, powiedzmy 1A i napięcie odkładane na rezystorze przyjmijmy 500mV. Z tego masz od razu R=U/I czyli 0.5Ω i P=U*I czyli 500mW. Jak chcesz mierzyć prąd 0.5A rezystorem 34Ω? Nie dość, ze moc jest absurdalna to jeszcze musisz mieć 17V na sam pomiar a gdzie jeszcze mostek i silnik, skąd weźmiesz tyle woltów? Skup się.

Schemat na LT jest od czapy, przecież mówimy o pomiarze od strony masy. Do czego by się nadał? Gdzie byś go włączył? Przecież nie w silnik bo ten układ jest jednokierunkowy a zasilanie mostka jest sumą obu silników bo masz wspólny zacisk zasilania na oba kanały. Nie potrzebujesz pomiaru na szynie zasilania, po to masz rezystory stojące na masie by z nich korzystać - to jest łatwiejsze, nieprawdaż?

Tak, musisz napięcie odłożone na rezystorze podłączyć do ADC Arduino, ale nie tak prosto. W takich obwodach jest mnóstwo śmieci silnikowych a szpilki od komutacji wywołują na rezystorach pomiarowych szpilki napięcia. Szkoda, by Arduino podziałało kilka sekund i skończyło ze spalonym wejściem analogowym. Musisz "po drodze" zrobić dwie rzeczy: dopasować napięcie z rezystorów do zakresu ADC i odfiltrować zakłócenia.

Na razie zajmij się napięciem - jeden krok na raz. Napisz jaki prąd będziesz mierzył w jednym mostku (bo to chyba dwa Twoje silniki) i jaki rezystor zdecydowałeś się wstawić. Uzasadnione konkrety, bez żadnego lania wody i jęczenia że czegoś tam nie masz: opór i moc. Albo to robisz (a nie zbudujesz tego ze sznurka i pokrywki od słoika) albo bijemy pianę.

Na razie zajmij się napięciem - jeden krok na raz. Napisz jaki prąd będziesz mierzył w jednym mostku (bo to chyba dwa Twoje silniki) i jaki rezystor zdecydowałeś się wstawić. Uzasadnione konkrety, bez żadnego lania wody i jęczenia że czegoś tam nie masz: opór i moc. Albo to robisz (a nie zbudujesz tego ze sznurka i pokrywki od słoika) albo bijemy pianę.

2A i przy 2A wyłączam kanał pinem ENA nie interesuje mnie kierunek / znak prądu biorę rezystor 0.1 om i chcę wzmocnić napięcie z niego 20 krotnie żeby przy 2A spadek wyniósł 4V. I chcę zrobić to poprzez układ, który Tobie pokazałem, ale ty to zanegowales i napisałeś w taki sposób, że nic nie rozumiem, tzn. rozumiem to, że u mnie rezystor pomiarowy jest pomiędzy zasilaniem i masa, a nie zasilaniem i obciążeniem jak na schemacie. Ale pzecież chyba muszę wzmocnić ten sygnał właśnie poprzez wzmacniacz operacyjny, bo niby jak inaczej, więc go kupię. Napisz co mam kupić, bo ja do najbliższego sklepu elektronicznego mam 50 kilometrów, teraz tam właśnie jadę po rezystory i wzmacniacz operacyjny.

[ Dodano: 30-10-2017, 13:33 ]

Jeszcze raz proszę żeby Pan powiedział mi teraz co mam kupić, bo za około godzinę będę w sklepie elektronicznym oddalonym o 50 km, a kolejny raz będę dopiero za tydzien. Rozumiem, że w naszym przypadku mamy do czynienia z sytuacją A, a nie B dlatego też tamten schemat nie miał sensu w zastosowaniu. Ja kupuję w takim razie rezystory 0.1/0.2/0.5/1 Oma jako Rsense (gdybym zmienił zdanie i chciał zastosować inny) rezystory 100k/10k/5.1k/2k/200/100 Om do uzyskania odpowiedniego wzmocnienia op-amp'a, jakiś wzmacniacz operacyjny różnicowy do wzmocnienia sygnału dla ADC oraz rezystory 10k i kondensatory 100nF do lowpass filter RC jak będzie coś jeszcze potrzebne proszę napisać.article-2014january-current-sense-amplifiers-fig1.jpg?la=en-BE&ts=f233e322-8315-4a9c-93f3-c4eb231cd899

[ Dodano: 30-10-2017, 13:41 ]

To może takie coś się nada? Tylko dobrać stosunek dwóch rezystorów 20, a nie 100? 😉28_circuit_1.jpg

__________

Komentarz dodany przez: Treker

Tak, kup jakieś rezystory pomiarowe <= 1Ω, najwyżej będziesz łączył je równolegle jeśli nie będzie wystarczająco małych rezystancji.

Tak, musisz zbudować wzmacniacz nieodwracający z czegokolwiek, np. LM258, 358, 324, cokolwiek co umie pracować w pobliżu swojej masy. Są tego setki. Nie nadają się stare 741, typowe wzmacniacze audio, itp. W razie czego pisz tutaj.

Tak musisz mieć różne rezystory w domu, może uda się kupić jakiś komplet, szereg E6 od np. 10Ω do 1MΩ po 10-20 sztuk w jednym pudełku? Czasem takie mają za grosze.

Tak, przydadzą się też kondensatory do filtrowania, Jakieś małe, ceramiczne 1nF, 10nF, 100nF, do tego elektrolity 10 i 100uF na niskie napięcia: 10, 16 lub 25V.

Tak, kup jakieś rezystory pomiarowe <= 1Ω, najwyżej będziesz łączył je równolegle jeśli nie będzie wystarczająco małych rezystancji.

Tak, musisz zbudować wzmacniacz nieodwracający z czegokolwiek, np. LM258, 358, 324, cokolwiek co umie pracować w pobliżu swojej masy. Są tego setki. Nie nadają się stare 741, typowe wzmacniacze audio, itp. W razie czego pisz tutaj.

Tak musisz mieć różne rezystory w domu, może uda się kupić jakiś komplet, szereg E6 od np. 10Ω do 1MΩ po 10-20 sztuk w jednym pudełku? Czasem takie mają za grosze.

Tak, przydadzą się też kondensatory do filtrowania, Jakieś małe, ceramiczne 1nF, 10nF, 100nF, do tego elektrolity 10 i 100uF na niskie napięcia: 10, 16 lub 25V.

No dobra mam wszystko ten układ powyżej jest dobry? (pomijając fakt, że ktoś pomyli 15pF z 1.5nF) jak zmienię tylko rezystor 1k na 4.7k dam Rsense=0.1Om oraz kondensator 1nF co da f_odcięcia=1592Hz i Vout = ( 1+100/4.7) * 0.1 *I_load = 2.227 *I_load ???

Jak mam Ci odpowiedzieć, skoro nie napisałeś jaki wzmacniacz kupiłeś? Nie każdy tu zadziała.

W ogólnym sensie wzmacniacz nieodwracający jest OK. Zauważ jednak, że sterujesz go ze źródła o bardzo małej impedancji wyjściowej (rezystora pomiarowego), siejącego zakłóceniami, dzięki silnikowi straszliwie. Czułe wejście wzmacniacza długo tego nie wytrzyma. Ograniczenie jego pasma jest ważne, ale musisz poprzedzić sam wzmacniacz zwykłym filtrem pasywnym. Zanim doprowadzisz sygnał do wejścia (+), przepuść go zatem przez dolnoprzepustowy układ RC, np. 1k/100nF. To powinno wyciąć wszystko czego nie będzie wstanie udźwignąć wzmacniacz i jednocześnie zabezpieczy go przed szpilami. Dawaj kompletny schemat, niech będzie widać jakiś postęp. Z czego będziesz ten wzmacniacz zasilał?

Jak mam Ci odpowiedzieć, skoro nie napisałeś jaki wzmacniacz kupiłeś? Nie każdy tu zadziała.
LM358 mogłeś mi podać jaki mam kupić żeby zadziałał z tym schematem:D Zadziała z tym co kupiłem? Jak nie to jaki układ zastosować w zamian? ///// Z czego będę zasilał hmm pewnie złym trafem byłoby zasilenie go z tego właśnie mostka z 5V, więc zostaje jeszcze Arduino albo power bank jakiś mały (najwyżej bym na płytce prototypowej wstawił port USB i wtedy i Arduino i wzmacniacz z tego (bo serwa mam już oddzielone zasilanie), więc chciałem właśnie z tych 5V z mostka Arduino i wzmacniacz, bo i tak muszę już wozić Lipola do mostka i 4xAA do serwa.

[ Dodano: 30-10-2017, 16:03 ]

Dojadę do domu za godzinę podłącze na płytce stykowek i wstawię schemat.

[ Dodano: 30-10-2017, 16:19 ]

I jak zrobię ten filtr RC przed podaniem sygnału na wejście + wzmacniacza to drugi raz też muszę dać ten filtr co jest na schemacie czy już nie?

Przecież wypisałem Ci kilka najpopularniejszych i tanich wzmacniaczy, kupiłeś jeden z nich więc to chyba dobrze, nie? Tak, 358 umie działać z niesymetrycznym zasilaniem, nada się. Najpierw pokazujesz schemat a dopiero później, po akceptacji łączysz na stykówce. Nie chce mi się prowadzić kolejnej dyskusji o tym jak naprawić popsuty/spalony układ.

Nie rozumiem pytania. Masz zrobić filtr RC a za nim wzmacniacz. Pytam o zasilane, bo LM358 ma bipolarne wyjście i ledwo dociąga do 4V. Założyłbym raczej jakieś max 3.5V na wyjściu jako pełną skalę i tak dobierał wzmocnienie by tyle osiągał przy pełnym prądzie. Dlatego potrzebny jest schemat, żebyśmy wszyscy wiedzieli co z tego wszystkiego zrozumiałeś. Tym razem będziesz musiał wziąć ołówek do ręki i coś skrobnąć, dłużej nie da się na gotowcach.

Acha, rysujesz LM358 jak trójkąt, żadne tam rysowanie obudowy z 8 nóżkami. Na schemacie mają być numerki pinów scalaka, numery elementów (R1, R2) żeby było jak się do nich odnosić w tekście i oczywiście wartości.

No to do dzieła..

I zastanów się jak będziesz to uruchamiał. Nie potrzebujesz silnika, ale potrzebujesz źródło regulowanego, małego napięcia i oczywiście multimetr. Zaproponuj jak będziesz ten układ mierzył po zbudowaniu, zanim jeszcze cokolwiek podłączysz do Arduino.

Przecież wypisałem Ci kilka najpopularniejszych i tanich wzmacniaczy, kupiłeś jeden z nich więc to chyba dobrze, nie? Tak, 358 umie działać z niesymetrycznym zasilaniem, nada się. Najpierw pokazujesz schemat a dopiero później, po akceptacji łączysz na stykówce. Nie chce mi się prowadzić kolejnej dyskusji o tym jak naprawić popsuty/spalony układ.

Taki schemat mam, jak zjem obiad to dopiszę piny itd.

Powiedział Pan, że ten wzmacniacz ledwo dociąga do 4V, więc trzeba by rezystor 4.7k zamienić na większy, bo przy tym Dla 2A by musiał dać 4.454V mogę dać szeregowo 4.7k + 1k wtedy przy 2A 3.709V lub 6.8k wtedy dla 2A będzie 3.141V.

I nie mam regulowanego źródła napięcia, dlatego będę musiał jednak podłączyć ten silnik pod jeden kanał. I będę mierzył napięcie, pomiędzy masą mostka, a wyjściem z wzmacniacza.

W takim razie pokaż jak to chcesz zmontować. Opornik pomiarowy musi być przy samym mostku. Nie wysyłaj zasyfionego i dużego prądu gdzieś daleko kabelkami do płytki stykowej. Wlutuj go bezpośrednio zamiast zwory lub pod nią, od spodu płytki. Dopiero napięcie z niego zdjęte puść kabelkami dalej. Jeżeli filtr RC możesz zamontować tuż przy nim, zrób to. Jeden z tych kabelków to będzie masa. Przez odpowiedni montaż i wybór punktu dołączenia do zasilania zadbaj, by jak najmniej przez nią płynęło, bo tutaj każdy mA odłożony na rezystancji kabelka będzie się bezpośrednio przekładał na błąd pomiaru. Wzmacniacz wzmacnia napięcie względem swojej masy, niech będzie ona jak najbliższa masie opornika pomiarowego. Nigdy nie puszczaj mostka bez zwory lub bez opornika.

Zanim podłączysz silnik, napisz sobie program do łatwej regulacji obrotów. Może wciągaj liczbę z konsoli i zamieniaj ją na PWM silnika żebyś nie musiał kompilować i wgrywać wciąż nowego kodu. Jednym słowem zrób sobie narzędzia.

W takim razie pokaż jak to chcesz zmontować. Opornik pomiarowy musi być przy samym mostku. Nie wysyłaj zasyfionego i dużego prądu gdzieś daleko kabelkami do płytki stykowej. Wlutuj go bezpośrednio zamiast zwory lub pod nią, od spodu płytki. Dopiero napięcie z niego zdjęte puść kabelkami dalej. Jeżeli filtr RC możesz zamontować tuż przy nim, zrób to. Jeden z tych kabelków to będzie masa.

Ok biorę się do lutowania będę musiał dwa rezystory równolegle, bo mam tylko 0.2 Om

[ Dodano: 30-10-2017, 19:33 ]

Przylutowałem dwa rezystory równolegle do styku na 2 piny, żeby później bez odlutowywania móc zworkę wsadzić zamiast rezystora, wygląda to tak:

Teraz do tych nóżek od 2 rezystora wlutuję w powietrzu filtr RC i dopiero z niego kabelki, albo tylko rezystor z filtru RC, a do masy kabelek i już na płytce stykowej kondensator. Jak myślisz?

[ Dodano: 30-10-2017, 19:52 ]

Ja bym to widział tak, chociaż nie wyobrażam sobie oddać takiej "genialnej" konstrukcji na inżynierkę:

Teraz do tych dwóch odstających kawałek drucików przylutuję przewody i dam już je do płytki stykowej tzn. mam na myśli odfiltrowany sygnał dla wzmacniacza i masę mostka.

[ Dodano: 30-10-2017, 20:34 ]

Tak to ostatecznie wygląda (bez zasilania)

Tj. czerwony przewód jako napięcie zza filtru do pinu 3 (+) rezystor 4.7k między masą mostka, a pinem 2 (-) rezystor 100k i kondensator 1nF równoległe połączone między pinami 2 (-) i 1 (out), dobrze?

Przez odpowiedni montaż i wybór punktu dołączenia do zasilania zadbaj, by jak najmniej przez nią płynęło, bo tutaj każdy mA odłożony na rezystancji kabelka będzie się bezpośrednio przekładał na błąd pomiaru. Wzmacniacz wzmacnia napięcie względem swojej masy, niech będzie ona jak najbliższa masie opornika pomiarowego. Nigdy nie puszczaj mostka bez zwory lub bez opornika.

Teraz mam pytania co do tego:

1. Zasilanie -> z czego zasilić ten wzmacniacza może być te 5V z mostka?

2. Powiedzmy, że zasilam to z baterii AA + z baterii muszę podłączyć do pinu 8 (Vs) a minus do pinu 4 (GND wzmacniacza)?

3. Czy masa wzmacniacza i masa mostka muszą być połączone?

[ Dodano: 30-10-2017, 22:07 ]

Czekając na Twoją odpowiedź o zasilaniu i połączeniu masy.

Podłączyłem sobie miernik ustawiony na mV pomiędzy czerwony przewód z napięcie odkładającym się na równolegle połączonych rezystorach pomiarowych po odfiltrowaniu oraz czarnym przewodem z masą mostka.

I co się okazało, że przy podłączeniu dwóch silników do jednego kanału (tak jak mam w swoim pojeździe), ustawieniu PWM'a na 255 i daniu całą w przód, przy obrocie kół w powietrzu odczyt był około 17mV, a przy zatrzymaniu silników maksymalnie doszło do 40mV, czyli niby maksymalny prąd przy zatrzymaniu silników to tylko 0.4A, a nie 2A (ciekawe czym jest to spowodowane tym, że zasilam to nadal z baterii 9V, bo Lipol 2S jeszcze nie doszedł, czy po prostu tym, że silniki tyle biorą, czy jeszcze czymś innym?)

W takim razie będzie trzeba zmienić rezystor 4.7k na mniejszy żeby przy tych 40mV wskazywało te 3.5V i będę musiał wyłączać silniki przy prądzie około 0.36A, bo wtedy się zatrzymywały.

Także nadal czeka na Twoją odpowiedź, bo nie wiem jak zasilić ten wzmacniacz.

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...