Robot z raspberry pi 3. Robot do Google Talk oparty na Raspberry Pi. Sterowanie i menu

  • instruktaż

Bardzo często na Habré pojawiają się artykuły o tym, jak wykorzystać Raspberry Pi jako centrum multimedialne, mobilną kamerę wideo, zdalną kamerę internetową i… właściwie wszystko. To bardzo dziwne, że w tak dużej społeczności IT jest dość mało informacji o tym, jak go zaprogramować i korzystać z komputera jednopłytkowego tam, gdzie jest to naprawdę całkiem przydatne - we wszelkiego rodzaju systemach wbudowanych, gdzie są ograniczenia wielkości i kosztów, ale są to także potrzeba wydajności. W kilku artykułach postaram się opisać na przykładzie tworzenia mobilnego robota kołowego z komputerową wizją, w jaki sposób można wykorzystać malinę do tworzenia robotów (rzeczy z inteligencją na pokładzie, a nie samochodów sterowanych z androida z kamerą internetową).

Wstęp

Zawsze ciekawe było programowanie czegoś mechanicznego – czujesz się jak Bóg (jak większość programistów) – tchniesz duszę w mnóstwo szczegółów. Chyba każdy pamięta tę dziecinną radość z pierwszego mignięcia diody, poruszającego się serwa itp. - kiedy zrobiłeś coś, czego możesz dotknąć, co żyje, porusza się, a nie strona php.
W wielu swoich dziełach, a tym bardziej w robotach, człowiek zawsze stara się powtarzać siebie lub część swoich funkcji. 80% informacji o otaczającym nas świecie otrzymujemy poprzez wizję - więc widzenie komputerowe jest moim zdaniem jednym z fundamentalnych obszarów wiedzy w robotyce.


Zacząłem ją studiować od lektury prac naukowych na temat algorytmów równolegle z opanowaniem biblioteki wizji komputerowej OpenCV w C++ (w przypadku Raspberry – Pythona) – znajomość zasad działania algorytmów pomoże Ci ocenić złożoność i wykonalność zadania, jeszcze przed przystąpieniem do jego realizacji, a także optymalizacji algorytmów w newralgicznych miejscach. Nawet jeśli używasz głównie funkcji bibliotecznych - są one dobrze zoptymalizowane i raczej nie napiszesz lepiej od zera - będziesz w stanie zoptymalizować niektóre parametry, które mają niewielki wpływ na rozwiązanie Twojego problemu w konkretnym przypadku, ale znacząco wpływają na szybkość jego rozwiązania - ogólnie rzecz biorąc, wracając do holivaru - „czy programista potrzebuje matematyki” - W tym przypadku jest to potrzebne, więc radzę trochę przeciążyć zakręt i przynajmniej powierzchownie zrozumieć pracę algorytmów.

Przydałoby się też przynajmniej pobieżnie przestudiować Teorię Automatyki – zamiast opisywać jej możliwości – proponuję po prostu obejrzeć poniższy film (przy okazji – połowa jego zespołu to Rosjanie)

Części robota



Jest mało prawdopodobne, że będziesz miał pod ręką te same szczegóły co moje, jeśli chcesz powtórzyć - opiszę więc ogólną koncepcję i sam się przekonasz.

Mechanika

Mechaniczna podstawa robota - dwukołowego z napędem różnicowym - jest w zasadzie klasyczna dla pierwszych eksperymentów z robotami - ma 2 niezależne koła, a jego ruch jest kontrolowany wyłącznie przez prędkość i kierunek ich obrotu (podobnie jak śmigła kwadrokoptera). Oprócz samych kół występuje łożysko kulkowe/koło, w zaawansowanych układach - enkodery do sprzężenia zwrotnego i kontroli aktualnej prędkości silników, co pozwala na sprawniejsze sterowanie silnikami.



Sterownik silnika

Możesz użyć dowolnego mikrokontrolera jako sterownika silnika, ja używam Arduino nano - bo akurat trafił pod rękę.
Być może pojawi się pytanie – dlaczego nie sterować bezpośrednio z Raspberry? Faktem jest, że system operacyjny ma znacznie większy kwant czasu niż mikrokontroler, dodatkowo nie ma sprzętowych PWM, a jeśli chcemy poprawić sterowanie silnikiem za pomocą sprzężenia zwrotnego i teorii sterowania, będzie to wymagało kosztów obliczeniowych i szybszej reakcji - dlatego część kontrolująca silniki i mózg robota są oddzielone - arduino po prostu otrzymuje polecenie przez UART - przy jakich prędkościach i kierunkach mózg chciałby, aby silniki się obracały - w jaki sposób zostanie to osiągnięte - po prostu przez włączenie PWM z zadanym cyklem pracy lub podstępnym sterowaniem, gdy najpierw przykładamy napięcie większe niż nastawa, rozkręcając silnik, a następnie wyrównując go – tym samym przyspieszając rozkręcanie się silnika do pożądanej prędkości – wszystko to już jest zmartwieniem sterownik silnika, a nie Raspberry - ponieważ generalnie jest to zadanie o wiele trudniejsze - o rząd wielkości - o dwa mniej niż pozwala na to Raspberry i ogólnie podobne systemy.

Kierowca motocyklu

Samo arduino to za mało, aby silniki się kręciły - prąd wydzielany przez nogę jest za mały - jeśli uzwojenie silnika umieścimy na małym tranzystorze wyjściowym nogi sterownika, wymagającym prądu rzędu amperów - wtedy wystarczy zorganizować zwarcie - zamykamy kluczyk sam na siebie i najprawdopodobniej wyjdzie po prostu budynek - dlatego potrzebujemy mocniejszego kluczyka, który przepuszcza przez siebie duży prąd - jeśli potrzebujemy kręcić silnikiem w jednym kierunku - generalnie wystarczy nam jeden tranzystor, ale jeśli chcemy włączyć różne - potrzebujemy już 4 z nich - taki obwód nazywa się H - mostek - zamykając klucze ukośne z innymi kluczami ukośnymi zamkniętymi - my może zmienić kierunek prądu w silniku.
I taki schemat jest niezbędny dla każdego koła. Na szczęście w naszych czasach nie ma potrzeby jej montowania - jest ona zaimplementowana w postaci układów scalonych, których jest bardzo dużo - więc zrobi to każdy, który może sterować aktualnym zapotrzebowaniem silnika. Używam tego dwukanałowego od pololu:


