Roboty
miniRyś V2
Robot balansujący
Autorzy
Kamil ForyszewskiOpis
Robot balansujący miniRyś to konstrukcja przystosowana do pracy w grupie. Obecna wersja prototypu doczekała się powielenia w pięciu egzemplarzach. Roboty poruszają się po specjalnej modularnej planszy umożliwiającą testowanie algorytmów pracy roju. Posiadają zmienny tryb lokomocji tzn. Mogą się poruszać w trybie podpartym lub balansować.
Opis konstrukcji
Rama robota została wykonana z elementów z blachy aluminiowej o grubości 3 mm wyciętych laserem i wygiętych na giętarce. Rama stanowi jednocześnie obudowę i mocowanie dla pozostałych podzespołów. Istotnym elementem konstrukcji są również koła które zostały wydrukowane na drukarce 3D jak i elastyczny zderzak wykonany z odpowiednich opasek zaciskowych. Elementy ramy są połączone za pomocą śrub.
Opis elektroniki
Elektronika robota oparta jest o płytkę BeagleBone Green Wireless. Płytka zawiera w sobie wydajny mikrokontroler ARM oraz moduł WiFi/Bluetooth. Pozostałe komponenty to:
- Sterowniki silników krokowych DRV8825
- Silniki krokowe nema 17
- IMU 6 stopni swobody MPU6050
- Bateria litowo-polimerowa 11.1V
- Przetwornica step-down Pololu
- Ultradźwiękowe czujniki odległości HC-SR04
Komponenty zostały połączone na zaprojektowanej płytce PCB stanowiącej shield do płytki BeagleBone.
Opis Oprogramowania
Oprogramowanie robota składa się z wielu płaszczyzn. Główną warstwą jest program pracujący pod kontrolą systemu operacyjnego Debian Linux integrujący w sobie regulator prędkości robota, przechodzenie z trybu poziomego do trybu balansowania, odczyt danych z czujników i komunikacja z innymi robotami w roju. Do sterowania niskopoziomowymi zadaniami takimi jak generowanie sygnałów sterujących dla silników i pomiar czasu impulsu na czujnikach ultradźwiękowych, zostały wykorzystane rdzenie PRU działające pod kontrolą programów napisanych w języku C. Pozostałe warstwy oprogramowania bazują na języku C++ oraz skryptach Bash. Dzięki zastosowaniu mikrokontrolera z systemem operacyjnym połączonym z modułem WiFi możliwe jest bezprzewodowe programowanie robotów oraz przesyłanie danych diagnostycznych do komputera typu PC.