MKNM "Synergia"

Stan: W ciągłym doskonaleniu

SynerBOT

SynerBOT

Historia tego projektu jest długa i dosyć zawiła – pierwotnie miał być robotem autonomicznym, orientującym się na siatce złożonej z czarnych linii. Następnie przechodził etap linefollowera i robota podążającego za przedmiotem zadanego koloru.

Ostatecznie stał się zdalnie sterowaną platformą.

Za komunikację i obsługę robota odpowiedzialne jest Raspberry Pi 2. Robot nie posiada osi skrętnej, jazda po łuku i obroty w miejscu realizowane są dzięki zmianie prędkości obrotowej silników. Komunikacja za pośrednictwem wifi.

Sterowanie z poziomu komputera, poprzez program napisany w C++. Bot poza odbieraniem poleceń co do prędkości i kierunku obrotu silników  przesyła również obraz z zamontowanej kamery (jakoś i sposób wysyłki obrazu pozostawiają sporo do życzenia, ale robimy co możemy żeby jakoś to poprawić).

Bot może również działać jako linefollower (wtedy nie potrzebuje komunikacji z komputerem, całość obliczana jest bezpośredni przez Raspberry Pi, jednak ta część wymaga jeszcze gruntownego dopracowania, bowiem pomimo zainstalowania dosyć mocnych świateł pojazd często gubi linie i myli drogę)

n

Wygląd zewnętrzny Bota również pozostawia sporo do życzenia, dlatego naszym następnym krokiem będzie poprawa jego strony wizualnej.

n
Na chwilę obecną wygląda on tak

W dalszej perspektywie chcemy wyposażyć go w moduł wizyjnego rozpoznawania znaków drogowych i połączyć z  dopracowanym systemem linefollowera. Jeśli uda nam się to jakoś zrealizować…

 

  • Aktualizacja 26.09.2016

Bot został poddany operacji plastycznej, dzięki czemu prezentuje się w sposób następujący:

SAMSUNG

 

Sam program sterujący został napisany od nowa. Bot oprócz podążania za linią radzi sobie ze skrzyżowaniami (drogi muszą przecinać się pod kątem ok. 90 stopni) przez które domyślnie stara się przejechać na wprost. Jeśli jest to niemożliwe – skręca.

Zachowanie bota można modyfikować poprzez znaki drogowe, aktualnie rozpoznaje nakazy skrętu w lewo i w prawo. Poniższy screen przedstawia moment wykrycia znaku (program szuka na ekranie okręgów, następnie wycina je z obrazu by zmniejszyć ilość danych do przeliczenia i sprawdza czy są podobne do zapamiętanych znaków).

p1

Poniżej filmy demonstrujące przejazd bota przez to samo skrzyżowanie bez znaków, potem ze znakami

 

 

Bot zaczął sobie radzić ze skrzyżowaniami i podstawowymi znakami, ale to dopiero początek drogi. Kolejny krok to zoptymalizowanie transmisji obrazu, bowiem aktualnie system jest bardzo podatny na zakłócenia. Kolejnych usprawnień wymaga część odpowiedzialna za śledzenie linii – bot czasami  zgubi linię albo przeoczy skrzyżowanie. Przyda się również kilka dodatkowych znaków.

SynerBOT powstaje we współpracy z projektem SynerLine