dr inż Piotr Dutkiewicz, Podstawy Robotyki, Budowanie lokalnej mapy otoczenia skaner z czujnikiem podczerwieni 1

background image

Katedra Sterowania i Inżynierii Systemów

Laboratorium Podstaw Robotyki

Sprawozdanie z ćwiczenia

Temat

Budowanie lokalnej mapy otoczenia – skaner z

czujnikiem podczerwieni

Rok
akademicki

2010/2011

Data wykonania
ćwiczenia

2010-05-31

Data oddania
sprawozdania

2010-05-31

Termin zajęć

Wtorek

9:45

Ocena

Skład grupy laboratoryjnej

1.

Rok/semestr/grupa

R
o
k

3

,

S

e

m

6

,

gr A2

1. Wprowadzenie

1.1. Cel ćwiczenia

Ćwiczenie ma na celu zbadanie wybranych właściwości pomiarowych optycznego

czujnika odległości, przeprowadzenie jego kalibracji i opracowanie oprogramowanie
w środowisku MATLAB umożliwiającego obsługę systemu pomiarowego za pośrednictwem
łącza RS-232. Końcowym rezultatem ćwiczenia jest pobieranie danych ze skanera optycznego
i wykreślenie na tej podstawie dwuwymiarowej lokalnej mapy otoczenia.

2. Przebieg ćwiczenia

2.1. Do portu szeregowego komputera PC podłączono (wyłączone) urządzenia

mikroprocesorowe wraz ze sterownikiem silnika krokowego i optycznym czujnikiem
odległości. Następnie włączono zasilanie urządzenia – do mikrosterownika doprowadzono
napięcie stałe o wartości z zakresu 8 – 12 [V], a do sterownika silnika krokowego napięcie
stałe o wartości z zakresu 12 – 24 [V]. (Przełącznik Enable sterownika silnika ustawiono
w pozycji Off, a pokrętło wyboru ograniczenia prądu ustawiono w pozycji środkowej.)

2.2. W środowisku MATLAB zainicjalizowano port szeregowy, do którego

podłączono urządzenie mikroprocesorowe i ustawiono wymagane parametry transmisji
zgodnie z instrukcja laboratoryjną:

background image

prędkość transmisji: 115 200 [b/s],

długość znaków: 8-bit,

liczba bitów stopu: 1,

kontrola parzystości: brak,

sterowanie przepływem danych: brak.

Polecenie:

>> s=serial('COM1');
>> set(s,'BaudRate',115200,'DataBits',8,'Parity','none',
'StopBits',1,'FlowControl','none');
>> fopen(s);

Dodatkowo (w razie problemu z portem szeregowym) utworzono skrypt zamykający port
szeregowy.

Polecenie:

>> fclose(s);
>> delete(s);
>> clear s;

2.3. Zdefiniowano w postaci pięcioelementowego wektora ramki realizujące:

rozkaz obrócenia silnika krokowego o jeden krok w prawo,

rozkaz obrócenia silnika krokowego o jeden krok w lewo,

rozkaz wykonania pomiaru sygnału z czujnika odległości.

Zweryfikowano poprawność działania dwóch pierwszych rozkazów, wysyłając
je do urządzenia (funkcja fwrite) i zaobserwowano ruch silnika. (Przełącznik Enable
ustawiono w pozycji On i przełącznik Stop ustawiono w pozycji Off.)

Zaimplementowano odbiór ramki odpowiedzi (funkcja fread). Następnie wysłano ramki
zapytań i odczytano odpowiedzi urządzenia. Zdekodowano ramkę odpowiedzi rozkazu 02h,
aby otrzymać wynik przetwarzania A/C w postaci znormalizowanej.

Polecenie:

>> slew = [170 1 1 0 0];
>> spr = [170 1 2 0 0];
>> odcz = [170 2 0 0 0];
>> fwrite(s,slew,'uint8','sync');
>> fwrite(s,spr,'uint8','sync');
>> fwrite(s,odcz,'uint8','sync');
>> ileDanych = s.BytesAvailable;
>> [dane, ileDanych, komunikat] = fread(s, 15, 'uint8');

background image

>> komunikat;
>> dane
>> n =(dane(13,1) + dane(14,1)*16 + dane(15,1)*256)/(1024);

2.4. Napisano skrypt umożliwiający wykonanie 100 serii pomiarów

(jeden po drugim), zwracający znormalizowane dane z przetwornika A/C czujnika Sharp
w postaci 100-elementowego wektora. Przed czujnikiem ustawiono ekran w odległości
0,15 [m], a następnie w odległości 0,6 [m] względem punktu bazowego i wykonano serie
pomiarów. Obliczono wariancję σ

2

sygnału y dla obu serii pomiarowych korzystając

ze wzoru:

Polecenie:

>> slew = [170 1 1 0 0];
>> spr = [170 1 2 0 0];
>> odcz = [170 2 0 0 0];
>> for k=1:100
fwrite(s,odcz,'uint8');
pause(0.2);
[dane] = fread(s,5,'uint8');
dane
n(k) =(dane(3) + dane(4)*16 + dane(5)*256)/(1024);
end

>> nsr = 0;
>> for i=1:100,
nsr = n(i) + nsr;
end

>> nsr = nsr/100;
>> sigm = 0;
>> for i=1:100,
sigm = (n(i)-nsr)^2 + sigm;
end

>> sigm = sigm/99

Rezultat:

dla odległości 0,15 [m]

>> sigma = 0.00427285348526

dla odległości 0,6 [m]

>> sigma = 0.00248552755876

http://notatek.pl/budowanie-lokalnej-mapy-otoczeni
a-skaner-z-czujnikiem-podczerwieni-1?notatka


Wyszukiwarka

Podobne podstrony:
WPS czysty, SEMESTR II, PMS-Praca przejściowa-prowadzący dr inż. Piotr Białucki
Hartowność Stali dr inż Piotr Matusiewicz
inne sciany w budownictwie jednorodzinnym poradnik inzyniera dr inz piotr loboda ebook
podstawy prawne bhp, dr inż
Podstawy zarzadzania dr inz. Waclaw Kawczynski [ ściąga mini] [ teoria], zarzadzanie, ZARZADZANIE to
Ołów - wiadomosci podstawowe, SZKOŁA, Gleboznawstwo i rekultywacja, Sprawozdania (dr inz Barbara Wal
Podstawy zarzadzania dr inz. Waclaw Kawczynski [ ściąga mini] [ teoria], zarzadzanie1, 1
przykładowa prezentacja przygotowana na zajęcia z dr inż R Siwiło oceniona
podstawy robotyki odpowiedzi
CHRAPEK,podstawy robotyki, Urz dzenia chwytaj ce i g owice technologiczne robotów przemys owych cz 2
ITIL Podstawy W2 Budowa i optymalizacja procesów i serwisów ITIL
Podstawy Robotyki lab5
Sprawozdanie techniczne, GEODEZJA, IV semestr, Fotogrametria, Fotogrametria Ćwiczenia dr.inż.T.Kowa
automaty, PWr W9 Energetyka stopień inż, IV Semestr, Podstawy automatyki - laboratorium, Podsatwy au
Podstawy Robotyki lab3 id 36832 Nieznany
Wyznaczanie niepewności pomiarów, PWr W9 Energetyka stopień inż, II Semestr, Podstawy metrologii i t
Podstawy życia Budowa i czynności komórki

więcej podobnych podstron