Ta strona używa ciasteczek (plików cookies), dzięki którym może działać lepiej. Dowiedz się więcejRozumiem i akceptuję
Odbierz rabat na filament!

Zasilanie arduino przez gniazdo DC i osobne zasilanie silników

Autor Wiadomość
marek1707 



Posty: 3988
Pomógł: 429 razy
Otrzymał 578 piw(a)
Skąd: WAW
Programuję w:
C, asm
Wysłany: 06-05-2017, 18:30   

No tak, ale wciąż nie znamy założeń Twojego projektu: do czego to w ogóle jest? Zabawka do rysowania fajnych wzorków dzieciakom z przedszkola czy coś więcej? Od tego zależy jakie mechanizmy korekcji będziesz musiał użyć, niezależnie do tego czy tego chcesz czy nie. OK, już wiemy, że enkoderów nie lubisz a projekt jest budżetowy. A inne rzeczy o których pisaliśmy? Czy jesteś w stanie wygenerować akapit wiele mówiącego tekstu o swoich planach i przeznaczeniu tego robota? Nie każ nam się wszystkiego domyślać, nie szkoda Ci naszego czasu?
Polecany artykuł z FORBOT.PL:
Mikrokontrolery Microchip PIC. Część 2

Czyli co jest potrzebne aby zacząć tresować swojego Picusia. Zgodnie z zapowiedzią zajmiemy się teraz opisem n... Czytaj całość

Popularny artykuł » Kurs elektroniki - #2 - multimetr, pomiary, rezystory


Postaw piwo autorowi tego posta
 
 
BuxBleed 



Posty: 25
Skąd: Gliwice
Wysłany: 06-05-2017, 19:07   

Oki, przepraszam...

No generalnie to ma być projekt na "Noc Naukowców" czyli różnego rodzaju pokazy chemiczne, układów regulacji automatycznej, elektroniki, robotów tego typu rzeczy...

Zależało by mi na narysowaniu załączonego obrazka przedstawiającego logo mojego koła naukowego. Zrobiło by to dobre wrażenie na opiekunach koła a mi dało trochę fejmu :P . Zdaję sobie sprawę że ciężko będzie utrzymać robota po takiej trajektorii. Nie musi być też nie wiadomo jak dokładny, jeśli wyjdzie poza linię o kilka mm to raczej nic się nie stanie.

Na pokazach będzie sporo dzieciaków i głównym zamierzeniem było przyciągnięcie dużej uwagi z ich strony i nie tylko. Robot ma zachwycać dużą różnorodnością rysowanych rzeczy. Czas na realizację mam do października, może wydawać się długo lecz dla kogoś kto ma niemalże zerowe pojęcie o robotyce to tak średnio bym powiedział...


Bez tytułu.jpg
Żeby nie było wątpliwości, logo jednokolorowe, same kontury, bez wypełnienia.
Plik ściągnięto 1593 raz(y) 3.75 KB

Ostatnio zmieniony przez BuxBleed 06-05-2017, 19:08, w całości zmieniany 3 razy  
Postaw piwo autorowi tego posta
 
 
marek1707 



Posty: 3988
Pomógł: 429 razy
Otrzymał 578 piw(a)
Skąd: WAW
Programuję w:
C, asm
Wysłany: 12-05-2017, 09:22   

No to nie wygląda na wielkie wyzwanie. Właściwie żadnych sztywnych wymagań, jak zrobisz to będzie dobrze. Najprościej byłoby (najmniej liczenia i najprostsze algorytmy) wziąć dwa silniki krokowe, dokładnie między nimi, na odcinku łączącym punkty styku opony z podłożem, w połowie szerokości umieścić podnoszony pisak i jazda. Wtedy obrót platformy (symetryczny ruch silników w przeciwne strony) nie będzie powodował zmiany położenia pisaka a to wiele ułatwia. Z przodu jakaś kulka podporowa, akumulator, gotowa przetwornica boost, dwa drivery silników i komputerek. Jak chcesz wgrywać wzorki do rysowania? Czy coś przez te dni przemyślałeś? Będziesz musiał zaprząc do roboty trochę matematyki. Jak takim robotem narysowałbyś odcinek z punktu xy do punktu XY? Zauważ, że odcinek łączący punkty styku opon z podłogą będzie zawsze prostopadły do rysowanej krzywej.

