Zależności czasowe w nowoczesnych robotach wieloosiowych

Zależności czasowe w nowoczesnych robotach wieloosiowych
Pobierz PDF Download icon

Współczesna robotyka przemysłowa i systemy obrabiarek numerycznych wymagają precyzyjnego, skoordynowanego ruchu wielu osi systemu. Typowe roboty przemysłowe mają sześć stopni swobody (osi ruchu), które bardzo często muszą poruszać się wspólnie w skoordynowany sposób. Podobnie jest w przypadku obrabiarek CNC, gdzie konieczna jest koordynacja od 5 do nawet 12 osi.

Synchronizacja wielu napędów w robotach przemysłowych jest krytycznym elementem, zapewniającym im grację i sprawność działania. Poszczególne sterowniki serwomechanizmów itp. połączone są ze sobą przemysłowymi interfejsami komunikacyjnymi – zazwyczaj industrialną odmianą Ethernetu – w topologii linii, jak pokazano na rysunku 1. Do sieci tej podłączony jest również centralny sterownik całej maszyny, który na podstawie zadanej trajektorii ruchu wydaje polecenia każdemu z serwomechanizmów.

Synchronizacja w czasie ruchów poszczególnych osi jest konieczna, aby maszyny te działały poprawnie. Wraz ze zwiększaniem szybkości działania systemów przemysłowych, synchronizacja działania poszczególnych osi w tego rodzaju układach staje się coraz większym wyzwaniem. W liniowej sieci, jaką pokazano na rysunku 1, komendy wysyłane są cyklicznie do każdej osi maszyny w ściśle określonej kolejności.

Rysunek 1. Typowa topologia liniowa sieci komunikacyjnej w robocie przemysłowym

Cykl kontrolny

Aplikacje tego rodzaju działają w określonym okresie cyklu, którego czas trwania jest zwykle równy wielokrotności podstawowego cyklu przełączania pętli sterowania i modulacji szerokości impulsu (PWM) podstawowego napędu serwomotoru. Opóźnienie transmisji w sieci od końca do końca jest kluczowym, w tym kontekście, parametrem (rysunek 2). W każdym okresie cyklu nowe informacje dotyczące pozycji i inne istotne informacje muszą być przesyłane ze sterownika maszyny do każdego węzła z rysunku 1. Następnie musi pozostać wystarczająco dużo czasu w cyklu PWM dla każdego węzła, aby zaktualizować ustawienia poprzez algorytm sterowania serwomechanizmem przy użyciu nowego punktu odniesienia dla pozycji, jak również wszelkich nowych danych z czujników. Każdy węzeł stosuje następnie zaktualizowane nastawy PWM do sterowania serwonapędu w tym samym momencie, dzięki synchronizacji wykorzystującej rozproszony sygnał zegarowy, który jest uzależniony od zegara sieci przemysłowej Ethernet.

Rysunek 2. Cykl PWM i czas transmisji w sieci

W zależności od architektury sterowania, część algorytmu pętli sterowania może być zaimplementowana w sterowniku PLC, co sprawia, że wymaga odpowiedniej ilości czasu, który musi pozostać po otrzymaniu wszelkich odpowiednich aktualizacji informacji z sieci.

Opóźnienia w transmisji danych

Zakładając, że jedynym ruchem w sieci są cykliczne dane przepływające między sterownikiem maszyny a węzłami serwosilników, opóźnienie sieci (TNW) jest określane przez liczbę przeskoków sieci do najdalszego węzła, szybkość transmisji danych w sieci i napotkane po drodze opóźnienia w każdym węźle. W kontekście robotyki i obrabiarek numerycznych opóźnienie propagacji sygnału wzdłuż przewodu można pominąć, ponieważ długość kabla jest zwykle stosunkowo niewielka. W bardziej rozległych instalacjach może to być jednak istotne. Przyjmuje się prędkość propagacji sygnału w kablu ethernetowym za równą 230 m/μs, co oznacza, że każdy metr kabla sieciowego wnosi 4,35 ns opóźnienia.

Dominującym opóźnieniem sieci Ethernet jest opóźnienie wynikające z jej przepustowości; to znaczy czas potrzebny na przesłanie danych do sieci zależy wyłącznie od jej prędkości. W przypadku ramki Ethernet o minimalnym rozmiarze (typowej dla obrabiarek i sterowania robotami) opóźnienie w przepustowości zobrazowano na rysunku 3 dla szybkości transmisji 100 Mb/s i 1 Gb/s. Jest to po prostu rozmiar pakietu podzielony przez szybkość transmisji danych.

