podcast automatyzacja w produkcji programowanie robotów przemysłowych
Automatyzacja w Produkcji
Jak Programować Roboty BEZ Dotykania? Offline Programming | Automatyzacja w Produkcji
Loading
/

W ostatnim odcinku rozmawialiśmy o humanoidalnym robocie Optimus od Tesli. Starałem się znaleźć dla Was odpowiedź na kilka kluczowych pytań. M.in:

Czy Optimus Gen ma szanse pojawić się na rynku w najbliższym czasie? Co jest w nim takie skomplikowanego? Jaką ma konkurencję?

I co najważniejsze – CZY lub KIEDY, roboty humanoidalne będą stanowić zagrożenie rynkowe dla tradycyjnej robotyki przemysłowej? Myślę, że to się udało i jednocześnie trochę nam wszystkim zaniżyły się oczekiwania co do szybkiego ujrzenia tego typu robotów w codziennej pracy na linii.

Z kolei tydzień wcześniej mówiłem o tym co to znaczy być programistą robotów w 2024 roku i jak właściwie te roboty przemysłowe się programuje. Najważniejszy wniosek z jakim Was zostawiłem mówił, że:

Możliwych metod programowania robotów jest kilka a jednocześnie nie ma złej lub dobrej. 

Każda ma swoje ograniczenia, plusy i minusy. Do tego wszystkie je wszystkie można ze sobą łączyć. Kilkukrotnie wcześniej ale trochę szerzej w tym odcinku o programowaniu poruszałem tematy programowania robotów w środowiskach off-line`owych. Nie jeden raz padały tu takie nazwy jak Fanuc Roboguige, ABB Robot Studio czy KUKASim.

I dziś, właśnie o tego typu programach powiemy sobie nieco więcej i postaram się odpowiedzieć na kilka kluczowych pytań, które mogą się Wam pojawić. A jeśli coś pominę – to dacie mi znać i to nadrobię.

Zaczynajmy więc.

Programy o których dziś będziemy mówić to tzw. Oprogramowanie do programowania robotów offline (OLP – Offline Programming), które umożliwia użytkownikom tworzenie, testowanie, i optymalizację programów robota w środowisku wirtualnym, bez konieczności zakłócania pracy fizycznych robotów. Jak już kiedyś wspomniałem to podejście ma wiele zalet, w tym zmniejszenie przestojów produkcyjnych, poprawę bezpieczeństwa oraz umożliwienie dokładnego planowania i symulacji procesów produkcyjnych przed ich wdrożeniem. Oprogramowania OLP są kluczowymi narzędziami w nowoczesnej robotyce przemysłowej więc przyjrzyjmy się jest raz korzyściom jakie one zapewniają.

1) Skrócenie czasu wdrożenia – OLP umożliwia programowanie robotów bez przerywania bieżącej produkcji, co oznacza, że nowe aplikacje można rozwijać i testować równolegle do codziennej pracy. Pozwala to znacząco skrócić czas potrzebny na wdrożenie nowych procesów robotycznych, ponieważ większość pracy programistycznej i testów odbywa się w środowisku wirtualnym.

2) Zwiększenie wydajności produkcji – Optymalizacja trajektorii i cykli robota w środowisku OLP przed fizycznym wdrożeniem może znacząco zwiększyć wydajność produkcji. Symulacje pozwalają na identyfikację i eliminację niepotrzebnych ruchów lub opóźnień, co przekłada się na szybsze i bardziej efektywne cykle robocze.

3) Minimalizacja ryzyka błędów i kolizji – Wykrywanie kolizji i błędów w programie jest jedną z kluczowych zalet OLP. Oprogramowanie pozwala na wirtualną weryfikację programów robota, co umożliwia identyfikację i rozwiązanie potencjalnych problemów, takich jak kolizje z otoczeniem lub błędy w kodzie, zanim stworzą one zagrożenie w rzeczywistym środowisku pracy.

4) Poprawa bezpieczeństwa – Praca z wirtualnym modelem robota ogranicza potrzebę bezpośredniej interakcji z fizycznymi robotami podczas fazy programowania, co zmniejsza ryzyko wypadków. Bezpieczeństwo operatorów i personelu technicznego jest zwiększone, a ryzyko uszkodzeń sprzętu minimalizowane.

5) Efektywne planowanie i symulacja procesów produkcyjnych – OLP umożliwia szczegółowe modelowanie i symulację całych linii produkcyjnych, włączając w to różnorodne scenariusze pracy, co pozwala na dokładne planowanie przepływu produkcji. Użytkownicy mogą eksperymentować z różnymi układami i konfiguracjami sprzętu, aby znaleźć najbardziej efektywne rozwiązanie dla swoich potrzeb produkcyjnych.

6) Zwiększenie elastyczności produkcji – Szybkie dostosowywanie się do zmian w produkcji jest możliwe dzięki łatwości modyfikacji programów w środowisku OLP. Firmy mogą szybko reagować na zmieniające się wymagania rynkowe lub wprowadzać nowe produkty do produkcji, zachowując przy tym wysoką efektywność operacyjną.

7) Szkolenie i edukacja – OLP jest doskonałym narzędziem szkoleniowym, umożliwiającym inżynierom i technikom naukę programowania robotów oraz zasad ich działania w bezpiecznym, kontrolowanym środowisku. To podejście wspiera rozwój umiejętności i kompetencji związanych z robotyką, bez ryzyka dla sprzętu lub bezpieczeństwa – zarówno samego programisty jak i jego otoczenia.

Skoro o szkoleniu i edukacji mowa to odpowiedzmy sobie na pytanie Czy w oparciu o oprogramowanie OLP można nauczyć się programowania robotów?

Uwaga… Tak, oprogramowanie do programowania offline (OLP) jest doskonałym narzędziem do nauki programowania robotów. Umożliwia ono użytkownikom zdobywanie praktycznych umiejętności programowania, symulacji oraz zarządzania robotami przemysłowymi w bezpiecznym, wirtualnym środowisku co jest bardzo przydatne w nauce programowania robotów:

A więc…

Po 1) Bezpieczne Środowisko Eksperymentalne – OLP pozwala na eksperymentowanie z różnymi programami i scenariuszami pracy robota bez ryzyka uszkodzenia sprzętu lub spowodowania wypadku. To bezpieczne środowisko jest idealne dla początkujących, którzy mogą uczyć się przez próby i błędy.

Po 2) Wizualizacja i Symulacja – Użytkownicy mogą wizualizować, jak robot będzie reagować na napisane programy. Mogą obserwować ruchy robota, interakcje z obiektami w jego otoczeniu oraz symulować całe procesy produkcyjne. Ta możliwość pozwala na lepsze zrozumienie logiki programowania robotów i fizyki ich działania.

Po 3) Nauka Specyficznych Języków Programowania – Różne systemy robotów wykorzystują różne języki programowania. Oprogramowanie OLP często oferuje wsparcie dla specyficznych dla producenta języków, takich jak RAPID dla ABB, KRL (KUKA Robot Language) czy też języki stosowane przez Fanuc, Yaskawa i innych. Dzięki temu użytkownicy mogą nauczyć się języków i konwencji programistycznych stosowanych w przemyśle. Oczywiście, trzeba wtedy posiadać więcej niż jeden taki program.

Po 4) Zrozumienie Procesów Produkcyjnych – OLP umożliwia nie tylko naukę programowania robotów, ale również zrozumienie, jak roboty są integrowane i wykorzystywane w różnych procesach produkcyjnych. Użytkownicy mogą projektować kompleksowe systemy i symulować warunki rzeczywistej produkcji, co przygotowuje ich do rozwiązywania realnych wyzwań inżynieryjnych.

Po 5) Dostęp do Zaawansowanych Narzędzi – Oprogramowanie OLP często zawiera zaawansowane narzędzia do optymalizacji trajektorii, analizy zderzeń, programowania ścieżek narzędzi i zarządzania cyklami pracy. Dostęp do tych narzędzi umożliwia użytkownikom naukę zaawansowanych technik i metod optymalizacji procesów robotycznych.

Po 6) Elastyczność i Dostępność – Wiele oprogramowań OLP oferuje wersje demonstracyjne lub edukacyjne, które są dostępne za darmo lub po zniżkowej cenie dla studentów i ośrodków edukacyjnych. Daje to możliwość nauki programowania robotów bez konieczności inwestowania w drogi sprzęt.

Podsumowując, oprogramowanie do programowania robotów offline stanowi cenne narzędzie edukacyjne, które może znacząco przyspieszyć proces nauki programowania i obsługi robotów. Jego wszechstronne możliwości sprawiają, że jest ono wykorzystywane nie tylko w przemyśle, ale również w edukacji i badaniach naukowych. 

To akurat mogę potwierdzić na własnym przykładzie – w latach 2014-2018 sam uczyłem progrwamoajnia robotów z użyciem Robot Studio studentów Politechniki Poznańskiej. Po kilku godzinach zajęć, nawet osoby nie mające wcześniej do czynienia z robotami potrafiły napisać względnie niezgorszy program na robota – coś więc w tym chyba jest.

Jakie więc mamy podstawowe programy do programowania robotów Offline?

Są to kolejno i między innymi:

1) RobotStudio od ABB, które pozwala na symulację i programowanie robotów ABB w wirtualnym środowisku. Oferuje zaawansowane narzędzia do wizualizacji, symulacji, optymalizacji procesów produkcyjnych oraz narzędzi diagnostycznych. Użytkownicy mogą projektować całkowite systemy produkcyjne i przeprowadzać testy wydajności oraz analizę zderzeń.

2) Siemens Process Simulate, który jest częścią oprogramowania Tecnomatix od Siemens, umożliwiającym symulację i weryfikację operacji montażowych i robotycznych w wirtualnym środowisku. Pozwala na optymalizację trajektorii robota i procesów produkcyjnych, wspierając integrację z systemami PLC Siemens.

3) Fanuc RoboGuide to narzędzie do symulacji i programowania robotów Fanuc, oferujące zaawansowane możliwości symulacji, w tym wizualizację pracy robotów, sprawdzanie zasięgu pracy i detekcję kolizji. Umożliwia także optymalizację cyklu pracy robota.

4) KUKA.Sim jest oprogramowaniem do planowania, symulacji i programowania offline robotów KUKA. Umożliwia szczegółową wizualizację i analizę aplikacji robotycznych, co pozwala na efektywne planowanie i optymalizację procesów.

5) Yaskawa MotoSim od Yaskawa Motoman to zaawansowane oprogramowanie do symulacji i programowania offline, które umożliwia użytkownikom wirtualne testowanie i weryfikację programów robota przed ich wykonaniem. Oferuje interaktywną symulację pracy robota i narzędzia do optymalizacji procesów.

6) Universal Robots URSim to symulator do programowania robotów Universal Robots, który umożliwia użytkownikom naukę i testowanie programów w środowisku wirtualnym. Jest to narzędzie szczególnie przydatne dla użytkowników robotów współpracujących (cobots), umożliwiając łatwe przenoszenie programów do rzeczywistego robota.

7) Visual Components to wszechstronna platforma do 3D CAD/CAM dla projektowania, symulacji i wizualizacji systemów produkcyjnych. Oferuje wsparcie dla szerokiego zakresu robotów i automatyzacji, umożliwiając użytkownikom modelowanie, symulację i analizę całych linii produkcyjnych.

8) Octopuz to oprogramowanie do zaawansowanej symulacji i planowania trajektorii dla robotów przemysłowych, specjalizujące się w aplikacjach takich jak spawanie, cięcie i obróbka materiałowa. Pozwala na kompleksową analizę i optymalizację ścieżek robota.

Żeby nie było, że tak tu trochę pomieszałem to wyjaśnię a jednocześnie odpowiem na dwa kolejne pytania:

Czy w danym oprogramowaniu można zaprogramować robota od więcej niż jednego producenta?

Oraz

Czy można zaprogramować różne roboty tego samego producenta?

I tak i nie…

Tak, niektóre oprogramowania do programowania offline (OLP) oferują wsparcie dla programowania wielu typów robotów różnych producentów. Oprogramowanie takie jest zaprojektowane w sposób uniwersalny, aby umożliwić integrację i programowanie robotów od różnych producentów w jednym środowisku programistycznym. Dzięki temu użytkownicy mogą projektować, symulować i optymalizować systemy złożone z robotów pochodzących od różnych dostawców. Przykładami takich systemów są wymienione już przeze mnie Visual Components, RoboDK, Delmia czy Octopuz. W taki oprogramowaniu można zatem programować i robota od ABB i od Kuki czy innego producenta. A do tego najpewniej każdego (lub większość) typów jednostek od producentów jest w takim programie dostępna do programowania.

I NIE…

Oprogramowania dostarczone bezpośrednio przez producentów robotów uniemożliwiają implementacje napisanego programu na robota innej marki. No nie da się i kropka. 

Powodów, już nawet nie marketingowych czy sprzedażowy a technicznych, można by wymienić tyle, że możnaby o tym nagrać dodatkowy odcinek. Inny producent to inny język i inna kinematyka – no i się nie da tego tak zaadaptować. Jednocześnie jednak w danym środowisku, np. W takim KukaSim znajdziecie od razu wszystkie jednostki od danego producenta i możecie od raz zmierzyć się z programem zarówno na 6-osiowego cobota jak i na Scare czy Deltę. Tak samo w Fanucu czy ABB.

Moglibyśmy tak długo sobie dalej diagnozować i opisywać poszczególne systemy. Jeśli jesteś specjalistą i programujesz roboty od wielu lat to zapewne znasz przynajmniej część z oprogramowania jakie tu wymieniłem.

Jeśli jednak jesteś laikiem. Np chcesz zacząć Swoją przygodę z robotami lub ich programowaniem. Albo chcesz sobie przetestować pewną koncepcję na robotyzację i upewnić się, że będzie ona spełniała Twoje oczekiwania to… co wtedy powinieneś wybrać?

Wg, mnie najlepiej zacząć od programu jednego z producentów – najlepiej od ABB lub Kuki.

Te programy są bardzo dopracowane. Jest w nich szereg gotowych funkcjonalności do programowania i symulacji. Trzeba tylko ogarniać środowisko 3D i można stworzyć program nie pisząc samodzielnie ani jednej linijki kodu – ale oczywiście też można. Program można potem przetestować i pomierzyć np. Pod kątem wydajności.

I co najważniejsze… szczególnie do tych dwóch wymienionych przeze mnie oprogramowań można znaleźć mnóstwo darmowych materiałów w internecie, w tym różnego rodzaju kursy i samouczki. Samo oprogramowanie też można pobrać w wersji triasowej i sprawdzić czy nam odpowiada. Innymi słowy – na wyciągnięcie ręki są ogromne możliwości.

I to nie jest tak, że te pozostałe programy są złe – nie.

One są po prostu, przynajmniej wg. Mnie, bardziej skomplikowane. Za dodatkowymi możliwościami często idzie potrzeba posiadania większej wiedzy. Jednocześnie często obsługują je już osoby z jakimś doświadczeniem więc trochę trudniej zrozumieć rady udzielane na przeróżnych forach – zakładając, że się takie w ogóle znajdzie.

Jeśli nie chcecie się na początku zniechęcić to ja bym proponował zacząć właśnie od KukaSim czy ABB RobotStudio. Ale pamiętajcie – to tylko subiektywna opinia gościa, który choć z programistami obcuje na codzień to samodzielnie ostatniego robota zaprogramował jeszcze zanim na świecie pojawił się 7-latek, który złożył ten samochód. Więc nie musicie mi wierzyć.

I to tyle na dziś.

Jeśli się Wam podobało to wiecie co zrobić. Zostawcie łapkę w górę i zasubskrybujcie mój kanał na YT, Spotify czy apple podcasts – gdzie Wam wygodnie i gdzie aktualnie tego słuchacie.

A tymczasem, życzę Wam spokojnego dnia i do usłyszenia za tydzień.

Cześć.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *