Tworzenie aplikacji czasu rzeczywistego z użyciem sprzętu i oprogramowania National Instruments



Podobne dokumenty
Większe możliwości dzięki LabVIEW 2009: programowanie równoległe, technologie bezprzewodowe i funkcje matematyczne w systemach czasu rzeczywistego

Systemy wbudowane. Paweł Pełczyński

PROGRAMOWALNE STEROWNIKI LOGICZNE

Opracował: Jan Front

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

Materiały dodatkowe. Simulink Real-Time

Narzędzia uruchomieniowe dla systemów Embedded firmy Total Phase

Instrukcja użytkownika ARSoft-WZ1

ActiveXperts SMS Messaging Server

Embedded Solutions Automaticon Efektywne pomiary i sterowanie przy użyciu systemu wbudowanego MicroDAQ

1. Opis aplikacji. 2. Przeprowadzanie pomiarów. 3. Tworzenie sprawozdania

Skrócony przewodnik OPROGRAMOWANIE PC. MultiCon Emulator

Modularny system I/O IP67

NOWY OPIS TECHNICZNY PRZEDMIOTU ZAMÓWIENIA

Architektura komputerów

Wittmann 4.0 wtryskarka jako centrum sterowania urządzeniami peryferyjnymi

ASEM UBIQUITY PRZEGLĄD FUNKCJONALNOŚCI

Wersja podstawowa pozwala na kompletne zarządzanie siecią, za pomocą funkcji oferowanych przez program:

Podstawa rozwiązań sterowania przemysłowego na komputerach PC. Software Controller. siemens.pl/software-controller

Cyfrowy wzmacniacz AED dla przetworników tensometrycznych.

Schemat blokowy karty

Komputerowe systemy pomiarowe. Dr Zbigniew Kozioł - wykład Mgr Mariusz Woźny - laboratorium

Tworzenie oprogramowania

Programowanie sterowników przemysłowych / Jerzy Kasprzyk. wyd. 2 1 dodr. (PWN). Warszawa, Spis treści

1 Moduł Konwertera. 1.1 Konfigurowanie Modułu Konwertera

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

U M L. System operacyjny Linux zagnieżdżony w zewnętrznym systemie operacyjnym (Linux)

Laboratorium Komputerowe Systemy Pomiarowe

Podstawy Techniki Komputerowej. Temat: BIOS

Serwer główny bazodanowy. Maksymalnie 1U RACK 19 cali (wraz ze wszystkimi elementami niezbędnymi do zamontowania serwera w oferowanej szafie)

DigiPoint Karta katalogowa DS 5.00

Szczegółowy Opis Przedmiotu Zamówienia: Zestaw do badania cyfrowych układów logicznych

1.6 INFORMACJE OGÓLNE O STEROWNIKACH XL6 i XL6e

WPROWADZENIE Mikrosterownik mikrokontrolery

DigiPoint mini Karta katalogowa DS 6.00

InPro BMS InPro BMS SIEMENS

KATEDRA SYSTEMÓW MULTIMEDIALNYCH SEMINARIUM MULTIMEDIALNE SYSTEMY MEDYCZNE

Przegląd rodziny produktów. InspectorP64x Konfigurowalna. Programowalna. Ekonomiczna. Szybka. SYSTEMY WIZYJNE 2D

Cechy systemu X Window: otwartość niezależność od producentów i od sprzętu, dostępny kod źródłowy; architektura klient-serwer;

Wybrane bloki i magistrale komputerów osobistych (PC) Opracował: Grzegorz Cygan 2010 r. CEZ Stalowa Wola

Modułowy programowalny przekaźnik czasowy firmy Aniro.

1. Opis. 2. Wymagania sprzętowe:

OPIS TECHNICZNY PRZEDMIOTU ZAMÓWIENIA

Systemy na Chipie. Robert Czerwiński

LEKCJA TEMAT: Zasada działania komputera.

Systemy zdalnego zarządzania i monitoringu: Carel platforma PRO. Tomasz Andracki, Bydgoszcz

Programowanie niskopoziomowe. dr inż. Paweł Pełczyński

Robert Barański, AGH, KMIW Writing TDM and TDMS Files in LabVIEW v1.0

sterownik VCR v 1. 0

Projekt i implementacja filtra dzeń Pocket PC

Rys. 1. Schemat ideowy karty przekaźników. AVT 5250 Karta przekaźników z interfejsem Ethernet

Kontrola topto. 1. Informacje ogólne. 2. Wymagania sprzętowe i programowe aplikacji. 3. Przykładowa instalacja topto. 4. Komunikacja.

Praca dyplomowa. Program do monitorowania i diagnostyki działania sieci CAN. Temat pracy: Temat Gdańsk Autor: Łukasz Olejarz

1. Podstawowe wiadomości Możliwości sprzętowe Połączenia elektryczne Elementy funkcjonalne programów...

Czujniki obiektowe Sterowniki przemysłowe

Skrócony przewodnik OPROGRAMOWANIE PC. MultiCon Emulator

Przegląd rozwiązań z oferty firmy 4D Systems

SYSTEMY OPERACYJNE I SIECI KOMPUTEROWE

SZCZEGÓŁOWY OPIS PRZEDMIOTU ZAMÓWIENIA Część 1: Dostawa sprzętu serwerowego i sieciowego oraz oprogramowania

Spis treści. Wykaz ważniejszych skrótów Wprowadzenie Rdzeń Cortex-M Rodzina mikrokontrolerów XMC

Oprogramowanie. Przemyślane, niezawodne, przyjazne dla użytkownika

PUKP Programowanie urządzeń kontrolno-pomiarowych. ztc.wel.wat.edu.pl

Instrukcja podstawowego uruchomienia sterownika PLC LSIS serii XGB XBC-DR20SU

System powiadamiania TS400

BCS-NVR0402. Rejestrator sieciowy IP 4 kanałowy

Szeroki zakres napięcia zasilania

OPTIMA PC v Program konfiguracyjny dla cyfrowych paneli domofonowy serii OPTIMA ELFON. Instrukcja obsługi. Rev 1

Pentaplex - Systemy Zabezpieczeń Utworzono : 22 czerwiec 2017

Rejestratory Sił, Naprężeń.

Automatyka i Robotyka studia stacjonarne drugiego stopnia

Szkolenia specjalistyczne

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.

1. Serwer rack typ 1 Liczba sztuk: 2

Modernizacja zestawu komputerowego. Marek Pudełko Urządzenia Techniki Komputerowej

Dział Dopuszczający Dostateczny Dobry Bardzo dobry Celujący

System realizacji prezentacji multimedialnych i zarządzania treścią. MODUS S.J. Wadowicka Kraków, Polska.

Komputery przemysłowe Moxa. Piotr Gocłowski, 20/05/2014

I Zestaw komputerowy: Stacja robocza i monitor wraz z oprogramowaniem systemowym i akcesoriami - 10 szt. STACJA ROBOCZA:

o Instalacja środowiska programistycznego (18) o Blink (18) o Zasilanie (21) o Złącza zasilania (22) o Wejścia analogowe (22) o Złącza cyfrowe (22)

Programator procesorów rodziny AVR AVR-T910

Pentaplex - Systemy Zabezpieczeń Utworzono : 21 lipiec 2017

Ćwiczenie Wstawianie spisu treści, indeksu alfabetycznego i indeksu ilustracji Wstaw > Indeksy i spisy > indeksy i spisy) Wskazówka:

Rok akademicki: 2030/2031 Kod: SEN EJ-s Punkty ECTS: 4. Poziom studiów: Studia II stopnia Forma i tryb studiów: Stacjonarne

Ćwiczenie Zmiana sposobu uruchamiania usług

SZCZEGÓŁOWY OPIS PRZEDMIOTU ZAMÓWIENIA CZĘŚĆ I

