The MathWorks, Inc. & HUMUSOFT s.r.o. & Ústav počítačové a řídicí techniky VŠCHT v Praze
Mezinárodní konference Technical Computing Prague 2007.
HUMUSOFT - prezentace firmy Program konference Příspěvky
Mediální partner:
14.11.2007 Kongresové centrum ČVUT v Praze
EXPID – Experimental Identification Toolbox ˇ P. Dov´ al’, L’. Cirka, and M. Fikar Institute of Information Engineering, Automation, and Mathematics, FCFT Slovak University of Technology in Bratislava Abstract This paper describes a MATLAB package EXPID for experimental identification. The package is based on step responses identification. The source codes are freely available at the package web page http://www.kirp.chtf.stuba.sk/~cirka/expid.
1
Introduction
Processes in chemical technology can be modelled in various ways. The most natural representation is based on the state–space description resulting from material and energy balances. The models mostly used for control purposes are in form of linear differential or difference equations. We often assume that their parameters are known and constant. However, in experimental conditions it is often necessary to measure or estimate parameters from process input and output signals with carefully chosen input signal types. In this case we will speak about parameter estimation or system (experimental) identification. This paper deals with the creation of a module for experimental identification. The module exists in three versions: a MATLAB toolbox, a MATLAB Web Server application, and a web interface written in the PHP language. Various deterministic methods are used for the experimental identification of systems (first order system, damped and underdamped second order system, Strejc and Broida methods for system of a higher order). Each of the module versions is simple in design, to allow use of this toolbox as a help in the study of deterministic identification methods.
2
EXPID Toolbox
EXPerimental IDentification toolbox (EXPID) is MATLAB GUI application that simplifies the process of transfer function identification from step responses based on measured data. The identification procedure in this case is as follows: 1. Measured data file is loaded. Data file is in CSV format without any headers. 2. Time, input, and output signals are assigned to respective columns (rows). To check correctness, plots of respective variables can be inspected. 3. If filtration of signals is required, the filter parameters are specified. 4. The desired transfer function structure is selected and identification procedure is started. The results are identified parameters and a plot with comparison of the original and the estimated systems. Parameter estimation methods for identification of the following transfer function structures are used: • first order system, • damped and underdamped second order system, • system of a higher order (using the Strejc and Broida method).
Figure 1: Load data box
Detailed theoretical foundations of respective methods can be found for example in [2]. The EXPID toolbox can be used under MATLAB 6.x and 7.x. The installation procedure is standard. It suffices to append to the standard MATLAB path the directory where all the files have been copied. GUI can be invoked by typing expid at the MATLAB command line. Working with EXPID 1. Run EXPID; 2. Click on Loading in Load data box (Fig. 1 left); 3. Choose the file name for processing and click Open1 (Fig. 1 right); 4. Set the vector types (row or column (Fig. 2 left)) and time, input and output vectors (Fig. 2 right). The button Data updating actualises the settings and plots. Then, it proceeds (Fig. 3) to continue with identification setup. The window heading contains information about the number of step responses; 5. Filtration settings. Fig. 4 (left) shows standard settings without any filtration and Fig. 4 (right) settings with low-pass filter characterised by its degree (N ) and corner frequency (Wn ∈ (0, 1)); 6. Selection of identification method and its parameters (Fig. 5): • Setting Step response defines selection of respective step responses that will be used for identification. These can be defined as vectors (e.g. [5] – only the fifth, [3:7] – the third to the seventh, [2:7,10], etc). If this parameter is void all step responses will be taken into account. • Strejc or Broida methods show sometimes problems with the choice of times tu and tn and their ratio tu /tn can be too large. In that case it is advantageous to divide tu into two parts: tu = tuf + Du where Du represents time delay. The overall time delay will then be given as sum of Du and calculated time delay. • If the first order transfer function is considered, two point on step response are needed (Point 1 and Point 2) from range 0 to 100%. We assume here that output at step change time is zero and its new steady state value is 100%. Recommended values are between 10% and 40% for Point 1 and between 70% and 90% for Point 2. 7. Finally, button Identification starts the procedure. Results can be viewed in the result of identification part (Fig. 6). Comparison of step responses of the unknown process and estimated model is shown in Fig. 7.
EXPID menu Exit EXPID - quit EXPID Exit Save as - saves the last successful identification in form of structured data. 1 Text files saved in ASCII format containing only data meant for processing of row or column vectors. The files should not include headings
Figure 2: Vectors type box
Figure 3: Input and output data
Figure 4: Data filtration box
Figure 5: Identification box
Figure 6: Result of identification box
Figure 7: Comparison of step responses of unknown process and estimated model
Language - changes the language (English (default) and Slovak language supported). Plot setting - setting that allows you to draw the progress of the identification into one, two or no graph. Help - shows the EXPID manual, web pages for support and information about EXPID.
Change of default values Some changes of default values can be done directly in expid.m file: • Slovak language setting (line 96): expid_gendata.language == ’sk’; • English language setting (line 96): expid_gendata.language == ’en’; • ”Show no graph” setting (line 97): expid_gendata.depicture == 0; • ”Show only one graph” setting (line 97): expid_gendata.depicture == 1; • ”Show two graphs” setting (line 97): expid_gendata.depicture == 2;
3
EXPID modification
Two modifications of EXPID toolbox have been created that are suitable for Internet. The first one is based on the MATLAB Web Server (MWS) and the second one is implemented entirely in the scripting language PHP.
3.1
MWS Application of the EXPID
We have coupled the EXPID tool with Internet using MWS. To simplify the workflow for the user, the left part contains menu and the right part corresponding information (identification
Figure 8: MWS Application of the EXPID
Figure 9: PHP module of the EXPID
theory, forms for MWS, etc). Each method contains links to theoretical foundation of the methods and actual identification procedure (Fig. 8).
3.2
PHP module of the EXPID
This solution does not depend on MWS. Rather, it re-implements necessary elements directly using scripting language PHP. The web page is divided into three parts (Fig. 9): • menu containing links to index and theory; • specification of file and selection of identification method, • results and graphs. More information about both Internet applications can be found in [1].
4
Conclusions
Compared to the standard System Identification toolbox in MATLAB ([3]), our tool has narrowed focus and is used mainly by students in course Identification. Its Internet versions make it possible to used it anywhere. Toolbox is based on the diploma thesis entitled E–learning Module for Experimental Identification ([1]). The functions described in this paper are freely available for academic research. The EXPID homepage can be found at http://www.kirp.chtf.stuba.sk/~cirka/expid/. A zipped file with the latest collection of MATLAB routines can be downloaded from there.
Acknowledgments The authors are pleased to acknowledge the financial support of the Scientific Grant Agency of the Slovak Republic under grants No. 1/3081/06 and 1/4055/07 and within the framework of the European Social Fund (PhD Students for Modern Industrial Automation in SR, JPD 3 2005/NP1-047, No 13120200115).
References [1] P. Dov´al’. E–learning Module for Experimental Identification (in Slovak). Master’s thesis, FCHPT STU in Bratislava, 2007. [2] M. Fikar and J. Mikleˇs. System Identification (in Slovak). STU Press, 1999. 114 pp. [3] Lennart L. System Identification Toolbox for Use with MATLAB: User’s Guide. The Mathworks, Cochituate Place, 24 Prime Park Way, Natick, MA, USA, 1988.
ˇ Ing. Pavel Dov´ al’; Ing. L’uboˇs Cirka, PhD.; prof. Dr. Ing. Miroslav Fikar; Institute of Information Engineering, Automation, and Mathematics FCFT STU in Bratislava, Radlinsk´eho 9, SK-812 37 Bratislava, Slovakia e-mail:
[email protected],
[email protected],
[email protected]
KONFERENCE TECHNICAL COMPUTING PRAGUE 2007 Příspěvky
A B Č D F G H CH J K L M N O P R Ř S Š T U V Z Procházka, A., Pavelka, A. Předmluva - str. 9 Introduction - str. 11 Anderle, M., Augusta, P., Holub, O. Simulace systémů s rozprostřenými parametry v Simulinku - str. 13 Babušiak, B. Vplyv aplikácie priestorových filtrov na kvalitu statického obrazu - str. 14 Balda, M. An Algorithm for Nonlinear Least Squares - str. 15 Bartko, R. Určenie visko-elastických vlastnosti gumy pomocou Curve Fitting Toolboxu - str. 16 Bartko, R., Maleková, M. Finding Mechanical Properties of Isotropic Materials Using ERA Identification Method - str. 17 Bartoň, L., Čermák, R., Matoušek, J. Modelování magnetických ložisek - str. 18 Bartosinski, R., Daňek, M., Honzík, P., Kadlec, J. Modelling Self-Adaptive Networked Entities in MATLAB/Simulink - str. 19 Bartosinski, R., Kadlec, J. Simulation of CPU Hardware Peripherals - str. 20 Bartoš, P., Blažek, J., Špatenka, P. Charging of A Grain Immersed Into Plasma: Study by Computer Simulations - str. 21 Bartošová, V., Vyšata, O., Procházka, A. Graphical User Interface for EEG Signal Segmentation - str. 22 Bártová, D., Jakeš, B., Kukal, J. Parameter Identification of Axial Dispersion Model - str. 23 Belavý, C., Michalečko, M., Ivanov, V., Leľo, S. Simulation of Robust Control of Temperature Fields in DPS Blockset for MATLAB & Simulink - str. 24 Beránek, L. Užití síťové analýzy v marketingu - str. 25 Blaho, M., Farkas, Ľ. Modeling and Control of DEDS Using Stateflow - str. 26 Blažek, J., Bartoš, P., Špatenka, P. Charging of Dust Particles in Collisionless Plasma Sheath with Non-Maxwellian Electron Energy Distribution Function - str. 27 Bolom, V., Sovka, P. Zvýrazňování řeči pomocí vícekanálového zpracování - str. 28 Bréda, R. Modelovanie a simulácia navádzania riadených zbraní - str. 29 Brzobohatý, T., Markopoulos, A. Vliv modifikace matice hmotnosti na výsledky modální analýzy - str. 30 Bureš, Z. Measurement of Detection Thresholds of Interaural Time an Intensity Differences - str. 31 Byczanski, P. Hledání lokálního maxima funkce, algoritmus "postup06" - str. 32 Černá, D., Finěk, V. Numerical Simulation of Burgers Flow by Wavelet Methody - str. 33 Čirka, Ľ., Bakošová, M., Fikar, M., Herceg, G. Dynamic Simulations of Chemical Processes via the MATLAB Web Server - str. 34 Čuntala, J., Špánik, P. Kondelová, A. Simulácia elektromagnetického vyžarovania Geometrie spínacieho tranzistora DC/DC meniča v prostredí COMSOL - str. 35 Daněk, J. Numerical Analysis of the Total Knee Joint Replacement - Modelling in COMSOL - str. 36
Daněk, J. Strnad, T., Řehoř, J. Využití MATLABu pro optimatizaci záběru nástroje při frézování - str. 37 Dováľ, P., Čirka, L'., Fikar, M. EXPID - Experimental Identification Toolbox - str. 38 Dušek, R. Application of Error Model to Resolve Configurations of Spatial Distance Intersection - str. 39 Fedra, Z., Maršálek, R. Simulace CDMA systému a přenos signálu s pomocí zvukové karty - str. 40 Fischer, M., Mlcek, M., Konvickova, S., Kittnar, O. Computer Simulation of Melocular Level Pathology in Failing Heart - str. 41 Fliegel, K., Švihlík, J. Potlačení obrazového šumu ve videozáznamu z bezpečnostních kamer - str. 42 Foltin, M., Ernek, M. Model of Slovak Power System Using SimPowerSystems - str. 43 Franeková, M. a kol. Inovácia metód laboratórnej výučby teórie automatického riadenia na báze modelovania (jpg) - str. 44 Fritsch, L. Metoda PCA a její implementace v jazyce C++ - str. 45 Funda, T. Návrh aplikace pro zpracování HRV signálu v prostředí MATLAB - str. 46 Gála, M., Mohylová, J., Krajča, V., Petránek, S. Adaptívna segmentácia EEG signálu v prostredí MATLAB - str. 47 Grepl, R., Lee, B., Singule, V., Švejda, P., Vlachý, D., Zezula, P. MBS Modelling with SimMechanics: Case Studies in Research and Education - str. 48 Hájovský, R., Krňávek, J., Macháček, Z. Digitální zpracování obrazu z termovizní kamery - str. 51 Heřmánek, A., Dobiáš, P., Hujer, M. Design of the Wireless Communication System of a Rescue Robot - str. 52 Hoang, S., T., Marvalova, B. Constitutive Material Model of Fiberreinforced Composites in COMSOL Multiphysics - str. 53 Prezentace příspěvku Prezentace výsledků modelování Holečko, P. Bezpečné webové rozhranie systému MATLAB realizované použitím jazyka Java - str. 54 Honc, D., Dušek, F. T-Polynomial in Generalized Predictive Control - str. 55 Horák, J., Oliva, L., Raida, Z. Optimization of EBG Structures by Use of Global Optimization Algorithms - str. 56 Hošťálková, E., Procházka, A. Complex Wavelet Transform in Biomedical Image Denoising - str. 57 Hotař, V., Hotař, A. Surface Profile Evaluation by Fractal Dimension and Statistic Tools Using MATLAB - str. 58 Hrbček, J. Identifikácia dynamického systému pri pôsobení stochastických signálov s použitím MATLABu - str. 59 Hricko, J., Páleník, T. Vizualizácia vybraných mechanických systémov vo Virtual Reality Toolboxe - str. 60 Hubík, V., Szabó, I., Švéda, M. Analýza bezsenzorového řízení BLDC motorů v leteckých aplikacích - str. 61 Hulkó, G., Belavý, P., Buček, P., Noga, P. Predictive Control by Distributed Parameter Systems Blockset for MATLAB & Simulink - str. 62 Hypiusová, M., Osuský, J., Kajan, S. Robust Controller Design Using Edge Theorem for Modular Servo System - str. 63 Chalupa, P., Novák, J. Využití metod přímého hledání optima při prediktivním řízení - str. 64 Chvála, F. On the Inverse Radon Transform - str. 65 Chvostek, T., Krátky, A., Foltin, M. Simulation of Network Using Truetime Toolbox - str. 66
Jamrichová, E. Zisťovanie anaerobného prahu pomocou metódy implementovanej do MATLABu - str. 67 Jedlička, J., Potůčková, M. Correction of Radial Distortion in Digital Images - str. 68 Johanides, P. Analýza rušení v rádiovém systému OFFSET - str. 69 Kabašta, M. Simulace jednofázového maticového měniče - str. 70 Kajan, S., Hypiusová, M. Labreg Software for Identification and Control of Real Processes in MATLAB - str. 71 Kladívko, K. Maximum Likelihood Estimation of the Cox-Ingersoll-Ross Process: The MATLAB Implementation - str. 72 Doprovodné soubory Klečka, R. Simulační model automobilu pro testování řídících jednotek ABS - str. 73 Kloub, J., Heřmánek, A. Akcelerátor pro dekódování konvolučního a Reed-Solomonova zabezpečovacího kódu - str. 74 Kofránek, J., Rusz, J., Matoušek, S. Guyton's Diagram Brought to Life - from Graphic Chart to Simulation Model for Teaching Physiology - str. 75 Source code of Guyton-Coleman-Grander model (1972) in Simulink (mdl-file) Source code of Guyton-Coleman-Grander model (1972) in Simulink with "simulation chips" (mdl-file) Source code of Guyton-Coleman model (1986) in Simulink with "simulation chips" (mdl-file) Detailed description of all mathematical relations used with their reasoning (in Czech) Kolář, P. MEPL2-Interactive Batch Tool for Full Seismic Moment Tensor Plotting - str. 76 Kolář, P. Symbolical Numeric Process for Error Transformation - str. 77 Košek, M., Mikolanda, T., Richter , A. Effective and Robust Calculation of Magnetic Force - str. 78 Kovář, B., Schier, J. Simulink Model Converter for Embedded Video Accelerator - str. 79 Královec, J., Horáček, P., Stryczek, K. Plánování zavlažování a simulace zavlažovacího systému - str. 80 Krupa, J., Pavelka, A., Vyšata, O., Procházka, A. Distributed Signal Processing - str. 81 Kukal, J., Majerová, D., Procházka, A. Dilation and Erosion of Gray Images with Spherical Masks - str. 82 Kukal, J., Majerová, D., Procházka, A., Šprindrich, J. Nonlinear Filtering of 3D MRI as Application of LAsqrt - str. 83 Kukal, J., Procházka, A. Projectile Optimization Via Newton's Model in MATLAB - str. 84 Kvasnica, M., Čirka, Ľ. Unit Testing Framework for MATLAB - str. 85 Kytka, P., Novák, J. Analýza průchodu paprskových svazků koutovým odražečem - str. 86 Ledl, V., Salačová, J. The Convolution Analyzer for Recognition of Woven Composite Structure - str. 87 Macháček, Z., Srovnal, V. Popis, identifikace systému a návrh regulátoru pomocí MATLABu v aplikaci fotbal robotů - str. 89 Malý, J., Rajmic, P.. DWT-SPIHT Image Codec Implementation - str. 90 Marček, D. Wages Forecasting Using Box - Jenkins Methodology - str. 91 Wages Forecasting Using SV Regression Approach - str. 92 Marček, M. Comparison of Approximation and Forecastig Ability of Various RBF NNW Models with Statistical Models - str. 93 Matoušek J., Čermák R., Bartoň L. Modelování kontaktu mezi rotorem magnetického ložiska a záchytným ložiskem - str. 94
Mazálková, M. Využití MATLABu pro podporu výuky a při řešení výzkumných úkolů na katedře komunikačních a informačních systémů - str. 95 Mazanec, T. Simulator of ADSL Physical Layer - str. 96 Měřínský, Z., Gavlasová, A. GUI pro segmentaci obrazů - str. 97 Morávka, J., Michalek, K. Anizochronní model RH - procesu - str. 98 Nardinocchi, P., Svatoň, T., Teresi, L. Using the Comsol in Modeling of Soft Tissues - str. 99 Němec, V. Vyhodnocování hořicí scény v prostředí MATLAB - str. 100 Neubauerova, A., Hejlová, J., Příhoda, J. Analýza zvonu - str. 101 Neuman, P. Modelování přechodových elektromagnetických dějů v elektrizační soustavě pro účely simulace kritických stavů - str. 102 Nováček, J. MATLAB GUI for WFB Spectral Analysis - str. 103 Novák, A., Rund, F. Systematické chyby při analýze nelineárních systémů - str. 104 Nováková, K., Kukal, J. Eliminace vlivu druhé rotace při afinně invariantním 2D rozpoznávání - str. 105 Ožana, Š. S-Funkce využívající nízkoúrovňový přístup k funkcím měřicí karty MF624 - str. 106 Pavelka, M. Využití MATLABu pro testování strategií a obchodování na finančních a derivátových trzích - str. 107 Pelant, L. Maskování akustických signálů - str. 108 Plch, Z. Ochrana vojenských objektů proti účinkům výkonových elektromagnetických polí, simulace EMC filtrů - str. 109 Prezentace firmy Pultarová, I. Hierarchical Refinements of Bilinear Finite Elements - str. 110 Puskely, J., Nováček, Z. Modelování blízkého pole soustavy dipólů - str. 111 Raida, Z. Využití programů MATLAB a COMSOL Multiphysics ve výuce výpočetního elektromagnetismu - str. 112 Rofár, J., Franeková, M. Modelovanie detekčných vlastností bezpečnostného kódu v MATLABe - str. 113 Roubal, J., Boček, K., Váňa, J. Virtual Models in MATLAB - str. 114 Roubík, K., Grünes, R., Rožánek, M. Signal Processing and Evaluation in Artificial Lung Ventilation Monitoring - str. 115 Rožánek, M., Roubík, K. Modelling of the Effect of the Gas Properties Upon the Efficiancy of the Artificial Lung Ventilation - str. 116 Modelling of the Respiratory System in Matlab - str. 117 Rund, F., Fliegel, K. Počítačově podporovaná výuka v oblasti multimediální techniky - str. 118 Rund, F., Nováček, J. Experimentální zvukový kodér - str. 119 Řehoř, J. Návrh explicitního prediktivního regulátoru s využitím Multi-Parametric Toolboxu pro MATLAB - str. 120 Salaba, P. Toolbox modelování a analýzy stochastických systémů - str. 121 Sás, M., Bizoň, L. FEM Analysis in Sensor Development - Siemens VDO - str. 122 Sekaj, I., Ježo, M., Záborský, J., Kajan, S. Virtuálny model autonómnych vozidiel - str. 123
Stružka, P., Waszniowski, L., Bartosinski, R., Bysterský, T. Design of Control Application Using Processor Expert Blockset - str. 124 Šípal, J. Nové možnosti řízení výroby tepelné energie - str. 127 Škrabánek, P., Dušek, F.. Simulink and OPC in Real Time Simulation - str. 128 Doprovodné soubory Šroub, J., Honner, M. Řešení nepřímých úloh vedení tepla pomocí stochastické metody Exodus - str. 130 Štukavec, R. Detection of Faults Presented on Old Optical Sound Tracks Using MATLAB - str. 131 Švejda, P., Grepl, R., Kratochvíl, C., Vlachý, D., Zezula, P. Simulation, Control Design and Experimental Testing of Unstable Mobile Device - str. 132 Tesař, J., Bartoš, P. Využití Graphical User Interface programu MATLAB při výuce optiky - str. 133 Tesař, J., Semmar, N. Tepelné vlastnosti kovových tenkých vrstev: Porovnání numerického 2D modelu (COMSOL) a analytického 1D modelu (MATLAB) - str. 134 Trhan, P., Škultéty, J. Simulácia evolučného vývoja impulznej neurónovej siete - str. 135 Java triedy vzorka obrazov MATLAB snn Tůma, J. Modeling of a Fluid-Induced Rotor Instability - str. 136 Uhlář, K., Běhan, H., Řezáč, J. Adaptivní potlačování ozvěny v telekomunikacích - str. 137 Ukázka 1 Ukázka 2 Vstupní signál (Rin) Vstupní signál (Rin) Výstupní signál před úpravou (Sin) Výstupní signál před úpravou (Sin) Výstupní signál po úpravě (Sout) Výstupní signál po úpravě (Sout) Urban, J., Thörnberg, B., Březina V., Štys, D. Evaluation of HeLa Cells Growth - nemá abstrakt Vaněk, K., Urban, J., Březina, V. Study of Scenedesmus Alga Growth Via Image Analysis - str. 138 Doprovodné soubory Volfová, A., Novák, J. Numerická analýza šíření světelných paprsků v izotropním optickém prostředí - str. 139 Vondřich, J., Havlíček, R. Numerické řešení vibroizolace stroje - str. 140 Vrána, S. Vyhodnocování signálů při samoseřizování s využitím spolupráce programů REX a MATLAB - str. 141 Zaplatílek, K., Slinták, J. Automatizovaná měření s využitím systémů "AMEX" a "DDE" (jpg) - str. 142 15. ročník podzimního setkání uživatelů a příznivců programového prostředí MATLAB & Simulink a COMSOL Multiphysics