Postaw piwo autorowi tego posta
 
 
BuxBleed 



Posty: 25
Skąd: Gliwice
Wysłany: 12-05-2017, 11:24   

Skonsultowałem się z moją opiekunką naukową i sporo się dowiedziałem.

Komunikacja z robotem będzie przez moduł Bluetooth, robot reaguje na komendy podawane przez komputer, program jest uprzednio wgrany na mikrokontroler, niestety w ofercie sklepu Botland moduł Bluetooth z programatorem był akurat niedostępny :/.

Co do oczujnikowania to najprawdopodobniej będzie system pozycjonowania absolutnego, u góry na suficie kamerka a drugi czujnik na robocie na pisaku. Generalnie to poprosiłem ją o pomoc w tej części projektu bo jest dla mnie najbardziej problematyczna :) .

Część arduino zasilana przez 6 akumulatorków Ni-Mh 1,2V/2450mAh , a część elektro-mechaniczna przez akumulator litowo-polimerowy 14,8V, napięcie zostanie dane na przetwornicę step-up żeby podnieść je do optymalnego do pracy robota. Nie potrzebuję dużego momentu obrotowego wytworzonego przez silniki krokowe dlatego przed doborem napięcia akumulatora, zostaną przeprowadzone testy z użyciem generatora laboratoryjnego z pełni obciążonym robotem aby dobrać optymalne napięcie, wystarczy tylko że robot ruszy się z miejsca. Pozwoli to wydłużyć czas pracy robota na akumulatorze. W sumie to tyle.

Popularny artykuł » Kurs STM32 F4 - #5 - Pomiar napięcia (ADC), DMA, STMStudio


Ostatnio zmieniony przez BuxBleed 12-05-2017, 11:26, w całości zmieniany 3 razy  
Postaw piwo autorowi tego posta
 
 
marek1707 



Posty: 3988
Pomógł: 429 razy
Otrzymał 578 piw(a)
Skąd: WAW
Programuję w:
C, asm
Wysłany: 12-05-2017, 11:56   

Nareszcie jakiś zestaw konkretów. Przyznam, że Pani Opiekun odważnie puszcza Cię na głęboką wodę.

NiMH??? W nowym projekcie??? Taki zestaw bardzo obciąży robota. I tak masz paskudne klocki silników i to wystarczy. Resztę zrób lekką, bo każdy nadmiar będzie miał wpływ na dynamikę. Nie, nie wystarczy by robot się poruszył. Żeby to nie wyglądało żałośnie powinien rysować całkiem żwawo a masa będzie wymagała więcej energii do przyspieszania - nie odzyskasz tego przy hamowaniu. Poza tym stosowanie dwóch różnych typów akumulatorów jest niepraktyczne. Musisz mieć dwie różne ładowarki i nic już dzisiaj nie przemawia na NiMHami: ani cena ani wielkość ani osiągi. Moim zdaniem jeden LiPol 3S do zasilania Arduino i przetwornicy boost będzie jak ulał. Lekki a pojemność dobierzesz sobie do wymiarów nadwozia i oczekiwanego czasu pracy. Poza tym nie masz wtedy praktycznie żadnych ograniczeń na prąd. Kupujesz takie dwa: jeden ładujesz a na drugim jeździsz. Szybka wymiana i masz właściwie pracę ciągłą. Wybór jest ogromny.

