programowanie offline
Blog

Programowanie Offline – Czyli jak ułatwić sobie projekt.

4 czerwca, 2024
Autor: Mikołaj J.

Osoby, które spotkały się już kiedyś z określeniem programowania online mogą domyślać się lepiej lub gorzej na czym mogłoby polegać programowanie offline. Mimo że określenie występuje równocześnie w różnych działach przemysłowych skupimy się na programowaniu ze strony robotów.

Dlaczego? Po co? Jak używać programowania online

Nie można traktować tych dwóch metodyk programowania jako oddzielnie działające, a jako wzajemnie uzupełniające się sposoby wdrażania procesu na linii produkcyjnej. Przeważająca większość projektów występująca na rynku nie zaczyna się od razu od programowania online, gdzie robotyk tudzież automatyk przychodzi na zamontowaną linię i na „pustej kartce” zaczyna programować wszystkie działania manipulatorów oraz sposoby organizacji programów i komunikacji. Byłby to nieefektywnie długi i ciężki proces, gdyż w momencie fizycznego stania przy maszynie ciężko jest zwrócić uwagę na wszystkie problematyczne miejsca, określanie trajektorii przejazdowych zajęłoby dużo czasu, gdyż każdą taką trajektorię trzeba za każdym wypadkiem przetestować przy ograniczonych prędkościach jakie są dostępne w momencie wykonywania prac przygotowawczych.

Omawiając problemy jakie generuje prowadzenie projektu bez programowania offline odpowiedzieliśmy sobie na pytanie, dlaczego nie stosuje się pojedynczej metodyki programowania, spójrzmy więc teraz „po co?” i jakie korzyści uzyskamy z jego zastosowania.

Przede wszystkim wygoda i zaoszczędzony czas. Czas to pieniądz, a w przypadku branż takich jak automotive są to już kwoty liczone w dziesiątkach tysięcy. Możliwość przeanalizowania problemów oraz jednoczesne rozwiązywanie ich bez konieczności postawienia stopy na terenie zakładu jest tylko jedną z zalet takiego rozwiązania. Jest to swojego rodzaju planowanie pracy ( w tym wypadku ) robotycznej gdzie jesteśmy w stanie zobaczyć jak do pewnej precyzji będzie poruszać się robot w danym środowisku, mogąc w łatwy sposób poprawiać dane trajektorie bądź punkty procesowe oraz w sytuacjach gdzie rozwiązania są trudne bądź niemożliwe skonsultować się z działami pokroju konstrukcji bądź planningu, aby określić zmianę od ich strony która wpłynie końcowo na poprawę naszej sytuacji.

Dobrze wiedzieć dlaczego stosowane jest programowanie offline oraz po co ono nam właściwie jest, jednak dobrze byłoby jeszcze wiedzieć czym tak naprawdę jest, jak ono wygląda i dlaczego jeszcze o tym nie wspomnieliśmy.

W teorii do programowania offline potrzebny będzie nam odpowiedni software oraz osoba znająca się na danym środowisku programistycznym czyli w tym wypadku robotyk. W praktyce z takim zestawem moglibyśmy sobie co najwyżej zaprogramować cobota do naszego zacisza domowego. Na projektach z prawdziwego zdarzenia ilość informacji jaką musi otrzymać robotyk zajmujący się programowaniem offline jest większa niż nam się wydaje i składa się z wielu działów takich jak:
planning, design, konstrukcja, programiści, symulanci, dział organizacji oraz kilka więcej zależnych od poziomu skomplikowania projektu oraz wielkości firmy działów które posiadają jeszcze swoje podkategorię pracy, a wszystko to musi działać na bieżąco oraz w ciągłej komunikacji ze sobą aby końcowy produkt mógłbyć jak najlepszej jakości, a osoba która otrzyma ten projekt podczas wdrożenia online miała jak najlepsze odzwierciedlenie właściwego procesu oraz jej praca ograniczała się do minimum.

Jak więc wygląda przykładowy software robotyka programisty offline i jakie mamy do wyboru?

Praktycznie każda firma posiadająca swoją markę robotów jak np. Fanuc, Kuka, ABB dostarczają swoje autorskie oprogramowania z których można wyróżnić: Roboguide, Robotstudio czy robot toolbox. Jednak o ile są to programy rzeczywiście umożliwiające symulację offline robota zazwyczaj tylko ich marki to w większych projektach wykorzystywane są oprogramowania do symulacji i designu 3D firm zewnętrznych dające nam znacznie większą swobodę i możliwości pod względem bibliotek robotów różnych firm, oraz obiektów standardowo występujących w przemyśle. Do takich programów możemy zaliczyć takie produkty jak Delmia bądź Process Simulate od Tecnomatix.

Jaka jest więc właściwie różnica oraz zastosowanie takiego oprogramowania?

W przypadku programów dedykowanych pokroju Roboguide jest to narzędzie wyspecjalizowane dla pracy robotyka zawierające rzeczywistą symulację wraz z panelem operatorskim danego robota z możliwością bezpośredniego ( w środowisku symulacyjnym ) programowania robota na bazie jego języka programowania. W porównaniu do oprogramowania firm trzecich nie ustosunkowanych na konkretną firmę robota pokroju Delmia jest to zazwyczaj nie pojedynczy software strikte do programowania robota ale cała sieć współpracujących ze sobą programów od narzędzi designerskich i konstrukcyjnych do symulacyjno procesowych. Zatem jest również różnica pomiędzy pracą robotyka offline, a robotyka symulacji offline, gdzie pierwszy z kolei ma kontakt z rzeczywistym językiem programowania danego robota, a robotyk symulacji ma spojrzenie i wpływ na przebieg procesu od strony robotycznej jak i działów z nim współpracujących, gdzie nie koniecznie musi mieć on kontakt z samym językiem programowania danego robota, zajmuje się więc głównie trajektoriami i punktami procesowymi a nie ich implemntacją w kodzie programu.

Podsumowując…

Na temat programowania offline można byłoby się rozwodzić jeszcze na strony nie mówiąc już o wliczeniu innych działów offline-owych np. automatyka. Jednak mam nadzieję, że po tym w miarę możliwości streszczonym artykule jesteś świadomy/a jakie korzyści płyną z implementacji programowania offline przed wdrożeniem projektu na teren zakładu, oszczędza nam to czas i nerwy oraz ułatwia pracę wszystkim zaangażowanym w kontynuacje projektu, a także powinno być to punktem rozwiązań wszystkich przyszłych problemów na jakie moglibyśmy natrafić!

Autor: Mikołaj J.