Systemy Progr Rob SPR1a

Akademia Górniczo - Hutnicza

im. Stanisława Staszica w Krakowie

Wydział Inżynierii Mechanicznej i Robotyki

Kierunek: Automatyka i Robotyka

Specjalność: Robotyka

Systemy programowania robotów

Sprawozdanie MELFA

Autorzy:

KK

PK

AS

JM

AM

BM

MJ

MT

2014/2015

Zadanie 1.

Robot zaczyna ruch w punkcie P1. Następnie rusza do punktu P2 gdzie podnosi przedmiot i wraca z powrotem do pozycji P1. Następnie przedmiot jest transportowany do punktu P3 gdzie następuje jego zwolnienie i uruchomienie podajnika taśmowego w lewo. Po osiągnięciu prawego krańcowego położenia, podajnik wraca do miejsca startowego. Robot podnosi przedmiot i wraca do punktu P1 a później do P2 gdzie zwalnia przedmiot.

Ruch z punktu P1 do P2 i z powrotem realizowany jest w interpolacji liniowej.

Ruch z punktu P1 do P3 i z powrotem realizowany jest w interpolacji złączowej.

Podnoszenie i opuszczanie przedmiotu realizowane jest ze zmniejszoną prędkością, pionowo, z punktu 50mm nad P2 i P3.

Program zrealizowany na zajęciach:

10 P1=(328.53,100.54,292.31,-19.09,178.94,0,0) 'zdefiniowanie punktu startowego

20 P2=(366.59,25.54,104.81,-0.25,178.94,0,0) 'zdefiniowanie miejsca pobrania przedmiotu

30 P3=(12.28,367.27,123.4,-84.34,181.09,0,0) 'zdefiniowanie miejsca docelowego

40 SERVO ON 'włączenie serw

50 OVRD 50 'zmiana prędkości we wszystkich trybach na 50%

60 HOPEN 1 'otwarcie chwytaka

70 SPD 1000 'ustala prędkość w interp. liniowej i kołowej na 1000mm/s

80 MOV P1 'ruch w int. złączowej do P1

90 MVS P2,-50 'ruch w int. liniowej do punktu 50mm nad P2

100 SPD 500 'zmniejszenie prędkości do 500mm/s

110 MVS P2 'przesunięcie chwytaka nad przedmiot

120 DLY 0.5 'opóźnienie 0,5s

130 HCLOSE 1 'zamknięcie chwytaka

140 DLY 0.5 'opóźnienie 0,5s

150 MVS P2,-50 'podniesienie chwytaka do punktu 50mm nad P2

160 SPD 1000 'zwiększenie prędkości do 1000mm/s

170 MVS P1 'ruch w int. liniowej do P1

180 MOV P3,-50 'ruch w int. złączowej do punktu 50mm nad P3

190 SPD 500 'zmniejszenie prędkości do 500mm/s

200 MOV P3 'opuszczenie przedmiotu do punktu P3

210 DLY 0.5 'opóźnienie 0,5s

220 HOPEN 1 'otworzenie chwytaka

230 DLY 0.5 'opóźnienie o,5s

240 MOV P3,-50 'podniesienie chwytaka do punktu 50mm nad P3

250 DLY 0.5 'opóźnienie 0,5s

260 M_OUT(4)=1 'uruchomienie podajnika w lewo (podanie na kanał 4 wart. 1)

270 DLY 0.5 'opóźnienie 0,5s

280 M_OUT(4)=0 'podanie na kanał 4 wart. 0

290 WAIT M_IN(7)=1 'czekanie aż prawa krańcówka wystawi sygnał 1

300 M_OUT(5)=1 'uruchomienie podajnika w lewo (podanie na kanał 5 wart. 1)

310 DLY 0.5 'opóźnienie 0,5s

320 M_OUT(5)=0 'podanie na kanał 5 wart. 0

330 WAIT M_IN(6)=1 'czekanie aż lewa krańcówka wystawi sygnał 1

340 DLY 0.5 'opóźnienie 0,5s

350 MOV P3 'opuszczenie chwytaka nad przedmiot

360 DLY 0.5 'opóźnienie 0,5s

370 HCLOSE 1 'zamknięcie chwytaka

380 DLY 0.5 'opóźnienie 0,5s

390 MOV P3,-50 'podniesienie przedmiotu do punktu 50mm nad P3

400 SPD 1000 'zwiększenie prędkości do 1000mm/s

410 MOV P1 'ruch w int. złączowej do punktu P1

420 MVS P2,-50 'ruch w int. liniowej do punktu 50mm nad P2

430 SPD 500 'zmniejszenie prędkości do 500mm/s

440 MVS P2 'opuszczenie przedmiotu do punktu P2