Istnieje również ogromna różnorodność wszelkiego rodzaju nakładek na arduino - z pomocą Google bez problemu znajdziesz je na żądanie "sterownik silnika arduino". Schemat podłączenia jest też zwykle dostarczany przez producenta lub użytkowników różnych forów - poszukiwacz go znajdzie. Mikroukłady posiadają 2 zasilacze - jeden - który zasilany jest do silników z potężnego źródła prądowego - np. akumulatory Li-Pol 7,2V, drugi to zasilanie stopnia wejścia logicznego - Arduino 5V, są też wejścia które kontrolują kierunek obrotów każdego kanału oraz wejście Enable - podając do jakiego sygnału PWM możemy regulować prędkość silnika. W zależności od osłony mogą występować różne konfiguracje, ale główne wnioski są następujące.

Ogólnie rzecz biorąc, po podłączeniu w ten sposób Arduino, sterownika silnika, silników i akumulatora (lub po prostu jakiegoś źródła prądu na długim przewodzie), można już zacząć zabawę ze sterowaniem silnikiem. Aby odbierać polecenia z Raspberry, musisz zaimplementować odbiór linii przez UART i jej parsowanie - tutaj możesz wymyślić protokół do woli. powyższe - główne części prawie każdego robota kołowego - wtedy opcje już się zaczynają - można nawet punktować na wizji komputera i zrobić robota wyłącznie na Arduino, który np. porusza się po linii, omija przeszkody za pomocą czujników odległości itp. .

Główny kontroler



Moim zadaniem jest stworzenie nieco bardziej inteligentnej platformy do badania wizji komputerowej i teorii sterowania – tak więc kolejnym elementem systemu będzie komputer jednopłytkowy Raspberry Pi B+ ze względu na jego niską cenę, powszechność i dostępność informacji. Interpreter Pythona jest zawarty w asemblerze Raspbian - więc napisałem na nim program dla robota

Aparat fotograficzny



Generalnie jako kamerę można użyć dowolnej kamerki (co zrobiłem pierwszy raz) - używam Raspicam - jest mała, lekka, jest osobny port do podłączenia, szeroki kąt widzenia to dobry sterownik i 90 fps w rozdzielczości VGA.

Narzędzie do debugowania



Do debugowania używam gwizdka USB Wifi, łącząc się z Raspberry przez zdalny pulpit przez SSH. Ponadto, ogólnie rzecz biorąc, możesz użyć dowolnego, do początkowej konfiguracji możesz ogólnie użyć kabla Ethernet i SSH

System zasilania

Akumulator - litowo-polimerowy od 2Ah do napięcia znamionowego 7,2V + ładowanie.


Przetwornica Step-Down DC-DC - nasza bateria wytwarza od 8,4 do 6V - możemy to napięcie bezpośrednio dostarczyć do silników poprzez układ sterownika, ale Raspberry i Arduino wymagają zasilania 5V do zasilania Raspberry Pi - zgodnie z dokumentacją Raspberry Pi wymagane jest źródło 5V zdolne dostarczyć co najmniej 800mA - można oczywiście obniżyć napięcie z akumulatora do 5V za pomocą regulatora liniowego, ale przy takich prądach będzie się on nagrzewał i nieefektywnie korzystał z akumulatora, dlatego polecam stosować impulsowy konwerter DC-DC buck - zasilany jest przez niego zarówno Raspberry, jak i Arduino

Właściwie zdjęcie mojego robota nanotechnologicznego i kilka filmów z jego jazdy po różnych konkurencyjnych torach jako demonstracja:


Linia profesjonalna (przerywana)

Cienka linia z ostrymi zakrętami (Euro)

Ogólnie rzecz biorąc, artykuł przeglądowy się skończył - mówił o głównych używanych narzędziach, potem będzie bardziej konkretnie, a mianowicie.

Arduino jest z pewnością popularną i ciekawą platformą, ale ma też swoje ograniczenia. Co zrobić, jeśli musisz użyć dodatkowego oprogramowania na robocie? Podłącz urządzenia peryferyjne? Na ratunek przychodzi znane Raspberry Pi.

W tym artykule pokażę, jak zrobić robota z kamerą internetową sterowaną przez Wi-Fi w oparciu o Raspberry Pi. Platforma ta pozwoli nam pracować ze wszystkimi zrozumiałymi systemami Linux, z łatwością korzystać z dowolnego oprogramowania, którego potrzebujemy, a także korzystać z prawie każdego urządzenia peryferyjnego.

Zestaw

  • Raspberry Pi Model B - 2200 zł
  • Kamera internetowa - 1500 rubli
  • Klucz Wi-Fi - 300 rubli.
  • Akumulator na 12 V 7 Ah - 500 rubli.
  • Rozstaw osi, przewody i silniki z jakiejś zabawki

Wynik: 4500 r.

O komputerze

Użyłem standardowego Raspberry Pi w wersji B, który ma dwa porty USB, port Ethernet i 512MB pamięci RAM. Jest też model A, który ma tylko jeden port USB, 256 MB pamięci i nie ma Ethernetu. Taka płytka jest trudniejsza w konfiguracji, ale potrzebuje znacznie mniej energii.