Jeśli całą inteligencję przeniesiesz na PC to zadanie się niby upraszcza, ale dochodzi mnóstwo kłopotów z kamerą, obróbką obrazu, detekcją obiektu, jego orientacji itd.. Za to robot wydaje się wtedy łatwy do zbudowania. Od razu planuj jego mechanikę tak, by cały jego dach był jednym wielkim znacznikiem ułatwiającym rozpoznanie położenia i kierunku platformy. Zastanów się nad rodzajem komend przesyłanych przez BT tj. nad podziałem kompetencji między PC a komputer pokładowy. Na robocie wystarczy zrobić interpolatory liniowe(?), które bardzo dobrze pasują do silników krokowych, bo sterowanie nimi to generacja ciągów impulsów odpowiednio rozłożonych w czasie.

Postaw piwo autorowi tego posta
 
 
BuxBleed 



Posty: 25
Skąd: Gliwice
Wysłany: 12-05-2017, 17:55   

Czyli będą potrzebne 3 przetwornice ? Jedna do zasilania arduino, druga do serwa a trzecia do zasilania silników ?

Postaw piwo autorowi tego posta
 
 
marek1707 



Posty: 3988
Pomógł: 429 razy
Otrzymał 578 piw(a)
Skąd: WAW
Programuję w:
C, asm
Wysłany: 14-05-2017, 00:23   

Jeśli potrzebujesz kilku różnych zasilań to musisz je sobie zrobić, to żadne odkrycie. Warto jednak sprawę dokładniej przemyśleć.
Np. Arduino ma swój stabilizator który wytrzyma te 12V z hakiem i dlatego zaproponowałem akumulator 3S. Przy pakiecie 4S musiałbyś już użyć czegoś dodatkowego a tak podpinasz aku do Vin i działa. Do serwa tylko podnoszącego pisak wystarczy stabilizator typu 7805. Pół sekundy pracy serwa nawet go nie nagrzeje a ponad 1A prądu na pewno wystarczy. Do silników przyda się wysokie napięcie i tu przetwornica boost jest konieczna. Tak więc jeden moduł przetwornicy i jeden tani stabilizator liniowy - nie wygląda to groźnie, prawda? Oczywiście jeśli dostaniesz jakieś dofinansowanie projektu to zamiana 7805 na coś impulsowego, dającego 5V/2A będzie bardzo elegancka. Zarówno boost do silników jak i buck do serwa kup gotowe. Na pewno nie powinieneś ich robić. Tu masz dwa przykładowe moduły które możesz użyć:
http://www.tme.eu/pl/details/df-dfr0123/moduly-zasilajace/dfrobot/dfr0123/
http://www.tme.eu/pl/details/amsr2-7805-nz/przetworniki-dcdc/aimtec/
Na pewno znajdziesz wiele innych.

Postaw piwo autorowi tego posta
 
 
BuxBleed 



Posty: 25
Skąd: Gliwice
Wysłany: 04-07-2017, 02:13   

Skończyłem właśnie całą mechanikę do robocika :-D
Podwozie wydrukowane na wymiar za pomocą drukarki 3D.

Teraz biorę się za część elektryczną, do tego użyte zostanie akumulator li-pol 3S 11,1V 2650mAh 40-50C. No i tutaj zaczynam mieć kolejne wątpliwości bo nie ogarniam właśnie tego poboru prądu poprzez odbiorniki :/.

1. Pytanie czysto teoretyczne. Dajmy na to że chce za pomocą tego akumulatora zasilić samo arduino poprzez Vin które spokojnie wytrzyma te 11,1V z tego co deklaruje jego producent ale co z tymi amperami ? Przez płytkę popłynie prąd o dużym natężeniu to ją chyba uszkodzi no nie ?


_20170704_015235.JPG
Podwozie robota
Plik ściągnięto 10 raz(y) 655.66 KB

Postaw piwo autorowi tego posta
 
 
marek1707 



Posty: 3988
Pomógł: 429 razy
Otrzymał 578 piw(a)
Skąd: WAW
Programuję w:
C, asm
Wysłany: 04-07-2017, 09:25   

1. Akumulator to nie zasilacz stabilizowany i nie daje tyle ile fabryka na opakowaniu napisała. Naładowane ogniwo LiPol ma 4.1-4.2V a rozładować możesz do 3V. Sam sobie policz jakie napięcia będziesz dostawał ze stosu 3 takich ogniw w czasie cyklu pracy aku.

