Do Projektu iAutomatyka dołączyli:

Publikacja zgłoszona do 🎁 Konkursu iAutomatyka

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

1513 wyświetleń, 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

Newsletter

Zapisz się i jako pierwszy otrzymuj nowości!

Zapoznałem się i akceptuję klauzulę informacyjną.
5 września 2019 / Kategoria: , ,

Reklama

NAJNOWSZE PUBLIKACJE OD UŻYTKOWNIKÓW I FIRM

>KLIKNIJ<

Komunikacja sterowników Siemens S7 i Rockwell ControlLogix bez dodatkowych konwerterów

Komunikacja sterowników Siemens S7 i Rockwell ControlLogix bez dodatkowych konwerterów

>KLIKNIJ<

Technologia dla linii produkcyjnych o bardzo dużych wymaganiach. Technologia track B&R

Technologia dla linii produkcyjnych o bardzo dużych wymaganiach. Technologia track B&R

>KLIKNIJ<

Napędy i silniki dla przemysłu spożywczego i napojów

Napędy i silniki dla przemysłu spożywczego i napojów

>KLIKNIJ<

Historia regulatorów PID w automatyce przemysłowej by DWI motion

Historia regulatorów PID w automatyce przemysłowej by DWI motion

>KLIKNIJ<

Uruchomienie używanego robota KUKA KRC2 – miniporadnik

Uruchomienie używanego robota KUKA KRC2 – miniporadnik

>KLIKNIJ<

Jakie czujniki chronią pompy zanurzeniowe?

Jakie czujniki chronią pompy zanurzeniowe?

>KLIKNIJ<

Kiedy warto stosować coboty?

Kiedy warto stosować coboty?

>KLIKNIJ<

Klimatyzacja szaf sterowniczych i mistrzostwo oszczędności

Klimatyzacja szaf sterowniczych i mistrzostwo oszczędności

>KLIKNIJ<

TwinSAFE – miniporadnik dla początkujących

TwinSAFE – miniporadnik dla początkujących

>KLIKNIJ<

Technologia cyfrowego bliźniaka – szybsze uruchomienie maszyny

Technologia cyfrowego bliźniaka – szybsze uruchomienie maszyny

>KLIKNIJ<

Szkolenie z podstaw techniki napędowej i falowników z DWI MOTION – relacja

Szkolenie z podstaw techniki napędowej i falowników z DWI MOTION – relacja

>KLIKNIJ<

Automatyka przemysłowa

Automatyka przemysłowa

>KLIKNIJ<

Kryzys koronawirusa szansą dla Twojej firmy. Poznaj zalety robotyzacji

Kryzys koronawirusa szansą dla Twojej firmy. Poznaj zalety robotyzacji

>KLIKNIJ<

Nowy poziom techniki przemieszczeń liniowych

Nowy poziom techniki przemieszczeń liniowych

>KLIKNIJ<

RENEX Group dystrybutorem JBC

RENEX Group dystrybutorem JBC

>KLIKNIJ<

Ri4Power Rittal – inteligentny system prądowy

Ri4Power Rittal – inteligentny system prądowy

>KLIKNIJ<

Testuj oprogramowanie SCADA w chmurze

Testuj oprogramowanie SCADA w chmurze

>KLIKNIJ<

Ostatnie terminy szkoleń stacjonarnych z PLC za 1500 zł!

Ostatnie terminy szkoleń stacjonarnych z PLC za 1500 zł!

>KLIKNIJ<

Palma z adresem IP, czyli jak technologia może wpływać na komfort naszego odpoczynku

Palma z adresem IP, czyli jak technologia może wpływać na komfort naszego odpoczynku

>KLIKNIJ<

Zobacz jak maksymalna elastyczność zwiększy wydajność automatyzacji. Niezależnie sterowane nośniki obrabianych przedmiotów

Zobacz jak maksymalna elastyczność zwiększy wydajność automatyzacji. Niezależnie sterowane nośniki obrabianych przedmiotów





MOŻESZ SIĘ TYM ZAINTERESOWAĆ

  • PR200 to uniwersalne i łatwe w obsłudze urządzenie zaprojektowane w plastikowej obudowie do montażu na szynie DIN jako alternatywa dla PLC. Przekaźnik jest dostępny w kilku wersjach dla napięcia stałego i przemiennego. Jest wyposażony w cyf...
  • Maksymalna wydajność przy niewielkich rozmiarach Firma wzbogaciła ofertę swego inteligentnego systemu transportowego SuperTrak o szerszy segment zakrzywiony pod kątem 180°. Nowa krzywa zapewnia większe siły trzymania i napędu. Wózki mogą po...
  • EPSITRON®ECO & COMPACT Power OSZCZĘDNOŚĆ KOSZTÓW Zasilacze EPSITRON® ECO i COMPACT Power to nie tylko oszczędność przy zakupie, ale również niższe koszty dzięki łatwej obsłudze oraz braku konieczności serwisowania. Są one doskonałym roz...
  • Wyświetlacz słupkowy ITP15 jest kompaktowym wskaźnikiem procesowym, który wizualizuje analogowy sygnał wejściowy w zakresie od 0 do 100% z 10 słupkami po 10%. Sygnałem wejściowym może być liniowy sygnał napięciowy 0 (2) -10 V lub sygnał prą...
  • ÖLFLEX® CLASSIC 110 – elastyczny przewód sterowniczy do różnych zastosowań, w płaszczu z PVC, aprobata VDE, odporność na oleje, 300/500 V, również do YSLY lub YY CPR: informacje pod adresem www.lapppolska.pl Certyfikat zgodności VDE z...
  • Systemy RFID są ekonomiczne, uniwersalne i zapewniają niezawodność procesów, np. w intralogistyce. Zadania związane z identyfikacją stały się teraz łatwiejsze, szczególnie gdy potrzebna jest duża liczba punktów identyfikacji, dzięki  głowic...



KATEGORIE ARTYKUŁÓW
POLECANE ARTYKUŁY
Wydarzenia