Wielofunkcyjna platforma mobilna

Szymon Kochanowski

Koło Naukowe Automatyki i Robotyki, Wydział Elektryczny, Politechnika Białostocka

Streszczenie: W pracy opisano wielofunkcyjną, autonomiczną platformę mobilną. Przedstawiono konstrukcję, napęd oraz podstawowe właściwości urządzenia, takie jak możliwość pracy w trybie automatycznym, trybie typu LineFollower oraz trybach zdalnej kontroli realizowanych za pomocą pilota pracującego w standardzie RC5 oraz modułu Bluetooth.

Słowa kluczowe: platforma, mobilna, sterowanie zdalne, mikrokontroler

DOI: 10.14313/PAR_211/80

az z rozwojem elektroniki czy też techniki cyfrowej i związaną z tym powszechną dostępnością podzespołów elektronicznych coraz więcej osób próbuje konstruować własne urządzenia, takie jak autonomiczne roboty mobilne, roboty kroczące, czy też manipulatory. Pomysły na własne konstrukcje, a także wiedzę z zakresu elektroniki, mechaniki, czy też informatyki, niezbędną do wykonania i zaprojektowania strategii sterowania takiego urządzenia młodzi konstruktorzy najczęściej pozyskują z portali internetowych, np. [6], a także z literatury [2, 3, 5]. W środowisku akademickim jedną z dróg do budowy robota jest jego realizacja w ramach projektu koła naukowego.

Niniejsza praca jest poświęcona wielofunkcyjnej, autonomicznej platformie mobilnej. Urządzenie zostało wykonane na potrzeby koła naukowego i jest przeznaczone dla szerokiego kręgu odbiorców interesujących się tzw. robotyką amatorską. Począwszy od początkujących konstruktorów, którzy od podstaw mogą poznać metodykę formułowania założeń projektowych dla tego rodzaju urządzeń, dobór napędu oraz jego sterowanie z poziomu mikrokontrolera. Osoby o pewnym doświadczeniu mogą z kolei poznać sposób integracji rożnego rodzaju metod zarządzania platformą jak zdalne sterowanie za pomocą technologii Bluetooth lub pilota (kod RC5), a także tworzenie strategii autonomicznego przejazdu platformy przy wykorzystaniu czujników odległości lub czujników odbiciowych.

1. Podwozie

Podwozie każdego robota mobilnego jest jedną z jego najistotniejszych części. Odpowiednio wykonane pozwala na długą i bezproblemową eksploatację urządzenia. Opisywana platforma ma kształt prostopadłościanu o wymiarach 300 mm × 200 mm × 70 mm (długość, szerokość, wysokość). Konstrukcja nośna została wykonana w postaci ramy z profili aluminiowych i następnie obłożona szkłem akrylowym. Napęd platformy stanowią cztery silniki prądu stałego Modelcraft z wbudowaną przekładnią 18:1. Sterowanie silnikami odbywa się za pomocą układów scalonych (driverów) L298N (opis w dalszej części) [4]. Na wałach każdego z silników zamontowano koło złożone z podwójnej zębatki (stosowane w kołach rowerowych) o średnicy 90 mm, na których osadzono gąsienice na każdej stronie platformy. Zostały one wykonane z elementów łańcucha rowerowego, które następnie połączono ze sobą za pomocą śrubek M6. Między dwoma łańcuchami znajdującymi się na zębatkach (w odległości 40 mm), umieszczono rurkę silikonową, która zapewnia odpowiednią przyczepność platformy do podłoża. Możliwa jest zmiana trybu mobilności pojazdu na czterokołowy z czterema mniejszymi gąsienicami osadzonymi na każdym kole zębatym. Na poniższych rysunkach pokazano opisywane elementy napędowe platformy mobilnej.

2. Część elektryczna

Na część elektryczną platformy składają się dwa zasadnicze elementy: układ zasilania oraz moduł sterujący.

2.1. Układ zasilania

Do zasilania urządzenia został wykorzystany pakiet litowo-polimerowy (Li-pol) o napięciu 7,4 V i pojemności 2300 mAh. Napięcie baterii, w zależności od stopnia jej naładowania, zawiera się w przedziale 6…8,4 V. Ze względu na specyficzną budowę tego typu ogniwa należy zwracać szczególną uwagę na fakt, że długotrwała eksploatacja poniżej dolnej wartości progowej (minimalne napięcie rozładowania) może trwale uszkodzić pakiet [1]. Układ elektroniczny został zatem przystosowany do pomiaru napięcia baterii. W tym celu zastosowano dzielnik złożony z dwóch rezystorów o takiej samej rezystancji. Obniżona o połowę wartość napięcia jest podawana na wejście przetwornika analogowo-cyfrowego wbudowanego w mikrokontroler sterujący. W ten sposób jest ona na bieżąco monitorowana i pokazywana na wyświetlaczu LCD (opis w dalszej części artykułu: panel operatorski). Wszystkie elementy elektroniczne (mikrokontroler, sterowniki silników, czujniki, moduł Bluetooth) są zasilane napięciem o wartości 5 V. Do jego uzyskania konieczne było zastosowanie liniowych stabilizatorów LM1084 typu LDO (Low Drop Out linear regulator) o napięciu dropout 0,5 V i wydajności prądowej 5 A.

