Článek ve formátu PDF je možné stáhnout
zde.
Simulace: ano, nebo ne? Obě odpovědi mají své obhájce i odpůrce
Jsou obory, kdy je simulace považována za samozřejmost. Uvažuje někdo o tom, zda jsou simulační experimenty potřebné při konstrukci letadel? Obecně je simulace bez diskuse na místě tam, kde je s provozem zařízení spojeno velké riziko materiálních ztrát, zranění či usmrcení osob. Efektivní simulační nástroje ale mohou vést také k velkým úsporám nákladů na vývoj strojů a zařízení. Simulace umožňuje zařízení testovat i v podmínkách, které jsou v reálném světě obtížně dosažitelné, ať už proto, že je to příliš nákladné, nebo nebezpečné, a umožňuje tak zvýšit bezpečnost a spolehlivost zařízení.
Odpůrci simulací ale mají také mnoho argumentů. Simulace vyžaduje značné zkušenosti. Model nerespektující všechny podstatné vlivy a fyzikální omezení, nevhodně provedený simulační experiment se špatně interpretovanými výsledky, to jsou jen zbytečně vynaložené náklady.
Úspěšná simulace musí mít koncepční, specifikační a implementační fázi – žádnou z nich není možné vynechat. Mnohdy se lze setkat s tím, že zvláště potřeba stanovení správné koncepce simulace, tj. cílů simulačních experimentů a požadované přesnosti, je podceňována. To může vést k výběru nevhodných nástrojů a metod simulace. Jiné nástroje jsou vhodné pro simulaci toků materiálu a jiné např. pro simulaci průběhu výrobních procesů.
Simulace v automatizaci
Matlab a Simulink od firmy Mathworks jsou nástroje, které není třeba dlouze představovat. Jsou velmi vhodné k modelování a simulaci dynamického chování fyzikálních systémů. Představují i vhodné prostředí pro návrh regulace. Matlab a Simulink nabízejí mnoho možností, jak simulačními experimenty otestovat kvalitu a robustnost navržených regulačních algoritmů.
Jak efektivně převést řešení vytvořené v prostředí Matlab/Simulink do reálného světa? Klíčovým problémem je vytvoření zdrojových programů a jejich kompilace pro cílovou platformu. Obecný nástroj generující zdrojový program v prostředí Matlab/Simulink je Real Time Workshop (Mathworks). Jenže obecný nástroj nerespektuje specifika řídicí techniky. Proto společnost B&R vyvinula rozšiřující nástroj Automation Studio Target for Simulink, který umožňuje efektivní přenos řešení z prostředí Matlab/Simulink do prostředí Automation Studio, tedy do jednotného vývojového prostředí určeného pro programování všech automatizačních prostředků od firmy B&R.
V současné době je na trhu již druhá verze Automation Studio Target for Simulink, nástroje, který umožňuje vývojovým pracovníkům, aby se soustředili na problémy spojené s navrhovaným zařízením a nemuseli se starat o kompatibilitu výsledků simulačních experimentů s návrhovým prostředím řídicího systému.
Automation Studio Target for Simulink
Jak Automation Studio Target for Simulink pracuje? Model vytvořený v Simulinku se skládá z bloků a vazeb. Každý blok má předepsané chování, které lze převést do zdrojového kódu. Specifické bloky použité v Simulinku řídí činnost generátoru zdrojového kódu, zvláště správné zobrazení množiny proměnných použitých v modelu na množinu proměnných reálného řídicího systému. Generátor zdrojového kódu zajistí také syntakticky a chronologicky správné sestavení celého zdrojového programu. Kompilátor se nakonec postará o správnou deklaraci všech použitých softwarových komponent (knihoven) a navázání datových bodů ve zdrojovém programu. Na základě automaticky vygenerovaného zdrojového programu potom Automation Studio vytvoří spustitelný program pro vybraný cílový systém. Tím je cesta od modelu k reálnému řešení zdárně ukončena.
Když se hovoří o automaticky generovaném kódu, většina lidí mlčky předpokládá, že výsledkem bude nepřehledný, objemný a neefektivní zdrojový program. Ovšem vestavěný nástroj Embedded Coder, součást Real Time Workshopu, generuje strukturovaný program, který na cílové platformě pracuje efektivně, bez nepřiměřených požadavků na výkon.
Hotový program je kompatibilní se všemi ostatními součástmi řídicího systému. Všechny možnosti programování známé u klasických PLC jsou zachovány. Proměnné z modelu mohou být použity jako fyzické vstupy reálné soustavy stejně jako vstupy pro vizualizaci. Je-li to požadováno, mohou být parametry a proměnné měněny podle receptur nebo instrukcí z vyšší úrovně řízení.
V prostředí Matlab/Simulink se pro zobrazení hodnot proměnných při simulaci používá nástroj Workspace; v prostředí Automation Studio je mu rovnocenný nástroj Watch-Window. Pro efektivní práci na vývoji programu je neocenitelná výhoda, že uživatel nemusí opouštět prostředí, v němž právě pracuje, a může výsledky simulace sledovat v libovolném z nich.
K dispozici je také ladicí nástroj Source Code Debugger. Otevřený zdrojový kód je možné detailně zkoumat, popř. i ladit, i když to většinou není nutné.
Přínosy využití simulačních experimentů
Detailní a správný model, vhodný simulační experiment a automaticky vygenerovaný zdrojový program pro cílovou platformu řídicího systému, to jsou nástroje, které umožňují testovat navržené řídicí a regulační algoritmy a řídicí techniku bez nákladů na realizaci fyzikálních modelů a prototypů. Chyby návrhu a slepé uličky vývoje jsou odhaleny ve srovnání s jinými metodami mnohem dříve. Značnou část práce s uváděním řídicího systému do provozu lze přesunout do kanceláře a není nutné ji vykonávat v provozních podmínkách. Simulace podstatně omezí možnost vzniku neočekávaných událostí při uvádění řídicího systému do provozu, i když zcela vyloučit je nemůže – přece jen se pracuje s matematickým modelem, který se reálnému světu jen s určitou přesností přibližuje.
Přesto dobře navržený model a simulační experimenty výrazně zkracují a zlevňují vývoj zařízení. Při řízení procesů je možné matematický model použít pro anticipující systémy, které obsahují matematický model sebe sama a podle simulačních experimentů získávají informace o možných budoucích stavech – simulace je v tomto případě virtuálním „oknem do budoucnosti“. Uplatnění anticipujících systémů je výhodné zvláště pro soustavy s velkým dopravním zpožděním.
Zkrácení doby vývoje šetří čas konstruktérů a vývojových inženýrů a umožňuje jim, aby se více věnovali své základní úloze: vymýšlení nových nápadů a inovací.
(Podle: Enhuber, F.: Cost-effective and intelligent software models. Automotion, 09/2007. Překlad a úprava redakce.)
Obr. 1. Integrace prostředí Matlab/Simulink a Automation Studio významně usnadňuje přenos výsledků simulačních experimentů do praxe