2. To wyobraź sobie sytuację w której do swojego akumulatora o wydajności powiedzmy 50A i napięciu 12V dołączasz opornik 10k. Ogromny prąd go spali, prawda? Nie? To dlaczego ten sam akumulator ma zwęglić biedne Arduino?

3. Wybrałeś wielkiego kloca. Jak daleko chcesz zajechać albo jak długo chcesz się bawić na tym akumulatorze? Silniki będą musiały to dźwigać a i miejsca zajmuje sporo.

4. Gratulujemy wydruku i postępów prac, ale napisz także jak planujesz zrobić elektronikę. Jak rozwiążesz zasilanie driverów? Jak serwa? Najlepiej wrzuć pełny schemat - tradycyjnie skrytykujemy bezlitośnie.

Postaw piwo autorowi tego posta
 
 
deshipu 




Posty: 1844
Pomógł: 96 razy
Otrzymał 161 piw(a)
Programuję w:
Python, C, Lua
Należę do:
Nigmalabs
Moje roboty:
uKubik, pKubik, Katka, Tote

Wysłany: 04-07-2017, 09:26   

Poczytaj o prawie Oma, to powinno ci sporo rozjaśnić. Generalnie to odbiornik decyduje ile prądu będzie brać. Dlaczego Arduino miałoby brać dużo prądu?

No chyba, że chcesz do tego Arduino z drugiej strony podłączyć silniki -- to wtedy rzeczywiście przez płytkę popłynie duży prąd i się spali. Dlatego istnieją kontrolery silników z osobnym zasilaniem.

Postaw piwo autorowi tego posta
 
 
BuxBleed 



Posty: 25
Skąd: Gliwice
Wysłany: 10-07-2017, 00:08   

Oto schemat połączeń w robocie, trochę to trwało bo musiałem ogarnąć podstawy Eagle i zrobić kilka własnych elementów.


schemat polaczen.png
Mała literówka przy nazwie silnika
Plik ściągnięto 15 raz(y) 53.17 KB

Postaw piwo autorowi tego posta
 
 
marek1707 



Posty: 3988
Pomógł: 429 razy
Otrzymał 578 piw(a)
Skąd: WAW
Programuję w:
C, asm
Wysłany: 10-07-2017, 11:08   

1. Moduł BT nie potrzebuje takiej pojemności na zasilaniu. Wszystko czego mu trzeba ma już u siebie na pokładzie.

2. To samo z przetwornicą S7V8. To nie jest goły scalak więc wszelkie konieczne pojemności ma wbudowane na płytkę. Co najwyżej, w celu stłumienia zakłóceń produkowanych przez przetwornicę i dostających się do ogólnego zasilania dałbym na wejściu dławik szeregowy kilkanaście uH wytrzymujący min. 1A, ale to już naprawdę dmuchanie na zimne. Swoją drogą, skoro serwo będzie tylko co jakiś czas podnosiło pisak, to średnio będzie brało bardzo mało prądu i wystarczy tu taniutki stabilizator liniowy, np. LM317 (≈1zł?) w TO220, nawet bez radiatora. Przynajmniej nie śmieci i prądu daje więcej.

3. Skoro już tyle pinów poświęciłeś na sterowniki silników, to ja bym jeszcze dodał ich wyłączanie. W obu masz EN które wyłącza drivery - można to nawet spiąć razem i sterować z procesora. Nie zawsze podczas testów i pisania kodu będziesz korzystał z silników więc niech procesor ma możliwość oszczędzania zasilania. Tym bardziej, że "korkowe" pobierają mnóstwo prądu niezależnie od tego czy stoją czy się kręcą. Wyjścia sygnałów step dałbym z pinów wyjściowych timera 1 lub podobnego 16-bitowego.

4. Ciężko będzie kupić 42uF.

5. Skorzystałbym z jakiegoś innego UARTa. Arduino Mega ma ich kilka, a akurat UART0 jest podłączony wewnętrznie (przez oporniki) do mostka UART-USB. Pewnie daje się korzystać, ale po co ryzykować konflikty skoro trzy następne UARTy leżą wolne?

6. Dodałbym jakąś sygnalizację LED lub nawet mały wyświetlacz OLED, np. na I2C. Oczywiście cała komunikacja może iść przez BT, ale: a) to tylko radio więc nie zawsze działa, b) na początku pisania kodu nie działa wcale, c) LEDy czasem dużo szybciej i bardziej komunikatywnie pokazują co się w środku dzieje. Ich sterowanie jest proste a zapalenie diodki można bezkarnie wstawić w każde miejsce kodu (nawet w obsługę przerwania) nie powodując żadnych dodatkowych opóźnień.

7. Skoro na pokładzie będzie silnik DC i całkiem skomplikowany system zasilania (stabilizator w Arduino, zasilanie serwa i drivery silników krokowych) to zastanowiłbym się nad prowadzeniem mas i miejscem podłączenia akumulatora. Narysuj schemat samych zasilań. Te same moduły+akumulator, ale bez sygnałów logicznych, tylko 35V, 11V, 6V, 5V i masa. Pomyśl którędy będą płynęły prądy i jak to wszystko połączyć by nie głupiało.

Postaw piwo autorowi tego posta
 
 
BuxBleed 



Posty: 25
Skąd: Gliwice
Wysłany: 13-07-2017, 00:34   

1. Zastosowałem się co do tego.

2. Producent przetwornicy S7V8 podaje że podczas zasilania układu napięciem powyżej 9V lub gdy obciążenie będzie miało wysoką indukcyjność należy wlutować kondensator o pojemności co najmniej 33 uF pomiędzy VIN a GND, aby prąd startowy nie powodował występowania tzw. szpilek czyli nagłych skoków napięcia do wartości powyżej ustalonego poziomu. Jeśli amplituda szpilki przekroczy wartość dopuszczalna regulatora, może on ulec zniszczeniu.

3.Podłączyłem EN do arduino. Wyjaśnij proszę o co chodzi z tymi timerami bo tego nie rozumiem

4.Masz rację, chodziło mi o kondensatory 47uF a te już można łatwo dostać.

5.Podłączałem do UART0 moduł Bluetooth i wszystko działało dobrze, nie wiem co by miało pójść nie tak.

6.Też o tym myślałem, dodatkowo dodałbym zielony LED sygnalizujący ruch robota do przodu i czerwony gdy robot jedzie do tyłu. A gdy robot będzie skręcać ( sterowanie różnicowe ) to już nie wiem ;)

7. Nie wiem o co chodzi do końca Ci chodzi. Wydaje mi się że schemat jest zrobiony poprawnie, pomijając fakt, że nie pozostaje w zgodzie ze "sztuką" tworzenia schematów elektrycznych ;) . Podłączałem już układ do zasilania i nic się nie spaliło. Jednak nie miałem okazji przetestować poruszania się robota bo nie mam napisanego odpowiedniego programu.

Postaw piwo autorowi tego posta
 
 
marek1707 



Posty: 3988
Pomógł: 429 razy
Otrzymał 578 piw(a)
Skąd: WAW
Programuję w:
C, asm
Wysłany: 13-07-2017, 23:11   

2. To prawda, zbyt duże napięcie wejściowe załatwia regulator, ale zastanów się: skąd wezmą się szpilki zbyt wysokiego napięcia na wejściu? Przecież nie ze źródła zasilania. Problemem są źle poprowadzone lub zbyt długie przewody - to na ich indukcyjności - podczas gwałtownych zmian obciążenia robią się szpile, które musisz skompensować dodatkową, szybką pojemnością. Właśnie o tym pisałem w ostatnim punkcie.