Jako system operacyjny wybrałem standardowego Raspbiana (zoptymalizowanego pod kątem sprzętu malinowego Debiana). Do zainstalowania systemu operacyjnego potrzebna jest karta SD lub SDHC o pojemności co najmniej 4 GB klasy 10 oraz dowolny komputer z czytnikiem kart. Sam proces napełniania jest dość banalny. Dla użytkowników UNIX wystarczy narzędzie dd. Gotową kartę wkładamy do „maliny”, podłączamy do sieci, włączamy ulubionego klienta SSH. Standardowy login pi, hasło - malina.

Przy pierwszym uruchomieniu pojawi się okno z konfiguracjami - jeśli tak się nie stało, to można je wywołać poleceniem raspi-config. Niepokoi nas kilka punktów:

  • Rozwiń system plików - rozszerzenie głównej partycji na całą kartę pamięci. W przeciwnym razie system nie będzie miał więcej niż 4 GB dostępnego miejsca.
  • Zmień hasło użytkownika - w końcu lepiej zmienić standardowe hasło.
  • Opcje internacjonalizacji — ustaw lokalizację ru_RU.UTF-8 UTF-8 i odpowiednią strefę czasową.
  • Włącz kamerę - włącz obsługę kamery. Będzie to wymagane w przypadku kamer z interfejsem DSI (na przykład oficjalnej kamery), ale w moim przykładzie nie jest to konieczne, to znaczy można ustawić wartość Wyłącz.

Aby pozbyć się kabla sieciowego, potrzebujesz obsługiwanego klucza Wi-Fi. Użyłem D-Link DWA-110, a pełna lista jest dostępna online (bit.ly/1cQXMFP). Pozwól, że opowiem ci trochę o konfiguracji:

  1. Podłączamy Wi-Fi do Raspberry.
  2. Zobaczmy, czy zdecydowała #lsusb

    Otrzymujemy coś takiego:

    Magistrala 001 Urządzenie 005: ID 07d1:3c07 D-Link System DWA-110 Bezprzewodowa karta sieciowa G (rev.A1)

  3. Połącz się z naszą siatką: # sudo wpa_passphrase pointname pointkey > /etc/wpa_supplicant/ wpa_supplicant.conf # sudo iwconfig wlan0 essid pointname # sudo wpa_supplicant -B -Dwext -i wlan0 -c /etc/wpa_supplicant. sudo ifconfig wlan0 w górę

    i sprawdź, czy połączyliśmy się z punktem dostępowym:

    #ifconfig

Kontrola

Najpierw zainstalujmy interfejs webowy, za pomocą którego będziemy sterować robotem. Zdecydowałem się na WebIOPi. Ten produkt jest specjalnie zaprojektowany do zastosowań RPi w automatyce i robotyce.

Interfejs jest instalowany w następujący sposób:

  1. Pobierz archiwum programu do dowolnego katalogu za pomocą polecenia # wget http://webiopi.googlecode.com/files/WebIOPi-0.6.0.tar.gz
  2. Rozpakuj archiwum do bieżącego katalogu tar xvzf WebIOPi-0.6.0.tar.gz
  3. Przejdź do katalogu z programem #cd WebIOPi-0.6.0

    Waga paczki to tylko 152 Kb.

  4. Uruchom plik instalacyjny # sudo ./setup.sh
  5. I ustaw interfejs sieciowy na autorun # update-rc.d domyślne ustawienia webiopi

Teraz stwórzmy stronę kontrolną. Aby rozpocząć, pobierz archiwum projektu ze strony bit.ly/1di2qgl . Rozpakujmy go do katalogu użytkownika:

# sudo nano /etc/webiopi/config

Co zmieniamy:

Myscript = /home/pi/robot/python/script.py doc-root = /home/pi/robot/html/ welcome-file = index.html gpio-export = 25, 11, 8, 9 gpio-post-value = prawda

Instalowanie oczu

Podłączamy więc kamerę internetową do robota. Użyłem kamery HP HD-4110 z obsługą Full HD i V4L, ale nie ma sensu brać kamery Full HD, ponieważ mamy rozdzielczość obrazu 640 na 480. Pełna lista jest tutaj: bit.ly/1cR06N4. Dla prawie każdej kamery ta tabliczka wskazuje, czy wymaga zewnętrznego zasilania. To ważne, ponieważ „malina” potrafi stabilnie zasilać nie każde urządzenie przez USB, a w przypadku niektórych aparatów w zasadzie zasilanie jest dostarczane przez zewnętrzny adapter. Dlatego należy wystrzegać się niektórych modeli firm Logitech i Microsoft. Dalej na liście:

  1. Sprawdzanie "łączności" # lsusb

    Otrzymujemy coś takiego: Bus 001 Device 004: ID 03f0:9207 Hewlett-Packard

  2. Zainstaluj wideo dla pakietu Linux # apt-get install libv4l-0
  3. Zainstaluj narzędzie mjpg-streamer-rpi # wget http://www.bobtech.ro/get?download=36:mjpg-streamer-rpi
  4. Zmień nazwę pobranego pliku # mv get\?download\=36\:mjpg-streamer-rpi mjpg-streamer-rpi.tar.gz
  5. Rozpakuj # tar -zxvf mjpg-streamer-rpi.tar.gz
  6. Przejdź do katalogu z programem # cd mjpg-streamer
  7. Uruchom # ./mjpg-streamer.sh start
  8. W razie potrzeby dostosuj skrypt dla siebie # sudo nano ./mjpg-streamer.sh VIDEO_DEV="/dev/video0" - identyfikator urządzenia; FRAME_RATE="30" - liczba klatek na sekundę (FPS); ROZDZIELCZOŚĆ="640x480" - rozdzielczość; PORT="8080" - port HTTP; YUV="false" - flaga kodowania YUV.

Przy 30 klatkach na sekundę mój system działał dobrze (bez podkręcania), ale aby odciążyć komputer, wartość można zmniejszyć do 5. Zwróć także uwagę na YUV - pozwoli nam to nieco zoptymalizować rozmiar wideo strumień ze względu na inną zasadę kodowania kolorów. Utwórz skrypt automatyzacji uruchamiania:

