Skocz do zawartości

Kurs budowy robotów - #2 - sterownik robota, czujniki


Komentator

Pomocna odpowiedź

html_mig_img
Podczas budowy robotów mobilnych lepiej unikać plątaniny przewodów i płytek stykowych. Drgania, które pojawiają się podczas jazdy mogą prowadzić do błędów w działaniu całej konstrukcji.Właśnie dlatego zaczniemy od zapoznania się z shieldem Arduino, który został zaprojektowany specjalnie na potrzeby tego kursu!

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.

Link do komentarza
Share on other sites

Uwaga! Ważna informacja dla osób, które kupiły zestawy do kursu budowy robotów przed 20 grudnia! Niestety w części zestawów zabrakło ulotek z kodami, które pozwalają na rejestrację zakupionych kompletów. Przepraszam za ten błąd i proszę wszystkie takie osoby o wypełnienie formularza dostępnego na dole tej strony: https://forbot.pl/blog/ogloszenia/wazne-ruszyla-rejestracja-wszystkich-zestawow-forbota-id18694

Kody zostaną wygenerowane na nowo i przesłane drogą elektroniczną 🙂

Link do komentarza
Share on other sites

Świetny kawałek sprzętu.

Jak nazywają się te zielone złącza?

Czy sterownik się nie przegrzewa przy długim działaniu silników? Raczej jest za mały żeby jakoś sensownie odprowadzać ciepło. I jak jest ze ścieżkami na PCB? Są zapewne bardzo cienkie, a przepływa przez nie stosunkowo duży prąd. Nic się z nimi nie stanie? Przepraszam, że zadaję takie być może amatorskie pytania, ale jeszcze wiele nauki przede mną w świecie elektroniki. 🙂

Link do komentarza
Share on other sites

To zielone to "zacisk śrubowy" (screw terminal), albo po prostu "zacisk elektryczny", popularny wśród elektryków domowych.

Kontroler nie musi być duży żeby dobrze odprowadzać ciepło -- sam kwarc w środku jest przecież maciupeńki. Jeśli jest poprawnie wlutowany w płytkę, gdzie przekazuje całe ciepło do wylewu, to powinien sobie doskonale radzić. Miedź ma zadziwiająco dobrą przewodność zarówno termiczną jak i elketryczną -- dlatego ścieżki też raczej powinny dać radę z tymi kilkoma amperami, chyba, że są naprawdę cienkie (ale nie sądzę, żeby popełniono tu tatki podstawowy błąd).

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

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

#R2D2#, o samym sterowniku znajdziesz wszystko w jego dokumentacji: https://www.pololu.com/file/0J570/drv8835.pdf Maksymalny prąd, który można dostarczyć do silników to 1.5A, nie jest to więc układ dla silnika dużej mocy, ale do małego robota jak najbardziej wystarczy.

Dla takiego prądu ścieżka o szerokości 0.5mm powinna wystarczyć, tak przynajmniej piszą tutaj: http://www.elportal.pl/pdf/2003/edw_2003_09_s20.pdf

Laminat pewnie ma standardowe miedziowanie 35um, więc nie powinno być nispodzianek.

Złącza są ogólnie dostępne, to chyba ten typ chociaż głowy nie dam: http://www.tme.eu/en/details/15edgk-3.5_2p/terminal-blocks-pcb-mount/degson-electronics/15edgk-35-02p-14-00ah/

Link do komentarza
Share on other sites

#R2D2#, już mnie koledzy ubiegli z odpowiedziami 🙂 Jednak dla pewności dodam, że faktycznie sterownik silników jest mały, ale świetnie sobie radzi w takich zastosowaniach. Może nie jest najpopularniejszy, bo trudno polutować go w warunkach domowych, ale podczas montażu automatycznego nie sprawiało to problemów. Jeśli chodzi o złącza, to nie znam konkretnych symboli, bo to już specjalność MSX'a. Prawdopodobnie Elvis trafił dobrze 🙂 Jak widać są one dość drogie, ale naprawdę baaaardzo wygodne. W każdym razie zdecydowanie lepsze od standardowych złączy typu ARK.

Link do komentarza
Share on other sites

Przedwczoraj dostałem zestaw, wczoraj złożyłem (na marginesie: brakowało jednego dystansu 10mm)

Oczywiście odpaliłem kod powyżej i nie mogę zrozumieć jak podłączony jest przełącznik,że jeśli trzyma cały czas wciśnięty to dioda i brzęczyk działają tylko przez chwilę. Przerobiłem program na przerwanie i wywoływał przerwanie zarówno przy naciśnięciu lub zwolnieniu przycisku (w zależności od parametru

FALLING/RISING). Przy CHANGE zachowanie było dziwne.

Link do komentarza
Share on other sites

merek2, przycisk podłączony jest przez filtr RC, dzięki temu nie trzeba zajmować się filtrowaniem

drgań styków z poziomu programu. Wszystko filtruje za nas warstwa sprzętowa 🙂

Link do komentarza
Share on other sites

Lukaszm, ciężko mi oceniać, co było testowane bez znajomości kodu oraz tego, jakie były efekty. Filtr RC to wygodna sprawa i mi podczas testów nie sprawiał problemów. W takim robocie najczęściej przycisk wykorzystuje się do startu/stopu i w takim zastosowaniu całość sprawdza się doskonale. Oczywiście jeśli komuś filtr RC przeszkadza, to można go bez problemu odlutować 🙂 Przy okazji zachęcam do lektury kolejnej części kursu: Kurs budowy robotów – #4 – pierwsze programowanie

Link do komentarza
Share on other sites

Chyba zostałe źle zrozumiany.

Chodziło mi o taki kod (z opisu shielda II cześć Kursu budowy robotów)

 define LED 13
#define BUZZER 10
#define PRZYCISK 2

void setup() {
 //Konfiguracja wyjsc
 pinMode(LED, OUTPUT);
 pinMode(BUZZER, OUTPUT);
 //Konfiguracja wyjscia
 pinMode(PRZYCISK, INPUT_PULLUP); 

 //Wylaczenie diody i buzzera
 digitalWrite(LED, LOW);
 digitalWrite(BUZZER, LOW);

 //Testowe migniecia LED
 digitalWrite(LED, HIGH);
 delay(500);
 digitalWrite(LED, LOW);
 delay(500);
}

void loop() {
 if (digitalRead(PRZYCISK) == LOW) { //Jesli przycisk jest wcisniety...
   digitalWrite(LED, HIGH);
   digitalWrite(BUZZER, HIGH);   
   delay(500);
 } else { //Jesli przycisk nie jest wcisniety...
   digitalWrite(LED, LOW);
   digitalWrite(BUZZER, LOW);
 }
}

Jeśli przycisk jest cały czas wciśnięty to dioda zamruga tylko raz i buzer nie brzęczy ciągle.

Czyli digitalRead(PRZYCISK) != LOW), dlaczego? Normalnie filtr RC (kondensator + rezystor) jest podłączany równolegle do switcha. Tu jest inaczej? Czy można prosić o podanie schematu shielda?

Link do komentarza
Share on other sites

merek2, rozumiem i już wyjaśniam.

Akurat tutaj zastosowany został filtr RC w trochę innej konfiguracji i po wciśnięciu przycisku wejście Arduino zwierane jest do masy tylko na chwilę. Podczas testów i prototypów takie rozwiązanie wydało nam się wystarczające. Z założenia robot ma się poruszać, więc nie braliśmy pod uwagę przypadku, gdy ktoś chciałby trzymać cały czas wciśnięty przycisk. Aktualny mechanizm pełni też rolę zabezpieczenia w sytuacji, gdyby ktoś w programie popełnił błąd i na pinie, do którego podłączony jest przycisk wystawił stan wysoki. Przy normalnym podłączeniu wciśnięcie/przytrzymanie przycisku doprowadziłoby do zwarcia układu (Vcc z Arduino i GND z przycisku), w obecnej konfiguracji czas takiego zwarcia jest wtedy zminimalizowany do minimum.

Jeśli takie działanie przycisku jest problematyczne, to prawdopodobnie od kolejnej partii shieldów będziemy montować filtr w tradycyjnej konfiguracji (kwestia zamienia 2 elementów). Jeśli zależy Ci na "normalnym" działaniu przycisku, to odezwij się do mnie na PW zorganizuję wymianę shieldu na taki z przelutowanym filtrem RC.

Link do komentarza
Share on other sites

Dzięki teraz rozumiem. Takie rozwiązanie mi nie przeszkadza. Chciałem tylko rozwiać swoje wątpliwości a bez schematu trudno ocenić jakie są połączenia. Teraz tylko ten komentarz trochę przekłamuje : if (digitalRead(PRZYCISK) == LOW) { //Jesli przycisk jest wcisniety... 😉

Link do komentarza
Share on other sites

Witam, z jakiego miejsca można ściągnąć dokumentację tej płytki z MSX? Lubię wiedzieć jak wygląda schemat nim przystąpię do pracy z układem. Wiem, że to kurs dla początkujących jest ale chyba schemat można gdzieś zobaczyć? Może to pytanie już padło więc proszę wybaczyć ale czy jest możliwość pobrania plików pdf z kursu?

Pozdrawiam

Wojtek

p.s. dziękuję za błyskawiczną dostawę zamówionego zestawu, po zamówieniu na drugi dzień odebrałem - super 🙂

Link do komentarza
Share on other sites

wojtek_p, cieszę się, że zestaw szybko dojechał 🙂

Tak jak już gdzieś pisałem - na ten moment skupiam się na kursie, więc wszystkie potrzebne elementy omawiane są w odpowiednim momencie. Niedługo zostanie zmontowana "większa" ilość shieldów, wtedy część trafi do osobnej sprzedaży w Botlandzie. Wtedy wszystkie informacje (schemat ideowy, blokowy, opisy) pojawią się zarówno na stronie dystrybutora (Botland) jak również na naszym blogu. W tej chwili nie mam jeszcze konkretnej daty, jednak na pewno będzie to w lutym.

Link do komentarza
Share on other sites

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!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.