Rysunek 3. Opóźnienie wynikające z pasma minimalnej ramki sieci Ethernet

Typowy pakiet danych dla systemu wieloosiowego wychodzący od kontrolera do serwomechanizmu składałby się z 4-bajtowej aktualizacji odniesienia danych prędkości i pozycji oraz 1-bajtowej aktualizacji słowa sterującego dla każdego serwomechanizmu, co oznacza 30-bajtowy pakiet danych dla robota o 6 stopniach swobody. Oczywiście niektóre aplikacje będą przenosić więcej informacji w pojedynczej aktualizacji lub będą miały więcej osi, w którym to przypadku mogą być potrzebne pakiety o rozmiarze większym niż minimalny.

Oprócz opóźnienia wynikającego z przepustowości, dodatkowe opóźnienia występują w wyniku przejścia ramki Ethernet przez elementy warstwy fizycznej i 2-portowe switche znajdujące się w każdym interfejsie sieci sterującej. Opóźnienia te są pokazane na rysunku 4 i rysunku 5, gdzie widoczne jest przejście ramki przez PHY do MAC (1-2), poprzez analizę adresu docelowego, gdzie tylko preambuła i część docelowa ramki muszą być analizowane. Ścieżka 2-3a reprezentuje wyodrębnianie danych użytkowych dla bieżącego węzła, podczas gdy ścieżka 2-3b reprezentuje dalszą podróż ramki do węzła (węzłów) znajdującego się dalej w linii. Rysunek 4a pokazuje tylko pakiet danych przesyłany do aplikacji w 2-3a, podczas gdy rysunek 4b przedstawia większość przekazywanej ramki; pokazuje to niewielkie różnice, które mogą wystąpić między protokołami ethernetowymi. Ścieżka 3b-4 reprezentuje transmisję ramki wychodzącej przez kolejkę nadawczą, PHY i z powrotem do skrętki. Taka ścieżka nie występuje w węźle końcowym linii, jak pokazano na rysunku 4b. Zakłada się tutaj przełączanie pakietów typu „cut-through” (odcięcie) zamiast „store-and-forward” (przechowaj i podaj dalej), które ma znacznie większe opóźnienie, ponieważ cała ramka musi być taktowana w switchu, zanim zostanie przesłana dalej do procesora.

Rysunek 4. Opóźnienie ramek: a) w węźle dwupunktowym, b) w węźle końcowym (jednopunktowym)

Elementy opóźniające ramki są również pokazane na rysunku 5 na osi czasu, na której zilustrowano całkowity czas transmisji ramki przez jeden węzeł osi. TBW reprezentuje opóźnienie wynikające ze skończonej przepustowości, podczas gdy TL_1node reprezentuje opóźnienie ramki przechodzącej przez pojedynczy węzeł sieci. Oprócz opóźnień związanych z fizyczną transmisją bitów przewodem i taktowaniem bitów adresowych podczas analizy adresu docelowego, inne elementy wpływające na opóźnienia transmisji w systemie to elementy warstwy fizycznej i opóźnienia komponentów switcha. Wraz ze wzrostem prędkości transmisji i zwiększeniem liczby węzłów w sieci te opóźnienia stają się jeszcze ważniejsze dla całkowitego opóźnienia transmisji ramek od końca do końca sieci.

Rysunek 5. Opóźnienia pokazane na osi czasu

Rozwiązania z niską latencją

Firma Analog Devices wprowadziła do swojej oferty, w pierwszej połowie tego roku, dwa nowe układy dla warstwy fizycznej (Ethernet PHY), zaprojektowane do niezawodnego działania w trudnych warunkach przemysłowych, z małym poborem prądu i w rozszerzonych zakresach temperatur otoczenia (do 105°C) z rekordowymi specyfikacjami dotyczącymi opóźnień. Układy ADIN1300 i ADIN1200 zostały opracowane specjalnie, aby sprostać wyzwaniom przedstawionym w pierwszej części tego artykułu.

Dzięki wieloprotokołowemu, zintegrowanemu 2-portowemu switchowi Ethernet fido5000, który polecany jest do pracy w czasie rzeczywistym, układy ADI umożliwiają lepsze stworzenie rozwiązania dla deterministycznych aplikacji wrażliwych na czas.