3. AVR nie jest mocarzem prędkości a impulsów dla silników krokowych będziesz musiał wygenerować całe mnóstwo (tysiące?) w ciągu sekundy. I to dwa, niezależne ciągi o dwóch różnych częstotliwościach. Robienie tego programem i przerwaniami jest dużym obciążeniem procesora. A przecież masz timery. W Mega2560 masz - nawet tych 16-bitowych - kilka. Skorzystaj z nich, po to są. Ich wyjścia są wyprowadzone tylko na pewne piny - sprawdź to. Najwyżej nie użyjesz timera i nakręcisz silniki programem, ale zawsze będziesz mógł zrobić to porządnie. Gdy podłączysz STEPy do przypadkowych pinów, zamykasz sobie tę drogę.

5. Z UART0 korzysta bootloader i jest to jedyny używany przez tę płytkę w jakimś celu, wszystkie inne są wolne. Nic się nie dzieje, ale po co moduł BT ma widzieć tę transmisję i po co jego nadajnik ma walczyć z nadajnikiem mostka USB? Masz tu kilka sprzętowych UARTów, zmiana na któryś "czysty" przecież nie boli. Nie rozumiem obiekcji.

6. Zrób po prostu kilka LEDów. W czasie pisania programu sam zobaczysz co chcesz na nich wyświetlać, i tak teraz tego nie przewidzisz. To wcale nie muszą być jakieś ważne dla robota rzeczy, a np. stan jakichś wewnętrznych flagów czy czujników. W każdym nietrywialnym programie jest tego mnóstwo. W jednej wersji kodu będzie to coś, w kolejnej wersji kodu coś innego, po prostu je miej. To nic nie kosztuje a będziesz miał fajne "okienko" do bezpośredniego podglądu ciekawych zdarzeń lub stanów.

7. Schemat ideowy nie pokazuje jak poprowadzisz, a co najważniejsze gdzie podłączysz kable. A przewody masy i zasilania prowadzą duże prądy. Duże prądy to duże spadki napięć a spadki napięć to błędy w sygnałach logicznych. To nie grozi spaleniem, ale dziwnym zachowaniem systemu w czasie pracy - już tak. Szczególnie gdy kabeki są za cienkie i/lub zbyt długie.

Postaw piwo autorowi tego posta
 
 
BuxBleed 



Posty: 25
Skąd: Gliwice
Wysłany: 23-07-2017, 15:44   

Podłączyłem robota ( przy podłączonych ale nie używanych silnikach ) i nic się nie spaliło. Podłączenie zasilania powoduje nagły, chwilowy ruch serwomechanizmu który akurat powinien stać w miejscu.

Pytanko do znawców, w jaki sposób mogę podczepić się do ogniwa li-pol żeby pobrać prąd ? Ja używałem zrobionego przewodu z krokodylkami które wpinałem do takiego konektora ( jak na zdjęciu ) z drugiej strony było wyjście DC które wpinałem do odpowiedniego wejścia na płytce stykowej. To rozwiązanie działa ale ma jedną wadę, otóż krokodyli zsuwają się z tych końcówek i jest spore ryzyko zwarcia. Słyszałem że dobrym rozwiązaniem było by użycie kostki elektrycznej ale niestety jestem zielony w tym temacie, może coś doradzicie ?


Konektor.jpg
Plik ściągnięto 25 raz(y) 71.22 KB

Ostatnio zmieniony przez BuxBleed 23-07-2017, 15:44, w całości zmieniany 1 raz  
Postaw piwo autorowi tego posta
 
 
Wyświetl posty z ostatnich:   
Odpowiedz do tematu
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
Nie możesz załączać plików na tym forum
Możesz ściągać załączniki na tym forum
Wersja do druku

Skocz do:  

Nie rozwiązałeś swojego problemu? Zobacz podobne tematy: Zasilanie robotów... Bateria z komórki do... akumulator 6V, 2Ah- ... Zasilanie serw....
lub przeszukaj forum po wybranych tagach: arduino, dc, gniazdo, osobne, przez, silnikow, zasilanie, zasilanie


Powered by phpBB modified by Przemo © 2003 phpBB Group
Popularne kursy: Arduinopodstawy elektroniki