5. Napędy wewnętrzne 6. Obudowa: 7. Gniazda rozszerzeń 8. Porty i interfejsy zewnętrzne 1GB/s 9. Karta graficzna 10. Inne 11.

Mechatronika i szybkie prototypowanie układów sterowania

1.1 PANELE OPERATORSKIE WONDERWARE

Architektura komputerów

Czujniki podczerwieni do bezkontaktowego pomiaru temperatury. Czujniki stacjonarne.

ZAŁĄCZNIK NR 1.8 do PFU Serwery wraz z system do tworzenia kopii zapasowych i archiwizacji danych - wyposażenie serwerowni

Politechnika Łódzka. Instytut Systemów Inżynierii Elektrycznej

1. INSTALACJA SERWERA

Generator przebiegów pomiarowych Ex-GPP2

Wykorzystanie standardu JTAG do programowania i debugowania układów logicznych

<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>

Instrukcja obsługi programu CMS Dla rejestratorów HANBANG

EGZAMIN POTWIERDZAJĄCY KWALIFIKACJE W ZAWODZIE Rok 2017 CZĘŚĆ PRAKTYCZNA

2. Architektura mikrokontrolerów PIC16F8x... 13

Program nadzorczy - KaDe PREMIUM zawarty w cenie kontrolera. elshop

Transkrypt:

Tworzenie aplikacji czasu rzeczywistego z użyciem sprzętu i oprogramowania National Instruments Aplikacje czasu rzeczywistego znajdują zastosowanie przede wszystkim w przemyśle, ale są też bardzo użyteczne w wielu innych dziedzinach, takich jak miernictwo, w których konieczne jest utrzymanie precyzyjnych rygorów czasowych. Stworzenie aplikacji spełniającej to wymaganie nie musi być trudne. Zadanie to można sobie ułatwić korzystając z oprogramowania NI LabVIEW lub NI LabWindows/CVI i kompatybilnego z nim sprzętu firmy National Instruments. W artykule pokażemy, jak to zrobić. Krok po kroku Kursy EP W celu tworzenia aplikacji czasu rzeczywistego, w oparciu o produkty firmy National Instruments, konieczne jest wybranie środowiska programistycznego. Firma ta oferuje dwa produkty: bardziej popularne i rozbudowane, a zarazem rekomendowane graficzne środowisko NI LabVIEW oraz oprogramowanie NI LabWindows/CVI, w którym programuje się z użyciem języka ANSI C. Programowanie w LabVIEW W przypadku aplikacji czasu rzeczywistego tworzonych w LabVIEW konieczny jest zakup pakietu oprogramowania wraz z modułem LabVIEW Real-Time. Pozwala on na projektowanie zaawansowanych, niezawodnych programów pracujących w pełni zgodnie z wymaganiami tzw. twardych systemów czasu rzeczywistego (hard real-time OS), uruchamianie ich na kompatybilnym sprzęcie i debugowanie, bez konieczności stosowania dodatkowych narzędzi. Użycie modułu LabVIEW Real-Time pozwala też na skorzystanie z większości dostępnych w LabVIEW algorytmów DSP i procedur matematycznych w tym funkcji sterowania PID na urządzeniach wbudowanych. Ponadto, dodatkowy moduł LabVIEW MathScript RT pozwala na uruchamianie skryptów matematycznych, pracujących z rygorami czasu rzeczywistego. Alternatywnie, moduł LabVIEW Simulation Interface Toolkit pozwala na korzystanie z modeli tworzonych w aplikacji Simulink firmy Mathworks. Rysunek 1. Okno Project Explorer pozwala na zarządzanie programami tworzonymi w LabVIEW. Tworzenie, ładowanie i uruchamianie aplikacji w LabVIEW RT Tworząc aplikacje czasu rzeczywistego w LabVIEW, wykorzystuje się okno Project Explorer, które pozwala na organizowanie programów (przyrządów wirtualnych VI) i dzielenie ich na kategorie, w zależności od platformy sprzętowej, na której mają być uruchamiane. Warto zauważyć, że projekt tworzony jest na dowolnym, klasycznym komputerze PC, pracującym pod kontrolą systemu Windows. Podłączenie do sprzętu przystosowanego do pracy w czasie rzeczywistym dokonuje się dopiero później, poprzez Ethernet. Proces tworzenia aplikacji czasu rzeczywistego jest praktycznie identyczny z programowaniem standardowych aplikacji LabVIEW dla komputera PC. Kilka dodatkowych funkcji, typowych dla systemów RT, jest dostępnych z przybornika funkcji (przyrządów wirtualnych) czasu rzeczywistego. Wśród nich znaleźć można: funkcje watchdog, automatycznie restartujące wskazane platformy sprzętowe, w sytuacji, gdy program przestanie odpowiadać, funkcje komunikacyjne do deterministycznego czasowo przesyłania danych pomiędzy poszczególnymi elementami aplikacji RT, narzędzia do konfiguracji funkcji podziału zadań pomiędzy poszczególne rdzenie procesorów w systemach wielordzeniowych, funkcje nadzorujące wykonywanie poszczególnych zadań i pętli w określonym czasie. W celu przetestowania stworzonego programu wystarczy kliknąć na ikonkę uruchamiania aplikacji. Zostanie ona wtedy automatycznie przeniesiona przez sieć Ethernet na docelową platformę sprzętową i uruchomiona. Następnie możliwe jest użycie standardowych narzędzi do debugowania, takich jak podświetlanie wykonywanych aktualnie operacji, praca krokowa i dodawanie punktów wstrzymania wykonywania programu. Wszystko to z poziomu komputera PC, pomimo że sama aplikacja uruchomiona jest na zdalnym systemie podłączonym przez Ethernet. Po zakończeniu programowania, możliwe jest utworzenie pliku wykonywalnego (.rtexe) i załadowanie go do docelowego sprzętu, jako programu uruchamianego na starcie urządzenia. To wystarcza, by działał on jako niezależna aplikacja czasu rzeczywistego. Priorytetyzacja sekcji kodu w LabVIEW Programowanie w oparciu o przepływ danych w LabVIEW uwalnia programistę od konieczności tworzenia sekwencyjnej architektury programu, typowej dla języków tekstowych. Ponieważ kolejność wykonywania 88 ELEKTRONIKA PRAKTYCZNA 7/2013 088-093_ni.indd 88 2013-07-25 11:23:28