Opóźnienia wprowadzone przez układy PHY i switche są wymienione w tabeli 1, przy założeniu, że analiza bufora odbioru jest oparta na adresie docelowym i przy sieci pracującej z prędkością 100 Mbps. Dla przykładu, agregując te opóźnienia przy sieci liniowej 7-osiowej obrabiarki numerycznej i włączając taktowanie pełnego ładunku dla końcowego węzła (patrz 3a na rysunku 4), całkowite opóźnienie transmisji można wyliczyć w następujący sposób:

6×TL_1node+TBW+Tnode7=6×(248 ns+330 ns+1120 ns+58 ns)+5760 ns+(248 ns+1120 ns+58×80 ns)=22,3 μs.

gdzie 58×80 ns reprezentuje pozostały, 58-bajtowy pakiet danych, pozostały po odczytaniu preambuły i bajtów adresu docelowego.

Obliczenia zakładają, że nie ma innego ruchu w sieci lub że sieć jest zarządzana tak, aby umożliwić priorytetowy dostęp dla ruchu wrażliwego na czas. Jest to również w pewnym stopniu zależne od protokołu, z niewielkimi różnicami w obliczeniach, w zależności od konkretnego używanego protokołu przemysłowego Ethernetu. Odnosząc się do rysunku 2, w systemie z czasami cyklu do 50 μs do 100 μs, transmisja ramki do najdalszego węzła może zająć prawie 50% tego cyklu, skracając czas dostępny na aktualizację ustawień systemu sterowania silnikiem i wykonanie niezbędnych obliczeń przez algorytm sterowania dla następnego cyklu. Dlatego też minimalizacja czasu transmisji jest ważna dla optymalizacji wydajności systemu, ponieważ umożliwia dłuższe i bardziej złożone obliczenia sterujące. Biorąc pod uwagę, że opóźnienia związane z transmisją danych są stałe i związane z przepustowością siei, wykorzystanie komponentów o niskich opóźnieniach, takich jak ADIN1200 czy fido5000, jest kluczem do optymalizacji działania układu, zwłaszcza gdy wzrasta liczba węzłów (na przykład 12 osi dla maszyny CNC) i skracają się czasy cykli.

Przejście na gigabitowy Ethernet radykalnie zmniejsza wpływ opóźnienia wynikającego z przepustowości sieci, ale zwiększa proporcję całkowitego opóźnienia wprowadzanego przez przełącznik i komponenty warstwy fizycznej. Na przykład 12-osiowa maszyna CNC w sieci gigabitowej będzie miała opóźnienie transmisji sieciowej wynoszące około 7,5 μs. Składowa wynikająca z przepustowości sieci jest pomijalna i nie ma większego znaczenia, czy używane są minimalne, czy maksymalne rozmiary ramek Ethernet. Opóźnienie sieci jest podzielone w przybliżeniu równo między warstwę fizyczną i switche, co podkreśla wartość w minimalizowaniu opóźnień w tych elementach, gdy systemy przemysłowe zbliżają się do prędkości gigabitowych, skracają się czasy cykli sterowania (EtherCAT osiąga na przykład czas cyklu równy 12,5 μs), a liczba węzłów rośnie z uwagi na dodawanie kolejnych czujników podłączonych do sieci Ethernet w sieci sterowania i spłaszczenie topologii sieci.

Podsumowanie

W wysokowydajnych, wieloosiowych aplikacjach ruchu synchronicznego wymagania dotyczące taktowania systemów sterowania są jasne – muszą być one precyzyjne, deterministyczne i krytyczne czasowo, z wymogiem minimalizacji opóźnień w transmisji, zwłaszcza gdy czasy cykli sterowania stają się krótsze, a złożoność algorytmu sterowania wzrasta.

Elementy warstwy fizycznej o niskim opóźnieniu i wbudowane switche stają się ważnymi elementami optymalizacji tych systemów. Aby sprostać wyzwaniom przedstawionym w tym artykule, firmy takie jak Analog Devices wprowadzają nowe układy scalone do pracy w sieciach o różnej przepustowości z minimalnymi opóźnieniami w transmisji danych.

Nikodem Czechowski, EP

Źródła:

Artykuł ukazał się w
Elektronika Praktyczna
listopad 2020
DO POBRANIA
Pobierz PDF Download icon

Elektronika Praktyczna Plus lipiec - grudzień 2012

Elektronika Praktyczna Plus

Monograficzne wydania specjalne

Elektronik lipiec 2021

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio lipiec - sierpień 2021

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka Podzespoły Aplikacje lipiec 2021

Automatyka Podzespoły Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna lipiec 2021

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Elektronika dla Wszystkich sierpień 2021

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów