Imię i nazwisko | Temat ćwiczenia Programowanie robota IRP-6 |
Prowadzący Mgr inż. M. Wiśniewski |
---|---|---|
Data wykonania ćw. | Ocena |
Cel i przebieg ćwiczenia
Celem zajęć laboratoryjnych było zaprogramowanie robota przemysłowego IRP-6 przy użyciu czujników zewnętrznych, które określały warunki wykonania danego polecenia. Dokładny przebieg ćwiczenia zostanie przedstawiony w kolejnych punktach.
Schemat stanowiska
Opis i charakterystyka użytych czujników
Zdjęcia czujników używanych na zajęciach:
Zdj. 1. Czujnik Banner Zdj. 2. Czujnik Sensopart
Czujnik optyczny odbiciowy Banner Q23SP6D
Informacje z katalogu producenta:
Zdj. 3. Wycinek danych na temat czujnika Banner Q23SP6D z katalogu producenta
Długość wiązki (czerwona) – 680 nm
Napięcie zasilania 10-30 VDC
Czas ustalenia 100 ms
Zabezpieczenie : przeciw zmianie polaryzacji, przeciwzwarciowe
Wskaźniki LED : żółta (światło wykryte), zielona (zasilanie), żółta migająca (alarm), zielona migająca (zwarcie lub przeciążenie)
Zdj. 4. Schemat ideowy czujnika Banner z katalogu producenta
Czujnik optyczny odbiciowy Sensopart FT 20 R-PSK4
Informacje od producenta:
Wiązka światła : 660 nm
Napięcie zasilania : 10-30 DC
Zdj. 5. Zdjęcie czujnika ze strony sklepu Sensopart
Działanie czujnika pochodzące z katalogu producenta :
Zdj. 6. Możliwe funkcje rozpoznawcze czujnika Sensopart z katalogu producenta
Opis zadań wykonanych na zajęciach
Głównym zadaniem napisanego programu było uwarunkowanie działań robota (przenoszenia tulei i wkładania jej w imadło) od wskazań czujnika, który „wstrzymywał” lub „wznawiał” działanie programu w zależności od pustego lub zapełnionego imadła.
Pierwszym krokiem po synchronizacji robota było zdefiniowanie narzędzia i prędkości maksymalnych oraz zapisanie jako pozycji wyjściowej pozycji po synchronizacji.
Następnie następuje ruch w stronę stołu z tulejami, chwycenie tulei i ruch nad imadło; w tym momencie zostaje zdefiniowany warunek: „Jeśli imadło jest puste, puść tuleję”, warunek zostaje spełniony i chwytak zostaje zwolniony, następnie powraca do pozycji nad imadłem i następuje zamknięcie imadła.
Następnie robot dojeżdża do kolejnej tulei, chwyta ją, podjeżdża do imadła, które jest pełne, odkłada tuleję na miejsce ze względu na spełnienie warunku, a następnie następuje otwarcie imadła i odebranie tulei znajdującej się miedzy szczękami.
W punkcie szóstym została załączona kopia programu napisanego na zajęciach.
Wnioski
Program po uruchomieniu nie działał poprawnie. Kilka początkowych linijek programu zadziałało poprawnie, jednakże dalej pojawiał się komunikat „Przekroczenie ograniczeń. Błąd 142”. Mimo kasowania błędu, komunikat przy kolejnych linijkach programu pojawiał się ponownie.
Przyczyną błędów była zła konfiguracja osi czwartej – brak możliwości ruchu liniowego. Aby móc poruszać robotem, należało używać ruchu quasi-liniowego.
Kolejnym błędem w programie, była nieprawidłowość zapisu w linijce 250, kiedy to omyłkowo zostało ustawione wyjście nr 2 zamiast wyjścia nr 1. Błąd ten spowodował wprowadzenie do programu „wymiany chwytaków”. Efektem był nieustający szum, gdyż program oczekiwał na zmianę chwytaka poprzez otwarcie zaworów.
Aby napisać poprawnie średniozaawansowany program wymagane jest skupienie i konieczność sprawdzania na bieżąco napisanego programu, aby uniknąć błędów podobnych do tych, które wystąpiły w naszym programie.
Kopia programu napisanego na zajęciach
PREDKOSC = 100%
NARZEDZIE: 1 X = 0MM, Y = 0MM, Z = 134MM
NUT = 90DEG, PREC = 180DEG
0: 10 NARZEDZIE 1
0: 20 PREDKOSC = 500MM/S, PREDKOSC MAX = 1000MM/S
0: 30 POZ LIN V = 100%, ZGRUBN, BZWG
X = 700.12MM, Y = 0MM, Z = 319.43MM
NUT = 102.97DEG, PREC = -176.91DEG
0: 40 CHWYTAK 1 ZWOLNIJ, CZAS = 1S
0: 50 CHWYTAK 2 CHWYC, CZAS = 1S
0: 60 USTAW WY[1] = 0
0: 70 POZ LIN V = 100%, ZGRUBN, BZWG
X = 608.97MM, Y = 488.58MM, Z = 214.97MM
NUT = 89.56DEG, PREC = -89.73DEG
0: 80 POZ LIN V = 50%, DOKL, BZWG
X = 608.97MM, Y = 488.57MM, Z = 57.95MM
NUT = 89.56DEG, PREC = -89.73DEG
0: 90 CHWYTAK 1 CHWYC, CZAS = 1S
0: 100 CHWYTAK 2 ZWOLNIJ, CZAS = 1S
0: 110 CZEKAJ 1S
0: 120 POZ LIN V = 50%, ZGRUBN, BZWG
X = 608.97MM, Y = 488.57MM, Z = 214.96MM
NUT = 89.55DEG, PREC = -89.73DEG
0: 125 CZEKAJ NA WE[2] = 0
0: 130 POZ QLIN V = 80%, ZGRUBN, BZWG
X = 711.16MM, Y = 80.73MM, Z = 208.44MM
NUT = 89.55DEG, PREC = -121.98DEG
0: 140 POZ LIN V = 50%, DOKL, BZWG
X = 711.17MM, Y = 80.73MM, Z = 131.93MM
NUT = 89.55DEG, PREC = -121.99DEG
0: 150 CHWYTAK 1 ZWOLNIJ, CZAS = 1S
0: 160 CHWYTAK 2 CHWYC, CZAS = 1S
0: 170 CZEKAJ 1S
0: 180 POZ LIN V = 100%, ZGRUBN, BZWG
X = 711.16MM, Y = 80.73MM, Z = 208.44MM
NUT = 89.55DEG, PREC = -121.98DEG
0: 190 USTAW WY[1] = 1
0: 200 POZ QLIN V = 80%, ZGRUBN, BZWG
X = 493.55MM, Y = 596.1MM, Z = 242.81MM
NUT = 89.55DEG, PREC = -77.32DEG
0: 210 POZ LIN V = 70%, DOKL, BZWG
X = 493.56MM, Y = 596.1MM, Z = 15.17MM
NUT = 89.55DEG, PREC = -77.33DEG
0: 220 CHWYTAK 1 CHWYC, CZAS = 1S
0: 230 CHWYTAK 2 ZWOLNIJ, CZAS = 1S
0: 235 CZEKAJ 1S
0: 240 POZ LIN V = 70%, ZGRUBN, BZWG
X = 493.55MM, Y = 596.1MM, Z = 242.81MM
NUT = 89.55DEG, PREC = -77.32DEG
0: 250 USTAW WY[2] = 1
0: 260 POZ QLIN V = 80%, ZGRUBN, BZWG
X = 708.45MM, Y = 95.27MM, Z = 186.21MM
NUT = 89.54DEG, PREC = -120.17DEG
0: 270 POZ LIN V = 50%, DOKL, BZWG
X = 708.46MM, Y = 95.27MM, Z = 141.58MM
NUT = 89.55DEG, PREC = -120.18DEG
0: 280 CHWYTAK 1 ZWOLNIJ, CZAS = 1S
0: 290 CHWYTAK 2 CHWYC, CZAS = 1S
0: 300 CZEKAJ 1S
0: 310 POZ LIN V = 70%, ZGRUBN, BZWG
X = 708.45MM, Y = 95.27MM, Z = 186.21MM
NUT = 89.54DEG, PREC = -120.17DEG
0: 320 USTAW WY[1] = 0
0: 330 POZ LIN V = 50%, DOKL, BZWG
X = 708.45MM, Y = 95.27MM, Z = 126.95MM
NUT = 89.54DEG, PREC = -120.17DEG