Rys. 1. Silnik DC Modelcraft (po lewej), układ L298 (po prawej)
Fig. 1. Modelcraft DC motor (left side), driver L298 (right side)

Rys. 2. Zmontowane koło (po lewej), gąsienica (po prawej)
Fig. 2. Assembled wheel (left side), track chain (right side)

2.2. Moduł sterujący

Moduł sterujący został wykonany na jednej płytce PCB i zawiera mikrokontroler rodziny AVR, dwa sterowniki silników – układy L298N wraz z diodami zabezpieczającymi 1N5822 oraz stabilizatory i elementy bierne wymagane do ich poprawnej pracy. Wizualizacja płytki modułu sterującego jest pokazana na rys. 3.

Rys. 3. Wizualizacja płytki sterującej
Fig. 3. Visualization of the control board

Najważniejszym elementem modułu jest 8-bitowy mikrokontroler ATmega32. Układ ten został wybrany głównie ze względu na jego popularność zarówno wśród początkujących, jak i bardziej zaawansowanych konstruktorów-programistów. Rozmiar pamięci Flash o pojemności 32 kB jest w zupełności wystarczający dla programu obsługującego wszystkie podzespoły platformy.

3. Panel operatorski

Do zarządzania platformą służy panel operatorski. Składa się on z wyświetlacza LCD (2×16) zgodnego ze sterownikiem HD44780 oraz trzech monostabilnych przycisków umieszczonych pod nim. Całość została osadzona w górnej obudowie platformy. Widok panelu z jedną z wybranych opcji jest pokazany na rys. 4.

Rys. 4. Panel operatorski z opcją monitorowania stanu naładowania akumulatora
Fig. 4. Operator panel with option to monitor of battery status

Użytkownik ma do wyboru następujące opcje: sprawdzenie stan naładowania akumulatora; automatyczny tryb jazdy; tryb jazdy Line Follower; tryb sterowania zdalnego za pomocą pilota RC5 a także tryb sterowania z wykorzystaniem modułu Bluetooth. Funkcje przypisane do przycisków polegają na zatwierdzaniu danej opcji pojawiającej się w menu wyświetlacza (zielony przycisk środkowy) oraz przechodzeniu do kolejnej (lewy przycisk czarny) lub cofaniu się do poprzedniej opcji (prawy czerwony przycisk). Wybór następuje przed uruchomieniem pojazdu.

4. Tryby sterowania platformą

Zasadniczym celem, którym kierowano się podczas realizacji platformy, było wyposażenie jej w kilka funkcjonalności, pokazujących różne możliwości sterowania urządzeniem. Poniżej zostały skrótowo opisane poszczególne tryby.

4.1. Tryb automatyczny

Tryb polega na poruszaniu się pojazdu z wykorzystaniem analogowych czujników odległości (dalmierzy). W tym trybie zadaniem platformy jest omijanie przeszkód pojawiających się na trasie przejazdu. Robot posiada dwa czujniki umieszczone z przodu i z tyłu obudowy w centralnych jej punktach na wysokości ok. 100 mm od podłoża. Do lokalizacji przeszkód użyto popularnych w robotyce dalmierzy GP2D12 firmy SHARP. Zastosowany czujnik mierzy odległość w zakresie 10…80 cm od przeszkody. Zasada działania dalmierza jest następująca: modulowane promieniowanie z diody IR (Infrared) jest ogniskowane w soczewce nadajnika i oświetla przestrzeń przed czujnikiem. Po dotarciu do przeszkody promień zostaje częściowo rozproszony, a częściowo odbity. Część promieniowania wraca w kierunku czujnika, gdzie oświetla linijkę CCD (Charge Coupled Device). W efekcie otrzymuje się hiperboliczną zależność napięcia od odległości. Orientowanie się na wskazania czujnika polega na ustaleniu określonych przedziałów napięcia, w których platforma ma podejmować odpowiednią akcję. Należy zaznaczyć, że w tym przypadku konieczne jest wykorzystanie przetwornika analogowo-cyfrowego mikrokontrolera lub skorzystanie z zewnętrznego komparatora analogowego. W opisywanej platformie zastosowano pierwsze rozwiązanie.