$ cd /home/pi $touch autostart.sh $ nano autostart.sh #!/bin/sh sudo /etc/init.d/webiopi start cd /home/pi/mjpg-streamer ./mjpg-streamer.sh start

#!/bin/sh -e # # rc.local ... cd /home/pi ./autostart.sh wyjście 0

Jeśli chcesz podziwiać efekt, wejdź do przeglądarki pod adresem http://raspberrypi:8000, zaloguj się webiopi, hasło raspberry. Jako bonus możesz otworzyć interfejs sieciowy na „świat”. Aby to zrobić, musisz dać routerowi dostęp do portów 8000 i 8080 dla adresu IP twojej "maliny". Oczywiście wcześniej należy zmienić standardowy login i hasło do WebIOPi za pomocą polecenia

# sudo webiopi-passwd

Następnie uruchomi się generator plików haseł i poprosi najpierw o login, a następnie dwukrotnie o hasło. Wynikiem będzie: Hash: "długi, długi ciąg z wieloma znakami" Zapisany do /etc/webiopi/passwd

Po wykonanych operacjach wymagany jest restart serwera.

# restart sudo /etc/init.d/webiopi

Montaż

Aby nasz model mógł jeździć, musimy zaimplementować sterowanie silnikiem. Polecam zrobić to w postaci kluczyków z tranzystorów, tak jak ja (patrz schemat sterownika).

Schemat pochodzi z samej maszyny. Wszystkie wartości części i tranzystory są pobierane bezpośrednio z tego miejsca. Tranzystory Q1, Q2 lepiej stosować B772, tranzystory Q3, Q4 - D882. Jeśli oszczędzasz miejsce, tranzystory Q5 i Q6 lepiej wziąć SMD oznaczone 6C. Obwód jest skopiowany z płytki maszyny z której pobierany jest rozstaw osi, ale dodałem rezystory 1 MΩ równolegle z wejściami sterującymi w celu wyeliminowania zakłóceń. Silnik jest zasilany bezpośrednio przez sterowniki z akumulatora 12 V. W razie potrzeby można zorganizować kontrolę prędkości maszyny poprzez modulację szerokości impulsu. Teraz łączymy wszystko według tego schematu:

  • Port GPIO 11 odpowiada za poruszanie się do przodu, GPIO 9 odpowiada za poruszanie się do tyłu, GPIO 25 jest w lewo, a GPIO 8 w prawo.Silniki podłączamy do sterowników, a sterowniki do odpowiednich portów na Raspberry Pi.
  • Część sterująca robota zasilana jest poprzez konwerter DC/DC na chipie LM2596.
  • Do wejścia podłączamy baterię, a do wyjścia Raspberry Pi. Gdy nasz robot jest wyłączony, będziemy mieli upływ prądu przez tranzystory sterownika i zasilacz Raspberry, więc musimy umieścić przełączniki dwustabilne w rozcięciu obwodów zasilania, pierwszy przełącznik między baterią plus a konwerterem, oraz drugi między plusem akumulatora a zaciskiem zasilania kierowcy.

Tak więc długo oczekiwane uruchomienie gotowego urządzenia. Połączenie wykonujemy według następującego schematu:

  • Podłączamy kamerkę internetową, adapter USB Wi-Fi, konwerter oraz przewody prowadzące do sterowników do RPi.
  • Następnie podłączamy Raspberry do akumulatora przez konwerter i włączamy go. Bateria wystarcza na dwie do trzech godzin.
  • Po załadowaniu komputera włącz przełącznik do zasilania sterowników.
  • Idziemy z dowolnego urządzenia z naszej okolicy pod adres http://adres_twojego_RPi:8000 i jeździmy na maszynie do pisania po mieszkaniu :).

Czytelnik

Funkcjonalność Raspberry Pi zależy wyłącznie od wyobraźni, zdrowego rozsądku i potrzeb osoby trzymającej go w rękach. Mój przykład nie jest jedynym sposobem wykorzystania tego komputera, zaprojektowanego do uczenia dzieci programowania. Gotowego robota można dowolnie ulepszać. Możesz podłączyć do niego czujniki zgięcia za pomocą magistrali I2C i serw, bawić się mechaniką i uzyskać manipulator, taki jak tutaj: bit.ly/1e1pOQ0, na Arduino. Następnie dodaj do niego kolejny ADC i stwórz robota sterowanego głosem! Na przykład ten: bit.ly/1fJwTvz , wyspecjalizowany w RPi ADC. Ponieważ magistrala I2C obsługuje do 127 urządzeń, można zaimplementować prawie wszystko. W przyszłości planuję przerobić rozstaw osi na gąsienicowy i mocniejszy - chcę, aby model był poważniejszy rozmiarami :). Następnie włóż lasery, atomowe źródło zasilania i tym podobne, ale to drobiazgi :).

