EnderDpl Listopad 9, 2020 Udostępnij Listopad 9, 2020 udało i się naprawić ten błąd ale teraz chciałbym zrobić przycisk który odpala program arduino który włącza silniczek raz w jedną a raz w drugą stronę i kąpletnie nie wiem jak to zrobić. A arduino kupiłem jakieś tydzień temu
jas123 Listopad 9, 2020 Udostępnij Listopad 9, 2020 (edytowany) Wszystko masz ładnie pokazane w kursie, jedyne co musisz zrobić to podpiąć silnik , przycisk i dodać prostą pętlę. Załóżmy że przycisk jest podłączony do pinu 2 i masy: void setup() { pinMode(6, OUTPUT); //Sygnał PWM silnika nr 1 digitalWrite(6, HIGH); //Ustawiamy (na stałe) stan wysoki na pinie 6 pinMode(7, OUTPUT); //Sygnały sterujące kierunkiem obrotów silnika nr 1 pinMode(8, OUTPUT); pinMode(2,INPUT_PULLUP);//ustawiamy przycisk jako wejście z rezystorem podciągającym } } void loop() { if(digitalRead(2)){// jeśli wartość odczytana z pinu 2 jest różna od 0 (w tym przypadku jedyna możliwa wartość inna niż 0 to 1 - stan wysoki) to: digitalWrite(7, LOW);//wyłączamy silnik digitalWrite(8, LOW);// }else{//w przeciwnym przypadku(jedyny inny przypadek to 0 - stan niski): digitalWrite(7, LOW); //Silnik nr 1 - obroty w lewo digitalWrite(8, HIGH); delay(3000); digitalWrite(7, HIGH); //Silnik nr 1 - obroty w prawo digitalWrite(8, LOW); delay(3000); } } Gdy puścisz przycisk to program zatrzyma się dopiero po wykonaniu całej pętli. Jeśli chcesz żeby zatrzymał się od razu to trzeba wprowadzić przerwania (jeśli się mylę to mnie poprawcie). Edytowano Listopad 9, 2020 przez jas123 1
edurobokids Listopad 15, 2020 Udostępnij Listopad 15, 2020 (edytowany) Nie znalazłem w opisie wartości kondensatorów. Przypuszczam (patrząc na ich wygląd), że jeden z nich to elektrolit, a drugi ceramik. Czy mógłby mi ktoś odpisać jakie ich wartości byłyby najlepsze? Podobnie jak w lekcjach wcześniejszych nie wypatrzyłem wartości potencometrów. Edytowano Listopad 15, 2020 przez edurobokids 1
Treker (Damian Szymański) Listopad 16, 2020 Udostępnij Listopad 16, 2020 @edurobokids witam na forum W zestawach do tych kursów są tylko jedne kondensatory, więc na pewno masz właściwe elementy. Te wartości nie są też kluczowe - w przypadku kondensatorów może to być 100 nF i 100 uF, ale inne wariacje też się sprawdzą
TomekTarczynski Listopad 16, 2020 Udostępnij Listopad 16, 2020 Podłączyłem wszystko zgodnie ze schematem i działa, natomiast nie do końca rozumiem efekty pewnych modyfikacji: W momencie jak odłączam zasilania zewnętrzne (arduino nadal podłączone do USB) to diody nadal świecą, natomiast nie tak jasno. Moje rozumienie jest takie, że nawet jak mam tylko zasilanie poprzez USB to na VIN będę miał takie napięcie jak na wejściu czyli 5V, dobrze rozumiem? Czy gdybym miał zamiast diod silnik to czy byłoby ryzyko zniszczenia układu za dużym prądem pobieranym przez silnik? Dodatkowo odłączam przewód od pinu VIN i nic się nie zmienia. Skąd się bierze napięcie zasilające diody? Czy jest ono brane +5V podłączonego do zasilania części logicznej?
jas123 Listopad 16, 2020 Udostępnij Listopad 16, 2020 @TomekTarczynski 1 godzinę temu, TomekTarczynski napisał: W momencie jak odłączam zasilania zewnętrzne (arduino nadal podłączone do USB) to diody nadal świecą, natomiast nie tak jasno. Moje rozumienie jest takie, że nawet jak mam tylko zasilanie poprzez USB to na VIN będę miał takie napięcie jak na wejściu czyli 5V, dobrze rozumiem? Jeżeli podłączysz zewnętrzne zasilanie to na pinie Vin powinno pojawić się napięcie takie samo jakie daje zewnętrzne zasilanie. Jeżeli natomiast odłączysz zewnętrzne zasilanie to na pinie Vin będzie napięcie trochę niższe niż 5V ( w moim uno mam 4,42V). Czyli diody świecą nieco słabiej bo po prostu napięcie jest niższe. Nie będziesz miał 5V bo napięcie przechodzi przez kilka elementów po drodze co można zobaczyć na schemacie w lewym górnym rogu. 1 godzinę temu, TomekTarczynski napisał: Czy gdybym miał zamiast diod silnik to czy byłoby ryzyko zniszczenia układu za dużym prądem pobieranym przez silnik? Jeśli będziesz zasilał silnik przez Vin ( i masz podłączone zewnętrzne zasilanie) to nie, zakładam też że chodzi Ci o silnik typu 6V 200mAh a nie typu 11V 30A. 1 godzinę temu, TomekTarczynski napisał: Dodatkowo odłączam przewód od pinu VIN i nic się nie zmienia. Skąd się bierze napięcie zasilające diody? Czy jest ono brane +5V podłączonego do zasilania części logicznej? Zauważ, że po odpięciu przewodu od pinu Vin, część logiczna nadal jest zasilana czyli nadal wysyła sygnał dlatego diody nadal będą działać . Jednak zmniejszyła się wydajność prądowa i napięcie do tej jaką mamy na pinie 5V co za tym idzie - gdybyś spróbował podpiąć silnik nie będzie on już działał ponieważ potrzebuje więcej prądu ( będzie słychać jak próbuje się ruszyć).
TomekTarczynski Listopad 16, 2020 Udostępnij Listopad 16, 2020 @jas123 Dzięki za odpowiedzi, ale jeszcze nie wszystko mi się w głowie ułożyło jeżeli chodzi o działania tego mostku H. 3 godziny temu, jas123 napisał: Jeśli będziesz zasilał silnik przez Vin ( i masz podłączone zewnętrzne zasilanie) to nie, zakładam też że chodzi Ci o silnik typu 6V 200mAh a nie typu 11V 30A. Chodziło mi o sytuację, w której zasilam silnik przez VIN i odłączam zewnętrzne zasilanie. Przykład z diodami pokazał, że będą wtedy zasilane z 'części logicznej', która jest zasilana bezpośrednio przez arduino. Moja obawa była taka czy silnik nie będzie próbował pobrać za dużo prądu poprzez 'część logiczną' (PIN 5V na arduino) co mogłoby uszkodzić układ. 3 godziny temu, jas123 napisał: Zauważ, że po odpięciu przewodu od pinu Vin, część logiczna nadal jest zasilana czyli nadal wysyła sygnał dlatego diody nadal będą działać . Jednak zmniejszyła się wydajność prądowa i napięcie do tej jaką mamy na pinie 5V co za tym idzie - gdybyś spróbował podpiąć silnik nie będzie on już działał ponieważ potrzebuje więcej prądu ( będzie słychać jak próbuje się ruszyć). Część logiczna jest dalej zasilana, natomiast część dotycząca zasilania samego silnika już nie. Diody zasilane są z wyjścia 3 i 6, które według mojego rozumienia powinny być zasilane zasilaniem przeznaczonym do silnika, a nie do części logicznej i to jest ta rzecz, której nie rozumiem. Moje rozumienie jest takie, że napięcie do części logicznej wykorzystywane jest do tego żeby poprzez tranzystory odpowiednio zamykać/otwierać obwód tak żeby prąd przeznaczony do zasilania silnika płynął w tę stronę, w którą chcemy.
jas123 Listopad 16, 2020 Udostępnij Listopad 16, 2020 11 minut temu, TomekTarczynski napisał: Moja obawa była taka czy silnik nie będzie próbował pobrać za dużo prądu poprzez 'część logiczną' (PIN 5V na arduino) co mogłoby uszkodzić układ. Wydajność prądowa pinu 5V zależy od wydajności wbudowanego stabilizatora (nie będę pisał ile mAh bo dokładnie nie wiem). Ale ogólnie urządzenia pobierające stosunkowo duży prąd - m.in. silnik - powinno się zasilać z pinu Vin. Jeśli jednak podłączysz silnik do pinu 5V (cały czas mówię o silnikach podobnych do tego pokazanego w kursie) to pewnie nawet ruszy ale stabilizator może zacząć się nieprzyjemnie grzać dlatego jeszcze raz powiem że do silników służy pin Vin. Inna sprawa jest z pinami I/O które mają maksymalną wydajność prądową około 40mAh. Podłączenie silnika do jednego z pinów I/O może skutkować już poważniejszymi konsekwencjami np. uszkodzenie mikrokontrolera. Jeśli zaś chodzi o mostek H to nie wiem co tam się dokładnie dzieje. Jeśli masz silnik to możesz spróbować go podłączyć podczas gdy jest dostarczane napięcie z Vin - powinien zacząć się kręcić, i wtedy gdy odepniesz zasilanie od Vin - powinien tylko wydawać dźwięk. W tym drugim teście daj jakiś rezystor żeby nie spalić mostka i nie rób tego zbyt długo. 1
MateoS07 Luty 22, 2021 Udostępnij Luty 22, 2021 Witam, Kupiłem na botlandzie takie podwozie robota w zestawie z silnikami: https://botland.com.pl/podwozia-robotow/7243-chassis-round-2wd-2-kolowe-podwozie-robota-z-napedem.html Kupiłem również takie przewody: https://botland.com.pl/przewody-jednozylowe/12584-przewod-druciany-pcv-025mm-8-kolorow-rolka-250m.html Chcę je przylutować do wyjść silników a następnie na mostek sterujący silnikami. Wydają się one jednak bardzo cienkie. Dlatego mam pytanie: Czy te przewody poradzą sobie z prądem płynącym w trakcie pracy tych silników (a zwłaszcza w trakcie rozruchu silnika)?
Gieneq Luty 23, 2021 Udostępnij Luty 23, 2021 @MateoS07 te silniki nie pobierają dużego prądu więc te kabelki powinny się nadać, zwłaszcza że pewnie połączenie będzie miało z 10 cm długości. Zawsze możesz wziąć 2 kabelki i połączyć je równolegle.
pawelmb Marzec 2, 2021 Udostępnij Marzec 2, 2021 @Treker, chyba jest późno, bo mi się coś nie zgadza (znaczy na pewno jest późno :)) ten diagram: https://forbot.pl/blog/kurs-arduino-sterowanie-silnikami-dc-petla-for-id8311#gallery-12 wprowadza w błąd, bo później na płytce jest na odwrót, no i nie ma nigdzie wejść "Motor IN1". Znaczy jak się poczyta, i weźmie pod uwagę, ze kolejność podłączenia rezystora nie ma znaczenia w podłączeniu szeregowym, i się domyśli, ze "Motor IN" to to samo co "OUTPUT", to w sumie na jedno wychodzi. Ale dla początkujących, to jednak proponuję nie komplikować i umieścić diagram zgodny z płytką poniżej, czyli (przerysowałem, żeby sobie kabelków na płytce nie pomieszać): 1
Gieneq Marzec 2, 2021 Udostępnij Marzec 2, 2021 @pawelmb Rozumiem co masz na myśli, weźmiemy to pod uwagę przy aktualizacji kursu Arduino. Dziękujemy!
Frankko Marzec 22, 2021 Udostępnij Marzec 22, 2021 Hej, szybkie pytanie, dlaczego używamy w tym układzie rezystora 1k,jest na to jakiś wzór?
Gieneq Marzec 23, 2021 Udostępnij Marzec 23, 2021 @Frankko można by coś wyznaczyć, ale w tym przypadku jest to rezystor dobrany na oko. Te diody służą jedynie jako wskaźnik czy silnik działa i nie ma potrzeby przepuszczać możliwie dużego prądu np. 20mA.
Matresiek Maj 2, 2021 Udostępnij Maj 2, 2021 mam pytanie dlaczego po podlaczeniu wyjscia nr 7 do inputu nr 1 w mostku nic sie nie dzieje dopiero podlaczenie bezposrednio wyjscia 7 do rezystora skutkuje oczekiwanym efektem (wszystko podlaczone jak na schemacie i program takze ten sam)
Pomocna odpowiedź
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ę »