SoftFloat
29/08/2011
Wprowadzenie
Firma Fanuc Robotics, lider w dziedzinie robotów przemysłowych, stawia sobie za cel ciągłą modernizację oferowanych produktów, tak aby funkcjonalność robotów pozwalała na wykonywanie operacji do tej pory nieosiągalnych w robotyce.
W wyniku ciągłego rozwoju technologii w tej dziedzinie powstała i coraz częściej jest stosowana nowa możliwość sterowania ruchem urządzenia. Jest nią funkcja Softfloat która jest opcją oprogramowania Fanuc, przeznaczoną do korygowania trajektorii ruchu robota, pod wpływem sił działających na niego z zewnątrz. Ogromną zaletą jest fakt, że jest to opcja w pełni programowa, która nie wymaga instalacji dodatkowych części mechanicznych, czy sensorów.
Najczęstszym wykonywanym przez robota ruchem jest przemieszczenie przedmiotu z określonego punktu A do punktu B. W przypadku, gdy robot jest używany np. do umieszczania w obrabiarce elementu, który nie jest dokładnie obrobiony może się okazać, że niedokładności produktu spowodują przesunięcie detalu względem narzędzia. Przydatna w takiej sytuacji jest opisywana w artykule funkcja.
Mając do dyspozycji SoftFloat programista jest w stanie określić sytuacje, w których robot będzie miał możliwość poddania się zewnętrznej sile i przesunięcia do innej pozycji.
Działanie systemu
Funkcja posiada dwie odmiany: Softfloat (J612) oraz High Performance Softfloat (J898). Pierwsza z nich posiada dwa tryby działania. Joint Softfloat polega na wskazaniu, która oś robota staje się w określonych warunkach „elastyczna” oraz w jakim kierunku ma poddać się zewnętrznej sile. Natomiast w trybie Cartesian softfloat określa się oś w układzie kartezjańskim, która ma się „poddać” sile zewnętrznej oraz kierunek działania. W tym trybie robot, w zadanym kierunku, zachowuje się jak sprężyna w tym znaczeniu, że pod wpływem siły zewnętrznej ramię robota zostanie przesunięte, a po odjęciu siły wraca do swojej pierwotnej pozycji. Istnieje również instrukcja Follow Up (podążaj), która pozwala pozostać robotowi w nowej pozycji.
Funkcja High Performance Softfloat daje programiście dodatkowy tryb pracy Pushout. Jego działanie jest podobne do opisywanego tybu Cartesian z tą różnicą, że robot działa z mniejszą siłą i momentem na detal. Dzięki temu funkcja jest bardzo użyteczna podczas odbierania detali z wtryskarki.
Dla każdej osi może zostać określona inna siła graniczna, przy której robot poddaje się zewnętrznej sile oraz inny opór na siłę zadawaną z zewnątrz. Jeżeli robot jest obciążony i włączona jest funkcja SoftFloat, robot utrzymuje pozycję równie stabilnie, jak w przypadku gdy funkcja jest wyłączona.
Zastosowanie
-
Tryby Joint i Cartesian są zalecane do załadunku i odbioru detalu z obrabiarki oraz do pozycjonowania obiektów wględem np. uchwytu.
-
Tryb Pushout może być stosowany do załadunku i odbioru detalu detali z wtryskarki.
Cechy produktu
-
Fukcja Softfloat może działać w dwóch trybach: joint soft float, gdzie wyznacza się oś robota, która może poddać się zewnętrznej oraz Cartesian soft float, w której osią poddającą się sile zewnętrznej jest jedna z osi układu kartezjańskiego.
-
Funkcja może zostać włączona lub wyłączona przy użyciu instrukcji programowej. Warunki działania funkcji również ustawiane są programowo.
-
Servo flexibility - czyli elastyczność osi może być zdefiniowana dla każdej osi. Parametr servoflexibility wskazuje jak mocno oś robota przeciwstawia się zewnętrznej sile. Wartość ustalana jest w granicach od 0-100%, gdzie 100% odnosi się do sytuacji gdy oś jest najbardziej elastyczna. Servo flexibility jest definiowany przy użyciu tabeli, która zawiera dane dla grupy robota (dla dziewięciu osi).
-
W przypadku obciążenia ramienia stałym ładunkiem, robot kontroluje siłę tak aby utrzymać swoją zadaną pozycję, nawet gdy funkcja SoftFloat jest włączona.
Używając opisywanej funkcji można w łatwy sposób uniknąć instalowania dodatkowych czujników położenia oraz zapobiec uszkodzeniu delikatnych części. Opisywana opcja programowa jest dostępna dla oprogramowania od V7.20P/25 (R-30iA), V6.30P/96(R-J3iB).
Przykładowy program
SOFTFLOAT[10]
Aktywacja funkcji Softfloat z użyciem danych z grupy 10
CALL HNDCLOSE
Zamyka uchwyt robota
WAIT 10.00 (sec)
Zaczekaj 10 sekund aż, np. obróbka detalu zostanie ukończona
SOFTFLOAT END
Kończy działanie funkcji SoftFloat
Korzyści:
-
Uniknięcie naprężeń, uszkodzeń, zadrapań detalu.
-
Uniknięcie naprężeń, uszkodzeń, zadrapań narzędzia oraz robota.
-
Funkcja działa bez potrzeby instalacji dodatkowych sensorów.
-
Możliwość dostosowania ruchu robota do zmieniających się warunków zewnętrznych bez dodatkowej ingerencji w program.