W trybie automatycznym, w zależności od akcji wykonywanej przez platformę na podstawie sygnałów z dalmierzy, na wyświetlaczu LCD mogą pojawiać się następujące napisy: „Jazda do przodu”, „Jazda do tylu”, „Przeszkoda zwalniam” oraz „Brak przejazdu skrecam”.

4.2. Tryb Line Follower

Tryb polega na naśladowaniu znanych m.in. z zawodów robotycznych mobilnych robotów klasy Line Follower, które poruszają się po czarnej linii umieszczonej na jasnej powierzchni. Różnica polega jednak na tym, że platforma ma tylko za tą linią podążać, a nie (w odróżnieniu od wspomnianych robotów) pokonywać trasę jak najszybciej. Działanie platformy w tym trybie jest także doskonałą prezentacją pewnego rodzaju transportu, w którym roboty mobilne przewożą określone ładunki z punktu A do B po linii. Detekcja czarnej linii w opisywanym pojeździe odbywa się przy wykorzystaniu trzech czujników (transpotorów odbiciowych) QRD1114, które zostały podłączone zgodnie z ich notą aplikacyjną. W przypadku tych układów kolor biały odpowiada wartości napięcia (na złączu kolektor-emiter fototranzystora) bliskiej „0” logicznemu, zaś kolor czarny – „1” logicznej. Stan czujników w opisanym przypadku przypomina obsługę przycisków typu microswitch podłączonych do mikrokontrolera. Czujniki zrealizowano na oddzielnej płytce PCB, montowanej od spodu platformy, tylko w przypadku korzystania z tego trybu. Czujniki rozmieszczono w jednej linii w odległości 25 mm od siebie. W zależności od aktualnego położenia czujników nad czarną linią jest podejmowana następująca akcja: a) czujnik lewy na linią – prawe silniki są zatrzymane, lewe są aktywne, b) czujnik środkowy na linią – prawe i lewe silniki są aktywne, c) czujnik prawy nad linią – lewe silniki są zatrzymane, prawe są aktywne, d) żaden z czujników nie jest nad linią – wszystkie silniki są zatrzymane.

W tym trybie na wyświetlaczu LCD mogą pojawiać się następujące napisy: „Jazda do przodu”, „Jazda do tylu”, „Skret w lewo”, „Skret w prawo”, „Stop”.

4.3. Tryb sterowania pilotem RC5

Tryb polega zdalnym sterowaniu platformą za pomocą pilota pochodzącego od sprzętu RTV. Przy doborze odbiornika do pilota ważne jest określenie częstotliwości nośnej, z jaką pracuje pilot. W opisywanym przypadku jest to 36 kHz i do tej właśnie częstotliwości musi być dostosowany wewnętrzny filtr odbiornika podczerwieni. Ważne jest takie rozpatrywanie kodów przypisywanych do klawiszy pilota. W urządzeniu wykorzystano odbiornik TSOP 4836 (rys. 5) z wbudowanym wzmacniaczem. Pokazany na poniższym rysunku pilot wykorzystuje standard RC5, stworzony przez firmę Philips do sterowania urządzeniami multimedialnymi.

Rys. 5. Wykorzystany pilot w standardzie RC5 (po lewej), odbiornik TSOP4836 (po prawej)
Fig. 5. Used remote controller in RC5 standard (left side), receiver TSOP4836 (right side)

Sterowanie platformą jest realizowane przy użyciu pięciu klawiszy. Są to przyciski od przełączania programów w górę (kod 0x20) i w dół (kod 0x21) – jazda do przodu oraz do tylu, klawisz zatwierdzający zatrzymanie platformy „ok” (kod 0x3B) oraz klawisze sterujące poziomem siły głosu (kod 0x20, 0x21) – skręt w lewo oraz w prawo.

W tym trybie na wyświetlaczu LCD pojawiają się podobne informacje jak w trybie Line Follower.

4.4. Tryb sterowania za pomocą Bluetooth

Do sterowania platformą w tym trybie wykorzystano popularny moduł Bluetooth z układem BTM-222 firmy Rayson (rys. 6) pracujący w klasie 1 (transmisja bezprzewodowa o zasięgu do 100 m). Zaletą tego urządzenia jest jego prosta obsługa za pomocą mikrokontrolera i modułu USART (Universal Synchronous and Asynchronous Receiver and Transmitter) z wykorzystaniem dwóch linii TxD oraz RxD.

