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 kwiecień 2021

Elektronik

Magazyn elektroniki profesjonalnej

Raspberry Pi 2015

Raspberry Pi

Wykorzystaj wszystkie możliwości wyjątkowego minikomputera

Świat Radio marzec 2021

Świat Radio

Magazyn krótkofalowców i amatorów CB

Automatyka Podzespoły Aplikacje marzec 2021

Automatyka Podzespoły Aplikacje

Technika i rynek systemów automatyki

Elektronika Praktyczna kwiecień 2021

Elektronika Praktyczna

Międzynarodowy magazyn elektroników konstruktorów

Praktyczny Kurs Elektroniki 2018

Praktyczny Kurs Elektroniki

24 pasjonujące projekty elektroniczne

Elektronika dla Wszystkich kwiecień 2021

Elektronika dla Wszystkich

Interesująca elektronika dla pasjonatów