Wpis z mikrobloga

montowanie wszystko skończone. no może nie do końca, brakuje jeszcze kamery. więc opiszę co mam na pokładzie.

- 8x czujnik HC-SR04. Odczyty z nich są zbieranie przez osobnego klona Arduino i one są wysyłane do RPi. Czemu takie rozwiązanie? Stąd że odczyty nie są takie szybkie, są zależnie od tego jak daleko jest przeszkoda. To mogłoby dać mi opóźnienia, owszem mógłbym to zrobić na RPi i rzucić wątek asynchroniczny i nie ma problemu. Ale szkoda mi zasobów RPi, stąd zrzuciłem to zadanie na Arduino i to małym kosztem. A po same odczyty będę sięgał wtedy kiedy tego będę potrzebować bez potrzeby aż one się wykonają, będą czekać już gotowe. W tym samym module co jest Arduino do zbierania danych z czujników umieściłem też żyroskop z akcelerometrem. Pomoże to w zrobieniu ABSu jeśli będzie wymagany, zobaczę jak wygląda hamowanie oraz do ustalenia kątów przy parkowanie.

- Kolejny klon Arduino który obsługuje oświetlenie + serwo. Kolejna rzecz którą mógłbym zrobić poprzez RPi ale szkoda zasobów, dodatkowo wszystko co jest związane z elektroniką wolę kontrolować z poziomu arduino, lepsze wsparcie, mniej problemów.

- No i ostatnio Klon który obsługuje tylko sam silnik krokowy, jest tam sterownik A4988. Lepszego mi nie trzeba na ten moment.

- Dodatkowo moduł zasilania który mi reguluje napięcie z aku do 5V dla RPi które podaje poprzez USB. Przez piny się nie opłaca bo jest limit 500ma.

#malinoweauto

#elektronika #majsterkowanie #arduino #diy #chwalesie #lego #raspberrypi #tworczoscwlasna
Pobierz mapache - montowanie wszystko skończone. no może nie do końca, brakuje jeszcze kamery...
źródło: comment_WM3Vsif8pttXzsS9AwyBYePn2yipcnlp.jpg
  • 21
@mapache ale mając rpi które jest pierdyliard razy szybsze i wielowątkowe od arduino to po cholerę Ci tyle tych ardu?
Mimo tego mega szanuje, podoba mi się ;) miałem wizje przerobienia mojego rc crawlera na coś tego typu.
@drag_op: bo samo czytanie wyników z czujników zżera 25% CPU, bo czytanie polega na tym że w pętli czyta się przez ile czasu jest stan wysoki na pinie, mam na myśli coś takiego while(stan wysoki), i to tak lata. jest to pętla bez żadnych sleepów ani nic. i pod cpp arduino ma lepsze wsparcie niż rpi. dodatkowo też kontrola silnika krokowego polega na tym że każde nadanie stanu wysokiego to jest
@drag_op: Arduino agregujace dane z czujników to akurat świetny pomysł, z tym że jedno powinno wystarczyć.

@mapache: Do obsługi czujników użyj timerów i przerwań, zmieścisz się w mocy obliczeniowej spokojnie. Np. ustaw wyzwalanie przerwania kiedy na pinie bedzie zmiana stanu, a w funkcji obsługi przerwania tylko będziesz przełączał flagę pomiaru czasu odpowiedzi czujnika z 0 na 1. Obok wstawisz przerwanie timera które będzie wyzwalane co x czasu, a w jego
Spokojnie bys te 3 Arduino zastąpił jednym, ew. osobne do hc-sr04. Ja robiłem kiedyś coś na kształt linę followera- Arduino Uno obsługiwało 4 silniki poprzez mostki H, 1 serwo, 1 hc-sr04, 5 czujników linii i alternatywnie odbiornik radiowy 433mhz.
które podaje poprzez USB. Przez piny się nie opłaca bo jest limit 500ma.


@mapache: coś dzwoni, ale nie wiesz w którym kościele. Własnie za USB jest to zabezpieczenie, a bezpośrednio przez piny nie ma zadnych zabezpieczeń.
@mapache: Przecież strona którą podlinkowałeś potwierdza moja wersję xD

Masz zabezpieczenie 2A na microusb (wejście), 500mA (które można zdjąć) na 4x usb (wyjście) i zero czegokolwiek na headerze GPIO