Spisu treści:
- Krok 1: Komponenty, których potrzebujesz
- Krok 2: Podłącz silniki za pomocą osłony silnika L293D
- Krok 3: Arduino Uno, montaż osłony silnika
- Krok 4: Podłącz zasilanie do Banana Pi i Arduino
- Krok 5: Umieść Banana Pi w pudełku z nadrukiem 3D, złóż resztę łazika
- Krok 6: Zakończono montaż sprzętu
- Krok 7: Konfiguracja systemu
- Krok 8: Uruchamianie oprogramowania
- Krok 9: Kredyty
Wideo: Banana/Raspberry Pi + Arduino Rover z kamerą internetową: 9 kroków
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:31
Projekt, który wykonałem w wolnym czasie. Jest to czterokołowy robot z pełnym napędem, sterowany przez interfejs sieciowy. Jeśli masz jakieś uwagi lub pytania, skontaktuj się ze mną. Sam projekt wykorzystuje części drukowane 3D i pewne fragmenty kodu, które zostały stworzone przez innych ludzi. Możesz znaleźć kredyty i rzucić okiem na oryginalne elementy na końcu Instructuble.
Powinniśmy zaczynać?
Krok 1: Komponenty, których potrzebujesz
Oto lista komponentów, których użyłem z linkami i alternatywami. Mieszkam w Shenzhen w Chinach i kupiłem części bezpośrednio na Taobao.
4-silnikowe podwozie robota Alternatywa: wystarczy każde wystarczająco duże podwozie. Ten ma 4 silniki, które zapewniają dodatkowy moment obrotowy. Silniki to zwykłe tanie żółte silniki, oceniane za
Klon L293D Arduino Motor Shield rev.1 Alternatywa: lepsza osłona silnika dla większego prądu
Klon Arduino Uno Alternatywa: Możesz użyć dowolnej innej płytki Arduino bez znaczących zmian w kodzie.
Akumulator 6V 4,5Ah Pb Alternatywa: Możliwe jest eksperymentowanie z mniejszymi akumulatorami LiPo, jeśli chcesz lżejszego robota/używaj tylko dwóch silników.
Alternatywa dla Banana Pi: Możliwość zamiany na Raspberry Pi 1/2/3 lub Orange Pi bez znaczących zmian w kodzie. Użyłem Banana Pi tylko dlatego, że miałem jeden leżący.
Kamera internetowa Alternatywa: użyj kamery CSI dla Raspberry Pi/Banana Pi/Orange Pi
Uchwyt uchylno-obrotowy kamery z serwomechanizmami sg60 Alternatywa: na przykład uchwyt uchylno-obrotowy 3D Print może używać tego.
Części drukowane w 3D Alternatywa: Niech Twoja wyobraźnia i talenty do projektowania 3D Cię poprowadzą! Również Thingverse:)
Krok 2: Podłącz silniki za pomocą osłony silnika L293D
Podłącz każdy silnik za pomocą zacisków śrubowych ekranu silnika. Oto schemat okablowania. Jeśli masz tylko dwa silniki i nie chcesz zmieniać kodu, dołącz je do SILNIKA 1 i SILNIKA 3.
UWAGA: W przypadku korzystania z różnych silników o wyższym prądzie znamionowym może być potrzebny inny sterownik silnika. Alternatywnie, fajnym małym hackiem, którego się ostatnio nauczyłem, jest to, że możesz podłączyć dwa kolejne sterowniki L293D na szczycie istniejącego (jest to środkowy układ na płycie)!
Krok 3: Arduino Uno, montaż osłony silnika
Umieść Arduino Uno w etui i zainstaluj na nim Motor Shield. Jest tylko jeden sposób, aby to zrobić, jeśli nie pasuje, robisz coś ting wong!
Arduino Uno Snug Case
Oto obudowa, której użyłem, model stworzony przez Esquilo.
Krok 4: Podłącz zasilanie do Banana Pi i Arduino
Do zasilania Banana Pi (6v) użyłem interfejsu SATA. Jeśli masz tę samą płytkę, możesz to zrobić, po prostu upewnij się, że napięcie wynosi 5v-6v. To nieregulowany zasilacz, więc zakładam, że w Banana Pi M1 jest obwód zabezpieczający zasilanie SATA.
UWAGA: Dla Raspberry Pi masz kilka opcji: bezpieczną (przy użyciu złącza USB do zapewnienia 5v) i niezbyt bezpieczną (przy użyciu pinów GPIO). Oto link do przeczytania o podłączaniu zasilania do pinów GPIO Raspberry Pi. Upewnij się, że
1) użyj regulowanego zasilacza;
2) Ustaw napięcie na 5 v
Nie ma obwodu zabezpieczającego dla pinów GPIO! Jeśli zrobisz coś źle, istnieje poważna szansa na uszkodzenie elektroniki na płytce.
W przypadku Arduino wystarczy podłączyć zasilanie do zacisków śrubowych wejściowych na osłonie silnika. Może zająć do 12V.
Krok 5: Umieść Banana Pi w pudełku z nadrukiem 3D, złóż resztę łazika
Użyłem tego etui do Banana Pi od Thingverse, stworzonego przez GermanRobotics. Okładkę sam wykonałem.
Umieść Banana Pi w etui, przykryj pokrywką, użyj pistoletu do kleju, aby przymocować Arduino Uno na górze obudowy Banana Pi.
Przykryj baterię tą pokrywą i przymocuj uchwyt kamery internetowej do przesuwania/pochylania do góry.
Jeśli używasz Banana Pi, potrzebujesz koncentratora USB, ponieważ ma tylko dwa gniazda USB (Raspberry 2, 3 ma cztery). Ze względów czysto estetycznych zdecydowałem się na użycie koncentratora USB OTG 1-2 i schowanie przewodów wewnątrz obudowy Banana Pi.
Krok 6: Zakończono montaż sprzętu
Podsumujmy szybko to, co zrobiliśmy do tej pory.
Zmontowaliśmy platformę robota, podłączyliśmy zasilanie do Banana Pi, Arduino Uno, podłączyliśmy silniki i serwa do sterownika silnika oraz wykorzystaliśmy koncentrator USB do podłączenia kamery USB i Arduino Uno do Banana Pi. Teraz możesz testować i rozwiązywać problemy ze sprzętem. Schemat połączeń pokazujący wszystkie połączenia jest na rysunku dla tego kroku.
Krok 7: Konfiguracja systemu
Użyłem obrazu Raspbian Lite dla systemu na moim pi. Wersja Lite nie ma GUI i zawiera tylko podstawowe pakiety na instalację. Ale zajmuje znacznie mniej miejsca, co oznacza, że możemy użyć mniejszej karty SD. Jeśli nie czujesz się komfortowo bez GUI, możesz również zainstalować pełny obraz.
Podłącz swoje pi do Internetu za pomocą kabla Ethernet. Po uruchomieniu pierwszym krokiem byłoby połączenie go z Wi-Fi.
Uruchom następujące polecenie w terminalu
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
Edytuj plik konfiguracyjny za pomocą swoich danych logowania do Wi-Fi
network={ ssid="testing" psk="testingPassword" }
Uruchom ponownie pi. Voila! Masz teraz połączenie z Wi-Fi.
Następnie musimy zainstalować pip (Menedżer pakietów Pythona)
sudo apt-get install python-setuptools
sudo easy_install pip
Teraz używamy pip, aby zainstalować Flask do uruchamiania serwera WWW i pyserial dla pi, aby komunikować się z Arduino przez połączenie szeregowe.
kolba instalacyjna sudo pip
sudo pip zainstaluj pyserial
Ostatnią rzeczą będzie zainstalowanie i skonfigurowanie pakietu motion, którego używamy do strumieniowego przesyłania wideo z naszej kamery internetowej.
Postępuj zgodnie z tą wspaniałą instrukcją, aby to zrobić.
Teraz jesteśmy gotowi do huku!
Krok 8: Uruchamianie oprogramowania
Pamiętasz, jak powiedziałem, że jesteśmy gotowi na awanturę?
No dobra, jeszcze trochę grindowania i wtedy możemy zacząć dudnić:)
Pobierzmy wszystkie potrzebne pliki z mojego repozytorium github.
git klon
Prześlij rover.ino do Arduino Uno. Jeśli dokonałeś zmian sprzętowych (na przykład przy użyciu innej osłony silnika), musisz zmienić szkic.
Jeśli używasz kamery internetowej, zmodyfikuj linię w dolnej części pliku index.html w folderze szablonów. Zmień adres URL w wierszu IFRAME, aby pasował do adresu URL źródła strumienia wideo.
Teraz możesz uruchomić serwer WWW. Uruchom następujące polecenie
sudo python pi_rover.py
Jeśli śledziłeś moją kompilację bardzo blisko i masz podłączony Arduino, w terminalu zobaczysz następujące (pierwsze zdjęcie).
Wpisz adres ip swojego robota w przeglądarce internetowej (np. w moim przypadku był to 192.168.1.104), adres ip możesz sprawdzić poleceniem $ifconfig w Linuksie.
/zatańczcie tutaj uroczysty taniec!/
Jeśli masz jakieś pytania, śmiało pytaj mnie w komentarzach. Ten samouczek jest przeznaczony dla początkujących, ale nie dla początkujących, dlatego dość krótko opisałem rzeczy, które możesz po prostu wyszukać w Google (np. wypalić obraz systemu na kartę SD, przesłać szkic Arduino itp.).
Krok 9: Kredyty
Pomysł i kod serwera WWW pochodzą z tego wspaniałego instruktażu jscottb. Zmodyfikowałem go, aby używać bardziej popularnego sprzętu, takiego jak Arduino Uno.
Części drukowane w 3D od Thingverse.
www.thingiverse.com/thing:994827
www.thingiverse.com/thing:2816536/pliki
www.thingiverse.com/thing:661220
Zalecana:
Miniaturowy autonomiczny robot Arduino (Land Rover / samochód) Stage1Model3: 6 kroków
Miniaturyzujący robot autonomiczny Arduino (Land Rover / Car) Stage1Model3: Postanowiłem zminiaturyzować Land Rovera / Car / Bota, aby zmniejszyć rozmiar i pobór mocy projektu
IOT Lunar Rover Raspberrypi+Arduino: 5 kroków (ze zdjęciami)
IOT Lunar Rover Raspberrypi+Arduino: Ten projekt jest inspirowany indyjską misją księżycową Chandryaan-2, która odbędzie się we wrześniu 2019 r. Jest to misja specjalna, ponieważ wylądują w miejscu, w którym nikt wcześniej nie wylądował. aby okazać moje wsparcie, postanowiłem kupić
Kamera AI dla Raspberry Pi/Arduino: 7 kroków
Kamera AI dla Raspberry Pi/Arduino: Jeśli ostatnio śledziłeś wiadomości, nastąpiła eksplozja start-upów opracowujących chipy przyspieszające wnioskowanie i szkolenie algorytmów ML (uczenia maszynowego). Jednak większość z tych chipów jest wciąż w fazie rozwoju i nie jest to tak naprawdę coś
Arduino 4WD Rover Bluetooth sterowany przez telefon/tablet z Androidem: 5 kroków
Arduino 4WD Rover Bluetooth Kontrolowany przez telefon/tablet z Androidem: Arduino 4WD łazik sterowany bluetooth Jest to prosty łazik 4WD stworzony przez Arduino. łazik jest sterowany za pomocą telefonu z Androidem lub tabletu przez bluetooth. Dzięki tej aplikacji możesz kontrolować prędkość (za pomocą pwm Arduino), uruchamiać ją za pomocą
Robot FPV Rover sterowany przez Wi-Fi (z Arduino, ESP8266 i silnikami krokowymi): 11 kroków (ze zdjęciami)
Robot łazik FPV sterowany przez Wi-Fi (z Arduino, ESP8266 i silnikami krokowymi): Ta instrukcja pokazuje, jak zaprojektować zdalnie sterowany dwukołowy robot łazik przez sieć Wi-Fi, używając Arduino Uno podłączonego do modułu Wi-Fi ESP8266 oraz dwa silniki krokowe. Robotem można sterować ze zwykłej przeglądarki internetowej