Rys. 6. Moduł Bluetooth z układem BTM-22
Fig. 6. Bluetooth module with BTM-22

Moduł BTM-222 jest fabrycznie skonfigurowany jako Slave z następującymi parametrami transmisji szeregowej: 19 200 b/s, 8 bitów danych, brak bitu parzystości, 1 bit stopu. Komunikacja z modułem w celu zmian jego parametrów odbywa się za pomocą komend AT. Sterowanie platformą jest realizowane z wykorzystaniem klawiatury numerycznej komputera (rys. 7). Poszczególnym klawiszom zostały przypisane następujące funkcje: 8 – jazda do przodu, 6 – skręt w prawo, 2 – jazda do tyłu, 4 – skręt w lewo,
5 – stop. Aby nawiązać komunikację z platformą, w której znajdujemy BTM-222 należy w komputerze wyposażonym w zintegrowany odbiornik Bluetooth (lub przenośny podłączany do portu USB, tworzący wirtualny port szeregowy COM) włączyć dowolny program terminalowy (np. HyperTerminal) i ustawić w nim takie same parametry transmisji szeregowej, z jakimi jest skonfigurowany układ BTM-222. W tym trybie na wyświetlaczu LCD pojawiają się podobne informacje jak w trybie Line Follower.

Rys. 7. Fragment klawiatury przeznaczonej do sterowania
Fig. 7. Section of keyboard designed to streering

Oprogramowanie zarządzające platformą zostało opracowane w języku C w środowisku AVRStudio4. Z nieopisanych w pracy elementów warto wspomnieć, że na płytce sterującej został zaimplementowany programator mikrokontrolerów AVR zgodny z USBasp (na obudowę urządzenia zostało wyprowadzone gniazdo USB do połączenia z komputerem PC). Taka funkcjonalność pozwala każdej osobie (w szczególności początkującej) szybko przetestować własną strategię sterowania platformą. Finalna wersja wielofunkcyjnej platformy mobilnej jest pokazana na rys. 8.

Rys. 8. Wielofunkcyjna platforma mobilona
Fig. 8. Multifunctional mobile platform

5. Uwagi końcowe

W pracy opisano konstrukcję wielofunkcyjnej autonomicznej platformy mobilnej wykonaną na potrzeby uczestników koła naukowego.

Platforma integruje w sobie wiele elementów (silniki, czujniki, elementy komunikacji bezprzewodowej), których programowa obsługa z poziomu mikrokontrolera jest podstawą do tworzenia własnych konstrukcji dla osób zarówno początkujących, jak i bardziej zaawansowanych. Urządzenie może realizować automatyczny tryb jazdy, tryb jazdy typu Line Follower, a także dwa tryby sterowania bezprzewodowego: za pomocą pilota RC5 i z wykorzystaniem technologii Bluetooth.

Rozszerzenie funkcjonalności platformy może obejmować implementację systemu wizyjnego lub napędu aktywnego, polegającego na zastosowaniu dodatkowej pary gąsienic z przodu urządzenia, sterowanej za pomocą serwomechanizmów lub silników krokowych i uruchamianej w momencie pokonywania znacznych nierówności terenu. Prace w tych kierunkach są już prowadzone.

Bibliografia

1. Czerwiński A., Akumulatory, baterie, ogniwa, Wyd. WKiŁ 2012.

2. Doliński J., Mikrokontrolery AVR w praktyce, Wyd. BTC, Legionowo 2008.

3. Kardaś M., Mikrokontrolery AVR. Język C – podstawy programowania, Wyd. ANTEL, Szczecin 2011.

4. Przepiórkowski J., Silniki elektryczne w praktyce elektronika. Wyd. BTC, Warszawa 2007.

5. Siegwart R., Nourbakhsh I. R., Introduction to autonomus mobile robots, MIT, 2004.

6. www.forbot.pl.

Multifunctional mobile platform

Abstract: The paper presents description of a multifunctional mobile platform. The possibilities of the control of the device have been described. The platform can be extended by the vision system and active suspension system.

Keywords: mobile platform, remote control, microcontroller

Artykuł recenzowany, nadesłany 01.07.2014 r., przyjęty do druku 18.08.2014 r.

inż. Szymon Kochanowski

Student studiów II stopnia kierunku Elektrotechnika na Wydziale Elektrycznym Politechniki Białostockiej. Aktualnie pełni funkcję przewodniczącego Koła Naukowego Automatyki i Robotyki. Zainteresowania: robotyka, elektronika, programowanie mikrokontrolerów, piłka nożna.

e-mail: Szymon.Kochanowski90@gmail.com