Skocz do zawartości

Jak wykorzystać Raspberry Pi do budowy robota z kamerą?


Pomocna odpowiedź

Napisano
html_mig_img
Niektórzy uważają, że wykorzystanie Linuxa do budowy robotów nie ma większego sensu.W tym artykule postaram się pokazać, że jest to bardzo łatwe i ma swoje zalety. Szczególnie, gdy jednostką sterującą będzie Raspberry Pi. Pora na robota z kamerą!

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.

qwerty, testowany model przeznaczony jest do RPI 2, niestety nie ma analogicznego modułu do RPI 1. Może znajdziesz coś u innych producentów?

Niestety robot stał się "dawca organów" do dalszych prac... Ale jak chodzi o RPi to można uzyskać maksymalną rozdzielczość 2592x1944, przy 15 fps. Przy niższej rozdzielczości, liczba klatek na sekundę może wzrosnąć nawet do 90.

Sterownik obsługuje większość popularnych formatów, w tym MJPG, H.264, ale pełną prędkość oferuje tylko w przypadku I420.

Czy do Raspberry Pi można zastosować sposób programowania z Arduino? Chodzi o pisanie kodu na na silniki. Wole pozostać przy C zamiast studiować kolejny język w tym przypadku Python.

Jeśli masz na myśli programowanie w C lub C++, to oczywiście Raspberry Pi można w tych językach programować. Natomiast o ile wiem nie ma Arduino IDE w wersji, która generowałaby kod dla malinki. Więc programować w C można, ale niestety tak samo jak Arduino.

Istnieje Arduino IDE działające na Raspberry, które tworzy kod dla AVR - ale to raczej nie pomoże.

Czyli jeśli się biorę za Raspberry i programowanie peryferiów silniki, czujniki... krótko mówiąc budowę robota na Raspberry to lepiej zostać przy Pythonie?

Czy do Raspberry Pi można zastosować sposób programowania z Arduino?
Sposób, nie. Język możesz użyć, ale programy nie będą wyglądać tak samo. AVR programujesz niskopoziomowo, grzebiesz w rejestrach uC, ustawiasz timery, dzielniki, etc. Na RPi masz już system operacyjny i programowanie jest bliższe programowaniu na PC niż na uC. To, że można wykorzystać ten sam język nie sprawi, że programy będą wyglądać podobnie.

Marooned, Zdziwiłbyś się:

#include <wiringPi.h>
int main (void)
{
 wiringPiSetup () ;
 pinMode (0, OUTPUT) ;
 for (;;)
 {
   digitalWrite (0, HIGH) ; delay (500) ;
   digitalWrite (0,  LOW) ; delay (500) ;
 }
 return 0 ;
}
static void waitForEnter (void)
{
 printf ("Press SELECT to continue: ") ; fflush (stdout) ;

 while (digitalRead (AF_SELECT) == HIGH)       // Wait for push
   delay (1) ;

 while (digitalRead (AF_SELECT) == LOW)        // Wait for release
   delay (1) ;

 printf ("OK\n") ;
}

To z przykładów na stronie.

WiringPi bardzo przypomina biblioteki Arduino.

Bądź aktywny - zaloguj się lub utwórz konto!

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto w ~20 sekund!

Zarejestruj nowe konto, to proste!

Zarejestruj się »

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się »
×
×
  • Utwórz nowe...