Jak zasymulować stanowisko zrobotyzowane za pomocą K-ROSET oraz KIDE na robocie Kawasaki, a następnie przenieść aplikację na robota edukacyjnego Astorino
Kontakt w sprawie artykułu: Łukasz Giza - 2023-12-18
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/stanowisko-z-robotem-Astorino.jpg)
Z tego artykułu dowiesz się:
- jak zasymulować proste stanowisko z robotem Kawasaki Robotics przy pomocy K-ROSET oraz KIDE,
- jak napisać przykładowy program dla robota serii R,
- jak przenieść gotowy program do robota edukacyjnego Astorino.
Dzięki temu poradnikowi dowiesz się jak zasymulować proste stanowisko zrobotyzowane, programowane offline przy pomocy K-ROSET oraz KIDE dedykowanego dla robotów Kawasaki. Napiszemy i przeanalizujemy krok po kroku program pozwalający na przenoszenie kostek oraz obsługę sygnałów I/O w robocie serii R.
Następnie tak utworzony i przetestowany w bezpiecznych warunkach program zaimplementujemy do robota edukacyjnego ASTORINO i przetestujemy działanie w rzeczywistości.
Zaczynamy!
Przybliżony czas wykonywania aplikacji:
Symulacja: 45 min
Astorino: 30 min
1. Potrzebne urządzenia oraz oprogramowanie
Do wykonania aplikacji potrzebne będą następujące elementy:
- Robot Astorino wraz z oprogramowaniem;
- Wydrukowane kostki lub ich odpowiednik;
- K-ROSET (darmowa wersja lite) – symulator zrobotyzowanych stanowisk Kawasaki;
- KIDE (wersja darmowa) – program umożliwiający zaawansowaną pracę z robotami Kawasaki;
- Komputer PC z systemem operacyjnym Windows.
W celu pobrania K-ROSET oraz KIDE wejdź na stronę internetową ASTOR (https://www.astor.com.pl/ ), a następnie przejdź do: Oferta > Robotyzacja > Roboty Przemysłowe > Oprogramowanie narzędziowe.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/01-Strona-internetowa-ASTOR-zakladka-produkty.png)
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/02-Strona-internetowa-ASTOR-zakladka-oprogramowanie-narzedziowe.png)
Postępuj zgodnie z instrukcjami na stronie internetowej oraz podczas instalacji, w razie pytań skontaktuj się z wsparciem technicznym zgodnie z danymi kontaktowymi podanymi na stronie.
2. K-ROSET
2.1 Budowa stanowiska zrobotyzowanego
Po zainstalowaniu K-ROSET tworzymy nowy projekt: w zakładce Layout należy kliknąć prawym przyciskiem myszy na New Project, a następnie Project > New (rys. 3), wybrać nazwę oraz potwierdzić OK (rys. 4).
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/03-Widok-gornego-paska-narzedzia-K-Roset.png)
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/04-Opis-tworzonego-programu.png)
Został dodany pusty projekt. Teraz dodajemy robota, klikając na nazwę projektu (rys. 5) podświetloną na kolor niebieski prawym przyciskiem myszy, a następnie wybieramy Add -> Robot.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/05-Widok-menu-dodawania-obiektow-w-K-Roset.png)
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/06-Widok-menu-dodawania-robotow-w-K-Roset.png)
Pojawia się okno, w którym możemy wybrać ramię zrobotyzowane. Podzielone są one według zastosowania, serii kontrolera oraz serii robota.
Wybieramy robota serii R o udźwigu 5kg RC005L-A001, ale nic nie stoi na przeszkodzie, aby przeglądnąć pozostałe serie. Należy pamiętać, że roboty różnią się wymiarami, zakresem ruchów, liczbą osi i nie tylko!
Program działający na robocie serii R może wymagać poprawek w przypadku serii CP, ze względu na kinematykę.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/07-Widok-paska-opcji-symulatora-K-Roset.png)
Wybrany robot powinien wczytać się do symulatora. Używając prawego klawisza myszy w niebieskim prostokącie i trzymając go, możemy obracać widokiem symulatora. Na pasku na górze mamy szereg funkcji dostosowania widoku. Przydatną funkcją jest zmiana opcji zoom (symbol lupy) na Mouse position – pozwoli to na oddalanie się (przy pomocy środkowego przycisku myszy) od miejsca, w którym znajduje się kursor myszy, a nie od centrum symulacji.
2.2 Zapis projektu
Zapis projektu dokonuje poprzez naciśnięcie prawym przyciskiem myszy na nazwę projektu -> Project -> Save i wybieramy miejsce zapisu.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/08-Widok-opcji-programu-K-Roset.png)
2.3 Poruszanie się robotem za pomocą Teach Pendanta
Poruszanie robotem możemy zrealizować przy pomocy Teach Pendanta bezpośrednio w symulatorze – tak jak ma to miejsce w rzeczywistości. W tym celu w dolnym pasku (dolna część ekranu) wybieramy Controller, w zakładce Quick Settings zaznaczamy opcję Animate Robot in Teach Mode, a następnie potwierdzamy przyciskiem Apply.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/09-Widok-dolnego-paska-symulatora-i-zakladki-ustawien-kontrolera.png)
Następnie w zakładce R01 odpowiadającej pierwszemu dodanemu ramieniu naciskamy Show Pendant.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/10-Widok-dolnego-paska-symulatora-i-zakladki-ustawien-robota.png)
Pojawi się wirtualny Teach Pendant (TP, rys. 11). Należy przełączyć robota w tryb manualny (rys. 11 pkt. 1), włączyć napędy (rys. 11 pkt. 2) oraz upewnić się, że robot znajduje się w układzie JOINT (rys. 11 pkt. 3), a prędkość wynosi 5 (rys. 11 pkt. 4). Zmiany dokonuje się klikając na daną ikonkę. Następnie można poruszyć robotem przy pomocy klawiatury TP (rys. 11 pkt. 5). Robot będzie wykonywał zadane ruchy każdą z sześciu osi osobno.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/11-Widok-glowny-symulatora-wraz-z-teach-pendantem.png)
Aby wyświetlić monitor osi oraz współrzędnych kartezjanskich układu bazowego robota na TP (rys. 11 pkt. 7), należy kliknąć lewym przyciskiem myszy na zielony obszar (rys. 11 pkt. 6), a następnie z rozwijanego menu wybrać Monitor1 -> Axis data monitor (rys. 12).
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/12-Widok-menu-teach-pendanta.png)
2.4 Dodawanie obiektów 3D (opcjonalne)
W symulatorze mamy możliwość dodawania obiektów 3D z podziałem na elementy mogące być przenoszone przez robota (work) oraz stacjonarne (obstacle).
Przenoszenie elementów przez robota jest dostępne w pełnej wersji K-ROSET, gdzie można dodać wiele obiektów – w wersji Lite jedynie jeden, w szczególnym przypadku dwa.
Aby dodać dwa obiekty, najpierw dodajemy chwytak. Aby wczytał on się poprawnie, musi mieć odpowiednio zdefiniowany układ współrzędnych (rys. 13). W przypadku tworzenia własnego modelu należy odpowiednio przesunąć początek układu współrzędnych. Możesz też wykorzystać przygotowane przez nas przykładowe modele – skontaktuj się z nami.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/13-Widok-ukladu-wspolrzednych-obiektu-3D-oraz-ustawien-eksportu-pliku-do-formatu-stl.png)
W celu dodania chwytaka należy nacisnąć prawym klawiszem myszy na ToolArrow w głównym drzewku projektu, a następnie wybrać Add -> Environment -> Obstacle… i podać ścieżkę pliku (rys. 14).
Model chwytaka zostanie wczytany bezpośrednio na koniec flanszy robota.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/14-Widok-menu-dodawania-obiektow-3D-w-K-Roset.png)
Aby dodać drugi obiekt, naciskamy prawym klawiszem myszy na nazwę projektu, następnie wybrać Add -> Environment -> Work… (rys. 15).
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/15-Widok-menu-dodawania-obiektow-3D-w-K-Roset.png)
Model został wczytany w miejscu początku układu współrzędnych symulacji, czyli znajduje się „w” podstawie robota. W wersji K-ROSET Lite nie mamy możliwości przesuwania dwóch obiektów, dlatego przesuniemy robota.
Należy nacisnąć prawym klawiszem myszy na nazwę robota w symulacji, a następnie wybrać Position -> Change… i wpisać podane wartości X, Y, Z i potwierdzić przyciskiem Apply (rys. 16).
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/16-Widok-menu-zmiany-pozycji-robota-w-K-Roset.png)
Poprawnie wczytane elementy wraz z robotem powinny prezentować się tak jak poniżej:
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/17-Widok-robota-wraz-z-chwytakiem-oraz-kostka.png)
3. KIDE
3.1 Tworzenie projektu
W celu utworzenia nowego projektu w KIDE naciskamy kolejno File -> New, zaznaczamy opcję pustego pliku oraz potwierdzamy OK.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/18-Widok-menu-tworzenia-projektu-w-Kide.png)
3.2 Zapis projektu
Zapis projektu należy wykonać poprzez zakładkę File w pasku głównym programu, a następnie wybranie opcji Save as oraz wskazanie ścieżki pliku.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/19-Widok-menu-zapisu-projektu-w-Kide.png)
Aby stworzyć program w projekcie, należy nacisnąć prawym klawiszem myszy na Program w głównym drzewku, a następnie wybrać Add -> Program…, wprowadzić nazwę i potwierdzić OK.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/20-Widok-menu-tworzenia-programu-w-Kide.png)
Tym sposobem utworzyliśmy nasz program, możemy teraz edytować autora oraz dopisać komentarz.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/21-Widok-kodu-programu-main.png)
Funkcje, komendy oraz poszczególne funkcjonalności zostały szczegółowo opisane w dokumentacji AS_language, dostarczanej z robotem Astorino oraz dostępnej do pobrania na stronie https://www.astor.com.pl/wsparcie/dokumentacja-techniczna/kawasaki.html
Na początku naszego programu pisanego w AS language ustawimy parametry, z jakim poruszać się będzie nasz robot. Dopisek ALWAYS na końcu pozwala zastosować wybrane ustawienia dla całego programu, z kilkoma wyjątkami. Użycie średnika pozwala na pisanie komentarzy objaśniających linijki kodu – jest to przydatne przy późniejszych modyfikacjach aplikacji. W tym przypadku parametry bez jednostki odnoszą się do procentowych maksymalnych danych parametrów robota.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/22-Wycinek-kodu-programu-main.png)
Przechodzimy do deklaracji zmiennych, które będziemy używać w programie.
rozstaw_alfa oraz rozstaw_beta odpowiadają odległościom kostek od siebie, w punkcie poboru zostaną one ustawione jedna obok drugiej, dlatego rozstaw jest równy szerokości kostki. W przypadku odłożenia (rozstaw_beta) należy wziąć poprawkę na szerokość, na jaką otwiera się chwytak – dlatego wartość tutaj jest równa 50 mm.
W przypadku odłożenia detalu zmniejszymy prędkość do 10% (zmienna predkosc_dojazdu), aby móc łagodnie dojechać do punktu docelowego.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/23-Wycinek-kodu-programu-main.png)
Następnie tworzymy funkcję dojazdu do punktu złączowego #p0 z zastosowaniem interpolacji złączowej. Pozwoli nam to na uzyskanie zawsze tego samego punktu początkowego niezależnie od poprzedniej konfiguracji ramienia, a także pozwoli na ominięcie pozycji osobliwych ramienia. Punkt #p0 określimy w kolejnych krokach. Funkcja SPEED bez dopisku ALWAYS na końcu linijki pozwala zastosować prędkość jedynie do kolejnego ruchu. Dopisujemy także funkcję CALL, która otwiera szczęki chwytaka.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/24-Wycinek-kodu-programu-main.png)
Kolejnym krokiem jest stworzenie pętli FOR, w której określimy punkty poboru oraz miejsca odłożenia kostek. Zadeklarowane wcześniej zmienne posłużą do parametryzacji funkcji – tak aby raz napisana pętla mogła być w prosty sposób zmodyfikowana.
Na początku użyjemy wbudowanego timera do zmierzenia czasu cyklu. W linijce nr 24, czyli w miejscu, w którym będziemy zaczynać pętlę, wyzerujemy go. Następnie w zadeklarowanej zgodnie z AS language pętli utworzymy punkty przy użyciu funkcji point.
Punkty te następnie będziemy przesuwać za pomocą funkcji SHIFT przy każdej iteracji pętli, uzależniając przesunięcie w danej osi od zadeklarowanej zmiennej oraz zmiennej użytej w pętli FOR.
Iteracja zaczyna się od wartości 0, dlatego dla pięciu kostek funkcja będzie kończyć się na wartości 4.
Funkcja LAPPRO pozwala na dojazd nad zadeklarowany punkt poboru, z danym przesunięciem w osi „-z” układu narzędzia.
Następnie w linijce 31 dojeżdżamy do docelowego punktu ze zmienioną prędkością oraz odwołujemy się do podprogramu chwytaka.
Następnie dzięki LDEPART odsuwamy się od miejsca poboru kostki (w osi „-z” układu narzędzia od bieżącej pozycji) w ruchu liniowym, tak aby bezpiecznie przetransportować detal bez nauczania dodatkowego punktu. Linijki 38 do 45 to powtórzenie ruchów dla punktów odłożenia.
Tak zdefiniowaną funkcję FOR kończymy wyrażeniem END.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/25-Wycinek-kodu-programu-main.jpg)
Dodamy jeszcze jedną funkcję FOR, która znajduje się na końcu programu i będzie wykonywać trzykrotne zamknięcie chwytaka, potwierdzające wykonanie programu oraz wyświetlenie czasu cyklu w terminalu Astorino.
3.4 Tworzenie podprogramów
Aby stworzyć podprogram, należy nacisnąć prawym klawiszem myszy na Programs -> Add -> Program… i nazwać program zgodnie z wcześniejszym przykładem. W obu podprogramach zasymulujemy zamknięcie chwytaka poprzez dodanie opóźnienia równego jednej sekundzie, pozwalające na przesterowanie chwytaka oraz dodanie obsługi I/O.
Wykorzystamy funkcję signal, która pozwala wystawić stan wysoki na dane wyjście cyfrowe ( dodanie minusa przed numer wyjścia ustawia stan niski). Zasymulujemy działanie chwytaka z zaworem pięciodrogowym, dwupołożeniowym – takim, jaki jest wykorzystywany w Astorino na wyjściu 57.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/26-Schemat-zaworu-5-2.jpg)
Funkcja TWAIT odpowiada za odczekanie 1 sekundy – zasymulujemy w ten sposób przesterowanie chwytaka pneumatycznego.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/27-Widok-kodu-podprogramow.png)
3.5 Zapis punktów złączowych oraz kartezjańskich
Naciskając dwa razy lewym przyciskiem myszy na Translation points w głównym drzewku projektu mamy możliwość utworzenia punktów kartezjańskich.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/28-Widok-menu-zapisu-punktow-kartezjanskich.png)
Wybieramy opcję + (zielony znak plus) i tworzymy dwa punkty tak jak poniżej. Wypełniamy okienko Name właściwą nazwą punktu oraz kolumnę Value w tabelce po prawej – danymi wartościami. Wartości dostosowane są do wykorzystywanego w symulacji robota RS005 i są w jego zasięgu – w przypadku użycia innego modelu należy dostosować wartości lub użyć robota zalecanego w przykładzie.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/29-Widok-parametrow-punktu-kartezjanskiego.png)
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/30-Widok-parametrow-punktu-kartezjanskiego.png)
Analogicznie przechodzimy do zakładki Precision points i tworzymy punkt złączowy. Punkty złączowe należy zapisywać poprzedzając ich nazwę znakiem „#”.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/31-Widok-parametrow-punktu-zlaczowego.png)
4. Wykonanie symulacji
4.1 Podłączenie KIDE do K-ROSET
Po odpowiednim napisaniu programu oraz skonfigurowaniu symulatora należy ustanowić połączenie między programami.
W celu podłączenia KIDE do K-ROSET należy nacisnąć symbol zaznaczony poniżej w programie KIDE:
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/32-Widok-gornego-paska-narzedzi-Kide.png)
Następnie należy wybrać numer połączenia, domyślnie jest to R01 (nazwę można też odczytać w symulatorze w zakładce Controller) i nacisnąć Connect.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/33-Widok-menu-polaczen-Kide-oraz-ustawien-kontrolera-K-Roset.png)
Po ustanowieniu połączenia w KIDE w terminalu powinna migotać ikonka połączenia (rys. 34), a pasek menu (rys. 32) powinien uzyskać szereg funkcji.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/34-Widok-dolnego-paska-terminala-w-Kide.png)
4.2 Przesłanie programu z KIDE do K-ROSET
W tym celu wybieramy w KIDE w górnym pasku symbol robota z czerwoną strzałką w górę (Send AS file to Robot), następnie naciskamy All w kolumnie User data oraz OK. Dane zostaną wysłane do robota.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/35-Widok-menu-przesylania-parametrow-projektu-z-Kide-do-robota.jpg)
Teraz w zakładce Program należy nacisnąć prawym klawiszem myszy na program główny main i wybrać Execute program…. Robot musi mieć włączone napędy oraz być w trybie Repeat.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/36-Widok-monitora-statusu-przesylania-projektu-z-Kide-do-robota-oraz-wyboru-opcji-programow.png)
Instrukcja zostanie wysłana, a w symulatorze K-ROSET po chwili robot zacznie wykonywać ruch. W zakładce projektu, naciskając prawym klawiszem myszy na TrackLine oraz wybierając Show TrackLine i ustawiając jej parametry, mamy możliwość wyświetlenia ścieżki TCP robota (punktu środkowego narzędzia – domyślnie jest to środek flanszy ostatniej osi robota), jaką pokonał podczas ruchu w naszej aplikacji. Clear Data pozwala usunąć ścieżkę np. gdy wprowadziliśmy zmiany i chcemy zobaczyć jej nową wersję.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/37-Widok-menu-ustawien-wyswietlanej-sciezki-TCP-oraz-przeprowadzonej-symulacji.png)
Poprawnie zrealizowany program powinien wyglądać jak powyżej. Ścieżka pozwala na prześledzenie ruchu TCP robota, a tym samym na zweryfikowanie poprawności programu. Symulacja przenoszenia elementów dostępna jest w pełnej wersji programu, dlatego kostka nie zmieniła swojego położenia.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/38-Widok-terminala-Kide.png)
W terminalu KIDE dostępna jest informacja o czasie cyklu timera 1, który był wykorzystywany. W tym przypadku wynosi on 15,048 s.
5. Wykonanie aplikacji z użyciem Astorino
Na początku należy włączyć robota Astorino i uruchomić aplikację Astorino. Następnie podłączamy się do robota przy użyciu np. przewodu USB, włączamy napędy i wykonujemy zerowanie.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/39-Widok-panelu-glownego-aplikacji-robota-Astorino.png)
W kolejnym kroku tworzymy odpowiednie programy oraz wklejamy do nich kod napisany w KIDE. Jako że Astorino ma inne rozmiary, niż wykorzystywany wcześniej robot serii R, musimy przeuczyć wykorzystywane 3 punkty (rys. 40, zakładka Punkty). Punkt złączowy #p0 (pozycja domowa) oraz punkty współrzędnych kartezjańskich – p0 (miejsce poboru kostek) i p1 (miejsce odłożenia kostek) należy dostosować do wykorzystywanego miejsca oraz możliwości robota. Dzięki parametryzacji pozostałych punktów poboru i odłożenia detali wyliczanych z funkcji point została zredukowana ich liczba, a tym samym czas wdrożenia aplikacji.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/40-Widok-zakladki-program-aplikacji-Astorino.png)
Następnym krokiem jest uruchomienie programu main i obserwowanie działania robota, w przypadku wszelkich zauważonych nieprawidłowości pracy należy niezwłocznie użyć przycisku E-Stop.
Poniżej zostały przedstawione zdjęcia z aplikacji podczas uczenia punktów i po wykonaniu programu z ułożonym napisem. Podczas układania kostek w punkcie poboru warto wykorzystać np. linijkę, aby ustawić detale w linii prostej.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/41-Widok-robota-Astorino-podczas-uczenia-punktow-oraz-po-wykonaniu-aplikacji.jpg)
W zakładce ustawienia systemowe wyświetlony zostanie czas cyklu Astorino, w tym przypadku równy 56,40 sekundy. Czas ten można porównać z czasem uzyskanym w symulacji oraz wyciągnąć wnioski.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/42-Widok-zakladki-ustawienia-systemowe-z-terminalem.png)
6. Kod programu
6.1. main
.PROGRAM main ()
; *******************************************************************
;
; Program: Ukladanie_kostek
; Comment: Program glowny do ukladania kostek
; Author: Lukasz Giza Astor
;
;
; *******************************************************************
;
SPEED 50 ALWAYS
DECEL 80 ALWAYS
ACCEL 80 ALWAYS
rozstaw_alfa=25
rozstaw_beta=50
predkosc_dojazdu=10
CALL open_clamp
SPEED 80
jmove #p0
timer 1=0
FOR a=0 TO 4
point pobor_kostki_x = p0
point pobor_kostki_x = SHIFT(pobor_kostki_x BY 0,-rozstaw_alfa*a,0)
LAPPRO pobor_kostki_x,50
SPEED predkosc_dojazdu
LMOVE pobor_kostki_x
CALL close_clamp
SPEED predkosc_dojazdu
LDEPART 50
point odlozenie_kostki_x = p1
point odlozenie_kostki_x = SHIFT(odlozenie_kostki_x BY rozstaw_beta*a,0,0)
LAPPRO odlozenie_kostki_x,50
SPEED predkosc_dojazdu
LMOVE odlozenie_kostki_x
CALL open_clamp
SPEED predkosc_dojazdu
LDEPART 50
END
print "czas cyklu wynosi:"
print timer(1)
print "sekund"
SPEED 80
jmove #p0
FOR b=0 TO 3
CALL open_clamp
CALL close_clamp
END
.END
6.2 close_clamp
.PROGRAM close_clamp ()
; *******************************************************************
;
; Program: close_clamp
;
;
; *******************************************************************
;
signal 57
TWAIT 1
.END
6.3 open_clamp
.PROGRAM open_clamp () ;
; *******************************************************************
;
; Program: Open_clamp
; Comment:
; Author: User
;
;
; *******************************************************************
;
signal -57
TWAIT 1
.END
7. Błędy i rozwiązania:
Resetowanie błędów K-ROSET
W przypadku pojawienia się błędu należy go zresetować, naciskając reset na ekranie Teach Pendanta.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/43-Resetowanie-bledow-K-Roset.png)
Błąd E1088
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/44-Blad-E1088.png)
Robot osiągnął maksymalne wychylenie i nie może się poruszyć dalej.
Rozwiązaniem jest przesunięcie punktów do strefy roboczej i wycofanie robota w trybie ręcznym.
Błąd E6007
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/45-Blad-E6007.png)
Robot znajduje się w pozycji osobliwej, odwrotne zadanie kinematyki ma nieskończenie wiele rozwiązań, ponieważ niektóre osie obrotowe są równoległe do siebie.
Rozwiązanie to przełączenie robota w tryb Teach i w układzie JOINT przesunięcie robota tak, aby osie nie były równoległe do siebie (np. w przypadku osi 4 i 6 to zgięcie osi 5) – oraz dostosowanie punktów w programie, aby omijać pozycję osobliwą.
Robot nie porusza się w trybie Teach (K-ROSET)
Upewnij się że robot w symulatorze K-ROSET jest w trybie Teach, a napędy są włączone.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/46-Tryb-Teach.png)
Robot nie porusza się w trybie Repeat (K-ROSET)
Upewnij się że robot w symulatorze K-ROSET jest w trybie Repeat.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/47-Tryb-Repeat.png)
Teach Pendant nie mieści się na ekranie
W przypadku małych ekranów może wystąpić sytuacja, w której wirtualny Teach Pendant ma większy rozmiar, niż wyświetlacz. W tym przypadku należy nacisnąć prawym klawiszem myszy na dolny element TP (na ilustracji zaznaczony zielonym okręgiem – miejsce bez żadnych przycisków) oraz wybrać Positon -> Free. Teach Pendant podzieli się na dwa elementy możliwe do wyświetlenia obok siebie, dolny element (klawiaturę) możemy teraz przesunąć, naciskając i trzymając lewy przycisk myszy.
![](https://www.astor.com.pl/poradnikautomatyka/wp-content/uploads/2023/12/48-Dostosowywanie-widoku-Teach-Pendant.png)
Use only ASCII characters
W przypadku tego błędu usuń z programu znaki polskie, takie jak: ł, ą, ę.
Błędy Astorino
W celu wyeliminowania typowych błędów, które mogą się pojawić w tej aplikacji, upewnij się, że firmware Astorino został zaktualizowany do najnowszej wersji.
Pozostałe błędy
W przypadku wystąpienia innych błędów należy skontaktować się z pomocą techniczną ASTOR:
- telefonicznie:12 424 00 88
- mailowo: support@astor.com.pl
- lub przez stronę internetową: https://www.astor.com.pl/wsparcie.html
8. Zobacz też:
Sprawdź też nasz darmowy kurs: Robot edukacyjny Astorino – kurs dla początkujących.