Trzy rzeczy, które musisz wiedzieć o TwinCAT 3

| Technika

TwinCAT 3 to nowoczesne narzędzie programistyczne pozwalające na tworzenie złożonych i jednocześnie cechujących się dużą elastycznością oraz modułowością systemów sterowania. Pozwala ono na programowanie w językach opisanych w normie IEC 61131-3, ale też w takich standardowych jak m.in. C/C++, C#, .NET, Visual Basic, a nawet korzystanie z graficznych w oprogramowaniu Matlab/Simulink. Tak tworzone moduły mogą być łatwo integrowane w jednym systemie sterowania i uruchamiane na różnych platformach sprzętowych, w tym z procesorami wielordzeniowymi. Zapewnia to nie tylko wysoką wydajność i skalowalność, ale tworzy od dawna oczekiwany pomost pomiędzy światem automatyki i informatyki.

Trzy rzeczy, które musisz wiedzieć o TwinCAT 3

TwinCAT stanowi centralny element software'owy platformy sterowania PC-based oferowanej przez firmę Beckhoff Automation. Dzięki niemu praktycznie każdy system komputerowy może stać się sterownikiem czasu rzeczywistego, dając możliwość uruchamiania wielu modułów sterujących - od sterowania logicznego do zaawansowanej kontroli ruchu.

W wersji TwinCAT 3 dodanych zostało wiele nowych możliwości, które wspólnie tworzą architekturę eXtended Automation (XA). Zapewnia ona wsparcie dla standardów przemysłowych w zakresie sterowania oraz języków oprogramowania wysokiego poziomu - zarówno podczas tworzenia aplikacji, jak też jej uruchamiania i debugowania.

Rys. 1. eXtended Automation daje możliwość programowania zarówno w językach czasu rzeczywistego, jak też korzystania z licznych standardowych w branży IT metod kodowania

Rys. 2. TwinCAT 3 to możliwość pełnej integracji z Visual Studio

Oprogramowanie zostało zintegrowane z popularnym środowiskiem Microsoft Visual Studio, co daje projektantom systemów automatyki dostęp do wielu nowoczesnych narzędzi programistycznych. Aby jednak ograniczyć wzrost stopnia skomplikowania oprogramowania urządzeń i systemów, zastosowano strukturę modułową, gdzie poszczególne elementy większego systemu być mogą stworzone w różnych językach programowania, a następnie efektywnie zintegrowane i uruchomione z wykorzystaniem systemu TwinCAT.

Po pierwsze: programowanie zgodnie z IEC 61131-3, możliwość korzystania z c/c++ oraz projektów Matlab/Simulink

IEC 61131 to norma dla sterowników programowalnych, w której - w części 3. - opisane zostały standardowe języki programowania. O ile dawniej do tworzenia systemu sterowania wykorzystywano często języki właściwe dla danego PLC i definiowane przez jego producenta, o tyle unifikacja kilku standardowych metod tworzenia kodu opisana w normie IEC 61131-3 zapewniła jednolitość tworzenia projektów i możliwość uniezależnienia programu od sprzętu. Dała ona też możliwość łatwej analizy i symulowania działania systemów, a także uprościła korzystanie ze sterowników w wersjach PC-Based (wirtualnych, uruchamianych jako program).

Wszystkie powyższe możliwości zapewnia również TwinCAT 3. Pozwala on na programowanie w pięciu standardowych językach (tekstowo i graficznie), zapewnia enkapsulację danych oraz możliwość korzystania z rozszerzeń obiektowych - tworzenia interfejsów, metod, dodawania atrybutów, itd. eXtended Automation to także możliwość tworzenia modułów uruchomieniowych w językach C/C++. Projekt w nich stworzony podlega kompilacji do maszyny stanów wykorzystywanej w standardowych modułach TwinCAT, natomiast integracja środowiska programistycznego z Visual Studio zapewnia efektywne tworzenie, uruchamianie i debugowanie kodu źródłowego.

Rys. 3. Edytor w TwinCAT 3 wspierający języki zdefiniowane w IEC 61131-3 - na rysunkach widoczny jest w postaci zintegrowanej w oprogramowaniu Visual Studio