Samochodzik robota sterowany przez raspberry pi 3, które każde dziecko będzie chciało mieć w swojej kolekcji. Nagrywa wideo i robi zdjęcia sterując z telefonu (andriod) lub z komputera osobistego. Świetny zestaw samouczków dla kogoś, kto stawia pierwsze kroki w robotyce.


  1. Kompletny zestaw materiałów szkoleniowych na temat Raspberry Pi z aplikacją na Androida. Aby usprawnić naukę, dostarczono szczegółową instrukcję obsługi, kod z objaśnieniem i diagramy.
  2. Raspberry Pi q służy jako kontroler. Zestaw wykorzystuje moduł konwertera obniżającego napięcie DC-DC obniżający napięcie wejściowe oraz moduł sterownika silnika z L298N. Ponadto kamera internetowa jest wyposażona w adapter USB Wi-Fi, dzięki czemu możesz sprawdzić wideo na żywo na swoim komputerze lub telefonie komórkowym.
  3. Na komputerze można sterować samochodem, aby poruszać się do przodu/do tyłu i skręcać w lewo/w prawo, a także sterować kamerą, aby obracała się w pionie i poziomie, aby robić zdjęcia w różnych kierunkach.
  4. Świetny zestaw do rozpoczęcia nauki Raspberry Pi (zarówno kodu, jak i aplikacji), poznania głównych podzespołów i modułów w elektronice, a następnie wykorzystania zdobytej wiedzy do eksploracji szerszej dziedziny!
  5. Napięcie robocze: 7 V-12 V; zasilany dwoma bateriami litowymi 18650
  6. Dostępnych jest kilka potrzebnych części, instrukcji i kodu, abyś mógł sam je złożyć za pomocą instrukcji obsługi i czerpać radość z tworzenia!
  7. Sterowanie samochodem można zaimplementować na komputerze PC z systemem Linux lub zastosować na maszynie wirtualnej z systemem Linux.
  8. Kamera w tym zestawie MJPG służy do przechwytywania obrazu w czasie rzeczywistym i transmisji wideo. możesz oglądać filmy przez przeglądarkę internetową na dowolnym urządzeniu. Zalecane są Firefox i Google Chrome.


1 paczka x Płyty akrylowe
1 paczka x łącznik gwintowany
1 x mikroserwomechanizm Tower Pro SG90
2 x reduktor biegów
2 x napędzane koła
2 x Aktywne koła
1 x 16-kanałowy 12-bitowy sterownik PWM
1 x moduł sterownika silnika prądu stałego L298N
1 x moduł konwertera DC-DC obniżającego napięcie
1 x adapter Wi-Fi USB
1 x kamera USB
1 x podwójny uchwyt baterii 18650
1 x wstążka
1 x kabel USB
Dupont drutu serwala
1 x śrubokręt
1 x klucz nasadowy krzyżowy

Musisz kupić osobno:

1x malina pi 3
Akumulator litowo-jonowy 2 × 18650 (3,7 V) bez płytki obwodu ochronnego
1 x karta TF

Raspberry Pi to komputer jednopłytkowy zaprojektowany do nauczania podstawowych umiejętności obsługi komputera uczniom szkół średnich. Następnie zyskał znacznie szersze zastosowanie i popularność, niż oczekiwali jego autorzy. Nasza płyta wygląda tak: Ta wersja płyty jest wyposażona w procesor Broadcom BCM2835 ARM11 o taktowaniu 700 MHz i moduł 256MB/512MB RAM. Raspberry Pi działa w systemie operacyjnym Linux. Będziemy używać płyty w wersji "B" z zainstalowanym systemem Raspbian.

1. Montaż robota opartego na platformie gąsienicowej

Raspberry Pi i kamera zostaną zamontowane na śledzonej platformie. W rzeczywistości będzie to mobilny system nadzoru wideo.
Samo Raspberry Pi ze sterownikiem silnika zostanie naprawione za pomocą konstruktora Lego, ponieważ na tej płytce brakuje niezbędnych elementów złącznych.
Zasilanie płyty i silników jest oddzielne. Na silnikach znajduje się 8 akumulatorów 1,2 V, na płycie 2 akumulatory 3,7 V. Wszystkie akumulatory są połączone szeregowo. Silniki są zasilane przez sterownik silnika wykonany na L293D przy użyciu montażu powierzchniowego.
Zasilanie samej płyty odbywa się za pomocą regulatora liniowego, ponieważ wymagane jest stałe napięcie 5 woltów. Do czego służy ta platforma: 1. Poruszaj się po terenie (mieszkaniu itp.) za pomocą czujnika ultradźwiękowego HC-SR04, aby omijać przeszkody. 2. Zrób zdjęcie (ramkę wideo) po określonym czasie i wyślij je na Yandex lub Google Drive. 3. Podjedź do bazy w celu doładowania za pomocą lokalizatora IR. 4. Możliwość ręcznego sterowania za pomocą przeglądarki i Internetu. Stabilizator do zasilania samej tablicy malinowej. Na płytce stykowej zamontowano sterownik silnika L293 i zainstalowano żyroskop mpu-6050 połączony magistralą I2C.
Komunikacja z Internetem będzie możliwa dzięki takiej karcie WiFi Tp-Link.
Nakręcany zaraz po wyjęciu z pudełka, bez instalowania dodatkowego oprogramowania. Zainstalowano również kamerę dla raspberry pi z interfejsem CSI.
Aby obrócić kamerę, mechanizm ten będzie używany na dwóch serwach.
Raspberry będzie sterować nim bezpośrednio z portów GPIO, a także silnikami ruchu poprzez układ L293D. Ładowanie robota odbywać się będzie ze stacji dokującej, do której będziesz musiał podjechać. Aby to zrobić, styki do ładowania są zainstalowane z przodu podwozia.
W sklepie kupiono taką płytkę stykową, na której wszystko będzie montowane. Części Lego do montażu Raspberry musiały zostać porzucone, ponieważ nie wszystko pasuje.
Mocując go do podwozia otrzymujemy. Następnie do pinów dołączamy samo Raspberry Pi.
Teraz na podwoziu.
Platforma będzie wyglądać mniej więcej tak:

2. Ogólny schemat połączeń


3. Podłączanie silników

Przyjrzyjmy się bliżej schematowi podłączenia silnika za pomocą L293D.
Porty GPIO Raspberry Pi podłączamy do sterownika silnika w następujący sposób: Lewy silnik: L293 IN1 na GPIO 9 L293 IN2 na GPIO 10 L293 EN1 na GPIO 11 Prawy silnik: L293 IN3 na GPIO 23 L293 IN4 na GPIO 24 L293 EN2 na GPIO 25

4. Konfiguracja Raspberry Pi

