Do Projektu iAutomatyka dołączyli:

https://iautomatyka.pl/wp-content/uploads/2019/09/Mediathek.jpg

7 porad, które ułatwią Ci programowanie robotów KUKA

autor: Adam Larysz.

W tym artykule chciałbym podzielić się swoimi doświadczeniami, które w znaczącym stopniu ułatwiają programowanie robotów KUKA. Wpis można również uznać za kontynuacje artykułu 3 funkcje, które pomogą Ci lepiej programować roboty KUKA opublikowanego przez kolegę z pracy-Krzyśka.


1. Stosuj „notację węgierską”

Pisząc złożone programy w których występuje wiele zmiennych możemy łatwo się w nich pogubić. Aby tego uniknąć możemy stosować tzw. notację węgierska – polega ona na tym, że do nazwy zmiennej z przodu dodajemy literkę typu zmiennej. Przykładowo punkt osiowy zadeklarujemy jako „aPunkt”, punkt o współrzędnych kartezjańskich jako „xPunkt”, zmienna boolowska jako „bStan” itd.

2. Używaj zmiennych enumerycznych

Operowanie na liczbach w złożonych programach może być uciążliwe np. gdy liczby te reprezentują konkretne modele lub części które ma pobierać / obsługiwać robot. Z pomocą przychodzi zmienna enumeryczna, która przechowuje słowa. Oprócz tego ENUMy mogą również stanowić nazwy poszczególnych case’ów w funkcji SWITCH, mogą być używane jako zmienna w IF i wiele więcej. Zmienne enumeryczne w robotach KUKA deklarujemy następująco: ENUM nazwa_zmiennej_enumerycznej wartości_zmiennych;

np.: ENUM ePozycja gora, dół; ENUM eCzęsc srubka, nit

3. Zmienne globalne deklaruj w pliku config.DAT

Plik ten jest dostępny dla wszystkich programów w robocie i nie ma w nim konieczności używania operatorów PUBLIC i GLOBAL przy każdej zmiennej. W „configu” jest specjalne miejsce własnie na zmienne globalne w ciągu pt. „user globals”.

4. Przesunięcie bazy

Często zdarza się, że baza robota została przesunięta lub chcemy mieć współrzędne zerowe w innym miejscu niż są obecnie. Aby uniknąć bazowania na nowo możemy zaoszczędzić cenny czas i skorzystać z operatora przesunięcia bazy o wektor którego składnia wygląda następująco:

  • $base = $base:{x 0,y 0,z 0,a 0, b 0, c 0}.

W miejsca zer wpisujemy wartości o które chcemy przesunąć bazę. Operację tą możemy wykonać również dla narzędzia, wtedy składnia wygląda analogicznie następująco:

  • $tool = $tool:{x 0,y 0,z 0,a 0, b 0, c 0}.

Operator ten implementujemy bezpośrednio w kodzie aplikacji pod zadeklarowaną bazą.

5. Stosuj bezkolizyjne przejścia robota

Kiedy robot pracuje w kilku bazach oddalonych od siebie, możemy w znaczący sposób ułatwić sobie życie tworząc program do bezkolizyjnych przejść robota z jednej bazy do drugiej. Program możemy w późniejszym czasie wywoływać, zamiast dokładać do naszych programów dodatkowe ruchy. Program możemy w prosty sposób napisać w funkcji switch (przejscie(staraBaza:in, nowaBaza:in)).

6. Unikaj pracy robota przy pozycji osi 5 bliskiej 0°

Pozwoli nam to uniknąć wystąpienia osobliwości osi kiści osi 4 i 6. Więcej na ten temat w mojej poprzedniej pracy konkursowej.

https://iautomatyka.pl/sposoby-unikania-osobliwosci-kisci-w-robotach-kuka/

7. Używaj tablic i pętli

Możemy w ten sposób znacząco skrócić ilość linijek w naszym kodzie gdy przykładowo robot wykonuje ten sam ruch zmieniając tylko pewne wartości:

FOR aktualnyOtwor = 1 TO iloscOtworow  
xOtwor.x = wysokosc - Otwor[aktualnyOtwor] 
lin xOtwor 
wierc_na_raz()
ENDFOR

Mam nadzieję, że powyższy artykuł ułatwi wam w znaczący sposób programowanie robotów oraz zmniejszy ilość linijek i straconych nerwów.

Artykuł został nagrodzony w Konkursie iAutomatyka – edycja Wrzesień 2019

Nagrodę Zestaw do wina + gadżety dostarcza ambasador konkursu, firma Multiprojekt



Utworzono: / Kategoria: , ,

Reklama



PRZECZYTAJ RÓWNIEŻ



NAJNOWSZE PUBLIKACJE OD UŻYTKOWNIKÓW I FIRM

Reklama



POLECANE FIRMY I PRODUKTY
  • Rozwiązania wizyjne nadają się idealnie do zautomatyzowanych zadań kontrolnych i pomiarowych. Kamery wizyjne 2D i 3D firmy SICK sprawdzają się w ogromnej ilości aplikacji, polegających na pomiarze, lokalizacji, kontroli i identyfikacji. Nas...
  • Selektor napędów Panasonic umożliwia przeglądanie napędów z serii MINAS, wyszukiwanie ich w prosty sposób, a nawet porównywanie ze sobą. Dzięki wyszukiwaniu po słowach kluczowych i przy użyciu funkcji filtrowania, potrzeba zaledwie sekund a...
  • 1,200 PLN
    Szkolenie jest wprowadzeniem do systemu sterowania PSS4000 i środowiska programowania PAS4000. W jego trakcie omówiona zostanie zarówno struktura sprzętowa, jak i programowanie, a także diagnostyka kompletnego systemu sterowania. Poruszane ...
    Czas trwania: 8h
    Link: Terminy
  • Szybki i bezpieczny dostęp do maszyn i fabryk Usługa u-link gwarantuje szybki i bezpieczny dostęp do maszyn i fabryk, co ułatwia zdalne utrzymanie ruchu, jednocześnie pozwalając na wydajne zarządzanie zakładami produkcyjnymi i stacjami klie...
  • Proficy Operations Hub produkcji GE Vernova (uprzednio GE Digital) jest wszechstronnym klientem webowym, agregującym i wizualizującym dane z różnych źródeł, dzięki czemu może stanowić jedno źródło wiarygodnej wiedzy o produkcji. Umożliwia b...
  • 1,000 PLN
    Zdobądź wiedzę i bądź pewny, że nic Cię nie zaskoczy. Nie musisz przekopywać się przez tony katalogów i instrukcji. Oferujemy Ci kompleksowy system szkoleń, który sprawi, że najpierw zbudujesz fundamenty swojej wiedzy, a później pod okiem n...
    Czas trwania: 7h - 14 h
    Link: Terminy