6. Programowanie robotów przemysłowych
Programowanie robotów poza stanowiskiem pracy można porównać do komputerowego programowania pięcioosiowych obrabiarek sterowanych numerycznie. Są jednak zasadnicze różnice. Zróżnicowana budowa robotów o szerego. wej strukturze kinematycznej o różnych połączeniach par obrotowych i postępowych oraz różnych możliwościach ruchu powoduje konieczność uwzględnienia modelu matematycznego transformacji odwrotnej podczas realizacji sekwencji rozkazów programowych. Indywidualna budowa układów sterowania produkowanych przez różnych producentów robotów skutkuje tym, iż nie wystarczy tylko zastosowanie odpowiedniego postprocesora, aby uniwersalny program typu CAM zastosować do każdego robota. Dlatego też nie stworzono do tej pory jednego, uniwersalnego języka programowania, ale wiele programów, określonych w wielu językach, dedykowanych tylko do wybranych typów robotów.
W programach off-line robotów można na ogół wyróżnić opis kolejności działania robota oraz opis środowiska i stanowiska, na którym robot pracuje. Opis działania to procedury dotyczące ruchów robota - zawierają, oprócz typowych operatorów' sterujących, instrukcje umożliwiające zbieranie informacji z czujników oraz obsługę procesów równoległych. Opis środowiska i stanowiska roboczego zawiera model przestrzeni roboczej. Zdefiniowane są w niej pozycje oraz orientacje obiektów i powiązania przestrzenne niezbędne do napisania głównego programu [62].
Programowanie robotów off-line można realizować następującymi metodami [62]:
- strukturalnie w języku wysokiego poziomu,
- graficznie,
- innymi metodami.
Programowanie strukturalne
Programowanie strukturalne jest wykonywane w językach wysokiego poziomu. Wymaga rozbudowanego systemu i jest nazywane systemowym programowaniem robotów. Do głównych zadań tej metody można zaliczyć:
- implementację programu,
- sprawdzenie programu (składni, poprawności semantycznej),
- testowanie programu,
- przechowywanie i obsługiwanie programu,
- zapewnienie komunikacji pomiędzy użytkownikami.
Programowanie symulacyjne (graficzne)
Graficzne metody programowania są wykorzystywane do tworzenia model' (programy CAx), które są wykorzystywane podczas modelowania ruchów robotów. Proces tworzenia modeli umożliwia testowanie trajektorii ruchu bez konieczności pracy z rzeczywistymi urządzeniami. Programowanie to ma wie'c zalet, a przede wszystkim nie ma konieczności zatrzymywania linii technolo* 168 gicznej w fabryce, aby przetestować nowe oprogramowanie.
,nne metody programowania
po innych metod, z których część jest jeszcze w fazie badań, można zaliczyć:
- programowanie zorientowane na warsztat,
- programowanie w wirtualnej rzeczywistości,
- programowanie wizualne w oparciu o symbole i diagramy,
- programowanie hybrydowe (łączenie wielu metod programowania),
- programowanie ustnymi poleceniami,
- autonomiczne uczenie się.
6,4.1. Języki programowania robotów
Języki programowania robotów można sklasyfikować pod względem ich abs-Irakcyjności. Języki programowania wysokiego poziomu typu C+, Pascal, Basic służą powszechnie do rozwiązywania problemów analitycznych, ale część z nich jest również dostosowana do programowania robotów. Języki na poziomie zadań i obiektów są nazywane językami ukrytymi (ang. implicite languageś), natomiast języki na poziomie robota i osi — językami otwartymi/jawnymi (ang. explicite languageś).
Jak wcześniej wspomniano, głównymi elementami programów robotów są deklaracje i polecenia. Wiele z nich jest specyficznymi instrukcjami, które można wykorzystać do programowania konkretnych układów sterowania. Zazwyczaj programy robotów zawierają polecenia:
- ruchu,
- komunikacyjne,
- ustawiające parametry kontrolera robota.
Nowoczesne języki programowania robotów mają strukturę modułową która może być tworzona na podstawie programowania strukturalnego i stanowi grupę prostych, zrozumiałych i łatwych w użyciu poleceń.
Język AL programowania robotów
Jednym z najstarszych oraz najbardziej znanych języków programowania wysokiego poziomu przeznaczonych do programowania robotów jest język AL (od ang. assembly language). W miarę upływu lat język AL był modyfikowany, tak aby stał się narzędziem maksymalnie elastycznym, a z drugiej strony pozostał prosty w użyciu.
Język AL jest językiem zorientowanym obiektowo, w którym obiekty i relacje między nimi są reprezentowane własnymi układami współrzędnych i stosownymi transformacjami. Możliwe jest tworzenie bazy danych dotyczących obiektów, pozwalającej na łatwe zaprogramowanie operacji na obiektach trójwymiarowych. Obiekty znajdujące się w otoczeniu opisuje się, podając ich położenie i orientację. Język dopuszcza programowanie działań wieloma ramionami robota i urządzeniami towarzyszącym i.