450 DLY 0.5 'opóźnienie 0,5s

460 HOPEN 1 'otwarcie chwytaka

470 DLY 0.5 'opóźnienie 0,5s

480 MVS P2,-50 'podniesienie chwytaka do punktu 50mm nad P2

490 GOSUB 70 'skok do linii 70 w celu ponownego wykonania cyklu

500 END 'instrukcja kończąca program

Zadanie 2

Zadanie robota różni się od zadania 1 tym, że przejeżdżając z P1 do P2 robot wykonuje ruch w interpolacji kołowej pomiędzy punktami P4,P5,P6 z wyłączonym trybem ruchu ciągłego oraz wykonuje ruch do punktu zdefiniowanego współrzędnymi złączowymi J7, a przenosząc przedmiot z P2 do P3 robot wykonuje ten sam ruch z włączonym trybem ruchu ciągłego.

Program zrealizowany na zajęciach:

10 P1=(328.53,100.54,292.31,-19.09,178.94,0,0) ' zdefiniowanie punktu startowego

20 P2=(366.59,25.54,104.81,-0.25,178.94,0,0) ' zdefiniowanie miejsca pobrania przedmiotu

30 P3=(12.28,367.27,123.4,-84.34,181.09,0,0) ' zdefiniowanie miejsca docelowego

40 P4=(328.5,150.5,292.3,-19,179,0,0) 'zdefiniowanie punktu trajektorii kołowej

50 P5=(278.5,150.5,292.3,-19,179,0,0) 'zdefiniowanie punktu trajektorii kołowej

60 P6=(278.5,150.5,342.3,-19,179,0,0) 'zdefiniowanie punktu trajektorii kołowej

70 J7=(33.37,34.44,90.62,0,53.95,14.37) 'zdefiniowanie punktu we współrzędnych złączowych

80 SERVO ON 'włączenie serw

90 OVRD 50 ' zmiana prędkości we wszystkich trybach na 50%

100 HOPEN 1 ' otwarcie chwytaka

110 SPD 1000 ' ustala prędkość w int. liniowej i kołowej na 1000mm/s

120 MOV P1 ' ruch w int. złączowej do P1

130 MVR P4,P5,P6 'ruch w interpolacji kołowej przez punkty P4,P5,P6

140 MOV J7 'ruch do punktu J7

150 MVS P2,-50 ' ruch w int. liniowej do punktu 50mm nad P2

160 SPD 500 ' zmniejszenie prędkości do 500mm/s

170 MVS P2 ' przesunięcie chwytaka nad przedmiot

180 DLY 0.5 ' opóźnienie 0,5s

190 HCLOSE 1 'zamknięcie chwytaka

200 CNT 1 'włączenie trybu ruchu ciągłego

210 DLY 0.5 'opóźnienie 0,5s

220 MVS P2,-50 'podniesienie chwytaka do punktu 50mm nad P2

230 SPD 1000 'zwiększenie prędkości do 1000mm/s

240 MVS J7 'ruch do punktu J7

250 MVR P6,P5,P4 'ruch w interpolacji kołowej przez punkty P6,P5,P4

260 MOV P1 'ruch w int. złączowej do P1

270 MOV P3,-50 'ruch w int. złączowej do punktu 50mm nad P3

280 SPD 500 'zmniejszenie prędkości do 500mm/s

290 MOV P3 'opuszczenie przedmiotu do punktu P3

300 DLY 0.5 'opóźnienie 0,5s

310 HOPEN 1 'otworzenie chwytaka

320 CNT 0 'wyłączenie trybu ruchu ciągłego

330 DLY 0.5 'opóźnienie o,5s

340 MOV P3,-50 'podniesienie chwytaka do punktu 50mm nad P3

350 DLY 0.5 'opóźnienie 0,5s

360 M_OUT(4)=1 'uruchomienie podajnika w lewo (podanie na kanał 4 wart. 1)

370 DLY 0.5 'opóźnienie 0,5s

380 M_OUT(4)=0 'podanie na kanał 4 wart. 0

390 WAIT M_IN(7)=1 'czekanie aż prawa krańcówka wystawi sygnał 1

400 M_OUT(5)=1 'uruchomienie podajnika w lewo (podanie na kanał 5 wart. 1)

410 DLY 0.5 'opóźnienie 0,5s

420 M_OUT(5)=0 'podanie na kanał 5 wart. 0

430 WAIT M_IN(6)=1 'czekanie aż lewa krańcówka wystawi sygnał 1

440 DLY 0.5 'opóźnienie 0,5s

450 MOV P3 'opuszczenie chwytaka nad przedmiot

460 DLY 0.5 'opóźnienie 0,5s

470 HCLOSE 1 'zamknięcie chwytaka

