Komentator Napisano Czerwiec 12, 2015 Udostępnij Napisano Czerwiec 12, 2015 Poprzednia część omawiała przetwornik ADC. Tym razem pójdziemy w drugą stronę i zajmiemy się generowanie specyficznego sygnału.Mowa o PWM - modulacji szerokości impulsu. Zagadnienie to może brzmieć skomplikowanie, jednak kilka praktycznych przykładów na pewno rozwieje wszelkie wątpliwości! UWAGA, to tylko wstęp! Dalsza część artykułu dostępna jest na blogu.Przeczytaj całość »Poniżej znajdują się komentarze powiązane z tym wpisem. Cytuj Link do komentarza Share on other sites More sharing options...
hob_bit Czerwiec 13, 2015 Udostępnij Czerwiec 13, 2015 Dzięki za kolejną ciekawą lekcję i czekam na te dodatkowe przydatne triki, a najbardziej na sterowanie silnikiem DC. Pozdrawiam hob_bit 🙂 Cytuj Link do komentarza Share on other sites More sharing options...
MateuszW Czerwiec 14, 2015 Udostępnij Czerwiec 14, 2015 Bardzo fajnie 🙂 czekam na ciekawostki. Może jeszcze pojawi się temat o ciekawej funkcji arduino, która zmiana go w programator ISP. Cytuj Link do komentarza Share on other sites More sharing options...
bocian Czerwiec 15, 2015 Udostępnij Czerwiec 15, 2015 Witam. Może to tylko zbieg okoliczności, ale czy servo mogę podpiąć tylko do pinów na których generowany jest sygnał PWM czy mogę podpiąć je pod dowolny pin arduino? Cytuj Link do komentarza Share on other sites More sharing options...
Polecacz 101 Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Zarejestruj się lub zaloguj, aby ukryć tę reklamę. Produkcja i montaż PCB - wybierz sprawdzone PCBWay! • Darmowe płytki dla studentów i projektów non-profit • Tylko 5$ za 10 prototypów PCB w 24 godziny • Usługa projektowania PCB na zlecenie • Montaż PCB od 30$ + bezpłatna dostawa i szablony • Darmowe narzędzie do podglądu plików Gerber Zobacz również » Film z fabryki PCBWay
MateuszW Czerwiec 15, 2015 Udostępnij Czerwiec 15, 2015 bocian możesz podpiąć pod dowolny pin, który generuje PWM 🙂 czyli piny: 3, 5, 6, 9, 10, 11 Cytuj Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Czerwiec 15, 2015 Udostępnij Czerwiec 15, 2015 bocian, dałoby się sterować serwomechanizmami przez inne porty, ale byłoby to bardzo utrudnione. Każde serwo wymaga swojego sygnału PWM, a ten najłatwiej generować na wyprowadzeniach ze sprzętowym wsparciem generowania takiego sygnału 🙂 Cytuj Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Czerwiec 23, 2015 Udostępnij Czerwiec 23, 2015 Harmonogram najbliższych publikacji kursu Arduino: do 28.06 - Część dodatkowa do 02.07 - Wyświetlacze LCD Cytuj Link do komentarza Share on other sites More sharing options...
MateuszW Czerwiec 23, 2015 Udostępnij Czerwiec 23, 2015 Czekamy, czekamy 🙂 jest może jakiś sposób na odczytanie pozycji serwa, żeby po zadaniu obrotu nie robić delay() tylko sprawdzić czy już dotarło? Cytuj Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Czerwiec 23, 2015 Udostępnij Czerwiec 23, 2015 MateuszW, musiałbyś dostać się do potencjometru, który jest wewnątrz serwomechanizmu i dorobić sprzężenie zwrotne. Inna opcja, to inwestycja w bardziej zaawansowane (znacznie droższe) serwomechanizmy, z którymi można się komunikować w dwie strony. Cytuj Link do komentarza Share on other sites More sharing options...
MateuszW Czerwiec 23, 2015 Udostępnij Czerwiec 23, 2015 Tak myślałem, ale miałem nadzieję, że skoro właśnie jest już potencjometr to można jednak w jakiś prosty sposób odczytać wartość. No cóż, dzięki za odpowiedź. Cytuj Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Czerwiec 23, 2015 Udostępnij Czerwiec 23, 2015 No niestety serwomechanizmy mają możliwość "nasłuchiwania" PWM, nie potrafią wysyłać informacji zwrotnej. Cytuj Link do komentarza Share on other sites More sharing options...
Marcin628 Czerwiec 24, 2015 Udostępnij Czerwiec 24, 2015 Witam, Gdy już jesteśmy przy zasilaniu Arduino napięciem wyższym niż 5V mam kilka pytań (zapewne oczywistych). - Powód, dla którego dajemy stabilizator? Czy jest to dlatego, że serwo obsługiwane jest z napięciem 5V (i zostałoby spalone) czy dlatego, że przez pin analogowy bez stabilizatora również przesłoby napięcie 9V a co za tym idzie podłączając do pinu analogowego spalimy Arduino. - Czy podłączenie koszyku na baterię 4 x 1,5V do Arduino będzie poprawnie działać? Wyczytałem, że powinno zasilać się od 7-12V by minimalny dropout był 2V. - Chciałem zbudować sterowanie silnikiem (jak serwem) z użyciem potencjometru. Silnik to DG01D (4.5V) gdy go podłączyłem używając Arduino tylko jako zasilanie (5V), silnik działa. Niestety gdy podłączone jest z potencjometrem, kręcąc nóżkom słychać tylko "buczenie" wewnątrz silnika nic (nic się nie kręci). Czy ma na to wpływ natężenie płynące przez piny w Arduino czy może za duże napięcie czy coś jeszcze? Z góry dziękuję za odpowiedź! Cytuj Link do komentarza Share on other sites More sharing options...
Treker (Damian Szymański) Czerwiec 25, 2015 Udostępnij Czerwiec 25, 2015 Powód, dla którego dajemy stabilizator? Czy jest to dlatego, że serwo obsługiwane jest z napięciem 5V (i zostałoby spalone) czy dlatego, że przez pin analogowy bez stabilizatora również przesłoby napięcie 9V a co za tym idzie podłączając do pinu analogowego spalimy Arduino. Piny analogowe, które pracują w zakresie 0-5V nie mają tutaj niż do rzeczy. Więc sprawdź, czy dobrze rozumiesz wszystkie pojęcia. Serwomechanizm zasila silnik napięciem podanym na jego czarny (masa) oraz czerwony (Vcc) przewód. Serwomechanizm musi być zasilany z około 5V. Czyli teoretycznie moglibyśmy podłączyć go do pinów 5V wyprowadzonych z Arduino. Niestety prąd pobierany przez silnik jest duży (szczególnie przy rozruchu), wbudowany stabilizator jest zbyt słaby, aby to obsłużyć. W związku z tym powstają zakłócenia, które resetują procesor i program nie działa poprawnie. Postaram się w ciągu kilku tygodni rozbudować tę część kursu o demonstracje takiego zjawiska. Najpierw jednak pojawią się nowe artykuły. - Czy podłączenie koszyku na baterię 4 x 1,5V do Arduino będzie poprawnie działać? Wyczytałem, że powinno zasilać się od 7-12V by minimalny dropout był 2V. Niestety 6V może okazać się zbyt niskim napięciem. Chciałem zbudować sterowanie silnikiem (jak serwem) z użyciem potencjometru. Silnik to DG01D (4.5V) gdy go podłączyłem używając Arduino tylko jako zasilanie (5V), silnik działa. Niestety gdy podłączone jest z potencjometrem, kręcąc nóżkom słychać tylko "buczenie" wewnątrz silnika nic (nic się nie kręci). Czy ma na to wpływ natężenie płynące przez piny w Arduino czy może za duże napięcie czy coś jeszcze? Absolutnie NIE WOLNO podłączać silnika bezpośrednio do Arduino. Jest to najprostsza droga do jego nieodwracalnego uszkodzenia. Przykład poprawnego podłączenia silnika pojawi się w kolejnej części kursu. Radziłbym do tego czasu nie robić własnych eksperymentów z napędami! Pamiętaj, że wydajność jednego pinu Arduino to około 20mA, silnik może brać 10, albo 100 razy więcej! Cytuj Link do komentarza Share on other sites More sharing options...
Marcin628 Czerwiec 25, 2015 Udostępnij Czerwiec 25, 2015 Treker, Super dzięki za wyjaśnienia! Niestety przed eksperymentami ciężko będzie mnie powstrzymać🙂 Silniki na razie zostawię i poczekam na kolejny artykuł. Jeszcze takie szybkie pytania:) - co do stabilizatora 5V, czy w układzie nie powinny znaleźć się dwa kondensatory 100nF? - Kupiłem wtyk DC 2.1/5.5 by móc zasilać Arduino baterią. Niestety muszę przylutować przewody do wtyku. Co do polaryzacji mam rozumieć, że + jest na "wtyku" a - na obudowie? 1 Cytuj Link do komentarza Share on other sites More sharing options...
Mechano Czerwiec 25, 2015 Udostępnij Czerwiec 25, 2015 Dokładnie tak. Przyjmuj sobie, że zawsze masa (-) zawsze na obudowie (na zewnątrz). Cytuj Link do komentarza Share on other sites More sharing options...
Pomocna odpowiedź
Dołącz do dyskusji, napisz odpowiedź!
Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!