Robot przemysłowy IRb–6 Marek Wnuk
Transkrypt
Robot przemysłowy IRb–6 Marek Wnuk
Na prawach rekopisu INSTYTUT CYBERNETYKI TECHNICZNEJ POLITECHNIKI WROCŁAWSKIEJ Raport serii: Sprawozdania nr 4 2002 Robot przemysłowy IRb–6 Marek Wnuk Słowa kluczowe: robot, manipulator, sterownik Wrocław 2002 1 Wstep Robot IRb–6 [1], [2] jest złożony z cześci manipulacyjnej i szafy sterowniczej. W skład cześci manipulacyjnej wchodza nastepujace podzespoły (rys. 1): 1. przegub (kiść), 2. ramie górne (przedramie), 3. ramie dolne (ramie), 4. korpus obrotowy, 5. podstawa, 6. przekładnia śrubowa toczna Θ, 7. przekładnia śrubowa toczna α, 8. naped ruchu v, 9. naped ruchu t, 10. naped ruchu Θ, 11. naped ruchu α, 12. naped ruchu φ (wewnatrz korpusu). Rysunek 1: Manipulator IRb–6 1 Manipulator ma pieć obrotowych stopni swobody: obrót korpusu wzgledem podstawy (φ), obrót przedramienia (ramienia górnego) (α), obrót ramienia (ramienia dolnego) (Θ), pochylanie kiści (przegubu) (t), skrecanie kiści (przegubu) (v). Oś każdego stopnia swobody jest napedzana silnikiem elektrycznym pradu stałego z przekładnia i układem przeniesienia napedu. Każda jednostka napedowa jest wyposażona w elementy pomiarowe predkości obrotowej (pradnica tachometryczna) i położenia katowego (rezolwer). W szafie sterowniczej znajduja sie układy sterowników mocy wyposażonych w regulatory predkości typu PID z tachometrycznym sprzeżeniem zwrotnym oraz sterowniki położenia osi wykorzystujace sygnały z rezolwerów. Wartości zadane dla sterowników położenia sa dostarczane przez mikroprocesorowy sterownik obsługujacy również pozostałe podzespoły szafy sterowniczej. W pamieci stałej (ROM) sterownika robota IRb-6 jest przechowywany program nadzorczy obsługujacy panel operacyjny (rys. 2), panel programowania (rys. 3), pamieć kasetowa, sterowniki napedów manipulatora, układy wejść/wyjść dodatkowych i zabezpieczeń. Program użytkowy może być wprowadzony z panelu programowania lub pamieci kasetowej. Do sterowania wykonaniem wprowadzonego programu wystarcza panel operacyjny. 2 Panel operacyjny Panel operacyjny (rys. 2) jest umieszczony na przedniej ścianie szafy sterowniczej. Znajdujace sie na nim przełaczniki i przyciski służa do uruchamiania robota, wybierania trybu pracy, uruchamiania i zatrzymywania programu, obsługi pamieci kasetowej. Lampki na panelu operacjnym sa przeznaczone do sygnalizowania trybu pracy robota i stanów awaryjnych. 2.1 Przełaczniki Sieć umożliwia właczanie napiecia zasilajecego układ sterowania (sygnalizacja żółta lampka Sieć). Program 1–4 służa do wyboru programu, który ma być edytowany lub uruchamiany w trybie recznym (tylko jeden) lub automatycznym (kilka programów może być wykonywanych kolejno). Nad wybranymi programami znajduja sie lampki sygnalizacyjne. Akumulatory pozwala właczyć akumulatory podtrzymujace zawartość pamieci programu użytkowego. Przy ponownym właczeniu zasilania sieciowego (pod warunkiem, ze wyłaczenie nie trwało dłużej niż 75 min.) nie ma potrzeby ponownego ładowania programu. Utrata programu jest sygnalizowana czerwona lampka. 2 AKUMULATORY WYŁ. PRACA/ŁAD. ṔRACA PRZEKR. TEMPERAT. PRACA AUTO PRACA RECZNA 1 UTRATA PROGRAMU BŁAD WYŁ. ZAŁ. WYŁ. ZAŁ. SIEĆ PRACA KASOWANIE STOPU AWAR. 0 STOP AWARYJNY CZYTANIE Z KASETY WPISYWANIE NA KASETE PROGRAM 2 OBSŁUGI 3 4 WYŁ. ZAŁ. WYŁ. ZAŁ. SYNCHRONIZACJA START PROGRAMU GOTOWOŚĆ STOP PROGRAMU SIEĆ 1 STOP AWARYJNY 0 1 Rysunek 2: Panel operacyjny robota IRb–6 2.2 Przyciski Gotowość powoduje właczenie zasilania dla układów elektronicznych regulatorów predkości silników robota i przygotowanie ich do pracy oraz wyłaczenie zasilania silników (sygnalizacja stanu gotowości żółta lampka wbudowana w przycisk). Praca pozwala przejść ze stanu gotowości do stanu pracy (włacza zasilanie silników, podświetla przycisk Praca i gasi Gotowość). Stop awaryjny jest stabilnym przyciskiem służacym do zatrzymywania robota w sytuacjach awaryjnych. Wyłacza zasilanie silników robota i włacza sygnalizacje stopu awaryjnego (czerwona lampka). 3 Kasowanie stopu awaryjnego powoduje wyłaczenie stopu awaryjnego (o ile przyczyna została usunieta – w szczególności dotyczy to zwolnienia przycisku Stop awaryjny). Synchronizacja jest podświetlanym na czerwono przyciskiem służacym do wywołania procedury doprowadzenia manipulatora do pozycji synchronizacji (rozpoznawanej dzieki czujnikom wbudowanym w poszczególnych napedch). Synchronizacja polega na wykonywaniu przez wszystkie osie robota ruchu w określonym kierunku do chwili otrzymania sygnału z czujnika. Po osiagnieciu położenia ”zerowego” przez wszystkie osie nastepuje zainicjalizowanie liczników pozycji w sterownikach napedów i zgaszenie lampki. Od tej chwili sterownik zlicza pozycje robota (w trybie pracy i gotowości). Przeprowadzenie synchronizacji jest konieczne po każdym właczeniu robota, a także po zatrzymaniu awaryjnym. Przed synchronizacja można przejść do trybu pracy i ustawić manipulator przyciskami sterowania recznego na panelu programowania (należy zachować ostrożność, ponieważ bez synchronizacji nie działaja ograniczenia przestrzeni roboczej). UWAGA: przycisk musi być wciśniety do chwili zgaśniecia lampki, a start ruchu może nastapić z określonego zakresu położeń robota (zalecana konfiguracja przed synchronizacja: obrót podstawy w lewo, ramie pionowo, przedramie poziomo, nadgarstek wyprostowany, chwytak ustawiony tak, że zasilania pneumatyczne sa u dołu). Rodzaj pracy – auto włacza tryb pracy automatycznej (programy sa wybierane przełacznikami). Uruchomienie wybranych programów (kolejno, od najniższego numeru) nastepuje po naciśnieciu Start programu. Rodzaj pracy – reczna wybiera tryb pracy recznej (robot może być poruszany, synchronizowany, programowany przy pomocy panelu programowania. Przycisk Start programu powoduje krokowe wykonywanie wybranego programu. Rodzaj pracy – czytanie z kasety umożliwia ładowanie zachowanego na nośniku magnetycznym programy do wybramnej pamieci programu. Czytanie rozpoczyna sie po naciśnieciu Start programu. Po zakończeniu nastepuje przejście do pracy recznej. Rodzaj pracy – wpisywanie do kasety umożliwia zapisanie programu z wybranej pamieci na nośniku magnetycznym. Uruchomienie zapisu – przyciskiem Start programu. Po zakończeniu nastepuje przejście do pracy recznej. Start programu jest podświetlanym na zielono przyciskiem (ma swój odpowiednik na panelu programowania). Służy do uruchamiania programu w trybie automatycznym lub krokowym, inicjowania zapisu i odczytu pamieci kasetowej. Lampka sygnalizuje trwanie uruchomionej operacji (wykonywania całego programu lub pojedynczej instrukcji, zapisywania lub odczytywania programu). Operacja może być przerwana przyciskiem Stop programu. Stop programu zatrzymuje wykonywana operacje (wykonywanie całego programu lub pojedynczej instrukcji, zapisywanie lub odczytywanie programu). Ma odpowiednik na panelu programowania. 4 2.3 Lampki sygnalizacyjne Sieć – żółta lampka oznaczajaca obecność zasilania. Program 1–4 – żółte lampki wskazujace wybrane programy (pamieci programu). W trybie automatycznym lampka aktualnie uruchomionego programu nie gaśnie (mimo wyłaczenia pamieci), dopóki program sie nie zakończy. Akumulatory – praca – czerwona lampka sygnalizujaca pobieranie pradu z akumulatorów. Utrata programu – czerwona lampka sygnalizujaca po właczeniu zasilania, że zawartość pamieci programu została utracona (brak zasilania akumulatorowego, lub za niskie napiecie). Gaśnie przy synchronizacji. Przekroczenie temperatury – czerwona lampka ostrzegawcza sygnalizujaca podwyższona temperature we wnetrzu szafy sterownika ( 45oC). Po obniżeniu sie temperatury lampka gaśnie. Po przekroczeniu drugiego progu ( 55oC) nastepuje awaryjne zatrzymanie robota. Bład obsługi – czerwona lampka (ma odpowiednik na panelu programowania) sygnalizujaca niewłaściwe użycie przycisków i przełaczników (np. właczenie dwóch pamieci przy pracy recznej itp.). Na wyświetlaczu panelu programowania jest wyświetlany kod błedu. Stop awaryjny – czerwona lampka zapalana przy zatrzymaniu awaryjnym (przez przycisk Stop awaryjny, sygnał zewnetrzny, przeciażenie silnika, opóźnienie nadażania w trakcie zadanego ruchu). Po usunieciu przyczyny zatrzymania można ja zgasić przyciskiem Kasowanie stopu awaryjnego. 3 Panel programowania Panel programowania (rys. 3) jest wbudowany do przenośnej kasety połaczonej z szafa sterownika przy pomocy kabla. Znajdujace sie na nim przełaczniki i przyciski służa do programowania ruchów robota i recznego sterowania położeniem poszczególnych osi. Klawiatura numeryczna pozwala wprowadzać parametry dla instrukcji programu, a czterocyfrowy wyświetlacz numeryczny pozwala obserwować numery linii programu, kody instrukcji lub kody błedów oraz wprowadzane wartości parametrów. 3.1 Przełaczniki Predkość – praca auto pozwala ustawiać predkość pozycjonowania dla poszczególnych instrukcji Zgrubnie i Dokładnie przy ich wpisywaniu do pamieci w czsie programowania. W trakcie wykonania programu w trybie automatycznym ogranicza maksymalna predkośc ruchu do ustawionej wartości. 100% odpowiada 8000∆, na sekunde, gdzie ∆ oznacza elementarny przyrost ruchu. Przy pracy krokowej w trybie recznym narzucone jest ograniczenie do 50% predkości maksymalnej. Predkość – praca reczna pozwala ustawiać predkość pozycjonowania recznego w w celu uzyskania dużej dokładności pozycji ustalanej w trakcie programowania (w ustawieniu ∆ każde naciśniecie przycisku przesuwania osi zmienia pozycje o jeden elementarny przyrost). 5 INSTRUKCJE 1 DOKŁADNIE 2 ZGRUBNIE 3 LINIOWO 4 CHWYTAK 5 WYJ.ZAŁ. 6 WYJ.WYŁ. 7 CZEKANIE 8 KONIEC POŁOŻ. KRAŃC. PRZYJECIE BŁAD INSTR. OBSŁUGI KOD BŁEDU TYP INSTR. NR INSTR. 9 CZEK.WAR. 10 SKOK PROGR. 11 SKOK WAR. 12 SKOK 13 POWT. 14 KONIEC POWT. 15 WZÓR 16 MODYF. KASOWANIE SYMUL. NR INSTR. TYP INSTR. 2.5% 1.3% 31% 50% 1.3% 75% 100% ! ! RAMIE 9 4 5 6 1 2 3 0 START PROGRAMU PRACA RECZNA PRACA AUTO 15% 8 R PREDKOŚĆ 5% 7 ∆ ! 15% PRZEGUB 50% ! ! ! ! ! STOP PROGRAMU CHWYT 1 CHWYT 2 ZWALN. 1 ZWALN. 2 Rysunek 3: Panel programowania robota IRb–6 3.2 Przyciski Instrukcje – 16 przycisków oznaczonych numerami i nazwami instrukcji (dokładny opis w tab. 2). 6 Służa one do wpisywania programu do pamieci. Kasowanie służy do usuwania z pamieci instrukcji, której numer jest aktualnie wyświetlony (można go ustawić recznie przy pomocy klawiatury numerycznej). Symul. służy do symulowania zwarcia styków wejść w trybie pracy recznej przy testowaniu programu. Nr instr. ustawia licznik programu na wartość wprowadzona na wyświetlacz przy pomocy klawiatury numerycznej. Umożliwia wprowadzanie dodatkowych instrukcji, ich kasowanie, uruchamianie programu od określonego miejsca itp. Typ instr. – naciśniecie tego przycisku powoduje wyświetlanie typu instrukcji (górne dwie cyfry) o bieżacym numerze wraz z jej argumentem (dolne dwie cyfry). Po zwolnieniu na wyświetlaczu pojawia sie numer instrucji (licznik programu). Ramie – grupa trzech par przycisków pozwalajacych zmieniać położenia trzech głównych osi robota (obrót podstawy, ramie, przedramie) w trybie pracy recznej. Ruch odbywa sie w kierunku określonym strzałka tak długo, jak długo przycisk jest naciśniety. Predkość ruchu zależy od ustawienia przełacznika Predkość – praca reczna. Jeśli robot jest zsynchronizowany, to osiagniecie położenia krańcowego dla danej osi jest sygnalizowane lampka Położ. krańcowe świecaca do zwolnienia przycisku ruchu osi. Przy braku synchronizacji opisana wyżej kontrola zakresu ruchu nie jest wykonywana, co może spowodowć dotarcie do fizycznych ograniczników i przeciażenie silników (objawiajace sie intensywniejszym dźwiekiem dochodzacym z szafy). Dłuższe przeciażenie silników może spowodować awaryjne zatrzymanie robota (lampka Stop awaryjny na panelu operacyjnym). Przegub – grupa dwóch par przycisków pozwalajacych zmieniać położenia osi nadgarstka robota (pochylenie i skrecenie kiści) w trybie pracy recznej. Ich działanie jest analogiczne do opisanych wyżej. Chwyt 1–2, Zwaln. 1–2 – przyciski zamykajace i otwierajace chwytaki w trybie pracy recznej. W przypadku chwytaka pneumatycznego należy używać par: (Chwyt1, Zwaln.2) oraz (Chwyt2, Zwaln.1) w celu przełaczenia obu elektrozaworów sterujacych siłownikiem. Start programu, Stop programu – odpowiedniki przycisków o tych samych nazwach na panelu operacyjnym. Klawitura numeryczna – cyfry od 0 do 9 pozwalaja wprowadzać na wyświetlacz liczby (numery i argumenty instrukcji). R (reset) służy do zerowania wyświetlacza przed wprowadzeniem nowej liczby. 3.3 Elementy sygnalizacyjne Wyświetlacz cyfrowy może pokazywać: numer instrukcji (akcja domyślna w trakcie wykonywania i edycji programu); typ instrukcji (przy naciśnietym przycisku Typ instr. – dwie starsze cyfry oznaczaja typ instrukcji, a dwie mniej znaczace – wartość argumentu – tab. 2); 7 kod błedu (przy zapalonej lampce Bład obsługi – dwie młodsze cyfry – tab. 1). Położenie krańc. – czerwona lampka sygnalizuje naciśniecie przycisku ruchu recznego dla osi, która osiagneła położenie krańcowe (ruch nie jest wykonywany). Przyjecie instr. – zielona lampka sygnalizuje wpisanie instrukcji do pamieci po naciśnieciu przycisku instrukcji. Bład obsługi – czerwona lampka sygnalizuje popełnienie błedu w trakcie operowania przyciskami na panelu programowania, lub operacyjnym. Na wyświetlaczu pojawia sie kod błedu (tab. 1). 4 Uruchamianie robota IRb-6 Uruchamianie robota przebiega w kilku etapach: Właczenie zasilania sieciowego przez obrót przełacznika do położenia 1. Powoduje to: zapalenie lampki Sieć, ładowanie akumulatorów (jeśli sa właczone), zapalenie lampki Stop awaryjny. Wlaczenie gotowości przez naciśniecie przycisku Gotowość. Nastepuje właczenie i sprawdzenie napieć zasilajacych układy elektroniczne (w przypadku braku lub niewłaściwej wartości któregoś z nich stan gotowości jest wyłaczany). Jeśli wynik testu jest poprawny, to: zapala sie lampka Gotowość, gaśnie lampka Stop awaryjny (o ile nie utrzymuje sie przyczyna stopu – wciśniety przycisk, sygnał zewnetrzny), rozpoczyna prace mikrokomputer sterownika, zapala sie lampka Synchronizacja, zapala sie lampka Utrata programu (o ile zasilanie rezerwowe nie zapewniło jego utrzymania w pamieci), zapala sie lampka Rodzaj pracy – reczna (można używać panelu programowania do wprowadzania lub poprawiania instrukcji nie wymagajacych ruchu – silniki nie sa zasilane), W stanie gotowości można wybrać dowolny z czterech rodzajów pracy robota. UWAGA: w stanie gotowości nie należy używać przycisków na panelu programowania zmieniajacych położenie w trybie recznym (sterownik spowoduje przejście do nowej pozycji po właczeniu zasilania silników (stan Praca), co może spowodować kolizje, lub przeciażenie silników i zatrzymanie awaryjne). 8 Tablica 1: Opis błedów w sterowniku IRb-6 kod przyczyna błedu 1 właczenie kilku programów w trybach pracy recznej, pisania lub czytania pamieci kasetowej 2 3 4 5 6 7 8 9 10 11 12 13 14 20 21 22 23 30 31 32 eliminacja błedu wyłaczenie zbednych programów lub przejście do trybu pracy automatycznej wciśniecie przycisku Start programu bez wybranego programu zwolnienie Start pro(wszystkie tryby) lub gdy wskazywana przez wyświetlacz in- gramu lub naciśniecie strukcja jest pusta (tryby pracy auto i recznej) Stop programu wciśniecie Start programu przed zsynchronizowaniem robota zwolnienie Start programu lub naciśniecie Stop programu przejście (po instrukcji Koniec lub Skok progr.) do właczonego wyłaczenie pustego proprogramu, który jest pusty (tryb pracy auto) gramu brak instrukcji Koniec (tryb pracy recznej lub automatycznej) – wyłaczenie programu lub próba wykonania instrukcji pustej (po ew. przejściu do trybu recznego) przycisk R skok do instrukcji pustej jak w 5 równoczesne wciśniecie kilku przycisków instrukcji przycisk R przepełnienie pamieci przy wprowadzaniu instrukcji przycisk R próba wprowadzenia instrukcji po instrukcji Koniec przycisk R, skasowanie instrukcji Koniec nieprawidłowy argument instrukcji (czas, numer we/wy, adres przycisk R skoku, ilość powtórzeń), nieprawidłowe programowanie ruchu poziomego lub pionowego (ruch dwoma osiami lub brak ruchu) instrukcja o wybranym numerze jest pusta (przy kasowaniu lub przycisk R sprawdzaniu typu) błednie wybrany numer instrukcji (0000–0009) przycisk R błedna próba pozycjonowania liniowego (przekroczenie przycisk R predkości – zbyt krótki czas) próba startu z wnetrza powtarzanego wycinka programu przycisk R bład zapisywania/odczytywania kasety przejście do pracy recznej strat wpisywania do kasety przy właczonym pustym programie przejście do pracy recznej zbyt długi program na kasecie (brak miejsca w pamieci sterow- przejście do pracy recznej nika) kaseta chroniona przed zapisem przejście do pracy recznej próba pozycjonowania liniowego z nałożonym (błednie zaprogra- przycisk R mowanym) ruchem próba wykonania pozycjonowania liniowego z nałożonym ru- przycisk R chem, gdy został zmieniony program w bloku petli lub przed nim, bez ponownego wykonania petli próba pozycjonowania liniowego z nałożonym ruchem, gdy czas przycisk R wykonania jest krótszy od okresu oscylacji 9 Wyjście ze stanu gotowości jest możliwe przez wyłaczenie zasilania (pozycja 0 przełacznika Sieć) lub przejście do stanu Praca. Właczenie stanu Praca nastepuje przez naciśniecie przycisku Praca w stanie gotowości. W stanie tym: zapala sie lampka Praca, gaśnie lampka Gotowość, jest właczone zasilanie silników (robot utrzymuje zadane położenie). UWAGA: jeśli jest zapalona lampka Synchronizacja, to robot powinien zostać zsynchronizowany. Synchronizowanie robota polega na doprowadzeniu manipulatora do wyróżnionego położenia synchronizacji, rozpoznawanego przez sterownik dzieki czujnikom wbudowanym w napedy poszczególnych osi. W trakcie synchronizowania każda oś wykonuje ruch z niewielka predkościa w ustalonym kierunku do chwili otrzymania sygnału z czujnika położenia synchronizacji. Przed naciśnieciem przycisku Synchronizacja należy właczyć stan pracy i recznie doprowadzić manipulator do odpowiedniego położenia wyjściowego: obrót podstawy – ok. 30o na lewo od położenia środkowego (widok z przodu), przedramie – poziomo, ramie – pionowo, kiść (przegub) – pochylenie 45o w dół, chwytak – obrócony tak, by przewody pneumatyczne były na dole. W tej pozycji należy nacisnać przycisk Synchronizacja i trzymać do chwili zgaśniecia lampki (powinna wtedy również zgasnać lampka Utrata programu). 5 Programowanie robota IRb-6 Ruchy robota IRb-6 sa programowane w trybie pozycjonowania od punktu do punktu (PTP - Point To Point) metoda uczenia. Polega ona na recznym doprowadzeniu manipulatora do żadanej pozycji, wybraniu predkości ruchu przełacznikiem Predkość – auto i naciśnieciu przycisku wybranej instrukcji (wybrana predkość i położenia silników odczytane z liczników sterowników osi sa zapamietywane jako jej argumenty). Dostepne sa również inne instrukcje (obsługa chwytaka, wyjść dodatkowych, czasów oczekiwania, skoków warunkowych i programowych itp.). Poza instrukcjami skoków program jest wykonywany sekwencyjnie, zgodnie z uporzadkowaniem instrukcji według ich numerów (od 10 do 9999) pokazywanych na wyświetlaczu. Przy wprowadzaniu kolejnych instrukcji numer jest zwiekszany o 10, by ułatwić wstawianie instrukcji w czasie poprawiania programu. Typ (kod) instrukcji o aktualnie wyświetlanym numerze oraz jej argument można wyświetlić naciskajac przycisk Typ instr. (kod – dwie górne cyfry, argument – dwie dolne). Programy użytkowe sa przechowywane w pamieci sterownika o pojemności 3911+4096=8007 bajtów. Instrukcje pozycjonoania zajmuja po 14 bajtów, a inne – od 3 do 5 bajtów. Łacznie można wiec 10 na przykład zaprogramować ok. 500 instrukcji pozycjonowania i ok. 200 innych instrukcji. Każda instrukcja zawiera kod (1 bajt), numer instrukcji w programie (2 bajty) i (ewentualnie) argumenty. Każdy program musi być zakończony instrukcja Koniec. 5.1 Wprowadzanie nowych programów do pamieci sterownika Wprowadzanie programu odbywa sie w trybie pracy recznej. Po wybraniu jednego z programów przełacznikiem Program 1–4 wyświetlacz pokazuje numer pierwszej instrukcji (domyślnie 0010). Wpisanie instrukcji Koniec powoduje skasowanie wszystkich nastepnych instrukcji programu (co można wykorzystać do skasowania już istniejacego programu przez wpisanie Koniec pod numerem jego pierwszej instrukcji, a nastepnie skasowanie instrukcji Koniec przyciskiem Kasowanie). Wprowadzanie argumentów dla instrukcji odbywa sie przed wpisaniem instrukcji przez: skasowanie wyświetlacza przyciskiem R, wpisanie liczby z klawiatury numerycznej. Po każdym wprowadzeniu instrukcji (przyjecie jest sygnalizowane lampka) nastepuje zwiekszenie licznika instrukcji na wyświetlaczu o 10. 5.1.1 Instrukcje pozycjonowania Sterowanie PTP może być zaprogramowane na trzy sposoby: Dokładnie – wszystkie osie startuja równocześnie z predkościa zadana w trakcie programowania przełacznikiem Predkość – auto, każda z osi zatrzymuje sie po osiagnieciu zadanej pozycji, przejście do nastepnej instrukcji nastepuje po zatrzymaniu wszystkich osi (dokładnym osiagnieciu zadanej konfiguracji manipulatora). Zgrubnie – podobnie jak w Dokładnie, lecz warunkiem przejścia do nastepnej instrukcji jest osiagniecie przez wszystkie osie błedu położenia mniejszego od ustalonej wartości (powoduje to płynna kontynuacje ruchu bez zatrzymywania manipulatora, jeśli nastepna instrukcja jest instrukcja pozycjonowania). Liniowo – wszystkie osie startuja i zatrzymuja sie równocześnie (predkości ruchu osi sa wyliczane proporcjonalnie do długości zadanego odcinka na podstawie zadanego argumentu – czasu trwania ruchu). Przy odległym ruchu i krótkim czasie może wystapić bład nr 13. Przy sterowaniu recznym ruch ramienia i przedramienia jest koordynowany tak, by w przypadku użycia tylko jednego przycisku otrzymać ruch chwytaka w poziomie lub w pionie. W instrukcji pozycjonowania zgrubnego lub dokładnego można wymusić ruch poziomy lub pionowy przez wprowadzenie argumentu 0001 (tab. 2). 11 Tablica 2: Lista instrukcji sterownika IRb-6 typ 1 nazwa DOKŁADNIE 2 ZGRUBNIE 3 LINIOWO argument 0001 0002 0003 0001 0002 0003 00XX 01XX 02XX 0333 N0XX N1XX N30P N4XX 4 CHWYTAK 00XX 5 WYJ. ZAŁ. 00XX 6 WYJ. WYŁ. 00XX 7 CZEKANIE 00XX 8 9 KONIEC CZEK. WAR. 00XX 10 SKOK PROGR. 00XX 11 SKOK WAR. 00XX 12 13 14 15 XXXX 00XX - SKOK POWT. KONIEC POWT. WZÓR 16 MODYF. - opis pozycjonowanie dokładne ruch wzdłuż linii poziomej (ramie) lub pionowej (przedarmie) szukanie wzdłuż dowolnej linii szukanie wzdłuż linii poziomej lub pionowej pozycjonowanie zgrubne ruch wzdłuż linii poziomej lub pionowej szukanie wzdłuż dowolnej linii szukanie wzdłuż linii poziomej lub pionowej pozycjonowanie liniowe; XX – czas w 0.1s (XX=02–99) pozycjonowanie liniowe; XX – czas w s. (XX=01–99) pozycjonowanie liniowe z szukaniem; XX – czas w 0.1s (XX=02–99) punkt odniesienia pozycjonowanie liniowe z nałożona petla o numerze N; XX – czas w 0.1s (XX=02–99, N=1–8) pozycjonowanie liniowe z nałożona petla o numerze N; XX – czas w s (XX=01–99, N=1–8) pierwszy punkt określajacy petle; P – liczba punktów w petli, N – numer petli (P=3–7, N=1–8) kolejne punkty określajace petle; XX – czas ruchu w 0.1s, N – numer petli (XX=02–99, N=1–8) sterowanie chwytakiem; XX – czas wykonywania instrukcji w 0.1s (XX=02–99) właczenie wyjścia (XX=1–14) lub ustawienie wskaźnika (XX=16–32) wyłaczenie wyjścia (XX=1–14) lub zerowanie wskaźnika (XX=16–32) programowanie czasu oczekiwania (opóźnienia); XX – czas oczekiwania w 0.1s (XX=02–99) koniec programu zatrzymanie wykonywania programu do spełnienia warunku (sygnał wejściowy – XX=1–16, wskaźnik – XX=17–32) przy spełnionym warunku – kontynuacja programu, przy nie spełnionym – przejście do nastepnego z właczonych programów (warunki - jak wyżej) przy spełnionym warunku – przeskoczenie jednej instrukcji, przy nie spełnionym – kontynuacja skok do instrukcji numer XXXX poczatek petli powtarzanej XX razy (XX=01-99) koniec petli rozpoczetej przez POWT. poczatek wspólnej cześci programu realizujacego działanie według wzoru separator kolejnych (indywidualnych) cześci programu realizujacego działanie według wzoru 12 5.1.2 Ruch z poszukiwaniem Jeśli robot jest wyposażony w czujnik na chwytaku dajacy sygnał po natrafieniu na obiekt, to można użyć instrukcji ruchu z poszukiwaniem przez podanie argumentu 0002 (wzdłuż dowolnej linii) lub 0003 (pionowo lub poziomo) dla typu Dokładnie lub Zgrubnie. Jesłi w trakcie ruchu z poszukiwaniem pojawi sie sygnał z czujnika Stop szukania, to ruch zostanie przerwany (zatrzymanie nastapi po czasie zależnym od predkości, z jaka poruszał sie robot) i nastapi przejście do nastepnej instrukcji. W przypadku braku sygnału zostanie osiagniete położenie docelowe i program bedzie również kontynuowany. 5.1.3 Chwytak i wyjścia dodatkowe Programowanie ruchu chwytaka polega na wymuszeniu odpowiedniej konfigutacji siłownika pneumatycznego przez naciśniecie pary Zwoln.2–Chwyt1 lub Zwoln.1–Chwyt2, wprowadzeniu argumentu czasowego (w 0.1s) i wprowadzeniu instrukcji Chwytak. Ustawianie stanu wyjść odbywa sie przy pomoy instrukcji Wyj. zał. i Wyj. wył. z argumentem oznaczajacym numer wyjścia (1–14). Można również użyć argumentów (17–32), które pozwalaja ustawić programowe wskaźniki (flagi), według których można wykonywać skoki warunkowe i programowe. 5.1.4 Sterownie przebiegiem programu Realizacja programu może być zatrzymana na określony czas (instrukcja Czekanie z argumentem wyrażonym w 0.1s w zakresie 0.1–9.9). Zatrzymanie programu do czasu spełnienia warunku (sygnału na wejściu dodatkowym 1–16, lub wskaźnika 17–32) jest programowane jako instrukcja Czek. war. z argumentem oznaczajacym numer wejścia lub wskaźnika. Skok warunkowy według wejścia lub wskaźnika (Skok war.) powoduje zbadanie warunku i (w razie pozytywnego wyniku testu) pominiecie nastepnej instrukcji programu, lub (w przypadku wyniku negatywnego) – jej wykonanie. Wraz z instrukcja Skok, której argumentem jest numer instrukcji docelowej pozwala on na rozgałezianie programu w zależności od warunków zewnetrznych lub wewnetrznych. Instrukcja Skok progr. działa podobnie, lecz powoduje przejście do nastepnego właczonego programu. 5.1.5 Instrukcje petli Wycinek programu może być powtarzany wielokrotnie dzieki parze instrukcji Powt. i Koniec powt.. Instrukcja Powt. z argumentem oznaczajacym ilość powtórzeń jest wstawiana na poczatku, a Koniec powt. – na końcu powtarzanego wycinka. W przypadku konieczności powtarzania pewnego wycinka programu w ten sposób, że poczatkowa cześć jest wspólna dla wszystkich powtórzeń, a końcowa – różna, można zastosować instrukcje Wzór i Modyf. Instrukcja Wzór jest wstawiana na poczatku wspólnej cześci wycinka programu, a kolejne instrukcje Modyf. rozpoczynaja wycinki indywidualne dla poszczególnych zakończeń. Przy wykonywaniu instrukcji Modyf. (poza pierwsza) jest wykonywany skok do pierwszej instrukcji za Wzór, a po 13 zakończeniu wspólnego wycinka programu – skok do pierwszej instrukcji za kolejna instrukcja Modyf. Po wykonaniu odcinka końcowego po ostatniej instrukcji Modyf. program jest kontynuowany. 5.2 Sprawdzanie i porawianie programów W trybie pracy recznej można sprawdzić działanie programu krok po kroku. Naciśniecie przycisku Start programu powoduje wykonanie jednej instrukcji. Predkość ruchu jest ograniczona do 50% predkości maksymalnej. Chwytak i wyjścia sa sterowane zgodnie z programem. W razie potrzeby można symulować spełnienie warunków dla instrukcji warunkowych przy pomocy przycisku Symul. Program zatrzymuje sie na instrukcji Czek. war. i rusza dalej po naciśnieciu Symul. Podobnie jest przy Skok progr., ponieważ w trybie recznym tylko jeden program może być właczony. Przy instrukcji Skok war. symulacje spełnienia warunku uzyskuje sie przez naciskanie przycisku Symul. w czasie wykonywania kroku programu (naciskania Start programu). 5.3 Kasowanie instrukcji i wnoszenie poprawek Dowolna instrukcje programu można skasować przez: ustawienie numeru instrukcji (R, numer, Nr Instr.), naciśniecie przycisku Kasowanie. Licznik instrukcji wskaże numer nastepnej instrukcji programu lub zostanie zwiekszony o 10 (w przypadku jej braku). Zamiast kasowania, można dokonać poprawienia instrukcji o wybranym numerze. W tym celu należy przygotować argumenty dla nowej instrukcji (np. wpisać czas, ustawić położenie manipulatora itp.) i nacisnać przycisk nowej instrukcji. UWAGA: w przypadku błedu przy wprowadzaniu nowej instrukcji stara instrukcja jest kasowana. 5.4 Sprawdzanie typu i argumentów instrukcji Podczas naciskania przycisku Typ instr. na wyświetlaczu pojawiaja sie informacje o instrukcji o bieżacym numerze (można go zmienić w opisany wcześniej sposób): typ (kod) instrukcji – na dwóch starszych cyfrach, argument instrukcji – na dwóch młodszych cyfrach. W instrukcjach Dokładnie i Zgrubnie argument oznacza odmiane ruchu (1 – poziomo lub pionowo, 2 – szukanie, 3 – szukanie poziomo lub pionowo). W instrukcjach Liniowo, Chwytak i Czekanie argumentem jest czas w 0.1s (0.1–9.9). W instrukcjach Wyj. zał. i Wyj. wył. argumentem jest numer wyjścia (1–14) lub wskaźnika (17–32). W instrukcjach Czek. war., Skok war. i Skok progr. argumentem jest numer wejścia (1–16) lub wskaźnika (17–32). W instrukcji Powt. argumentem jest liczba powtórzeń petli (1–99). 14 Bibliografia [1] Dokumentacja techniczno–ruchowa robotów IRb–6 i IRb–60 . PIAP, Warszawa 1983. [2] Drzazga A., Wnuk M., Obsługa robota złożonego IRb–6, Materiały dydaktyczne. Raport serii: Usługi 15 84, ZPCiR, ICT PWr., Wrocław 1984. 15 ĆWICZENIE 506a Uruchamianie, obsługa i programowanie robota IRb–6 Cel i zakres ćwiczenia Celem ćwiczenia jest zapoznanie sie z uruchamianiem, obsługa i programowaniem (w podstawowym zakresie) robota IRb–6. Podstawowe zagadnienia: Synchronizowanie robota i porusznie manipulatorem w pracy recznej. Różne tryby pozycjonowania (dokładnie/zgrubnie/liniowo, poziomo/pionowo). Tworzenie programów metoda uczenia. Wykonywanie krokowe i automatyczne programu. Zadania do wykonania 1. Uruchomić robot IRb–6 (GOTOWOŚĆ, PRACA), doprowadzić go do odpowiedniej pozycji i wykonać synchronizacje. 2. Wypróbować działanie przełaczników predkości na panelu programowania przy recznym i programowym pozycjonowaniu robota. 3. Utworzyć i przetestować program realizujacy nastepujace zadanie: pobranie pierwszego detalu z lewej palety; przeniesienie detalu na prawa palete z wykorzystaniem położeń pośrednich (ZGRUBNIE); pobranie drugiego detalu z lewej palety; ustawienie detalu na poprzednim (“wieża”). UWAGA: Wskazane jest utworzenie drugiego programu działajacego przeciwnie (przywracajacego stan poczatkowy), tak by uruchomienie obu programów pozwalało uzyskać cykl. Materiały pomocnicze: Wnuk M., Robot przemysłowy IRb–6 Forma sprawozdania Należy udokumentować utworzony program w postaci szkicu sytuacyjnego przestrzeni zadaniowej i tabeli programu z opisem poszczególnych instrukcji. 16 dr inż. Marek Wnuk Instytut Cybernetyki Technicznej Politechniki Wrocławskiej ul. Janiszewskiego 11 17 50-372 Wrocław Niniejszy raport otrzymuja: 1. OINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 1 egz. 2. Biblioteka Wydziału Elektroniki . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 3 egz. 3. Laboratorium Robotyki (010/C-3) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 3 egz. 4. Autor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 2 egz. Razem : Raport wpłynał do redakcji I-6 w lutym 2002 roku. 17 9 egz "