Oprogramowanie do komputerowego sterowania urządzeń numerycznych (CNC) pozwala operatorom na tworzenie programów, analizowanie statusu maszyn i rzeczywistych wymiarów wykorzystywanych narzędzi. Dzieje się to poprzez integrację procesów i procedur przetwarzania danych oraz wykorzystanie standardowej architektury sprzętowej PC i wbudowanych narzędzi wirtualizacji . W efekcie możliwa jest poprawa obróbki maszynowej przez zmianę trajektorii lub parametrów obróbki oraz sprawdzanie wyników.
Architektura PC wykorzystywana do komputerowego sterowania urządzeń numerycznych (Computer Numerical Control ? CNC) może zredukować koszty systemu przez połączenie funkcji interfejsów HID (Human Input Devices lub Human Interface Device ? urządzeń do wprowadzania danych przez człowieka) z deterministycznym sterowaniem maszynami oraz wsparciem obsługi interfejsów sieciowych. Niezależność sprzętowa, która przychodzi wraz z działaniem oprogramowania CNC na standardowych komputerach typu PC, pozwala klientom na wybór platformy najlepszej dla ich potrzeb oraz dobranie odpowiedniej technologii w miarę jej rozwoju. Klienci nie są przywiązani do konkretnego dostawcy sprzętu, a standardy PC zapewniają uzyskanie maksimum funkcjonalności. Maszyny CNC mogą zawierać wiele platform obliczeniowych: zazwyczaj jedną do obsługi operatorów, interfejsy do opracowywania oprogramowania i oprogramowanie do śledzenia procesu oraz przynajmniej jedną do sterowania ruchami i działaniem procesu obróbki maszynowej.
Taki projekt może dać oczekiwane wyniki, gdy oprogramowanie do danej aplikacji, obsługujące dwie funkcje, jest uruchamiane w różnych środowiskach operacyjnych. Wiele pochodzących od rozmaitych firm pakietów oprogramowania interfejsów operatorskich HMI (Human-Machine Interface, człowiek-maszyna) oraz do sterowania procesem technologicznym bazuje na technologii opracowanej dla komputerów PC, podczas gdy oprogramowanie sterujące pracą maszyn zwykle opiera się na systemach operacyjnych zoptymalizowanych pod względem odpowiedzi na zdarzenia generowane sprzętowo w czasie rzeczywistym. Uniwersalne systemy operacyjne, takie jak niektóre wersje Windows czy Linux, są przeznaczone do aplikacji obsługiwanych bezpośrednio przez człowieka, ale mogą się okazać zawodne w reakcji na bardzo szybko zmieniające się procesy, charakterystyczne dla obróbki maszynowej, występujące w szczególności w precyzyjnych obrabiarkach.
Obróbka CNC w czasie rzeczywistym
? Pod względem odpowiedzi w czasie rzeczywistym aplikacje CNC są bardzo wymagające ? twierdzi Andrea De Nardis, kierownik działu badawczo-rozwojowego firmy ISAC, która stworzyła niezależną od sprzętu platformę programową CNC.
Sterowanie bardzo szybkimi ruchami narzędzi pomiędzy punktami docelowymi wymaga prowadzenia matematycznych interpolacji w czasie krótszym od 1 ms, podczas gdy interfejsy sieciowe, takie jak EtherCAT, protokół ethernetowy zarządzany przez Grupę Technologii EtherCAT (EtherCAT Technology Group ? ETG), mogą wymagać bardzo krótkich czasów skanowania ? zaledwie 250 ?s. Każda operacja musi być zarządzana jednocześnie, bez straty danych, a trzeba pamiętać, że obróbka danych roboczych jest kontynuowana w środowisku Microsoft Windows. Zdaniem De Nardisa niektóre systemy operacyjne oparte na komputerach PC mogą nie być w stanie zrealizować tego typu zadań.Dotyczy to również platform wielordzeniowych, podczas długotrwałych testów i okresów pracy. Oprogramowanie bez stronicowania pamięci i z ograniczeniami harmonogramów zadań może nie być wyposażone w wymaganą charakterystykę działania do obsługi aplikacji dla wspomaganej komputerowo obróbki maszynowej (Computer-Aided Machining ? CAM), z zaawansowanymi funkcjonalnie i graficznie interfejsami HMI.
Wbudowana wirtualizacja
Integracja sterowania pracą maszyn oraz funkcji realizowanych przez człowieka na tej samej platformie obliczeniowej wymaga jednoczesnej obsługi każdego z przeznaczonych im środowisk operacyjnych. Kluczem do rozwiązania takiego wsparcia jest specjalny rodzaj wirtualizacji programowej, zwanej wirtualizacją wbudowaną (embedded virtualization).
W odróżnieniu od wirtualizacji obecnie używanych na serwerach aplikacji, gdzie wiele kopii tego samego systemu operacyjnego (OS) jest uruchomionych na platformie serwera, wirtualizacja wbudowana pozwala na uruchamianie różnych systemów operacyjnych, opracowanych specjalnie do realizacji różnych typów zadań, na tej samej platformie, z jednoczesnym zachowaniem determinizmu czasu rzeczywistego danego systemu operacyjnego (patrz: rysunek).
? W naszych projektach polegamy na wbudowanej wirtualizacji, która umożliwia uruchamianie wielu środowisk operacyjnych na standardowym komputerze PC w tym samym czasie, bez utraty szybkości działania w czasie rzeczywistym ? mówi Andrea De Nardis. ? Bez wbudowanej wirtualizacji zapewnienie determinizmu byłoby możliwe jedynie przy wykorzystaniu droższego podejścia wieloplatformowego, z komputerem przeznaczonym do sterowania w czasie rzeczywistym.
Obsługa uniwersalnej magistrali danych
Standard EherCAT jest wykorzystywany w głównej, sprzęgającej, obiektowej magistrali danych (fieldbus), ponieważ obsługuje go duża liczba dostawców modułów wejść/wyjść (I/O) oraz serwomechanizmów. Interfejs ten obsługuje komunikację w pełni dwukierunkową (full-duplex), z prędkością 100 Mb/s, wymianę informacji bez buforowania danych oraz usługę synchronizacji zegarów w systemach rozproszonych, która umożliwia synchronizację odległych urządzeń typu slave w czasie rzędu nanosekund.
Twórcy opisywanej platformy programowej CNC zaadaptowali ten standard wraz ze zintegrowanym konfiguratorem. Interfejsy wejść/wyjść oraz sieciowe działają tu jako oddzielne technologiczne procesy przetwarzające dane w systemie operacyjnym czasu rzeczywistego (RTOS), co zapewnia spełnienie wymagań czasowych dla interfejsów oraz realizację innych zadań.
Uruchamianie oprogramowania CNC na standardowej platformie PC oznacza także, że powszechnie używane pakiety oprogramowania dla komputerów PC mogą być wykorzystywane do opracowywania oprogramowania aplikacyjnego. Przykładowo, aby skrócić i ułatwić proces przygotowania oprogramowania do aplikacji zarówno czasu rzeczywistego, jak i działajacych w systemie Microsoft Windows, tworzy się i debuguje aplikacje do oprogramowania czasu rzeczywistego za pomocą środowiska programistycznego Microsoft Visual Studio.
Poprzez integrację procesów przetwarzania danych i wykorzystanie standardowej architektury platformy komputerów PC oraz wbudowanej wirtualizacji, zastosowane oprogramowanie pozwoliło operatorom na tworzenie programów, które analizują rzeczywisty status sterowanej maszyny. Uwzględniają np. rzeczywiste wymiary narzędzi oraz usprawniają procesy obróbki maszynowej przez wprowadzanie zmian trajektorii ruchu narzędzi lub zmiany parametrów procesu technologicznego, z natychmiastowym sprawdzeniem wyników realizowanych przez maszynę operacji.
Autor: Kim Hartman jest wiceprezesem ds. sprzedaży i marketingu firmy.
Tekst pochodzi z nr 5/2016 magazynu "Control Engineering". Jeśli Cię zainteresował, ZAREJESTRUJ SIĘ w naszym serwisie, a uzyskasz dostęp do darmowej prenumeraty w formie drukowanej i/lub elektronicznej.