Prototypowanie systemów sterowania

Podobne dokumenty
Laboratorium: Systemy operacyjne czasu rzeczywistego. Temat: Wprowadzenie do karty DS1102 i oprogramowania Control Desk.

Szybkie prototypowanie z wykorzystaniem sterownika dspace DS1104 oraz oprogramowania RTI i ControlDesk

Systemy Czasu Rzeczywistego (SCR)

Szybkie prototypowanie z wykorzystaniem systemu modułowego dspace DS1005 oraz oprogramowania RTI i ControlDesk

Wirtualne przyrządy kontrolno-pomiarowe

Systemy Czasu Rzeczywistego (SCR)

Prototypowanie sterownika dla robota 2DOF

Wprowadzenie do Real-Time Windows Target Toolbox Matlab/Simulink

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

Prototypowanie systemów sterowania

PROGRAMOWALNE STEROWNIKI LOGICZNE

Szybkie prototypowanie w projektowaniu mechatronicznym

Materiały dodatkowe. Simulink Real-Time

E-E-A-1008-s5 Komputerowa Symulacja Układów Nazwa modułu. Dynamicznych. Elektrotechnika I stopień Ogólno akademicki. Przedmiot kierunkowy

WPROWADZENIE Mikrosterownik mikrokontrolery

Systemy wbudowane. Paweł Pełczyński

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

Programowanie Układów Logicznych kod kursu: ETD6203. Szczegóły realizacji projektu indywidualnego W dr inż.

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

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

Wirtualne przyrządy pomiarowe

Skrócony przewodnik OPROGRAMOWANIE PC. MultiCon Emulator

sterownik VCR v 1. 0

Rejestratory Sił, Naprężeń.

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Czujniki obiektowe Sterowniki przemysłowe

Laboratorium Komputerowe Systemy Pomiarowe

Elektrotechnika I stopień Ogólno akademicki. Przedmiot kierunkowy. Obowiązkowy Polski VI semestr zimowy

KATEDRA SYSTEMÓW MULTIMEDIALNYCH SEMINARIUM MULTIMEDIALNE SYSTEMY MEDYCZNE

Prototypowanie systemów sterowania

Sprawdzian test egzaminacyjny GRUPA I

Wybrane środowiska szybkiego prototypowania

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

Bezpieczeństwo informacji oparte o kryptografię kwantową

Sprawozdanie z projektu MARM. Część druga Specyfikacja końcowa. Prowadzący: dr. Mariusz Suchenek. Autor: Dawid Kołcz. Data: r.

WYKŁAD 5. Zestaw DSP60EX. Zestaw DSP60EX

Opis przedmiotu zamówienia CZĘŚĆ 1

Simulink MATLAB Przegląd obiektów i przykłady zastosowań

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

Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie

Parametryzacja przetworników analogowocyfrowych

Opracował: Jan Front

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA (KSS)

NX70 PLC

Materiały dodatkowe. Raspberry Pi

Doświadczenia z tworzenia systemu pomiarowo-sterującego z procesorami rodziny C2000. Leszek Dębowski Instytut Elektrotechniki Oddział w Gdańsku

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

Wykład Mikrokontrolery i mikrosystemy Cele wykładu:

VComNet Podręcznik użytkownika. VComNet. Podręcznik użytkownika Wstęp

System mikroprocesorowy i peryferia. Dariusz Chaberski

Opis przedmiotu zamówienia