Krok po kroku Kursy EP Rysunek 2. Konfiguracja priorytetów dla poszczególnych sekcji kodu w LabVIEW kodu wynika ze sposobu przepływu danych pomiędzy poszczególnymi elementami zdefiniowanymi w postaci graficznej, łatwo jest tworzyć aplikacje przystosowane do równoległego wykonywania wielu operacji. LabVIEW pozwala ponadto na ręczne sterowanie kolejnością wykonywania kodu poprzez przypisywanie priorytetów w ramach struktur pętli czasowych. Każda z pętli może mieć określone niezależnie źródło taktowania, okres, priorytet i kilka innych opcji. wstrzymywania wykonywania kodu. Wystarczą drobne modyfikacje, by aplikacja zapisywała informacje o szybkości swojej pracy do pliku i przesyłała je do komputera w celu podglądu i analizy. Narzędzie do śledzenia sposobu wykonywania kodu w czasie prezentuje przebiegi wątków, założone muteksy i zaalokowane bloki pamięci. Pozwala zoptymalizować wydajność aplikacji poprzez wykrywanie niepożądanych zdarzeń i hazardów wprowadzających opóźnienia lub grożących błędami w wykonywanych operacjach. Wybór platformy sprzętowej i modułów wejść/wyjść Wszystkie platformy sprzętowe National Instruments, przygotowane do pracy z systemami operacyjnymi czasu rzeczywistego mają wspólną architekturę, co oznacza, że programy napisane w LabVIEW Real-Time Module będą poprawnie działać na różnych pla tformach, bez konieczności wprowadzania większych modyfikacji. Konkretnie rzecz ujmując, każda z platform sprzętowych zawiera takie komponenty, jak mikroprocesor, pamięć RAM, pamięć nieulotną i interfejs do magistrali wejść i wyjść. Niektóre z platform sprzętowych mają ponadto wbudowane układy FPGA, które można programować za pomocą modułu LabVIEW FPGA. Platformy sprzętowe National Instruments istotnie różnią się między sobą i są przystosowane do różnych rodzajów aplikacji. W zależności od tego, czy potrzebna jest bardzo duża wydajność, czy niewielkie wymia- Obsługa wielu rdzeni w LabVIEW Moduł LabVIEW Real-Time obsługuje wykonywanie kodu w oparciu o wiele rdzeni procesora. Automatycznie tworzy oddzielne wątki dla równolegle działających sekcji kodu. Dzięki temu nie ma potrzeby ręcznego ich kreowania i zarządzania nimi. Domyślnie, wątki te są dynamicznie przypisywane do wykonywania na rdzeniach procesorów dostępnych w danej aplikacji. Jednakże, w celu dalszego zwiększenia wydajności i niezawodności, możliwe jest ręczne przypisanie poszczególnych pętli czasowych do poszczególnych rdzeni. Przykładowo, można zarezerwować wybrany rdzeń procesora tylko i wyłączenie do obsługi jednej, krytycznej czasowo pętli, i uniezależnić ją od mniej istotnych zadań, uruchamianych na pozostałych rdzeniach. Projekt w LabWindows/CVI W przypadku, gdy preferowanym językiem tworzenia kodu jest ANSI C, aby skorzystać z zalet sprzętu i algorytmów oferowanych przez National Instruments, można użyć środowiska programistycznego NI LabWindows/ CVI. Obsługę pracy w czasie rzeczywistym zapewnia moduł LabWindows/CVI Real-Time, który pozwala na tworzenie i uruchamianie takich programów na sprzęcie NI. Zostanie on omówiony w dalszej części artykułu. Zaawansowane debugowanie Środowisko programistyczne oferowane przez National Instruments pozwala też na zaawansowane debugowanie aplikacji wielordzeniowych. W tym celu należy użyć pakietu Real-Time Execution Trace Toolkit, który pozwala przeanalizować wydajność tworzonych programów, bez Rysunek 3. Stworzone w aplikacji pętle można automatycznie lub ręcznie przypisywać do dostępnych rdzeni procesora. Rysunek 4. Narzędzie Real-Time Execution Trace Toolkit dla LabVIEW i LabWindows/CVI. ELEKTRONIKA PRAKTYCZNA 7/2013 89 088-093_ni.indd 89 2013-07-25 11:23:28

Rysunek 5. Platforma PXI Rysunek 6. Przykładowy sterownik przemysłowy firmy National Instruments ry, czy też odporność na trudne warunki środowiskowe, optymalne będzie inne rozwiązanie. Warto zaznaczyć, że wszystkie platformy oferowane przez NI i przystosowane do pracy w czasie rzeczywistym mogą działać w pełni autonomicznie. Platforma PXI PXI to przemysłowy standard, na który składają się wytrzymałe obudowy ze zintegrowanymi układami wyzwalania i timerami, wbudowanym układem sterującym oraz miejscami na montaż kart z modułami wejść i wyjść. Wbudowany kontroler zawiera też porty szeregowe, USB, ethernetowe i GPIB. Urządzenia PXI mogą być programowane z użyciem zarówno LabVIEW Real-Time Module, jak i LabWindows/CVI Real-Time Module. Co więcej, kontrolery PXI pracujące pod kontrolą systemu Windows można przekształcić w systemy RTOS, nabywając licencję LabVIEW Real-Time Deployment. Możliwe jest również skonfigurowanie sprzętu do pracy w trybie dual-boot, kiedy to, czy platforma będzie działać pod kontrolą systemu czasu rzeczywistego czy Windows jest określane w konfiguracji BIOS. Pomocna w tworzeniu własnej, kompletnej platformy PXI może być aplikacja internetowa dostępna pod adresem: http://ohm.ni.com/ advisors/pxi. Platforma PXI jest często używana do najbardziej wymagających aplikacji, takich jak np. testowanie urządzeń elektronicznych na linii produkcyjnej lub analiza wibracji w systemach monitorowania stanu maszyn przemysłowych. Zastosowanie platformy PXI w aplikacjach czasu rzeczywistego pozwala na dostęp do zaawansowanych funkcji synchronizacji, które umożliwiają precyzyjne wyzwalanie wejść i wyjść oraz współpracę wielu modułów sprzętowych ze sobą. szeregowe, USB, czytnik kart CF i gniazdo ethernetowe. Mogą być programowane zarówno z poziomu LabVIEW, jak i LabWindows/CVI. Sterowniki przemysłowe firmy National Instruments stanowią idealny wybór w przypadku aplikacji czasu rzeczywistego, uruchamianych w trudnych warunkach środowiskowych, gdzie użycie aktywnego chłodzenia z zastosowaniem wentylatorów nie jest możliwe. Sterowniki można podłączać do innych urządzeń za pomocą sieci EtherCAT lub poprzez rozszerzenia zgodne z interfejsem MXIe. CompactRIO Ciekawą platformą sprzętową jest CompactRIO (Compact Reconfigurable I/O), które łączy w sobie procesor pracujący w czasie rzeczywistym, układ FPGA i moduły wejść i wyjść. Dodatkowo, posiada wbudowane interfejsy szeregowe, USB i ethernetowe. Bloki wejść i wyjść w CompactRIO są bezpośrednio podłączone do układu FPGA, co pozwala na bardzo szybkie przetwarzanie danych. Rezultaty tego przetwarzania są następnie dostępne dla głównego mikroprocesora platformy. Internetowa aplikacja do konfiguracji platformy CompactRIO znajduje się pod adresem: http://ohm.ni.com/advisors/ crio. Moduł LabVIEW Real-Time pozwala na programowanie wbudowanego w CompactRIO procesora czasu rzeczywistego, a moduł LabVIEW FPGA umożliwia konfigurację bramek w układzie FPGA. Alternatywnie, można zastosować mechanizm NI Scan Engine modułu LabVIEW Real-Time, który pozwala bezpośrednio komunikować główny mikroprocesor z modułami wejść i wyjść. Pomijamy w ten sposób konieczność samodzielnego programowania FPGA. Sterowniki CompactRIO są często używane w aplikacjach przemysłowych, w tym do monitorowania stanu maszyn, sterowania ruchem i logowania danych. Ponadto CompactRIO są idealne do szybkiego prototypowania systemów wbudowanych, co pozwala skrócić czas potrzebny na wprowadzenie produktu na rynek. Komputery jednopłytkowe sbrio Urządzenia platformy NI Single-Board RIO mają identyczną architekturę jak CompactRIO, ale oferowane są w postaci pojedynczych płytek drukowanych. Zawierają, tak samo jak CompactRIO, mikroprocesor zdolny do pracy w czasie rzeczywistym i programowalny układ FPGA. Dostępne są też liczne moduły wejść i wyjść, również oferowane w postaci płytek drukowanych. Platforma NI Single-Board RIO sprawdza się najlepiej w przypadku systemów produkowanych w dużej liczbie sztuk, wymagających elastyczności konfiguracji, dużej wydajności i niezawodności. Omawiane kontrolery cieszą się popularnością m.in. w zastosowaniach medycznych, robotyce i sterowaniu pojazdami bezzałogowymi. Krok po kroku Kursy EP Sterowniki przemysłowe Sterowniki przemysłowe oferowane przez National Instruments to odporne na trudne warunki środowiskowe, bezwentylatorowe urządzenia o dużej wydajności, wyposażone w pojedyncze gniazdo PCI lub PCIe pozwalające na montaż kart rozszerzeń. Mają wbudowane porty Systemy wizyjne National Instruments oferuje szeroki zakres sprzętu do systemów wizyjnych czasu rzeczywistego. Przykładem jest platforma Smart Camera, która sprawdza się w rozwiązaniach typu wszystko w jednym, Compact Vision System, który pozwala na przetwarzanie danych z wielu 90 ELEKTRONIKA PRAKTYCZNA 7/2013 088-093_ni.indd 90 2013-07-25 11:23:28