Rys. 4. Projekt kontrolera temperatury stworzony w oprogramowaniu Matlab/Simulink i jego wersja w oprogramowaniu TwinCAT

TwinCAT umożliwia również korzystanie z projektów w środowisku symulacyjnym Matlab/Simulink, co powinni docenić szczególnie inżynierowie oraz naukowcy niezajmujący się na co dzień programowaniem. Projekt tworzony jest w języku graficznym (patrz rysunek), możliwe jest przy tym korzystanie ze standardowych modułów (w tym zaawansowanych, takich jak fuzzy logic), a następnie symulowanie i optymalizacja pracy systemu. Ten ostatni jest w automatyczny sposób przetwarzany do postaci standardowej dla oprogramowania TwinCAT 3 i może być, ze względu na wyświetlanie w postaci sparametryzowanej, łatwo zmieniany w czasie rzeczywistym.

Po drugie: zintegrowane bezpieczeństwo funkcjonalne i motion control

Rys. 5. TwinCAT 3 to również zintegrowane bezpieczeństwo i kompletna platforma dla aplikacji Motion Control

Zintegrowana kontrola ruchu? Wsparcie dla funkcji bezpieczeństwa? Wszystko to również jest możliwe z systemem TwinCAT 3! W ramach eXtended Automation zapewnia on możliwość tworzenia skalowalnych rozwiązań Motion Control, które obejmują zakres od standardowych aplikacji z ruchem point-to-point do zaawansowanych systemów kontroli ruchu robotów.

TwinCAT 3 w wersji NC PTP zapewnia możliwość stworzenia elektronicznej przekładni, krzywki oraz aplikacji typu latająca piła. Z kolei wersja NC I pozwala na wieloosiową interpolację ruchu, zaś TwinCAT 3 CNC ma funkcjonalność umożliwiający sterowanie maszynami CNC z wykorzystaniem do 32 osi na kanał. Wspomniane możliwości kontroli ruchu robotów dostępne są z kolei dla wersji Robotics - w przypadku najnowszej wersji oprogramowania TwinCAT 3.1 również dla robotów 6-osiowych i platformy Stewarda. W każdym z przypadków konfiguracja, uruchomienie, diagnostyka odbywają się z wykorzystaniem jednego środowiska, co zapewnia integrację sterowania logicznego (PLC) oraz ruchu (Motion Control).

Oprogramowanie TwinCAT wspiera też zintegrowane funkcje bezpieczeństwa. Użytkownik ma możliwość graficznego projektowania aplikacji bezpieczeństwa, korzystając z bloków funkcyjnych. Te ostatnie obejmować mogą elementy niezależne od konfiguracji sprzętowej, do tego zapewniona jest automatyczna weryfikacja projektów oraz tworzenie dokumentacji.

Po trzecie: modułowość i wsparcie dla procesorów wielordzeniowych

Rys. 6. Dzięki przetwarzaniu projektów do postaci standardowych modułów, TwinCAT 3 może uruchamiać wiele zadań równolegle, wykorzystując procesory wielordzeniowe

Standaryzowane moduły pozwalają na uruchamianie projektów stworzonych dla różnych platform sterowania. TwinCAT 3 w trybie eXtended Automation Runtime pozwala na jednoczesną pracę wielu modułów dla sterowników PLC, sterowników numerycznych (NC), a także wersji CNC i kontrolerów robotów (RC). Do tego uruchamiane mogą być moduły w języku C/C++ i inne wcześniej opisane, przy czym każdy z nich ma standaryzowaną dla użytkownika formę i może swobodnie wymieniać dane z pozostałymi elementami systemu.

TwinCAT 3 pozwala też na efektywnie, korzystanie z procesorów wielordzeniowych. Moduły programu mogą być przydzielane do konkretnych rdzeni w czasie rzeczywistym, a ich wykonywanie będzie przebiegało w sposób wysoce deterministyczny nawet przy bardzo krótkich czasach cyklu. Firma Beckhoff oferuje klientom różne platformy komputerowe, co pozwala precyzyjnie dobrać hardware do tworzonej aplikacji pod względem wymaganej wydajności i funkcjonalności.

 

Beckhoff Automation
www.beckhoff.pl