Zastosowanie SoftMotion dla sterowników Astraada ONE do programowania serwonapędów w standardzie PLCopen

| Prezentacje firmowe Silniki i napędy

Programowanie serwonapędów może zostać zrealizowane za pomocą standardu nazywanego PLCopen. Czyni to proces programowania łatwiejszym i jest szczególnie przydatne przy programowaniu maszyn wieloosiowych. Biblioteka SoftMotion udostępnia tę funkcjonalność użytkownikom sterowników PLC Astraada One.

Zastosowanie SoftMotion dla sterowników Astraada ONE do programowania serwonapędów w standardzie PLCopen

Najczęstszym zastosowaniem opisywanego rozwiązania jest konieczność synchronizacji osi, co oznacza, że w maszynie występuje oś wiodąca – tzw. master, oraz podrzędna lub wiele osi podrzędnych – zwanych też Slave. Typowe zastosowania biblioteki SoftMotion to:

  • aplikacje typu weź i odłóż (np. pobranie detalu i umieszczenie go w określonym miejscu w półprodukcie przesuwanym na taśmociągu – a więc synchronizacja pozycji i prędkości z taśmociągiem),
  • nadruki na produktach i opakowaniach,
  • wtryskarki wykorzystujące zmianę w locie sterowania pozycją na sterowanie momentem siły.

Istnieją dwa sposoby sprzęgania osi:

1. Prędkość osi podrzędnej jest wprost proporcjonalna do prędkości osi wiodącej

 
Rys. 1.

Współczynnik sprzężenia może być dowolną liczbą, w tym również ułamkiem czy też liczbą ujemną – w tej ostatniej sytuacji nastąpi zamiana kierunku ruchu osi podrzędnej. Ten sposób sprzężenia nazywany jest z angielskiego Follower (oś podrzędna podążająca za osią wiodącą) lub Gear (przekładnia). Przykład sprzężenia osi o współczynniku 1/3 widzimy na rysunku 1.

Szczególnym rodzajem tego typu sprzężenia jest GearInPos, który również służy do zsynchronizowania prędkości osi podrzędnej z osią nadrzędną, ale dodatkowo umożliwia określenie sposobu dochodzenia osi do momentu zsynchronizowania. Sposób dochodzenia do synchronizacji osi definiowany jest przez parametry: MasterSynchPosition (punkt synchronizacji), SlaveSynchPosition (punkt synchronizacji), MasterStartDistance (droga osi wiodącej poprzedzająca punkt synchronizacji, podczas której oś podrzędna ma możliwość rozpędzenia, aby dojść do synchronizacji). Przykład takiej synchronizacji pokazuje rysunku 2.

 
Rys. 2.

Sprzężenie GearInPos znajduje zastosowanie np. w aplikacjach typu "cięcie w locie".

2. Pozycje osi podrzędnej są przyporządkowane do pozycji osi wiodącej

Zwykle określa się to w postaci wykresu lub tabeli, podając nie wszystkie punkty, lecz jedynie te bardziej charakterystyczne i dokonując interpolacji pomiędzy nimi. Stopień wielomianu użytego do interpolacji jest konfigurowany np. w zakresie od 1 do 5. Im więcej punktów charakterystycznych oraz niższy stopień wielomianu, tym wierniej przybliżony zostaje kształt przebiegu, ale im wyższy stopień wielomianu, tym łagodniejsze przejścia pomiędzy fragmentami przebiegu – tak więc programistę czeka zadanie polegające na jak najlepszym przygotowaniu tzw. elektronicznej krzywki CAM.

Nazwa krzywki została zaczerpnięta ze starych implementacji takich rozwiązań za pomocą mechanicznych krzywek CAM, jednak obecnie wszystko odbywa się drogą programową, a więc zmiana krzywki CAM może nastąpić błyskawicznie. Dodatkowo w tym sposobie sprzężenia można używać mechanizmu zwanego DRUM czy też TAP, polegającego na tym, że po osiągnięciu ustalonych pozycji przez oś wiodącą będą załączane lub wyłączane szybkie wyjścia w serwonapędzie, tj. bez udziału głównego programu sterownika. Prosty edytor CAM jest zazwyczaj wbudowany w oprogramowanie narzędziowe, ale można też krzywkę CAM przygotować w innym oprogramowaniu, a następnie zaimportować. Przykład krzywki CAM (zależność pozycji osi podrzędnej od pozycji osi wiodącej) z podglądem na parametry pochodne, takie jak prędkość, przyspieszenie i szarpnięcie, widać na rysunku 3.

 
Rys. 3.

Przykładowe zastosowania krzywek CAM to aplikacja nanoszenia kleju na obrys detalu albo frezowanie krawędzi, obróbka arkusza blachy w locie na taśmociągu itd.

Bloki z biblioteki

Aby móc programować serwonapędy w standardzie PLCopen z wykorzystaniem sterowników PLC Astraada One, korzystamy z biblioteki SoftMotion, stosując typowe dla tego standardu bloki funkcyjne. Programowanie w standardzie PLCopen jest wygodne ze względu na parametry wejściowe i wyjściowe poleceń w tym języku. Najczęściej w blokach funkcyjnych z tzw. grupy MOTION występują: wejście wyzwalające wykonanie polecenia oraz wejścia parametryzujące ruch, np. prędkość, przyspieszenie, szarpnięcie, dystans. Występują także wyjścia, których rolą jest informowanie, czy ruch został zakończony bądź czy jest w trakcie lub też czy zakończył się błędem (podawany wtedy jest kod błędu).

Wejścia i wyjścia tych bloków funkcyjnych znacząco ułatwiają tworzenie sekwencji ruchu, bo przed przejściem do kolejnej fazy wystarczy sprawdzić wyjście bloku funkcyjnego informującego, czy ruch już zakończył poprawnym wykonaniem (wyjście Done). Z kolei wyjścia informujące o błędzie upraszczają diagnozowanie pracy serwonapędu, bowiem wiadomo, przy jakim ruchu serwonapęd ewentualnie zatrzymał się i jaka była tego przyczyna. Warto zaznaczyć, że dla każdego polecenia ruchu parametry takie, jak np. dystans, prędkość czy przyspieszenie, zadawane są indywidualnie.

Ciekawą funkcjonalnością jest opcja tworzenia osi wirtualnych. Taką oś można też ustanowić osią wiodącą dla całej maszyny, a osie fizyczne skonfigurować jako podrzędne. Biblioteka SoftMotion zawiera też obiekty do wizualizacji pracy serwonapędów, co przyspiesza programowanie i uruchamianie serwonapędów.

 

Grzegorz Faracik

ASTOR
www.astor.com.pl