Krok po kroku Kursy EP Rysunek 7. Platforma CompactRIO Rysunek 8. Architektura platformy CompactRIO kamer oraz bardzo wydajne, bezwentylatorowe urządzenia Embedded Vision System. Urządzenia z serii Smart Camera łączą w sobie wysokiej jakości sensor obrazu z procesorem umożliwiającym pracę w czasie rzeczywistym, możliwym do programowania z użyciem modułu LabVIEW Real-Time. Dokupienie licencji na oprogramowanie NI Vision Development Module daje dostęp do setek funkcji związanych z przetwarzaniem obrazu i systemami wizyjnymi. Omawiane produkty mają też dwa optoizolowane cyfrowe wejścia, dwa optoizolowane cyfrowe wyjścia, jeden port szeregowy RS232 i dwa porty gigabitowego Ethernetu. Platforma Compact Vision System (CVS) zawiera wbudowany procesor czasu rzeczywistego, układ FPGA i interfejsy IEEE1394 do podłączania kamer. Mają też wbudowane wyjście wideo, port ethernetowy, 15 cyfrowych wejść i 14 cyfrowych pxi REKLAMA Rysunek 9. Platforma NI Single-Board RIO 91 ELEKTRONIKA PRAKTYCZNA 7/2013 088-093_ni.indd 91 2013-07-25 11:23:28

