Špeciálne jazykové prostriedky počítačov - SJPP

15. Subsystém a maska subsystému

15.1. Subsystém

Subsystém obyčajne zahrňuje logický celok, ktorý si s okolím vymieňa relatívne obmedzené množstvo informácií. Táto výmena informácií je realizovaná prostredníctvom vstupných a výstupných premenných (signálov).

Postup tvorby subsystémov a ich maskovania bude vysvetlený na príklade modelu "lineárnej závislosti".

Príklad 15.1:
Vytvorme model, ktorý predstavuje nasledujúcu závislosť 
y = a + b u

[in 1] -> [gain b]  -> +[sum] -> [out 1]
          [const a] -> +

Subsystém v Simulinku vytvoríme tak, že zostavíme model a označíme vstupné a výstupné signály pomocou blokov In a Out (obr. 1). Tieto bloky môžeme pomenovať. Názvy sa prenesú do označenia vstupných a výstupných signálov bloku, ktorý vznikne po vytvorení subsystému. Po označení vstupov a výstupov vyberieme všetky bloky, ktoré majú byť v subsystéme, a voľbou Edit->Create Subsystem vytvoríme subsystém (obr. 2). Vznikne nový blok, ktorý možno kopírovať či otvoriť do samostatného okna a ďalej upravovať.


Obr. 1. Model pripravený na tvorbu subsystému


Obr. 2. Subsystém

Vytvorený subsystém môžeme kopírovať a upravovať, avšak ak chceme použiť kópie z rôznymi hodnotami parametrov, musíme nové kópie editovať. Tento problém je možné vyriešiť napr. maskovaním subsystému.

top

15.2. Maska subsystému

Maskovanie subsystému je dostupné po zvolení subsystému voľbou Edit->Mask Subsystem. Okno, ktoré sa následne otvorí, dovoľuje zadať:


Obr. 3. Mask editor - záložka Icon


Obr. 4. Subsystém s maskou


Obr. 5. Subsystém s maskou (Drawing commands: plot([0,1],[0,b]+[b<0]))


Obr. 6. Mask editor - záložka Initialization


Obr. 7. Mask editor - záložka Documentation


Obr. 8. Okno definovania parametrov pre subsystém

Ak chceme zadávať parametre pomocou masky t.j. cez názvy premenných musíme tieto názvy použiť v parametroch blokov subsystému. Úprava zamaskovaného subsystému je možná voľbou Edit->Look under mask. Dvojklik na zamaskovanom subsystéme totiž teraz otvorí dialógové okno (masku) t.j. v našom prípade sa objaví okno ako je ukázané na obr. 8.

Úprava masky zamaskovaného subsystému je možná voľbou Edit->Edit mask....

top

15.3. Úlohy

  1. Vytvorte schému uzavretého regulačného obvodu, ktorá sa skladá zo systému 2. rádu s prenosovou funkciou Gr(s) = 1/(s^2+2s+1) a PID regulátora. PID regulátor je poskladaný z proporcionálnej (Gain), integračnej (Integrator) a derivačnej (Derivative) zložky. PID regulátor má tvar Gr(s)=Zr+1/(Is)+Ds
  2. Vytvorte subsystém pozostávajúci z jednotlivých časti (P,I,D) regulátora
  3. Zamaskujte subsystém. Vytvorte zadávacie polia pre jednotlivé zložky PID regulátora
  4. Testujte integračnú položku (delenie nulou)
  5. Vytvorte jednoduchý opis PID regulátora v okne, v ktorom sa definujú položky P, I a D (popis zadávania, rovnicu regulátora, ...)
  6. Vytvorte "Help", ktorý podrobne opisuje funkciu regulátora a jeho nastavenie
  7. Simulujte priebeh riadenia. Výsledky zobrazte pomocou bloku Scope, ktorý má dva vstupy u a y (t.j. aj dva zobrazované priebehy)
top