Zezwala się na korzystanie z artykułu na warunkach licencji Creative Commons Uznanie autorstwa 3.0
WstępOd pojawienia się pierwszych robotów w przemyśle na początku lat 60. XX wieku, liczba typów robotów oraz ich zastosowań stale rośnie. Od przełomu lat 70. i 80. zaczęto powszechnie stosować układy mikroprocesorowe do budowy systemów sterowania złożonych urządzeń elektromechanicznych, w tym i robotów. W wyniku tego nastąpiło przesuniecie znacznej części wysiłku projektowego z budowy sprzętu na opracowywanie oprogramowania. Lawinowo rosnąca liczba tego typu systemów spowodowała, że każdorazowe rozpoczynanie pisania programu sterującego od zera stało się nieopłacalne. Co więcej, na gruncie informatyki juz wcześniej zajęto się problemem powtórnego użycia oprogramowania (ang. reuse). Zaletą takiego podejścia jest nie tylko zmniejszenie kosztów tworzenia oprogramowania, ale również zwiększenie jego niezawodności, głównie dzięki dłuższemu testowaniu i to przez wielu użytkowników. Przy tworzeniu układu sterowania robota, prócz kwestii powtórnego użycia istniejących modułów, istotne są wskazówki dla projektanta, jak zdekomponować złożony system, jaką nadać mu strukturę i jak skomunikować wyróżnione podsystemy. Zanim zostaną przedstawione współczesne rozwiązania tych problemów warto jest spojrzeć na ewolucję podejścia do tworzenia oprogramowania sterującego robotami.
Języki specjalizowanePierwsze roboty przemysłowe były programowane mechanicznie przez ustawianie konfiguracji matryc diodowych oraz potencjometrów, lub zderzaków określających zakresy ruchu poszczególnych silników [49]. Następnie stosowano programowanie nietekstowe zwane uczeniem, w trakcie którego operator przestawiał lub wodził manipulator między punktami, które są wpierw zapamiętywane, a następnie odtwarzane przy realizacji programu. Budowa układów sterowania z wykorzystaniem coraz wydajniejszych mikroprocesorów umożliwiła rozszerzenie programowania nietekstowego o pewne elementy programowania tekstowego, dzięki czemu powstały formy hybrydowe, stosowane obecnie na szeroką skalę [71]. Większość języków programowania robotów była wzorowana na języku BASIC, przy czym dodatkowo wbudowano typy danych związane z opisem geometrycznym pozycji końcówki robota oraz miejsc charakterystycznych otoczenia. Dlatego języki te operowały m.in. zmiennymi globalnymi oraz wykorzystywały instrukcje skoku do etykiety. Pojawiły się również języki programowania robotów, które były wzorowane na językach strukturalnych, a w szczególności na języku Pascal. Obecnie rozgraniczenie języ-ków na te dziedziczące po BASICu i Pascalu nie jest ostremamy raczej do czynienia z płynnie przesuwającą się granicą związaną z dziedziczeniem po obu przodkach. Należy zwrócić Streszczenie: Liczba typów robotów oraz wykorzystywanych przez nie czujników niezmiennie wzrasta, otwierając wciąż nowe pola ich zastosowań. Różnorodność ta wpływa na zapotrzebowanie na narzędzia ułatwiające ich programowanie. W artykule skupiono uwagę na narzędziach programistycznych umożliwiających tworzenie wysokopoziomowych st...