Zaliczenie Termin zaliczenia: Sala IE 415 Termin poprawkowy: > (informacja na stronie:

Wydział Elektryczny Katedra Telekomunikacji i Aparatury Elektronicznej

Sterownik PLC ELP11R32-BASIC Dokumentacja techniczna (ver. 1.0)

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

FAQ: /PL Data: 2/07/2013 Konfiguracja współpracy programów PC Access i Microsoft Excel ze sterownikiem LOGO!

NX700 PLC

UWAGA. Wszystkie wyniki zapisywać na dysku Dane E: Program i przebieg ćwiczenia:

Procesory Sygnałowe Digital Signal Processors. Elektrotechnika II Stopień Ogólnoakademicki

LEKCJA TEMAT: Zasada działania komputera.

Schemat blokowy karty

MultiTool instrukcja użytkownika 2010 SFAR

Modułowy programowalny przekaźnik czasowy firmy Aniro.

Sprawdzian test egzaminacyjny 2 GRUPA I

SYSTEMY CZASU RZECZYWISTEGO (SCR)

MIKROKONTROLERY I MIKROPROCESORY

Systemy uruchomieniowe

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

Wykład Mikroprocesory i kontrolery

AKADEMIA GÓRNICZO-HUTNICZA IM. STANISŁAWA STASZICA W KRAKOWIE. QuIDE Quantum IDE PODRĘCZNIK UŻYTKOWNIKA

Bezpieczeństwo informacji oparte o kryptografię kwantową

Lista zadań nr 1. Zagadnienia stosowanie sieci Petriego (ang. Petri net) jako narzędzia do modelowania algorytmów sterowania procesami

PRZEWODNIK PO PRZEDMIOCIE

Politechnika Śląska Wydział Elektryczny Katedra Mechatroniki. Koncepcja przyłączania mikroinstalacji prosumenckich (gniazd) do laboratorium ilabepro

PROGRAM TESTOWY LCWIN.EXE OPIS DZIAŁANIA I INSTRUKCJA UŻYTKOWNIKA

Instrukcja do oprogramowania ENAP DEC-1

Projektowanie z użyciem procesora programowego Nios II

System powiadamiania TS400

Skrócony przewodnik OPROGRAMOWANIE PC. MultiCon Emulator

Architektura komputerów

Biomonitoring system kontroli jakości wody

AKADEMIA MORSKA W SZCZECINIE WI-ET / IIT / ZTT. Instrukcja do zajęc laboratoryjnych nr 1 AUTOMATYZACJA I ROBOTYZACJA PROCESÓW PRODUKCYJNYCH

System czasu rzeczywistego

Laboratorium 2 Sterowanie urządzeniami z wykorzystaniem systemu plików Intel Galileo

Ćwiczenia z S S jako Profinet-IO Controller. FAQ Marzec 2012

INSTRUKCJA UŻYTKOWNIKA MPCC

Instrukcja obsługi urządzenia DS150E z systemem operacyjnym Windows 7. Dangerfield luty 2010 V1.0 Delphi PSS

Spis treści. Dzień 1. I Konfiguracja sterownika (wersja 1410) II Edycja programu (wersja 1406) III Środowisko TIA Portal (wersja 1410)

III. Przebieg ćwiczenia. 1. Generowanie i wizualizacja przebiegów oraz wyznaczanie ich podstawowych parametrów

Cyfrowe Przetwarzanie Obrazów i Sygnałów

1. Opis. 2. Wymagania sprzętowe:

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

2. Code Composer Studio v4 zintegrowane środowisko projektowe... 41

Wykład 4. Przegląd mikrokontrolerów 16-bit: - PIC24 - dspic - MSP430

Tytuł Aplikacji: Aplikacja przetwornic częstotliwości Danfoss w sieci przemysłowej Profinet

Automatyka przemysłowa na wybranych obiektach. mgr inż. Artur Jurneczko PROCOM SYSTEM S.A., ul. Stargardzka 8a, Wrocław

Materiały dodatkowe. Simulink PLC Coder

Research & Development Ultrasonic Technology / Fingerprint recognition

Kurs wybieralny: Zastosowanie technik informatycznych i metod numerycznych w elektronice

Transkrypt:

Prototypowanie systemów sterowania Prowadzący: dr hab. inż. Mateusz Dybkowski, prof. Pwr. mgr inż. Szymon Bednarz Opracował: mgr inż. Szymon Bednarz Wrocław 2019

Laboratorium nr 6 Zasady testowania w czasie rzeczywistym. Zapoznanie się ze sprzętem firmy dspace i oprogramowaniem do realizacji testów w czasie rzeczywistym 1. Wprowadzenie Celem zajęć jest zapoznanie się techniką Hardware-in-the-Loop (HiL) stosowaną do testów układów sterowania w czasie rzeczywistym, a także z urządzeniami firmy dspace umożliwiającymi ich realizację. 2. Testowanie systemów sterowania w czasie rzeczywistym Prototypowanie systemów sterowania metodą Model-in-the-Loop (MiL) najczęściej nie nakłada wymagań czasu rzeczywistego podczas testów. Oznacza to, że czas trwania symulacji (czas wykonania poszczególnych operacji) nie jest możliwy do obliczenia. Przykładowo dla zdefiniowanego czasu wykonywania symulacji Ts rzeczywisty czas jej wykonywania może być znacznie dłuższy lub krótszy, co może wynikać między innymi z wymaganej dokładności obliczeń i zastosowanej metody numerycznej. Jednakże każdy system sterowania powinien być testowany pod rygorem czasu rzeczywistego, ponieważ docelowo będzie pracował w takich warunkach. System czasu rzeczywistego jest takim systemem, którego poprawność działania zależy nie tylko od samego wyniku, ale również od czasu, w którym został on osiągnięty. Oznacza to, że dla zdefiniowanego czasu trwania symulacji Ts rzeczywisty czas jej wykonywania jest dokładnie równy Ts. Każda kolejna wartość wyjściowa musi być obliczona w ściśle określonym czasie (systemy deterministyczne). Takie rozwiązanie pozwala dokładnie odwzorować działanie rzeczywistego sterownika i obiektu. Można wyróżnić dwie podstawowe metody prototypowania/testowania układów sterowania w czasie rzeczywistym: Wykorzystanie zasobów sprzętowych komputerów osobistych poprzez implementację symulatora systemu czasu rzeczywistego, który synchronizuje obliczenia wykonywane przez komputer zgodnie z wymaganiami czasu rzeczywistego. Przykładem może być oprogramowanie MATLAB/Simulink i narzędzie Simulink Desktop Real-Time (w starszych wersjach znane jako Real-Time Windows Target). Wykorzystanie specjalizowanych urządzeń wyposażonych w wydajne układy mikroprocesorowe, układy FPGA, karty I/O itd. Obliczenia wykonywane w układzie sterowania oraz w obiekcie sterowania są wykonywane pod reżimem czasu rzeczywistego. Rola komputera osobistego ogranicza się wtedy najczęściej do programowania sprzętu i prezentacji graficznej danych a także zadawania wartości referencyjnych wybranych zmiennych poprzez wirtualne panele sterownicze. 3. Testowanie układów sterowania w czasie rzeczywistym z zastosowaniem oprogramowania MATLAB/Simulink i sprzętem dspace Oprogramowanie MATLAB/Simulink pozwala na projektowanie układów sterowania metodą MiL. Ważną cechą tego środowiska jest to, że umożliwia

automatyczne generowanie kodu z utworzonego w postaci graficznej schematu blokowego sterowania w formacie przeznaczonym dla różnorodnych platform sprzętowych. Dzięki temu możliwe jest testowanie rozwiązań w czasie rzeczywistym na docelowych urządzeniach. Obecnie podstawowe narzędzia do automatycznej generacji kodu to: MATLAB Coder - generuje niezależny kod C/C++ z kodu języka MATLAB. Simulink Coder (dawniej Real-Time Workshop) - generuje i uruchamia samodzielny kod C/C++ do rozwijania i testowania algorytmów modelowanych w Simulinku. Kod wynikowy może być użyty w wielu typach aplikacji (w tym aplikacji czasu rzeczywistego) takich jak przyspieszanie symulacji, szybkie prototypowanie i testowanie metodą HiL. Embedded Coder - tworzy kod C/C++ ze skryptów w języku MATLAB, z modeli Simulinka oraz diagramów Stateflow, które mają czytelność i efektywność profesjonalnych ręcznie pisanych kodów. Wygenerowany kod jest wyjątkowo zwięzły i szybki, co jest zasadniczym wymaganiem w systemach wbudowanych, docelowych systemach szybkiego prototypowania, mikroprocesorach używanych w produkcji masowej i symulatorach czasu rzeczywistego. Rozszerza MATLAB Coder i Simulink Coder o optymalizację i właściwości konfiguracyjne nieodzowne do generacji kodu produkcyjnego (np. profilowanie kodu). Na zajęciach studenci zapoznają się z zastosowaniem oprogramowania MATLAB/Simulink do programowania urządzeń firmy dspace. W laboratorium znajduje się kilka specjalistycznych kart do szybkiego prototypowania. Są one wyposażone we własną pamięć i wydajny procesor oraz analogowe i cyfrowe układy wejścia/wyjścia sprzęgające kartę z czujnikami oraz układami wykonawczymi. Karty te mogą być instalowane w komputerach PC (ISA i PCI), w komputerach przemysłowych z szyną VME oraz w obudowach zwanych AutoBox, dołączanych do szyny ISA, PCI, VME lub poprzez sieci: CAN, Ethernet i inne. Przy korzystaniu z kart prototypowych komputer PC używany głównie jako interfejs użytkownika. Program symulacyjny czasu rzeczywistego i obsługa interfejsów są realizowane przez program wgrany do karty prototypowej. W laboratorium dydaktycznym wykorzystywane są trzy modele kart: DS1102, DS1103 i DS1004, które w zależności od wersji wyposażone są w układy peryferyjne takie jak przetworniki analogowo-cyfrowe (A/D) i cyfrowo-analogowe (D/A), wejścia i wyjścia cyfrowe (DIO), wyjścia PWM, interfejsy komunikacyjne (Ethernet, CAN, UART), interfejsy do obsługi encoderów i/lub resolverów. Poniżej przedstawiono podstawowe parametry poszczególnych kart. Rys. 1. Karty dspace 1103 i 1104

Rys. 2. Panele połączeniowe CP 1103 oraz CP 1104 I. Karta do szybkiego prototypowania DS1102 Rys. 3. Schemat ideowy karty DS1102 Procesor główny (Master) Wejścia analogowe Wyjścia analogowe Wejścia/wyjścia cyfrowe Procesor pomocniczy (Slave) TMS320C31 32-bitowy zmiennoprzecinkowy Zegar: 60MHz 2 kanały A/D (16-bitów) 2 kanały A/D (12-bitów) 4 kanały D/A (12-bitów) 26 równoległych kanałów I/O TMS320P14 Do obsługi wejść/wyjść cyfrowych

II. Karta do szybkiego prototypowania DS1103 Rys. 4. Schemat ideowy karty DS1103 Procesor główny (Master) Pamięć Wejścia analogowe Wyjścia analogowe Wejścia/wyjścia cyfrowe Procesor pomocniczy (Slave) PPC 750GX Zegar: 1GHz 32 kb wewnętrznej pamięci cache 32 MB SDRAM pamięć lokalna (aplikacje i dane) 96 MB SDRAM pamięć globalna 16 multipleksowane kanały A/D (16-bitów) 8 kanałów D/A (16-bitów) 32 równoległe kanały I/O (4 kanały po 8 bitów konfigurowalnych jako wejście lub wyjście) TMS320F240 Wykorzystywany do obsługi: 18 bitowego portu cyfrowego 16 kanałowego wejścia analogowe (10-bitów) 3- fazowego wyjścia PWM 4 jednofazowych wyjść PWM 2 portów szeregowych

III. Karta do szybkiego prototypowania DS1104 Rys. 5. Schemat ideowy karty DS1104 Procesor główny (Master) Pamięć Wejścia analogowe Wyjścia analogowe Wejścia/wyjścia cyfrowe Procesor pomocniczy (Slave) MPC8240 64-bitowy zmiennoprzecinkowy Zegar: 250 MHz 32 kb cache 32 MB SDRAM pamięć globalna 8 MB pamięci Flash 4 multipleksowane kanały A/D (1 x 16 bitów) 4 równoległe kanały A/D (4 x 16 bitów) 8 kanałów D/A (16-bitów) 20 równoległych kanałów I/O konfigurowalnych jako wejście lub wyjście TMS320F240 Wykorzystywany do obsługi: 14 bitowego portu cyfrowego 3- fazowe wyjścia PWM 4 jednofazowe wyjść PWM 1 portu szeregowego Jak wspomniano wcześniej karty te programowane są za pomocą oprogramowania MATLAB/Simulink oraz dodatkowych narzędzi: Simulink Coder (dawniej wcześniej Real-Time Workshop) generuje i uruchamia kod C/C++ na bazie schematu blokowego w Simulinku. RTI (Real-Time Interface) biblioteka dostarczana przez producenta dspace zawiera bloki obsługujące podzespoły danej karty, które mogą być zastosowane bezpośrednio w schemacie blokowym układu sterowania tworzonym w Simulinku. Jest rozszerzeniem narzędzia Simulink Coder do implementacji modeli Simulink i

Stateflow na symulatorze sprzętowym czasu rzeczywistego. Model czasu rzeczywistego jest kompilowany, pobierany i automatycznie uruchamiany na symulatorze sprzętowym. Rys. 6. Biblioteka RTI dla karty DS1104 Do zarządzania procesem przeprowadzania testów w czasie rzeczywistym stosowane jest dedykowane oprogramowanie ControlDesk wspomagające proces rozwoju dowolnego sterownika. W ramach projektu w oprogramowaniu definiujemy zbiór eksperymentów, z których każdy składa się z dwóch zasadniczych elementów: wykorzystywanego podczas eksperymentu sprzętu oraz panelów sterowania. Panele sterowania to zestaw instrumentów graficznych (kontrolek) układanych na ekranie przez użytkownika, a służący do wizualizacji wartości fizycznych odczytanych bezpośrednio ze sprzętu. Proces przeprowadzania eksperymentu przypomina obsługę typowego oprogramowania SCADA. Wirtualne panele sterowania pozwalają na wizualizację przebiegu eksperymentu z wykorzystaniem szerokiej gamy instrumentów takich jak: listy parametrów, wykresy, pola edycyjne, suwaki, guziki i wszystkie inne elementy typowe dla aplikacji komputerowych oraz kontrolek spotykanych w systemach sterowania. 4. Przykład Proces tworzenia projektu można podzielić na kilka etapów: I. Utworzenie modelu systemu w Simulinku UWAGA: Przed przystąpieniem do prac należy utworzyć Nowy folder na Pulpicie a następnie ustawić go jako folder roboczy MATLABA.

Rys. 7. Przykładowy model relizujący funkcję dodawania i mnożenia dwóch sygnałów II. Konfiguracja modelu (Simulation -> Configuration Parameters) III. IV. Generacja kodu do wybranej platformy sprzętowej (Ctrl+B) Konfiguracja oprogramowania ControlDesk Utworzenie nowego eksperymentu: File -> New Experiment UWAGA: należy ustawić ścieżkę docelowa eksperymentu (Working root) taką jak w jak w Matlabie Import pliku *.sdf z definicjami i ścieżkami do danych (ikona ). V. Utworzenie wirtualnego panelu sterowania Dodanie panelu (Layout): File -> New -> Layout Włączenie przybornika elementów: View -> Controlbars -> Instrument Selector Dodanie elementów: o Okno akwizycji danych: Data Aquisistion -> Capture Settings o Plotter: Data Aquisition -> PlotterArray o Zadajnik 1: Virtual instruments -> Numeric input o Zadajnik 2: Virtual instruments -> Knob Odpowiednie zmienne wybiera się z menu kontekstowego (Zmienne modelu), które znajdują się w zakładce Model Root. Nazwy zmiennych pokrywają się z nazwami bloków modelu w Simulink. W celu wyświetlenia zmiennej należy przenieść ją do plotera (kolumna Variable - > Out),

aby zmieniać wartości zmiennej należy przenieść ją do odpowiedniego zadajnika (kolumna Variable -> Gain). Przybornik Plotter Okno akwizycji danych Zadajnik 1 Zadajnik 2 Zmienne modelu Rys. 8. Docelowy wygląd panelu sterowania VI. Testowanie Uruchomienie aplikacji: Animation mode (ikona ). W bloku Capture Settings z menu rozwijanego należy wybrać: PPC nazwa_modelu_simulink_hostservice Zmiana długości bufora danych: (pole Lenght). 5. Zadania do wykonania: I. Konfiguracja środowiska MATLAB/Simulink. II. Opracowanie generatorów wybranych sygnałów (np. sygnał stały, sinusoidalny, prostokątny) oraz układu resetującego przebiegi czasowe w trakcie trwania symulacji. III. Budowa wirtualnego panelu sterowania w programie ControlDesk umożliwiającego zmianę parametrów generowanych sygnałów oraz obserwację ich przebiegów. Literatura: [1] www.mathworks.com [2] www.dspace.com