Do zdalnego zarządzania tą obudową potrzebny jest biały adres IP (stały), co można zrobić za pomocą routera znajdującego się w pokoju. Do zdalnego sterowania i konfiguracji potrzebujemy programu PuTTY. Możesz go pobrać w Internecie. Na Raspberry musisz włączyć serwer SSH, jeśli tego nie zrobiłeś, musisz wpisać polecenie sudo raspi-config w konsoli.W elemencie SSH kliknij Enable. Następnie zrestartuj płytkę, teraz możemy połączyć się zdalnie. Zainstaluj PuTTY na naszym komputerze i skonfiguruj go. W tym celu w zakładce „Sesja” wpisz adres IP Raspberry Pi. Adres IP można znaleźć w ustawieniach routera. Zostawiamy numer portu 22, typ połączenia to SSH. Kliknij "Zapisz" podczas wpisywania nazwy sesji. Teraz ustawienia zostały zapisane. Następnie wybieramy pozycję Connection -> Data i wpisujemy naszą nazwę i hasło, aby wejść do Raspberry. Jeśli nie zostanie zmienione, nazwa i hasło są takie same: pi i raspberry. Wpisujemy to, aby nie wpisywać loginu i hasła za każdym razem przy wejściu. Teraz wybierz pozycję SSH -> X11 i zaznacz pole obok "Włącz przekazywanie X11", a w wierszu "Wyświetl X" musisz wpisać localhost: 0 Wróćmy do zakładki "Session" i zapiszmy wszystkie ustawienia pod imię, które już zarejestrowaliśmy. To wszystko, konfiguracja jest zakończona! Kliknij „Połącz” i wprowadź wiersz poleceń Raspberry Pi. Teraz ustawiamy obraz z kamery w przeglądarce. Aby to zrobić, w wierszu poleceń wpisz: sudo apt-get update Po wykonaniu polecenia napisz: sudo apt-get upgrade Następnie: sudo raspi-config i włącz obsługę aparatu. Uruchom ponownie, uruchom ponownie PuTTY i połącz się z raspberry. Następnie zainstaluj aplikacje niezbędne do poprawnego działania mjpg-streamer: sudo apt-get install libjpeg8-dev Następnie: sudo apt-get install cmake Pobierz źródła mjpg-streamer: wget github.com/jacksonliam/mjpg-streamer/archive/master .zip Następnie rozpakuj archiwum: unzip ./master –d ./Valli (Vflli to dowolna nazwa) Przejdź do folderu cd /Valli/mjpg-streamer-master/mjpg-streamer-experimental, a następnie wpisz make clean all Za pomocą poleceniem nano, zmień plik start.sh sudo nano Valli/mjpg-streamer-master/mjpg-streamer-experimental/start.sh usuń tam dwie niekomentowane linie i napisz zamiast nich cd etc/ms/mjpg-streamer-master/mjpg -streamer-experimental ./mjpg_streamer -o "./ output_http.so -w ./www" -i "./input_raspicam.so -x 640 -y 480 -fps 10 -ex auto -awb auto -vs -ISO 100" Wyjdź z edytora za pomocą Ctrl+X, następnie Enter (zgadzamy się na zmianę) i Y (tak). W folderze mjpg-streamer-experimental uruchom nasz skrypt: ./start.sh Powinno się uruchomić, aw konsoli będzie dużo liter, zapali się dioda na kamerze. Komenda Ctrl+C zatrzyma skrypt i zgaśnie dioda LED. Otwieramy przeglądarkę, wchodzimy w poniższy link: ip-address-raspberry:8080/?action=stream (gdzie ip-address-raspberry to IP naszej maliny) i wchodzimy na serwer WWW, klikamy w Stream i widzimy:
Aby robot mógł się poruszać, konieczne jest zainstalowanie interfejsu sieciowego, który będzie sterował robotem. Instalujemy. Najpierw pobierz WebIOPi wget webiopi.googlecode.com/files/WebIOPi-0.6.0.tar.gz rozpakuj tar xvzf WebIOPi-0.6.0.tar.gz Przejdź do folderu cd WebIOPi-0.6.0 i uruchom plik instalacyjny za pomocą polecenie sudo /setup.sh Po instalacji poleceniem: update-rc.d domyślnie webiopi uruchamiamy interfejs z raspberry. Jak zwykle otwórz przeglądarkę, wejdź w ten link: ip-address-raspberry:8000 i zdobądź
W rezultacie otrzymujemy: Powodzenia wszystkim! 2018-04-17T11:12:29+05:30

Raspberry Pi działa tak samo jak zwykły komputer stacjonarny, z wyjątkiem tego, że jest to jednopłytkowy mikrokomputer wielkości karty kredytowej. Ale czy to wszystko, co możesz zrobić ze swoim Raspberry Pi? Nie całkiem. Urządzenie jest tak popularne wśród studentów, profesjonalistów, hobbystów i artystów, ponieważ można z nim zrobić wiele rzeczy, w tym zbudować robota!

Najlepsze jest to, że możesz je zbudować za jedyne 50 USD lub tak drogie, jak 1000 USD i więcej. Od czego zatem zacząć? Wybierz odpowiedni zestaw robota Raspberry Pi w oparciu o swoje preferencje, a będziesz gotowy!

Oto lista najlepszych zestawów, jakie znaleźliśmy:

Najlepsze zestawy robotów Raspberry Pi

1) Zestaw samochodowy inteligentnego robota SunFounder Raspberry Pi;

Bez wątpienia zestaw robota SunFounder Raspberry Pi jest obecnie najlepszy na rynku i mówimy to, ponieważ ma wyjątkową funkcjonalność i prawie wszystko, czego potrzebujesz, aby rozpocząć projekt budowy robota. Jest to wszechstronny zestaw do nauki STEM dla entuzjastów i profesjonalistów, a użytkownicy nie mogą przestać go chwalić.