480 DLY 0.5 'opóźnienie 0,5s

490 MOV P3,-50 'podniesienie przedmiotu do punktu 50mm nad P3

500 SPD 1000 'zwiększenie prędkości do 1000mm/s

510 MOV P1 'ruch w int. złączowej do punktu P1

520 MVS P2,-50 'ruch w int. liniowej do punktu 50mm nad P2

530 SPD 500 'zmniejszenie prędkości do 500mm/s

540 MVS P2 'opuszczenie przedmiotu do punktu P2

550 DLY 0.5 'opóźnienie 0,5s

560 HOPEN 1 'otwarcie chwytaka

570 DLY 0.5 'opóźnienie 0,5s

580 MVS P2,-50 'podniesienie chwytaka do punktu 50mm nad P2

590 GOSUB 110 'skok do linii 110 w celu ponownego wykonania cyklu

600 END 'instrukcja kończąca program

Zadanie 3.

Zadanie polegało zdefiniowaniu przerwania, które przerywa pętlę nieskończoną, w której znajduje się manipulator.

Manipulator porusza się w pętli nieskończonej pomiędzy punktami P1 i P2. Po aktywacji krańcówki (kanał 6) następuje przerwanie pętli i wykonanie ruchu w interpolacji kołowej przez punkty P4,P5,P6. Po wykonaniu przerwania program wraca do pętli do instrukcji następującej po instrukcji, w której nastąpiło przerwanie.

10 P1=(328.53,100.54,292.31,-19.09,178.94,0,0) ' zdefiniowanie punktu startowego

20 P2=(366.59,25.54,104.81,-0.25,178.94,0,0) ' zdefiniowanie miejsca pobrania przedmiotu

30 P3=(12.28,367.27,123.4,-84.34,181.09,0,0) ' zdefiniowanie miejsca docelowego

40 P4=(328.5,150.5,292.3,-19,179,0,0) 'zdefiniowanie punktu trajektorii kołowej

50 P5=(278.5,150.5,292.3,-19,179,0,0) 'zdefiniowanie punktu trajektorii kołowej

60 P6=(278.5,150.5,342.3,-19,179,0,0) 'zdefiniowanie punktu trajektorii kołowej

70 SERVO ON 'włączenie serw

80 DEF ACT 1, M_IN(6)=1 GOSUB *Z1 'definiowanie warunku przerwania 1, jeśli kanał 6 przyjmie 'wartość 1 nastąpi skok do podprogramu o etykiecie *Z1

90 ACT 1=1 'uruchomienie obsługi przerwania 1

100 OVRD 50 'zmiana prędkości we wszystkich trybach na 50%

110 SPD 1000 'ustala prędkość w int. liniowej i kołowej na 1000mm/s

120 WHILE 1 'implementacja pętli nieskończonej

130 MVS P1 'ruch w int. liniowej do P1

140 MVS P2 'ruch w int. liniowej do P2

150 WEND 'koniec pętli

160 *Z1 'etykieta podprogramu

170 MVR P4,P5,P6 'ruch w int. kołowej przez punkty P4,P5,P6

180 RETURN 0 'powrót do wykonywania przerwanego programu

190 END 'instrukcja kończąca program

Podsumowanie

Zadania wykonane w czasie laboratorium pozwoliły na przyswojenie podstawowych komend języka Melfa Basic oraz na użycie ich w praktyce. Zespół rozpoznał różnicę między poleceniami ruchu z punktu do punktu w interpolacjach: liniowej, złączowej oraz kołowych, a także zastosował przerwania sprzętowe. Realizacja programu dla robota współpracującego z podajnikiem taśmowym była prostym przykładem sposobu zastosowania tego typu manipulatorów w praktyce przemysłowej. Zastosowano sposób komunikacji manipulatora z otoczeniem poprzez wejścia i wyjścia cyfrowe na jego sterowniku sterując podajnikiem taśmowym oraz odczytując informacje o pozycji transportowanego przedmiotu.


Wyszukiwarka

Podobne podstrony:
Zaliczenie poprawkowe 1 WSTĘP DO PROGR, Studia, Systemy operacyjne
Kolokwium 3 Progr Str, Studia, Systemy operacyjne
System finansowy w Polsce 2
Systemy operacyjne
Systemy Baz Danych (cz 1 2)
Współczesne systemy polityczne X
System Warset na GPW w Warszawie
003 zmienne systemowe
elektryczna implementacja systemu binarnego
09 Architektura systemow rozproszonychid 8084 ppt
SYSTEMY EMERYTALNE
3 SYSTEMY LOGISTYCZNE
modelowanie systemow
16 Metody fotodetekcji Detektory światła systematyka

więcej podobnych podstron