{"id":26145,"date":"2026-07-21T20:23:48","date_gmt":"2026-07-21T18:23:48","guid":{"rendered":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/?p=26145"},"modified":"2026-07-21T20:23:50","modified_gmt":"2026-07-21T18:23:50","slug":"robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji","status":"publish","type":"post","link":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/","title":{"rendered":"Robot edukacyjny Astorino: zastosowanie funkcji FRAME i przyk\u0142adowa aplikacja paletyzacji"},"content":{"rendered":"\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Dzi\u0119ki temu poradnikowi dowiesz si\u0119, jak u\u017cywa\u0107 funkcji <strong>FRAME <\/strong>w j\u0119zyku <strong>KAWASAKI AS<\/strong> oraz zbudowa\u0107 i zaprogramowa\u0107 proste stanowisko zrobotyzowane z wykorzystaniem <strong>robota edukacyjnego Astorino<\/strong>. Celem aplikacji b\u0119dzie realizacja schematu paletyzacji dostarczanych detali z wykorzystaniem funkcji FRAME.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Po utworzeniu programu i jego przetestowaniu w bezpiecznych warunkach z u\u017cyciem symulacji w \u015brodowisku programistycznym <strong>Astorino<\/strong>, zostanie on uruchomiony i zweryfikowany na fizycznym robocie edukacyjnym.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Zaczynamy!<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><em>Przybli\u017cony czas wykonywania aplikacji na Kawasaki Robotics Astorino: 60 min<\/em><\/strong><\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Potrzebne urz\u0105dzenia oraz oprogramowanie<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">W celu wykonania aplikacji potrzebne s\u0105 nast\u0119puj\u0105ce elementy:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>robot Astorino wraz z oprogramowaniem,<\/li>\n\n\n\n<li>wydrukowane kostki lub ich odpowiednik: 12 sztuk \u2013 zale\u017cnie od liczby iteracji,<\/li>\n\n\n\n<li>podajnik kostek sterowany sygna\u0142ami I\/O z poziomu Astorino,<\/li>\n\n\n\n<li>czujnik optyczny do detekcji kostek pod\u0142\u0105czony do Astorino,<\/li>\n\n\n\n<li>chwytak dla Astorino umo\u017cliwiaj\u0105cy manipulacje kostkami,<\/li>\n\n\n\n<li>komputer z portem Ethernet oraz USB.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Opis stanowiska<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Do wykonania tego \u0107wiczenia wykorzystano stacj\u0119 <strong>PRO<\/strong> wyposa\u017con\u0105 w robota <strong>Astorino<\/strong>, podajnik kostek z czujnikiem oraz system wizyjny 2D. Jednak do realizacji przedstawionego zadania w pe\u0142ni wystarczy stacja <strong>ECO<\/strong>, wyposa\u017cona jedynie w robota <strong>Astorino<\/strong> oraz podajnik kostek. Opcjonalnie mo\u017cna r\u00f3wnie\u017c wykorzysta\u0107 palet\u0119 do odk\u0142adania detali.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"500\" height=\"500\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/01.jpg\" alt=\"\" class=\"wp-image-26161\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/01.jpg 500w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/01-301x301.jpg 301w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><figcaption class=\"wp-element-caption\"><em>Rys. 1. Stacja PRO wraz z robotem Astorino oraz dodatkowym osprz\u0119tem. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"516\" height=\"734\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/02-516x734.jpg\" alt=\"\" class=\"wp-image-26164\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/02-516x734.jpg 516w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/02.jpg 601w\" sizes=\"auto, (max-width: 516px) 100vw, 516px\" \/><figcaption class=\"wp-element-caption\"><em>Rys. 2. Chwytak szcz\u0119kowy wykorzystany podczas realizacji poradnika. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Czym jest funkcja FRAME<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Definicja:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>FRAME(P1, P2, P3, P4)<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Funkcja <strong>FRAME<\/strong> zwraca transformacj\u0119 wsp\u00f3\u0142rz\u0119dnych nowo utworzonego uk\u0142adu odniesienia (FRAME) wzgl\u0119dem bazowego uk\u0142adu wsp\u00f3\u0142rz\u0119dnych robota (<strong>BASE<\/strong>). Do wyznaczenia po\u0142o\u017cenia i orientacji uk\u0142adu wykorzystywane s\u0105 wy\u0142\u0105cznie wsp\u00f3\u0142rz\u0119dne kartezja\u0144skie wskazanych punkt\u00f3w \u2013 warto\u015bci orientacji (k\u0105ty OAT) nie s\u0105 brane pod uwag\u0119. Geometria uk\u0142adu FRAME jest definiowana nast\u0119puj\u0105co: prosta przechodz\u0105ca przez punkty <strong>P1<\/strong> i <strong>P2<\/strong> wyznacza dodatni kierunek osi <strong>X<\/strong>, prosta przechodz\u0105ca przez punkty <strong>P1<\/strong> i <strong>P3<\/strong> okre\u015bla kierunek osi <strong>Y<\/strong>, punkt <strong>P4<\/strong> definiuje pocz\u0105tek nowego uk\u0142adu wsp\u00f3\u0142rz\u0119dnych (FRAME). W wi\u0119kszo\u015bci zastosowa\u0144 punkty <strong>P1<\/strong> i <strong>P4<\/strong> s\u0105 to\u017csame, dzi\u0119ki czemu pocz\u0105tek uk\u0142adu wsp\u00f3\u0142rz\u0119dnych znajduje si\u0119 w punkcie, od kt\u00f3rego wyznaczane s\u0105 osie <strong>X<\/strong> i <strong>Y<\/strong>.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"840\" height=\"475\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/03-840x475.jpg\" alt=\"\" class=\"wp-image-26167\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/03-840x475.jpg 840w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/03-768x435.jpg 768w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/03.jpg 1196w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><figcaption class=\"wp-element-caption\"><em>Rys. 3. Przyk\u0142adowa definicja FRAME na p\u0142aszczy\u017anie fizycznej. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Konfiguracja Robota i programu Astorino<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Sprawdzenie pozycji domowej robota<\/h3>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Przed rozpocz\u0119ciem pracy nale\u017cy zweryfikowa\u0107 konfiguracj\u0119 pozycji domowej robota.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">1. Otw\u00f3rz zak\u0142adk\u0119 <strong>Home\/Tool<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">2. Sprawd\u017a, czy dla pozycji <strong>HOME<\/strong> trzecie i pi\u0105te z\u0142\u0105cze (<strong>Joint 3 i 5<\/strong>) maj\u0105 warto\u015bci <strong>\u221290\u00b0<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">3. Je\u017celi warto\u015b\u0107 jest inna, zaznacz opcj\u0119 <strong>Manual<\/strong> i r\u0119cznie ustaw oraz zapisz wymagane parametry (rys. 4).<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"906\" height=\"926\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/04.jpg\" alt=\"\" class=\"wp-image-26172\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/04.jpg 906w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/04-718x734.jpg 718w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/04-768x785.jpg 768w\" sizes=\"auto, (max-width: 906px) 100vw, 906px\" \/><figcaption class=\"wp-element-caption\"><em>Rys. 4. Ustawianie pozycji domowej HOME. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Tworzenie nowego programu<\/h3>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Poni\u017cej (rys. 5) przedstawiono spos\u00f3b tworzenia nowego programu.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"775\" height=\"804\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/05.png\" alt=\"\" class=\"wp-image-26173\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/05.png 775w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/05-708x734.png 708w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/05-768x797.png 768w\" sizes=\"auto, (max-width: 775px) 100vw, 775px\" \/><figcaption class=\"wp-element-caption\"><em>Rys. 5. Tworzenie nowego programu. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Wgrywanie programu do robota<\/h3>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Po przygotowaniu programu (wybraniu gotowego lub napisaniu w\u0142asnego) nale\u017cy przes\u0142a\u0107 go do sterownika robota. Proces ten przedstawiono na rys. 6.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"709\" height=\"721\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/06.png\" alt=\"\" class=\"wp-image-26174\"\/><figcaption class=\"wp-element-caption\"><em>Rys. 6. Wgrywanie programu. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>WA\u017bNE:<\/strong> \u017b\u00f3\u0142ty kolor przycisku oznacza, \u017ce najnowsza wersja programu nie zosta\u0142a jeszcze wgrana do robota.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Uruchamianie programu<\/strong><\/h3>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Po poprawnym wgraniu programu mo\u017cna go uruchomi\u0107 z poziomu tej samej zak\u0142adki, wybieraj\u0105c przycisk przedstawiony na rysunku 7.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"578\" height=\"620\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/07.jpg\" alt=\"\" class=\"wp-image-26178\"\/><figcaption class=\"wp-element-caption\"><em>Rys. 7. Uruchamianie nowego programu. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\"><strong>Tryby pracy robota<\/strong><\/h3>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Robot Astorino mo\u017ce pracowa\u0107 w dw\u00f3ch trybach: <strong>TEACH <\/strong>oraz <strong>REPEAT<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Tryb<strong> TEACH<\/strong> przeznaczony jest do:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>nauki punkt\u00f3w,<\/li>\n\n\n\n<li>wgrywania program\u00f3w,<\/li>\n\n\n\n<li>testowania aplikacji.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">W tym trybie pr\u0119dko\u015b\u0107 robota jest ograniczona, a zwolnienie przycisku <strong>Dead Man Switch<\/strong> na teach pendancie powoduje natychmiastowe zatrzymanie robota.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Tryb REPEAT<\/strong> s\u0142u\u017cy do wykonywania gotowego programu. W tym trybie robot mo\u017ce pracowa\u0107 z dowolnie ustawion\u0105 pr\u0119dko\u015bci\u0105 robocz\u0105, jednak nie jest mo\u017cliwe wgrywanie nowych program\u00f3w. Dodatkowo robot nie reaguje na zwolnienie przycisku <strong>Dead Man Switch<\/strong>, dlatego podczas pracy nale\u017cy zachowa\u0107 szczeg\u00f3ln\u0105 ostro\u017cno\u015b\u0107.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Miejsce zmiany trybu pracy robota zosta\u0142o przedstawione na rys. 8.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"655\" height=\"658\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/08.jpg\" alt=\"\" class=\"wp-image-26180\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/08.jpg 655w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/08-301x301.jpg 301w\" sizes=\"auto, (max-width: 655px) 100vw, 655px\" \/><figcaption class=\"wp-element-caption\"><em>Rys. 8. Menu zmiany trybu pracy. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Wizualizacja stanowiska<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Na rysunku 9 przedstawiono wizualizacj\u0119 stanowiska roboczego wraz z rozmieszczeniem punkt\u00f3w oraz kolejno\u015bci\u0105 wykonywanych ruch\u00f3w wykorzystanych w niniejszym poradniku.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"873\" height=\"618\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/09.png\" alt=\"\" class=\"wp-image-26183\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/09.png 873w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/09-840x595.png 840w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/09-768x544.png 768w\" sizes=\"auto, (max-width: 873px) 100vw, 873px\" \/><figcaption class=\"wp-element-caption\"><em>Rys. 9. Wizualizacja stanowiska zrobotyzowanego. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Nast\u0119pnie nale\u017cy nauczy\u0107 robota punkt\u00f3w pokazanych na rysunku i zapisa\u0107 je pod podanymi nazwami. W przedstawionym przyk\u0142adzie punkty zosta\u0142y zapisane jako wsp\u00f3\u0142rz\u0119dne z\u0142\u0105czowe (Joint). Robotem mo\u017cna sterowa\u0107 zar\u00f3wno z poziomu aplikacji <strong>Astorino<\/strong> (zak\u0142adka <strong>JOG<\/strong>), jak i za pomoc\u0105 teach pendanta (rys. 10 i 11).<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"709\" height=\"744\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/10.png\" alt=\"\" class=\"wp-image-26184\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/10.png 709w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/10-699x734.png 699w\" sizes=\"auto, (max-width: 709px) 100vw, 709px\" \/><figcaption class=\"wp-element-caption\"><em>Rys. 10. Zak\u0142adka JOG. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"551\" height=\"734\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/11-551x734.jpg\" alt=\"\" class=\"wp-image-26185\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/11-551x734.jpg 551w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/11-768x1024.jpg 768w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/11-1152x1536.jpg 1152w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/11.jpg 1440w\" sizes=\"auto, (max-width: 551px) 100vw, 551px\" \/><figcaption class=\"wp-element-caption\"><em>Rys. 11. Teach Pendant. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Definiowanie pola roboczego<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Poni\u017cej przedstawiono przyk\u0142adow\u0105 implementacj\u0119 funkcji <strong>FRAME<\/strong> wraz z opisem kolejnych etap\u00f3w dzia\u0142ania programu.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Program rozpoczyna si\u0119 od konwersji punkt\u00f3w zapisanych jako wsp\u00f3\u0142rz\u0119dne z\u0142\u0105czowe na wsp\u00f3\u0142rz\u0119dne kartezja\u0144skie. Jest to konieczne, poniewa\u017c funkcja <strong>FRAME<\/strong> wykorzystuje wy\u0142\u0105cznie wsp\u00f3\u0142rz\u0119dne kartezja\u0144skie do wyznaczenia nowego uk\u0142adu odniesienia.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nast\u0119pnie tworzony jest nowy uk\u0142ad wsp\u00f3\u0142rz\u0119dnych <strong>FRAME<\/strong>, kt\u00f3rego orientacja jest wyznaczana na podstawie punkt\u00f3w <strong>A1<\/strong>, <strong>A2<\/strong> oraz <strong>A3<\/strong>, natomiast jego pocz\u0105tek znajduje si\u0119 w punkcie <strong>A1<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">W kolejnym kroku definiowany jest punkt <strong>PUT<\/strong>, odsuni\u0119ty o <strong>20 mm<\/strong> wzd\u0142u\u017c osi <strong>X<\/strong> bazowego uk\u0142adu wsp\u00f3\u0142rz\u0119dnych (<strong>BASE<\/strong>). Do tego punktu dodawana jest transformacja <strong>FRAME<\/strong>, dzi\u0119ki czemu jego po\u0142o\u017cenie zostaje przeliczone wzgl\u0119dem nowo utworzonego uk\u0142adu wsp\u00f3\u0142rz\u0119dnych.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Na ko\u0144cu program nadaje punktowi <strong>PUT<\/strong> tak\u0105 sam\u0105 orientacj\u0119 (OAT), jak\u0105 posiada punkt <strong>A1<\/strong>. Zapewnia to odpowiednie ustawienie chwytaka podczas wykonywania ruchu do wyznaczonej pozycji.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<pre class=\"wp-block-code\"><code>.PROGRAM FRAME_DEMO\n  ;Konwersja wsp\u00f3\u0142rz\u0119dnych punkt\u00f3w\n  ;ze wsp\u00f3\u0142rz\u0119dnych z\u0142\u0105czowych\n  ;na kartezja\u0144skie\n  POINT A1 = #P1\n  POINT A2 = #P2\n  POINT A3 = #P3\n  \n  ;Utworzenie uk\u0142adu wsp\u00f3\u0142rz\u0119dnych FRAME\n  FR = FRAME(A1, A2, A3, A1)\n  \n  ;Deklaracja punktu PUT \u2013 przesuni\u0119cie\n  ;o 20 mm w osi X wzgl\u0119dem\n  ;pocz\u0105tku uk\u0142adu BASE.\n  ;Wsp\u00f3\u0142rz\u0119dne PUT: (X=20, Y=0, Z=0)\n  POINT PUT = SHIFT(NULL BY 20, 0, 0)\n  \n  ;Dodanie transformacji FRAME\n  ;do punktu PUT\n  POINT PUT = PUT + FR\n  \n  ;Nadanie orientacji punktu PUT\n  ;takiej samej jak punkt A1,\n  ;aby chwytak dojecha\u0142\n  ;z odpowiednim ustawieniem\n  POINT\/OAT PUT = A1\n.END <\/code><\/pre>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Program paletyzacji<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">U\u017cyte funkcje i ich opisy<\/h3>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Program paletyzacji wykorzystuje nast\u0119puj\u0105ce funkcje oraz instrukcje j\u0119zyka Kawasaki AS:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>SPEED<\/strong> \u2013 okre\u015bla pr\u0119dko\u015b\u0107 wykonywania ruch\u00f3w robota.<\/li>\n\n\n\n<li><strong>ACCEL<\/strong> \u2013 ustawia przyspieszenie robota podczas rozpoczynania ruchu.<\/li>\n\n\n\n<li><strong>DECEL<\/strong> \u2013 ustawia op\u00f3\u017anienie robota podczas zatrzymywania ruchu.<\/li>\n\n\n\n<li><strong>POINT<\/strong> \u2013 s\u0142u\u017cy do deklarowania oraz przechowywania punkt\u00f3w i pozycji robota.<\/li>\n\n\n\n<li><strong>HOME<\/strong> \u2013 powoduje przejazd robota do zdefiniowanej pozycji bazowej.<\/li>\n\n\n\n<li><strong>FRAME<\/strong> \u2013 tworzy lokalny uk\u0142ad wsp\u00f3\u0142rz\u0119dnych na podstawie wskazanych punkt\u00f3w.<\/li>\n\n\n\n<li><strong>SIGNAL<\/strong> \u2013 umo\u017cliwia sterowanie sygna\u0142ami wej\u015b\u0107 i wyj\u015b\u0107 robota, np. chwytakiem lub innymi urz\u0105dzeniami peryferyjnymi.<\/li>\n\n\n\n<li><strong>FOR<\/strong> \u2026 <strong>TO<\/strong> \u2026 <strong>END<\/strong> \u2013 p\u0119tla realizuj\u0105ca wielokrotne wykonywanie wybranego fragmentu programu.<\/li>\n\n\n\n<li><strong>JAPPRO<\/strong> \u2013 realizuje ruch z\u0142\u0105czowy do punktu po\u015bredniego znajduj\u0105cego si\u0119 nad celem, zapewniaj\u0105c bezpieczny dojazd.<\/li>\n\n\n\n<li><strong>LMOVE<\/strong> \u2013 wykonuje ruch liniowy robota do wskazanego punktu.<\/li>\n\n\n\n<li><strong>LDEPART<\/strong> \u2013 realizuje liniowe odej\u015bcie od aktualnej pozycji o zadan\u0105 odleg\u0142o\u015b\u0107.<\/li>\n\n\n\n<li><strong>TWAIT<\/strong> \u2013 wstrzymuje wykonywanie programu na okre\u015blony czas.<\/li>\n\n\n\n<li><strong>SHIFT<\/strong>(P BY X, Y, Z) \u2013 tworzy nowy punkt poprzez przesuni\u0119cie wskazanego punktu o zadane warto\u015bci w osiach X, Y oraz Z.<\/li>\n\n\n\n<li><strong>SWAIT <\/strong>\u2013 wstrzymuje wykonywanie programu, dop\u00f3ki na okre\u015blonym wej\u015bciu pojawi si\u0119 wymagany stan.<\/li>\n<\/ul>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Kod programu do symulacji<\/h3>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">W tej cz\u0119\u015bci przedstawiono kompletny kod programu realizuj\u0105cego proces paletyzacji z wykorzystaniem funkcji <strong>FRAME<\/strong>. Program pobiera detal z podajnika, a nast\u0119pnie odk\u0142ada go na kolejne pozycje palety wyznaczane wzgl\u0119dem lokalnego uk\u0142adu wsp\u00f3\u0142rz\u0119dnych. Dzi\u0119ki zastosowaniu funkcji FRAME zmiana po\u0142o\u017cenia lub orientacji palety wymaga jedynie ponownego wyznaczenia uk\u0142adu odniesienia, bez konieczno\u015bci modyfikowania wsp\u00f3\u0142rz\u0119dnych wszystkich punkt\u00f3w odk\u0142adania.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<pre class=\"wp-block-code\"><code>.PROGRAM PALETYZACJA_SIM\n  ;Maciej Palka, ASTOR\n  \n  ;ustawienie parametrow robota\n  SPEED 50 ALWAYS\n  ACCEL 80 ALWAYS\n  DECEL 80 ALWAYS\n  \n  ;deklaracja punktow do frame'a\n  POINT PICK = #P0\n  POINT A1 = #P1\n  POINT A2 = #P2\n  POINT A3 = #P3\n  \n  ;deklaracja stalych\n  gripper = 57\n  feeder = 7\n  x_shift = 50\n  y_shift = 100\n  z_shift = 25\n  rowmax = 2\n  colmax = 3\n  layers_max = 2\n  \n  ;kod startowy\n  HOME\n  SIGNAL -gripper\n  \n  ;deklaracja frame'a\n  POINT FR = FRAME(A1, A2, A3, A1)\n  \n  FOR .LAYER = 0 TO layers_max - 1\n    FOR .ROW = 0 TO rowmax - 1\n      FOR .COL = 0 TO colmax - 1\n        ;pobranie detalu\n        JAPPRO PICK, 100\n        SIGNAL feeder\n        TWAIT 1\n        SIGNAL -feeder\n        LMOVE PICK\n        SIGNAL gripper\n        TWAIT 1\n        LDEPART PICK, 100\n        \n        ;odlozenie detalu\n        POINT PUT = SHIFT(NULL BY x_shift*.COL, y_shift*.ROW, z_shift*.LAYER)\n        POINT PUT = FR + PUT\n        POINT\/OAT PUT = A1\n        JAPPRO PUT, 100\n        LMOVE PUT\n        SIGNAL -gripper\n        TWAIT 1\n        LDEPART PUT, 100\n        \n      END\n    END\n  END\n  \n  HOME\n\n.END<\/code><\/pre>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Kod programu na fizycznego robota<\/h3>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Kod przeznaczony dla fizycznego robota zosta\u0142 nieznacznie zmodyfikowany ze wzgl\u0119du na inne mapowanie pin\u00f3w wej\u015bcia\/wyj\u015bcia (I\/O). Wgrywaj\u0105c poni\u017cszy kod na w\u0142asnego robota nale\u017cy uwzgl\u0119dni\u0107 te r\u00f3\u017cnice. U\u017cytkownik ponosi pe\u0142n\u0105 odpowiedzialno\u015b\u0107 za prawid\u0142owe dzia\u0142anie robota oraz za wszelkie ewentualne uszkodzenia lub zniszczenia wynikaj\u0105ce z dzia\u0142ania programu.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<pre class=\"wp-block-code\"><code>.PROGRAM PALETYZACJA_REAL\n  ;Maciej Palka, ASTOR\n \n  ;ustawienie parametrow robota\n  SPEED 50 ALWAYS\n  ACCEL 80 ALWAYS\n  DECEL 80 ALWAYS\n \n  ;deklaracja punktow do frame'a\n  POINT PICK = #P0\n  POINT A1 = #P1\n  POINT A2 = #P2\n  POINT A3 = #P3\n \n  ;deklaracja stalych\n  ;gripper = 57, -58\n  feeder = 1\n  cube_detection = 1001\n  x_shift = 50\n  y_shift = 100\n  z_shift = 25\n  rowmax = 2\n  colmax = 3\n  layers_max = 2\n \n  ;kod startowy\n  HOME\n  SIGNAL -57, 58\n \n  ;deklaracja frame'a\n  POINT FR = FRAME(A1, A2, A3, A1)\n \n  FOR .LAYER = 0 TO layers_max - 1\n    FOR .ROW = 0 TO rowmax - 1\n      FOR .COL = 0 TO colmax - 1\n        ;pobranie detalu\n        JAPPRO PICK, 100\n        SIGNAL feeder\n        TWAIT 1\n        SIGNAL -feeder\n        SWAIT cube_detection\n        LMOVE PICK\n        SIGNAL 57, -58\n        TWAIT 1\n        LDEPART PICK, 100\n \n        ;odlozenie detalu\n        POINT PUT = SHIFT(NULL BY x_shift*.COL, y_shift*.ROW, z_shift*.LAYER)\n        POINT PUT = FR + PUT\n        POINT\/OAT PUT = A1\n        JAPPRO PUT, 100\n        LMOVE PUT\n        SIGNAL -57, 58\n        TWAIT 1\n        LDEPART PUT, 100\n \n      END\n    END\n  END\n \n  SPEED 30\n  HOME\n \n.END<\/code><\/pre>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Testowanie programu w symulacji<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Przed uruchomieniem programu na rzeczywistym stanowisku przeprowadzono jego weryfikacj\u0119 w \u015brodowisku symulacyjnym <strong>Astorino<\/strong>. Celem test\u00f3w by\u0142o sprawdzenie poprawno\u015bci dzia\u0142ania algorytmu, trajektorii ruchu robota oraz procesu paletyzacji z wykorzystaniem funkcji <strong>FRAME<\/strong>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Symulacja potwierdzi\u0142a poprawne dzia\u0142anie programu. Robot prawid\u0142owo pobiera\u0142 detale z podajnika oraz odk\u0142ada\u0142 je na kolejne pozycje palety wyznaczane wzgl\u0119dem zdefiniowanego uk\u0142adu wsp\u00f3\u0142rz\u0119dnych.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"780\" height=\"734\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/12-780x734.jpg\" alt=\"\" class=\"wp-image-26194\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/12-780x734.jpg 780w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/12-768x723.jpg 768w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/12.jpg 802w\" sizes=\"auto, (max-width: 780px) 100vw, 780px\" \/><figcaption class=\"wp-element-caption\"><em>Rys. 12. Wynik dzia\u0142ania programu w symulacji. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Testowanie programu na fizycznym robocie<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Po pomy\u015blnym zako\u0144czeniu test\u00f3w w \u015brodowisku symulacyjnym program zosta\u0142 uruchomiony na fizycznym robocie edukacyjnym <strong>Astorino<\/strong>. Przed rozpocz\u0119ciem test\u00f3w nauczono robota wszystkich wymaganych punkt\u00f3w oraz zweryfikowano ich poprawno\u015b\u0107.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Program zosta\u0142 pocz\u0105tkowo uruchomiony w trybie <strong>TEACH<\/strong>, co umo\u017cliwi\u0142o bezpieczn\u0105 kontrol\u0119 wykonywanych ruch\u00f3w. Po potwierdzeniu poprawno\u015bci dzia\u0142ania prze\u0142\u0105czono robota w tryb <strong>REPEAT<\/strong> i wykonano pe\u0142ny cykl pracy.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Przeprowadzone testy potwierdzi\u0142y zgodno\u015b\u0107 dzia\u0142ania programu z przyj\u0119tymi za\u0142o\u017ceniami. Robot poprawnie realizowa\u0142 proces paletyzacji, wykorzystuj\u0105c lokalny uk\u0142ad wsp\u00f3\u0142rz\u0119dnych utworzony za pomoc\u0105 funkcji <strong>FRAME<\/strong>, a wszystkie detale by\u0142y odk\u0142adane w zaplanowanych pozycjach.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Mapowanie I\/O<\/strong>:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><td>Operand symboliczny<\/td><td>Operand absolutny<\/td><\/tr><tr><td>gripper<\/td><td>-57, 58<\/td><\/tr><tr><td>feeder<\/td><td>1<\/td><\/tr><tr><td>cube_detection<\/td><td>1001<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">Poni\u017csze zdj\u0119cia prezentuj\u0105 wynik dzia\u0142ania programu na fizycznym robocie.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"840\" height=\"630\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/13-840x630.jpg\" alt=\"\" class=\"wp-image-26197\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/13-840x630.jpg 840w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/13-768x576.jpg 768w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/13-1536x1152.jpg 1536w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/13.jpg 1920w\" sizes=\"auto, (max-width: 840px) 100vw, 840px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"550\" height=\"734\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/14-550x734.jpg\" alt=\"\" class=\"wp-image-26199\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/14-550x734.jpg 550w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/14-768x1024.jpg 768w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/14.jpg 896w\" sizes=\"auto, (max-width: 550px) 100vw, 550px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"551\" height=\"734\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/15-551x734.jpg\" alt=\"\" class=\"wp-image-26200\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/15-551x734.jpg 551w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/15-768x1024.jpg 768w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/15-1152x1536.jpg 1152w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/15.jpg 1440w\" sizes=\"auto, (max-width: 551px) 100vw, 551px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"551\" height=\"734\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/16-551x734.jpg\" alt=\"\" class=\"wp-image-26201\" srcset=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/16-551x734.jpg 551w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/16-768x1024.jpg 768w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/16-1152x1536.jpg 1152w, https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/16.jpg 1440w\" sizes=\"auto, (max-width: 551px) 100vw, 551px\" \/><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">B\u0142\u0119dy i rozwi\u0105zania<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Resetowanie b\u0142\u0119d\u00f3w \u2013 roboty Astorino<\/h3>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">W przypadku pojawienia si\u0119 b\u0142\u0119du nale\u017cy go zresetowa\u0107, klikaj\u0105c odpowiedni przycisk:<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"702\" height=\"596\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/17.png\" alt=\"\" class=\"wp-image-26202\"\/><figcaption class=\"wp-element-caption\"><em>Rys. 13. Resetowanie b\u0142\u0119d\u00f3w robota. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">B\u0142\u0105d E099<\/h3>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"244\" height=\"157\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/18.png\" alt=\"\" class=\"wp-image-26203\"\/><figcaption class=\"wp-element-caption\"><em>Rys. 14. B\u0142\u0105d E099. (\u0179r\u00f3d\u0142o: ASTOR)<\/em><\/figcaption><\/figure>\n<\/div>\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">B\u0142\u0105d <strong>E099<\/strong> oznacza, \u017ce robot nie jest w stanie osi\u0105gn\u0105\u0107 zadanej pozycji. W przypadku programu wykorzystuj\u0105cego funkcj\u0119 <strong>FRAME<\/strong> najcz\u0119\u015bciej wynika to z nieprawid\u0142owo zdefiniowanej orientacji punktu docelowego (k\u0105t\u00f3w <strong>OAT<\/strong>) lub z ich ca\u0142kowitego braku. Problem ten wyst\u0119puje g\u0142\u00f3wnie podczas pracy na wsp\u00f3\u0142rz\u0119dnych kartezja\u0144skich.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Rozwi\u0105zanie<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nale\u017cy nada\u0107 punktowi docelowemu poprawn\u0105 orientacj\u0119. W przypadku punkt\u00f3w tworzonych za pomoc\u0105 funkcji SHIFT po dodaniu transformacji FRAME nale\u017cy skopiowa\u0107 orientacj\u0119 z punktu odniesienia (najcz\u0119\u015bciej punktu pocz\u0105tkowego uk\u0142adu FRAME, np. A1\/P1), wykorzystuj\u0105c instrukcj\u0119:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>POINT\/OAT PUT = A1<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dzi\u0119ki temu punkt docelowy otrzyma odpowiednie k\u0105ty OAT, co umo\u017cliwi robotowi wyznaczenie poprawnej konfiguracji i wykonanie ruchu bez wyst\u0105pienia b\u0142\u0119du E099.<\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h3 class=\"wp-block-heading\">Pozosta\u0142e b\u0142\u0119dy<\/h3>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<p class=\"wp-block-paragraph\">W przypadku innych b\u0142\u0119d\u00f3w, nale\u017cy skontaktowa\u0107 si\u0119 z pomoc\u0105 techniczn\u0105 ASTOR:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Telefonicznie: 12 424 00 88\u00a0<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Mailowo: <a href=\"mailto:support@astor.com.pl\">support@astor.com.pl<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Lub przez stron\u0119 internetow\u0105: <a href=\"https:\/\/www.astor.com.pl\/wsparcie.html\">https:\/\/www.astor.com.pl\/wsparcie.html<\/a><\/p>\n\n\n\n<div style=\"height:40px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h2 class=\"wp-block-heading\">Zobacz te\u017c:<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-kurs-dla-poczatkujacych\/\">Robot edukacyjny Astorino \u2013 kurs dla pocz\u0105tkuj\u0105cych<\/a><\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/jak-zasymulowac-stanowisko-zrobotyzowane-za-pomoca-k-roset-oraz-kide-na-robocie-kawasaki-a-nastepnie-przeniesc-aplikacje-na-robota-edukacyjnego-astorino\/\">Jak zasymulowa\u0107 stanowisko zrobotyzowane za pomoc\u0105 K-ROSET oraz KIDE na robocie Kawasaki Robotics, a nast\u0119pnie przenie\u015b\u0107 aplikacj\u0119 na robota edukacyjnego Astorino<\/a><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><a href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/automatyzacja-procesu-sortowania-z-wykorzystaniem-robota-astorino-kawasaki\/\">Automatyzacja procesu sortowania z wykorzystaniem robota Astorino<\/a><br><br><\/p>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile has-background has-very-light-gray-background-color\" style=\"grid-template-columns:21% auto\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"314\" height=\"329\" src=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/maciej-palka.jpg\" alt=\"\" class=\"wp-image-26150 size-full\"\/><\/figure><div class=\"wp-block-media-text__content\">\n<p class=\"wp-block-paragraph\">Autor artyku\u0142u:<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><strong>Maciej Pa\u0142ka<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Praktykant ASTOR<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Student III roku kierunku Automatyka i robotyka na Akademii G\u00f3rniczo-Hutniczej w Krakowie<\/p>\n<\/div><\/div>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n            <div id=\"mailerlite-form_9\" data-temp-id=\"6a5ff0c8de42c\">\n                <div class=\"mailerlite-form\">\n                    <form action=\"\" method=\"post\" novalidate>\n                                                    <div class=\"mailerlite-form-title\"><h3>Newsletter Poradnika Automatyka<\/h3><\/div>\n                                                <div class=\"mailerlite-form-description\"><p>Czytaj trendy i inspiracje, podstawy automatyki, automatyk\u0119 w praktyce<\/p>\n<\/div>\n                        <div class=\"mailerlite-form-inputs\">\n                                                                                            <div class=\"mailerlite-form-field\">\n                                    <label for=\"mailerlite-9-field-email\">Email<\/label>\n                                    <input id=\"mailerlite-9-field-email\"\n                                           type=\"email\" required=\"required\"                                            name=\"form_fields[email]\"\n                                           placeholder=\"Email\"\/>\n                                <\/div>\n                                                        <div class=\"mailerlite-form-loader\">Please wait...<\/div>\n                            <div class=\"mailerlite-subscribe-button-container\">\n                                <button class=\"mailerlite-subscribe-submit\" type=\"submit\">\n                                    Zapisz si\u0119                                <\/button>\n                            <\/div>\n                            <input type=\"hidden\" name=\"form_id\" value=\"9\"\/>\n                            <input type=\"hidden\" name=\"action\" value=\"mailerlite_subscribe_form\"\/>\n                            <input type=\"hidden\" name=\"ml_nonce\" value=\"cf5185231a\"\/>\n                        <\/div>\n                        <div class=\"mailerlite-form-response\">\n                                                            <h4><p>Dzi\u0119kujemy za zapis do newslettera!<\/p>\n<\/h4>\n                                                    <\/div>\n                    <\/form>\n                <\/div>\n            <\/div>\n        <script type=\"text\/javascript\" src='https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/plugins\/official-mailerlite-sign-up-forms\/assets\/js\/localization\/validation-messages.js'><\/script>\n         <script type=\"text\/javascript\"> var selectedLanguage = \"pl\"; var validationMessages = messages[\"en\"]; if(selectedLanguage) { validationMessages = messages[selectedLanguage]; } window.addEventListener(\"load\", function () { var form_container = document.querySelector(`#mailerlite-form_9[data-temp-id=\"6a5ff0c8de42c\"] form`); let submitButton = form_container.querySelector('.mailerlite-subscribe-submit'); submitButton.disabled = true; fetch('https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-admin\/admin-ajax.php', { method: 'POST', headers:{ 'Content-Type': 'application\/x-www-form-urlencoded', }, body: new URLSearchParams({ \"action\" : \"ml_create_nonce\", \"ml_nonce\" : form_container.querySelector(\"input[name='ml_nonce']\").value }) }) .then((response) => response.json()) .then((json) => { if(json.success) { form_container.querySelector(\"input[name='ml_nonce']\").value = json.data.ml_nonce; submitButton.disabled = false; } }) .catch((error) => { console.error('Error:', error); }); form_container.addEventListener('submit', (e) => { e.preventDefault(); let data = new URLSearchParams(new FormData(form_container)).toString(); let validationError = false; document.querySelectorAll('.mailerlite-form-error').forEach(el => el.remove()); Array.from(form_container.elements).forEach((input) => { if(input.type !== 'hidden') { if(input.required) { if(input.value == '') { validationError = true; let error = document.createElement(\"span\"); error.className = 'mailerlite-form-error'; error.textContent = validationMessages.required; input.after(error); return false; } } if((input.type == \"email\") && (!validateEmail(input.value))) { validationError = true; let error = document.createElement(\"span\"); error.className = 'mailerlite-form-error'; error.textContent = validationMessages.email; input.after(error); return false; } } }); if(validationError) { return false; } fade.out(form_container.querySelector('.mailerlite-subscribe-button-container'), () => { fade.in(form_container.querySelector('.mailerlite-form-loader')); }); fetch('https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-admin\/admin-ajax.php', { method: 'POST', headers:{ 'Content-Type': 'application\/x-www-form-urlencoded', }, body: data }) .then((response) => { fade.out(form_container.querySelector('.mailerlite-form-inputs'), () => { fade.in(form_container.querySelector('.mailerlite-form-response')); }); }) .catch((error) => { console.error('Error:', error); }); }); }, false); var fade = { out: function(el, fn = false) { var fadeOutEffect = setInterval(function () { if (!el.style.opacity) { el.style.opacity = 1; } if (el.style.opacity > 0) { el.style.opacity -= 0.1; } else { el.style.display = 'none'; clearInterval(fadeOutEffect); } }, 50); if( typeof (fn) == 'function') { fn(); } }, in: function(el) { var fadeInEffect = setInterval(function () { if (!el.style.opacity) { el.style.opacity = 0; } if (el.style.opacity < 1) { el.style.opacity = Number(el.style.opacity) + 0.1; } else { el.style.display = 'block'; clearInterval(fadeInEffect); } }, 50); } }; function validateEmail(email){ if(email.match( \/^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$\/ )) { return true; } return false; } <\/script> \n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Dzi\u0119ki temu poradnikowi dowiesz si\u0119, jak u\u017cywa\u0107 funkcji FRAME w j\u0119zyku KAWASAKI AS oraz zbudowa\u0107 i zaprogramowa\u0107 proste stanowisko zrobotyzowane z wykorzystaniem robota edukacyjnego Astorino. Celem aplikacji b\u0119dzie realizacja schematu paletyzacji dostarczanych detali z wykorzystaniem funkcji FRAME.<\/p>\n","protected":false},"author":91,"featured_media":26160,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[234],"tags":[237,293],"class_list":["post-26145","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-automatyka-w-praktyce","tag-astorino","tag-kawasaki-robotics"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.0 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\r\n<title>Robot edukacyjny Astorino: zastosowanie funkcji FRAME i przyk\u0142adowa aplikacja paletyzacji | Poradnik Automatyka<\/title>\r\n<meta name=\"description\" content=\"Dzi\u0119ki temu poradnikowi dowiesz si\u0119, jak u\u017cywa\u0107 funkcji FRAME w j\u0119zyku KAWASAKI AS na przyk\u0142adzie prostego stanowiska do paletyzacji.\" \/>\r\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\r\n<link rel=\"canonical\" href=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/\" \/>\r\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\r\n<meta property=\"og:type\" content=\"article\" \/>\r\n<meta property=\"og:title\" content=\"Robot edukacyjny Astorino: zastosowanie funkcji FRAME i przyk\u0142adowa aplikacja paletyzacji | Poradnik Automatyka\" \/>\r\n<meta property=\"og:description\" content=\"Dzi\u0119ki temu poradnikowi dowiesz si\u0119, jak u\u017cywa\u0107 funkcji FRAME w j\u0119zyku KAWASAKI AS na przyk\u0142adzie prostego stanowiska do paletyzacji.\" \/>\r\n<meta property=\"og:url\" content=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/\" \/>\r\n<meta property=\"og:site_name\" content=\"Poradnik Automatyka\" \/>\r\n<meta property=\"article:published_time\" content=\"2026-07-21T18:23:48+00:00\" \/>\r\n<meta property=\"article:modified_time\" content=\"2026-07-21T18:23:50+00:00\" \/>\r\n<meta property=\"og:image\" content=\"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/astorino-frame-head.jpg\" \/>\r\n\t<meta property=\"og:image:width\" content=\"1000\" \/>\r\n\t<meta property=\"og:image:height\" content=\"400\" \/>\r\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\r\n<meta name=\"author\" content=\"\u0141ukasz Giza\" \/>\r\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\r\n<meta name=\"twitter:label1\" content=\"Napisane przez\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u0141ukasz Giza\" \/>\n\t<meta name=\"twitter:label2\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data2\" content=\"13 minut\" \/>\r\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/\"},\"author\":{\"name\":\"\u0141ukasz Giza\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/person\\\/cd2e7a3880df4d415ae02a8dbadc6452\"},\"headline\":\"Robot edukacyjny Astorino: zastosowanie funkcji FRAME i przyk\u0142adowa aplikacja paletyzacji\",\"datePublished\":\"2026-07-21T18:23:48+00:00\",\"dateModified\":\"2026-07-21T18:23:50+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/\"},\"wordCount\":1776,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/astorino-frame-head.jpg\",\"keywords\":[\"Astorino\",\"kawasaki robotics\"],\"articleSection\":[\"Automatyka w praktyce\"],\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/\",\"name\":\"Robot edukacyjny Astorino: zastosowanie funkcji FRAME i przyk\u0142adowa aplikacja paletyzacji | Poradnik Automatyka\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/astorino-frame-head.jpg\",\"datePublished\":\"2026-07-21T18:23:48+00:00\",\"dateModified\":\"2026-07-21T18:23:50+00:00\",\"description\":\"Dzi\u0119ki temu poradnikowi dowiesz si\u0119, jak u\u017cywa\u0107 funkcji FRAME w j\u0119zyku KAWASAKI AS na przyk\u0142adzie prostego stanowiska do paletyzacji.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/astorino-frame-head.jpg\",\"contentUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/astorino-frame-head.jpg\",\"width\":1000,\"height\":400},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Automatyka w praktyce\",\"item\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/category\\\/automatyka-w-praktyce\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Robot edukacyjny Astorino: zastosowanie funkcji FRAME i przyk\u0142adowa aplikacja paletyzacji\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#website\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/\",\"name\":\"Poradnik Automatyka\",\"description\":\"Poradnik Automatyka to przydatne kursy, u\u017cyteczne artyku\u0142y i merytoryczne webinary dla ka\u017cdego automatyka i elektryka.\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#organization\",\"name\":\"ASTOR\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2018\\\/08\\\/ASTOR_zwykly_sam_logotyp.png\",\"contentUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2018\\\/08\\\/ASTOR_zwykly_sam_logotyp.png\",\"width\":3322,\"height\":1078,\"caption\":\"ASTOR\"},\"image\":{\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/#\\\/schema\\\/person\\\/cd2e7a3880df4d415ae02a8dbadc6452\",\"name\":\"\u0141ukasz Giza\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2023\\\/12\\\/lukasz-giza-1.jpg\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2023\\\/12\\\/lukasz-giza-1.jpg\",\"contentUrl\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/wp-content\\\/uploads\\\/2023\\\/12\\\/lukasz-giza-1.jpg\",\"caption\":\"\u0141ukasz Giza\"},\"description\":\"In\u017cynier ds. osprz\u0119tu robotyki.\",\"url\":\"https:\\\/\\\/www.astor.com.pl\\\/poradnikautomatyka\\\/autor\\\/lukaszg\\\/\"}]}<\/script>\r\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Robot edukacyjny Astorino: zastosowanie funkcji FRAME i przyk\u0142adowa aplikacja paletyzacji | Poradnik Automatyka","description":"Dzi\u0119ki temu poradnikowi dowiesz si\u0119, jak u\u017cywa\u0107 funkcji FRAME w j\u0119zyku KAWASAKI AS na przyk\u0142adzie prostego stanowiska do paletyzacji.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/","og_locale":"pl_PL","og_type":"article","og_title":"Robot edukacyjny Astorino: zastosowanie funkcji FRAME i przyk\u0142adowa aplikacja paletyzacji | Poradnik Automatyka","og_description":"Dzi\u0119ki temu poradnikowi dowiesz si\u0119, jak u\u017cywa\u0107 funkcji FRAME w j\u0119zyku KAWASAKI AS na przyk\u0142adzie prostego stanowiska do paletyzacji.","og_url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/","og_site_name":"Poradnik Automatyka","article_published_time":"2026-07-21T18:23:48+00:00","article_modified_time":"2026-07-21T18:23:50+00:00","og_image":[{"width":1000,"height":400,"url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/astorino-frame-head.jpg","type":"image\/jpeg"}],"author":"\u0141ukasz Giza","twitter_card":"summary_large_image","twitter_misc":{"Napisane przez":"\u0141ukasz Giza","Szacowany czas czytania":"13 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/#article","isPartOf":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/"},"author":{"name":"\u0141ukasz Giza","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/person\/cd2e7a3880df4d415ae02a8dbadc6452"},"headline":"Robot edukacyjny Astorino: zastosowanie funkcji FRAME i przyk\u0142adowa aplikacja paletyzacji","datePublished":"2026-07-21T18:23:48+00:00","dateModified":"2026-07-21T18:23:50+00:00","mainEntityOfPage":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/"},"wordCount":1776,"commentCount":0,"publisher":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#organization"},"image":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/#primaryimage"},"thumbnailUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/astorino-frame-head.jpg","keywords":["Astorino","kawasaki robotics"],"articleSection":["Automatyka w praktyce"],"inLanguage":"pl-PL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/","name":"Robot edukacyjny Astorino: zastosowanie funkcji FRAME i przyk\u0142adowa aplikacja paletyzacji | Poradnik Automatyka","isPartOf":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/#primaryimage"},"image":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/#primaryimage"},"thumbnailUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/astorino-frame-head.jpg","datePublished":"2026-07-21T18:23:48+00:00","dateModified":"2026-07-21T18:23:50+00:00","description":"Dzi\u0119ki temu poradnikowi dowiesz si\u0119, jak u\u017cywa\u0107 funkcji FRAME w j\u0119zyku KAWASAKI AS na przyk\u0142adzie prostego stanowiska do paletyzacji.","breadcrumb":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/#primaryimage","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/astorino-frame-head.jpg","contentUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2026\/07\/astorino-frame-head.jpg","width":1000,"height":400},{"@type":"BreadcrumbList","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/robot-edukacyjny-astorino-zastosowanie-funkcji-frame-i-przykladowa-aplikacja-paletyzacji\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Automatyka w praktyce","item":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/category\/automatyka-w-praktyce\/"},{"@type":"ListItem","position":2,"name":"Robot edukacyjny Astorino: zastosowanie funkcji FRAME i przyk\u0142adowa aplikacja paletyzacji"}]},{"@type":"WebSite","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#website","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/","name":"Poradnik Automatyka","description":"Poradnik Automatyka to przydatne kursy, u\u017cyteczne artyku\u0142y i merytoryczne webinary dla ka\u017cdego automatyka i elektryka.","publisher":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#organization","name":"ASTOR","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/logo\/image\/","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2018\/08\/ASTOR_zwykly_sam_logotyp.png","contentUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2018\/08\/ASTOR_zwykly_sam_logotyp.png","width":3322,"height":1078,"caption":"ASTOR"},"image":{"@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/#\/schema\/person\/cd2e7a3880df4d415ae02a8dbadc6452","name":"\u0141ukasz Giza","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/12\/lukasz-giza-1.jpg","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/12\/lukasz-giza-1.jpg","contentUrl":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-content\/uploads\/2023\/12\/lukasz-giza-1.jpg","caption":"\u0141ukasz Giza"},"description":"In\u017cynier ds. osprz\u0119tu robotyki.","url":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/autor\/lukaszg\/"}]}},"_links":{"self":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/26145","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/users\/91"}],"replies":[{"embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/comments?post=26145"}],"version-history":[{"count":2,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/26145\/revisions"}],"predecessor-version":[{"id":26210,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/posts\/26145\/revisions\/26210"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/media\/26160"}],"wp:attachment":[{"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/media?parent=26145"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/categories?post=26145"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.astor.com.pl\/poradnikautomatyka\/wp-json\/wp\/v2\/tags?post=26145"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}