Rzućmy okiem na wszystkie funkcje tego zestawu:

  • Podczas montażu będziesz się świetnie bawić! Pojazd jest dość dobrze zaprojektowany.
  • Możesz go bezproblemowo używać do kodowania w Pythonie.
  • Posiada linię graficznego języka programowania wizualnego opartą na bloku S.
  • Jest wyposażony w 3 różne moduły czujników, które działają w celu ultradźwiękowego omijania przeszkód, śledzenia światła i śledzenia linii.
  • Za pomocą tego zestawu robota możesz zaangażować się w proste programowanie GUI.
  • Zestaw zawiera:
    • CZAPKI ROBOTA
    • 1 zestaw płyt akrylowych
    • Sterownik silnika TB6612
    • Sterownik PCA9685 PWM
    • Moduł popychacza światła
    • Ultradźwiękowy moduł unikania przeszkód
    • Moduł popychacza linii 5-CH
    • 2 uchwyty na baterie
    • 1 Serwo Założyciel Słońca
    • Motoreduktor prądu stałego
  • Pamiętaj, że możesz tego używać tylko z Raspberry Pi, a nie z innymi płytami.
  • Jest dostarczany z instrukcją obsługi, która zawiera pełne instrukcje, a także kod do pojazdu. Zawiera również opublikowane wideo online, które pomoże Ci w dalszym montażu i użytkowaniu.

2) Zestaw robota Dexter Industries Raspberry Pi GoPiGo3

Dexter Industries stworzył ten zestaw robota GoPiGo3, który pomaga zbudować w pełni funkcjonalnego robota zasilanego przez Raspberry Pi 3. Zawiera korpus robota, silniki, elementy sterujące i wszystko, czego potrzebujesz, aby uruchomić Raspberry Pi. Obecnie jest to jeden z najpopularniejszych zestawów robotów Raspberry Pi na Amazon.

Cechy Zestaw robota GoPiGo3 Raspberry Pi są:

  • To super robot i ulepszona wersja GoPiGo
  • Jest dostarczany z najszybszą płytą Raspberry Pi 3
  • Działa również świetnie z A, B i B+
  • Nie wymaga lutowania i zasilany ośmioma bateriami AA
  • Dexter Industries dostarcza przykłady oprogramowania i interfejsy API
  • Inne akcesoria obejmują fabrycznie załadowaną kartę Micro SD, kabel Ethernet, adapter USB WiFi, zasilacz Raspberry Pi, czujnik ultradźwiękowy i wszystkie inne niezbędne elementy podstawowego zestawu startowego GoPiGo

3) Rapiro Robot dla Raspberry Pi firmy Switch Science

Firma Switch Science zaprojektowała robota Rapiro, który jest zestawem DIY zasilanym z Raspberry Pi. Jest to niedrogi, wytrzymały, łatwy w montażu zestaw humanoidalnego robota.

Funkcje robota Rapiro firmy Switch Science to:

  • Jest to zestaw robotów do samodzielnego montażu Raspberry Pi
  • Jest specjalnie zaprojektowany dla hobbystów, studentów i inżynierów w dziedzinie robotyki
  • Zestaw jest dostarczany w stanie niezmontowanym, więc użytkownik musi złożyć części;
  • Możesz także zainstalować model B+ Raspberry Pi z niewielkimi modyfikacjami w Rapiro
  • Po złożeniu waży tylko 1 kg (lekka konstrukcja)
  • Pochodzi z 12 serwomechanizmami i płytą sterowania serwo;
  • Polecany dla osób powyżej 15 roku życia

4) PiStorms LEGO Robot — zestaw startowy Raspberry Pi V2

Możesz stworzyć oszałamiającego robota zasilanego przez Raspberry Pi dzięki temu fantastycznemu zestawowi Raspberry Pi Robot od mindsensors.com. Łatwo wchodzi w interakcję z botem i można go zaprogramować za pomocą Pythona. Pakiet zawiera kontroler PiStorms, ramkę kompatybilną z LEGO, uchwyt na baterie 6 AA, adapter WiFi i kartę SD załadowaną gotowym do użycia systemem operacyjnym.

Cechy zestawu robota PiStorms Raspberry Pi to:

  • Możesz stworzyć robota LEGO, używając mózgów Raspberry Pi!
  • Świetnie współpracuje z Raspberry Pi A+, B+ i Raspberry Pi 2
  • Aby zakodować Raspberry Pi ., można podłączyć silniki i czujniki LEGO Mindstorms NXT lub EV3
  • Posiada wbudowany kolorowy ekran dotykowy o przekątnej 2,4 cala
  • Solidna konstrukcja zawiera adapter i adapter WiFi

5) SunFounder Inteligentny samochód wideo Zestaw robota Raspberry Pi

Jeśli chcesz rozpocząć pracę z robotem, ten inteligentny zestaw robotów Raspberry Pi firmy SunFounder to świetna opcja do wyboru. Możesz również zastosować ten zestaw na maszynie wirtualnej w systemie Linux. Jeśli masz zainstalowany system operacyjny Android na Raspberry Pi, możesz obsługiwać tę konfigurację za pomocą obsługiwanej aplikacji firmy SunFounder.

Sprawdź funkcje Zestaw robota SunFounder Raspberry Pi poniżej:

  • Jest to kompletny zestaw edukacyjny Raspberry Pi dla początkujących w dziedzinie robotyki i elektroniki
  • Zestaw wykorzystuje moduł konwertera obniżającego napięcie DC na DC, który zmniejsza napięcie wejściowe
  • W zestawie znajduje się również moduł sterownika silnika L298N
  • Jest to świetny zestaw do badania robotyki Raspberry Pi zarówno pod kątem kodu, jak i aplikacji
  • Posiada napięcie robocze od 7 do 12V i jest zasilany dwoma akumulatorami litowymi 18650A
  • W zestawie znajduje się również kamera internetowa z adapterem USB WiFi
  • Jest dostarczany z kompatybilną aplikacją na Androida dla Raspberry Pi