Tabela 1. Platformy sprzętowe NI i dostępność modułów wejść i wyjść Dostępność wejść i wyjść PXI CompactRIO Systemy wizyjne Zwykłe lub przemysłowe PC Różnorodność Standardowe sterowniki Możliwość dostosowania do własnych potrzeb Możliwość rozszerzania o dodatkowe wyjścia i wejścia Legenda: Dobra Lepsza Najlepsza Tabela 2. Porównanie wydajności poszczególnych platform sprzętowych Wydajność PXI CompactRIO Systemy wizyjne Zwykłe lub przemysłowe PC Determinizm pracy Krok po kroku Kursy EP Kontrola czasu wyzwalania i synchronizacji Szybkość przetwarzania danych Przetwarzanie wielordzeniowe Legenda: Dobra Lepsza Najlepsza Tabela 3. Cechy fizyczne platform sprzętowych oferowanych przez NI Cechy fi zyczne PXI CompactRIO Systemy wizyjne Zwykłe lub przemysłowe PC Odporność na trudne warunki środowiskowe różna Przenośność Legenda: Dobra Lepsza Najlepsza wyjść. Programowanie wbudowanego procesora możliwe jest za pomocą modułu LabVIEW Real-Time, a FPGA poprzez moduł LabVIEW FPGA. Układ programowalny komunikuje się bezpośrednio z cyfrowymi wejściami i wyjściami. Platformy NI Embedded Vision System to odporne, bezwentylatorowe systemy zoptymalizowane do aplikacji wizyjnych. Obsługują zarówno kamery podłączane przez gigabitowy Ethernet, jak i przez interfejs IEEE1394 oraz mają 29 cyfrowych wejść/wyjść, a także porty szeregowe, USB i ethernetowe. Wbudowany mikroprocesor i układ FPGA są używane i programowane w ten sam sposób, co w przypadku platformy CVS. Omawiana platforma jest idealna do zastosowań związanych ze zautomatyzowaną inspekcją podzespołów, odczytem kodów paskowych i 2D, odczytem tekstu, a nawet pomiarów temperatur za pomocą kamer podczerwieni. Pozostałe platformy sprzętowe W praktyce, na potrzeby aplikacji pisanych w LabVIEW lub LabWindows, można przystosować praktycznie każdy przemysłowy komputer PC, komputer jednopłytkowy, czy też klasyczny PC biurkowy, o ile tylko jego podzespoły spełniają określone wymagania systemowe. W tym celu wystarczy nabyć licencję na LabVIEW Real-Time Deployment. Rysunek 10. Platforma NI SmartVision Porównanie platform Każda z opisanych platform sprzętowych jest przeznaczona do innego rodzaju aplikacji. Platforma PXI zapewnia największą wydajność, podczas gdy Compact Vision System składa się ze sprzętu najbardziej odpornego na trudne warunki środowiskowe. Platforma CompactRIO łączy w sobie obydwie te cechy, a wbudowany w nią programowalny układ FPGA umożliwia elastyczne tworzenie wydajnych aplikacji. Dostępność wejść i wyjść Platformy sprzętowe National Instruments obsługują wiele różnorodnych modułów wejść i wyjść, wliczając w to gotowe produkty, oferowane bezpośrednio przez NI, moduły projektowane samodzielnie oraz produkty firm trzecich. Moduły NI korzystają ze standardowych sterowników, dostępnych z poziomu LabVIEW i LabWindows/CVI. Wiele z platform oferowanych przez NI można rozszerzać poprzez łączenie ze sobą kilku obudów, kom- 92 ELEKTRONIKA PRAKTYCZNA 7/2013 088-093_ni.indd 92 2013-07-25 11:23:29

