Robotyka cz.2.pdf

(6800 KB) Pobierz
1129203 UNPDF
Robot jako taki
a jeżeli tak, to jaki i dlaczego?
(łapek i czułków ciąg dalszy)
Część 2
odcinku na−
pisałem pokrótce
o ewolucji robota czy
też żółwia elektronicz−
nego. Teraz zajmiemy
się tym szerzej. Pomy−
ślmy, jak zbudować ro−
bot. Nie jakiś konkret−
ny, ale tak ogólnie, jak
się do tego zabrać.
Niewątpliwie na po−
czątek trzeba zadać
sobie pytanie, co ten
robot ma robić. Po−
wiedzmy: ma nam ra−
no podać kawę. Nie,
nie chodzi o ekspres
do kawy, włączany ra−
no w sposób automa−
tyczny. Taki tępak nie
przyniesie nam kawy
do łóżka. My chcemy
skonstruować inteli−
gentny automat, który znajdzie puszkę
z kawą, zaparzy ją i poda cudownie aro−
matyczny napój wprost do łóżka. Chyba
właśnie z takimi funkcjami kojarzy się
słowo ‘robot’.
Taki robot musi jednak spełnić sze−
reg warunków:
− powinien mieć zdolność swobodne
go poruszania się po mieszkaniu;
− powinien mieć odpowiednie mani
pulatory (coby sobie dał radę z
puszką kawy itd.);
− musi “widzieć” (żeby się o ścianę
nie zabił i do szklanki trafił);
− musi dość intensywnie “myśleć”,
żeby przetworzyć wszystkie napły−
wające dane i podjąć stosowne akcje.
Już widać, że to nie będzie proste.
Nie rezygnuj! Czytaj dalej!
Zacznijmy od stosunkowo najłatwiej−
szej rzeczy − poruszania się. Rozważmy,
co technika dała nam do dyspozycji. Do
wyboru mamy koła, gąsienice i nogi.
Najlepsze byłyby oczywiście nogi
(długie, smukłe...). Niestety, chyba po−
zostaje jedynie się ożenić, bo mechaniczne
urządzenia kroczące, zwłaszcza dwu−
nożne są dopiero w fazie eksperymen−
tów i trzeba byłoby opracowywać wszy−
stko od podstaw. Zadanie zbyt trudne,
bo trzeba rozwiązać mnóstwo szcze−
gółowych problemów, w tym na przy−
kład napęd nóg.
Moglibyśmy użyć siłowników hy−
draulicznych (pneumatycznych), ale do
tego potrzebna byłaby też pompa cieczy
roboczej (kompresor). Poza tym rozrząd
hydrauliczny / pneumatyczny to też
ciężka i skomplikowana sprawa.
Wszystko się da zrobić, ale wylądujemy
z silnikiem spalinowym na pokładzie −
tak z pół tony precyzyjnie obrobionej
stali. Kupa żelastwa, która − nawet jeśli
się da zamontować w robocie − sku−
tecznie ograniczy czas jego pracy do kil−
ku minut. Przy założeniu oczywiście, że
za naszym lokajem nie będą się ciągać
jakieś węże czy kable zasilające. Hy−
draulika odpada. Nogi też...
Pozostają jeszcze gąsienice i koła.
Oba rozwiązania mają podobny zakres
zastosowań, gąsienice są bardziej
wszędobylskie, ale za to bardziej skom−
plikowane w realizacji i mają większe
opory ruchu. Koła umożliwiają kierowa−
nie przez ich skręcanie, a nie tylko “pra−
wa przód, lewa tył, skręcamy!”.
Ponieważ na podłodze mieszkania
mogą znaleźć się różne rzeczy, sugero−
wałbym w naszym przykładzie użycie
gąsienic − nie ryzykujemy ugrzęźnięcia
koła np. między dwoma butami leżący−
mi na środku przedpokoju. Tu kwestia
wypływająca mimochodem, a` propos
tych butów: nigdy nie można liczyć na
czyste pole manewru. Każde urządze−
nie powinno sobie poradzić z nieoczeki−
waną sytuacją. Najczęściej to “poradze−
nie sobie” polegało będzie na wyłącze−
niu silnika i popiskiwaniu o pomoc, ale
to już jest coś, bo pozwoli ocalić przed
spaleniem zablokowane serwo napędu.
Zazwyczaj potwornie drogie serwo na−
pędu...
70
E LEKTRONIKA DLA WSZYSTKICH 4/99
W poprzednim
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Manipulatory
Znowu prosta reguła: z armaty muchę
się ustrzeli, ale zatłuc klapką taniej. Czyli
nasz robot nie zawsze musi mieć dzie−
sięć macek i cztery pałki. Niekiedy wy−
starczą kleszcze, a czasami wręcz elek−
tromagnes na sznurku. Zastanówmy się,
co nasz robot ma robić: otwierać sobie
drzwi, brać puszkę z kawą i otwierać ją,
brać szklankę, zapalać gaz, operować
czajnikiem, używać łyżeczki i cukiernicy.
No... tu za bardzo się nie oszczędzi. Ab−
solutnym minimum wydają się być kle−
szcze zaciskowe (takie “dwa palce”).
I wystarczy jeden taki manipulator. Pro−
blemy mogą być tylko z puszką z kawą,
ale elektromagnes do jej przytrzymania
przy otwarciu wystarczy (ale co ze szkla−
nym słoikiem? Może przyssawka? O tym
i o poruszaniu się − może w następnych
odcinkach).
Trudne, prawda. Nie podam Ci recep−
ty ma taki manipulator. Na razie zostaw−
my na boku problem naszego kawiarza.
Ja dążę do czego innego: do “zmysłu
wzroku”. Dlaczego w cudzysłowie? Bo
nasz służący i tak nigdy nic nie zobaczy
tak jak my.
Kwestie manipulatora i ogólnie − me−
chaniki robota należą do najtrudniej−
szych. Pozostawmy je na razie − wraz
z naszym kawiarzem − na boku, a zajmij−
my się kwestią − przynajmniej na począt−
ku − łatwiejszą.
Zastanówmy się, co potrzeba, aby
nasz robot “nie zabił się” przy “chodze−
niu”. W najprostszym przypadku wystar−
czy wyposażyć go w zestaw zderzaków
rozmieszczonych na zewnętrznym obry−
sie. Takie zderzaki zaopatrzone w prze−
łączniki krańcowe, pozwolą rozpoznać
przeszkodę. Fajnie działa (patrz poprzedni
artykuł), ale... problemy pojawiają się
w momencie, gdy nasz robot ma znacz−
ną prędkość poziomą. Słowem, jak wal−
nie w ścianę, to nie trzeba krańcówek −
będziemy mogli przeprowadzić akustycz−
ną detekcję kolizji i szacować prędkość
zderzenia na podstawie zasięgu rozrzu−
conych części... Przydałoby się wiedzieć
ciut wcześniej, że trzeba hamować, nie?
Można np. zainstalować czujnik ultra−
dźwiękowy reagu−
jący na przeszkodę
z odległości np.
50cm. Stawiam 10
do 1, że robot z ta−
kim czujnikiem
“zaliczy” pierwszą
pionową rurę jaką
napotka. Tudzież
firan, zasłony i wszy−
stko co futrzaste,
co pochłonie ultra−
dźwięki. Czujniki
IR − podczerwone
(jak te w Raabowo−
zie − sorry Raabe,
ja też nie lubię tej
nazwy) mają je−
szcze mniejsze
szansę − chyba, że ktoś zmontuje ultra−
czułą podczerwoną kurtynę poziomą. Ale
jeżeli takie “ustrojstwo” miałoby zauwa−
żyć pionowy pręt z 20 cm, to będzie wyć
już w odległości 5 metrów od ściany.
zdu i vice versa (tak na prawdę obraz na
siatkówce jest do góry nogami i w lu−
strzanym odbiciu, ale kto nam zabrania
sobie go później obrócić?).
Zacznijmy od sytuacji najprostszej: ro−
bot jest w pustej sali o kamiennej po−
sadzce i cieplejszych od niej ścianach.
Przypuśćmy, że jedzie prostopadle do
ściany. Na rysunku 3 pokazane jest, jak
zmienia się obraz na matrycy kamery
Rys. 3
w czasie jazdy. Szara plama to ściana.
Biała − podłoga. Jak widać, wbrew pozo−
rom, do określenia odległości od ściany
nie jest potrzebny jakiś skomplikowany
układ dwóch kamer. Wystarczy policzyć
piksele pomiędzy środkiem obrazu (hory−
zontem), a granicą białe/szare. Jeżeli ta
liczba jest duża, ściana jest daleko. Jeże−
li maleje – znaczy że ściana jest coraz bli−
żej. Nie można dopuścić, by była zbyt
mała − trzeba skręcić, bo się robot rozbije.
Na dobrą sprawę niepotrzebna jest
nawet kamera − wystarczy pojedynczy
pionowy rządek pikseli w centrum obrazu.
Musimy jednak wiedzieć, przynajmniej
Może kamera?
No dobra, zapomnijmy na chwilę ile
kosztuje taka zabawka i jak trudno ją
podłączyć do mikroprocesora. Przypuść−
my, że ktoś nam ją sprezentował i podłą−
czył. Załóżmy na początek, że nasz robot
“widzi” w podczerwieni. Stosunkowo ła−
two skonstruować kamerę (niezbyt czu−
łą, niskorozdzielczą) “widzącą” ciepło.
Montujemy ją
na pojeździe
i całość wyglą−
da tak, jak na
rysunku 1. Li−
niami przery−
wanymi ozna−
czyłem pole wi−
dzenia. Na ry−
sunku 2 zoba−
czysz z grubsza
jak wygląda
obraz na “siat−
kówce”. Ponie−
waż kamera pa−
trzy na wprost,
obiekty widocz−
ne w lewej po−
łowie znajdują
się w rzeczywi−
stości po lewej
stronie osi poja−
Rys. 1
Rys. 2
Rys. 4
E LEKTRONIKA DLA WSZYSTKICH 4/99
71
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
z grubsza, pod jakim kątem jesteśmy
w stosunku do ściany. Popatrzmy znowu
“oczami robota”. Rysunek 4 pozwala zro−
zumieć, jak wygląda zbliżanie się do prze−
szkody − dotychczas pozioma granica bia−
łe / szare staje się skośna. Tym bardziej,
im pod ostrzejszym kątem robot jest
ustawiony do ściany. Liczymy więc pikse−
le horyzont−podłoga w dwóch miejscach
obrazu − z lewej i z prawej strony osi. To
jest dość łatwe i nawet 80C51 sobie
z tym poradzi. Jak widać, niezbędne czuj−
niki, na pierwszy rzut oka bardzo skompli−
kowane, można znacznie uprościć.
W tym wypadku zamiast kamery wystar−
czą dwa rządki elementów światłoczu−
łych. Żeby było śmieszniej, można to
uprościć jeszcze bardziej. Zamiast całego
pionowego rządka gęsto upakowanych
fotokomórek, po każdej stronie pionowej
osi siatkówki, można zamontować tylko
po trzy − cztery elementy światłoczułe, tak
jak na rysunku 5. W miarę jak kolejne pa−
ry stają się aktywne, jesteśmy informo−
za rozjechanego chomika bez względu na
genialność konstrukcji rodzina niechybnie
zlinczuje biednego konstruktora.
Na rysunku 6 zaznaczyłem, jakim frag−
mentom podłogi przyglądają się poszcze−
gólne kawałki “kamery”. Te dwie duże
płaszczyzny, to pojedyncze fotoelementy.
Normalnie powinny widzieć tylko podło−
gę, więc będą nieaktywne. Gdy cokol−
wiek podpełznie zbyt blisko, któryś z tych
elementów zareaguje. Pozostanie spraw−
dzić, który element podniesie większe la−
rum. To pozwoli zadecydować, z której
strony ominąć przeszkodę. Proste? Może
trudniejsze w wykonaniu, ale sądzę, że
dałoby się zrealizować nawet w domo−
wym warsztacie. Trzeba tylko pamiętać,
że użyte fotoelementy muszą być dość
czułe i wyposażone w filtr podczerwieni.
No i optykę jakąś trzeba dobrać, by uzy−
skać ostry obraz na ich powierzchni.
No dobrze. Możemy posprzątać halę
fabryczną, która ma jednolitą posadzkę.
Ale co z mieszkaniem, które na podłodze
ma dywany? Niestety, jeśli powierzchnia
podłogi nie odcina się jednolicie w całym
mieszkaniu od ścian i przeszkód, jeśli nie
ma jednakowego “odcienia”, mocno
różnego od ich jasności w podczerwieni,
to rozwiązanie nie bardzo zda egzamin.
Wróćmy do kamery w swej oryginalnej
postaci. Trzeba wymyślić jakiś sposób
pomiaru odległości niezależny od “kolo−
rów” ścian i podłogi. Na pewno wiele
jest różnych sprytnych rozwiązań, ja
proponuję coś w rodzaju dalmierza lase−
rowego. Pod kamerą zainstalowaną jak
poprzednio montujemy wskaźnik lase−
rowy z kolimatorem liniowym. Ten koli−
mator liniowy to taki element czy też ze−
staw optyczny, który kształtuje światło la−
sera nie w pojedynczy punkt, tylko w po−
przeczną linię. Wskaźnik laserowy nachy−
lony jest trochę w dół, tak aby na podło−
dze, w polu widzenia kamery widniała ja−
sna czerwona linia poprzeczna do osi po−
jazdu. Ważne jest nachylenie wiązki lase−
rowej w stosunku do osi stożka widzenia
kamery − ilustruje to rysunek 7. Póki do
ścian i przeszkód jest jeszcze daleko, ka−
mera widzi tylko pojedynczą poziomą li−
nię. Jeśli jednak coś stanie “żółwiowi” na
drodze, przetnie też drogę wiązki lasero−
wej − fragment czerwonej linii na obra−
zie znajdzie się niżej (nachylenie wiązki
do osi kamery!) − patrz rysunek 8. Wy−
starczy na obiektyw czarno−białej kame−
ry nałożyć filtr w kolorze lasera i kwestia
wydaje się być rozwiązana. Na ciemnym
obrazie mamy tylko jasną pręgę, której
pionowe współrzędne odzwierciedlają
bezpośrednio odległość od przeszkody
w danym kierunku. Pozostaje kwestia
“spojrzenia w słońce”. Czyli − wyelimi−
nowania zakłóceń. Układ nie może rea−
gować na odległe lampy itd. jak na prze−
Rys. 7
Rys. 8
Rys. 5
szkody tuż przed nosem. Najprościej jest
po prostu zignorować część obrazu powy−
żej “zerowego” położenia pręgi laserowej
wiązki. Lepiej jednak nie świecić świa−
tłem ciągłym, tylko kluczować światło la−
sera i szukać w obrazie punktów migają−
cych z tą samą częstotliwością − wymaga
to jednak większej (dużo) mocy oblicze−
niowej procesora.
Tyle (na razie) rozważań na temat zmy−
słu wzroku u żółwia.
wani o zbliżaniu się do ściany. Jeśli jeden
z rządków ma większą liczbę aktywnych
elementów, wiadomo, że z tej strony
ściana jest bliżej − jedziemy do niej pod
kątem. A te dwa szare (światłoczułe) po−
la? A co będzie, gdy na podłodze coś bę−
dzie leżeć? Pionowe rzędy komórek mo−
gą tego nie zauważyć − mają rozstaw taki,
żeby uchwycić ścianę, ale coś mniejsze−
go prześlizgnie się między nimi bez tru−
du. Poza tym, to coś może wyskoczyć
przed robota. Człowieka nie uszkodzi, ale
Marek Lewandowski
twilight@callisto.krakow.pl
Rys. 6
72
E LEKTRONIKA DLA WSZYSTKICH 4/99
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Zgłoś jeśli naruszono regulamin