6) Zestaw bazowy BrickPi+ Raspberry Pi


Zaprojektuj oszałamiającego robota z zestawem startowym BrickPi firmy Dexter Industries. W zestawie wszystkie niezbędne akcesoria. Musisz osobno kupić Raspberry Pi 3, zasilacz, kartę micro SD z fabrycznie załadowanym oprogramowaniem „Raspbian for Robots” itp. chociaż.

Cechy zestawu BrickPi+ Raspberry Pi Robot Kit firmy Dexter Industries to:

  • Akumulator wystarczy do zasilania płyty Raspberry Pi
  • Jeśli połączysz obudowę BrickPi z LEGO, zamieni się ona w doskonale wyposażonego robota
  • Do pisania kodu można używać innych języków, takich jak Scratch, Python i Java
  • Można podłączyć do czterech cyfrowych/analogowych silników i czujników NXT lub EV3
  • Kontroluj go zdalnie, łącząc robota LEGO Mindstorms z siecią
  • Akrylowa obudowa jest wystarczająco wytrzymała, aby chronić konfigurację przed przypadkowym uszkodzeniem
  • Fantastyczny zestaw robota Raspberry Pi dla początkujących

Zestaw robota BrickPi+ Raspberry Pi to zestaw inteligentnego robota samochodowego do jazdy terenowej z obsługą Wi-Fi. Pomaga w samodzielnym stworzeniu 4-kołowego inteligentnego samochodu robota bez profesjonalnej pomocy.

7) Zestaw samochodowy Smart Video Raspberry Pi 3 firmy SunFounder

Firma SunFounder opracowała robota typu open source, który pomaga zrozumieć platformę kodowania za pomocą Raspberry Pi 3. Zawiera szerokokątną kamerę internetową, która zapewnia wyraźne i doskonałe obrazy obiektów, które znajdują się między ścieżką samochodu robota.

Cechy Zestaw inteligentnych robotów SunFounder dla Raspberry Pi 3 są:

  • Otrzymasz transmisję wideo w czasie rzeczywistym przez potężną kamerę internetową
  • Dołączony pilot pomaga łatwo poruszać się po samochodzie robota
  • Atrakcyjny wygląd, solidna konstrukcja i wiele innych elementów sprawiają, że jest to opłacalny zestaw do nauki robotyki
  • Obsługuje kompatybilną aplikację, która jest obsługiwana przez wszystkie typy systemów operacyjnych
  • Chociaż dostarczany jest kod Pythona, aby go zaprogramować, możesz użyć dowolnej platformy programistycznej, aby go skonfigurować i uruchomić
  • Do pracy przy napięciu roboczym 7-12 woltów potrzebne będą dwie baterie o dużej pojemności
  • Niezbędne komponenty, takie jak Raspberry Pi 3, kapelusze, kamera szerokokątna, sterownik PWM, sterownik silnika, serwomechanizm, uchwyt baterii, śrubokręt, klucze, koła, śruby, nakrętki i przewody sprawiają, że nie musisz się martwić o dokonywanie różnych zakupów, aby stworzyć kompletny produkt

Przyjazny dla użytkownika interfejs graficzny, prosta sekcja kodowania z funkcją „przeciągnij i upuść”, obsługa wielu systemów operacyjnych i języków kodowania itp. to główne zalety posiadania tego zestawu samochodowego robota RPi 3. Może współpracować z dowolnym komputerem, tabletem, telefonem komórkowym itp.

8) Zestaw samochodowy Kuman Professional WIFI Smart Robot dla Raspberry Pi


Jeśli potrzebujesz kompletnego zestawu robota Raspberry Pi z funkcją WiFi, profesjonalny zestaw robota Kuman to doskonała opcja do wyboru. Pomoże Ci również kontrolować samochód robota z napędem Pi za pomocą aplikacji mobilnej.

The Zestaw samochodowy robota Raspberry Pi firmy Kumanzawiera funkcje, jak poniżej:

  • Jest wyposażony w fabrycznie załadowaną kartę SD o pojemności 8 GB, w tym kody systemu robota
  • Dołączona kamera internetowa zapewnia transmisję obrazu i wideo w czasie rzeczywistym na urządzeniu
  • Wbudowana funkcja hotspot zapewnia łatwą kontrolę za pomocą aplikacji
  • Kod Pythona o otwartym kodzie źródłowym sprawia, że ​​zadanie programistyczne jest łatwe i efektywne
  • Kamera ma 2-osiową kołyskę, która umożliwia fotografowanie pod dowolnym kątem i odbywa się to bez przesuwania samochodu robota
  • Konfiguracja działa na najbardziej udanym i wydajnym rozwiązaniu, w tym na mózgu płyty głównej RPi i rozbudowie napędu z zarządzaniem energią
  • Szczegółowa instrukcja z łatwymi do zrozumienia diagramami pomaga zrozumieć działanie projektu

Zestaw samochodowy inteligentnego robota firmy Kuman jest kompatybilny z systemami komputerowymi, urządzeniami iOS i Android, umożliwiając rozpoczęcie pracy z Raspberry Pi 3. Wykorzystuje zarówno aplikacje, jak i platformy kodujące do interakcji i sterowania zrobotyzowanym zestawem samochodowym.

Mamy nadzieję, że pomogliśmy Ci znaleźć najlepszy zestaw robota Raspberry Pi, aby rozpocząć magiczne projekty. Jeśli nadal jesteś zdezorientowany, możesz skorzystać z naszej rekomendacji i kupić zestaw SunFounder Raspberry Pi Smart Robot Car Kit. Jest niezwykle niezawodny i bardzo łatwy w obsłudze.

Jakie są Twoje myśli? Bardzo chcielibyśmy usłyszeć od Ciebie!