Krok po kroku Kursy EP Rysunek 11. Moduły rozszerzeń dla platformy CompactRIO puterów lub sterowników, każdy z osobnym zestawem modułów wejść i wyjść. Moduły wejść i wyjść PXI i PCI kompatybilne z platformami NI czasu rzeczywistego to m.in.: moduły akwizycji danych (analogowych i cyfrowych), moduły dynamicznej akwizycji sygnałów, akwizycji obrazu, sterowania ruchem, rekonfigurowalne wejścia i wyjścia w oparciu o FPGA (RIO), interfejsy CAN, szeregowe, GPIB, ethernetowe, moduły rozszerzeń poprzez magistralę MXI, moduły IEEE1394 dla dysków twardych i kamer, zewnętrzne dyski twarde na USB i inne oferowane przez niezależnych producentów. Platforma CompactRIO może korzystać z następujących modułów rozszerzeń: wejścia analogowe, wyjścia analogowe (napięciowe i prądowe), interfejsy CAN, moduły sterowania ruchem, cyfrowe wejścia i wyjścia, wyjścia przekaźnikowe, liczniki, generatory impulsów i inne moduły oferowane przez niezależnych producentów. Wejścia i wyjścia oferowane przez urządzenia Smart Camera to dwa optoizolowane cyfrowe wejścia, dwa optoizolowane cyfrowe wyjścia, jeden port szeregowy RS232 i dwa gigabitowe porty ethernetowe. System CVS umożliwia podłączenie trzech kamer IEEE1394, wyświetlacza, urządzeń przez Ethernet i 15 cyfrowych wejść oraz 14 cyfrowych wyjść. Wydajność Wydajność omawianych platform może być oceniania pod kątem determinizmu wykonywania programu, opóźnień na wejściach i wyjściach, wyzwalania, synchronizacji, szybkości przetwarzania i dostępności wielordzeniowych procesorów. W systemach czasu rzeczywistego najważniejszy jest determinizm, który definiuje, z jaką pewnością system wykona zadane operacje w określonym czasie. Cechy fizyczne Dobierając platformę sprzętową należy też zwrócić uwagę na warunki, w których będzie pracować. Przykładowo, platformy CompactRIO i Compact Vision Systems są wykonywane bez korzystania z ruchomych elementów, co maksymalizuje ich odporność na wstrząsy i wibracje. Porównanie cech fizycznych omawianych platform przedstawiono w tabeli 3. REKLAMA ELEKTRONIKA PRAKTYCZNA 7/2013 93 088-093_ni.indd 93 2013-07-25 11:23:30