ARX and ARMAX System Estimation
- Login to Download
- 1 Credits
Resource Overview
This guide demonstrates system estimation using ARX and ARMAX models for a transfer function 2(s+1)/(s²+2s+2), including discrete conversion at 100ms sampling frequency with na=nb=2, nc=1 parameters, and pole-zero analysis implementation.
Detailed Documentation
In this analysis, we focus on estimating a dynamic system using both ARX (AutoRegressive with eXogenous input) and ARMAX (AutoRegressive Moving Average with eXogenous input) models. The continuous-time transfer function under investigation is 2(s+1)/(s²+2s+2).
To implement the estimation, we first convert the system to discrete-time form using a sampling interval of 100 milliseconds. This discretization can be achieved in MATLAB using the c2d() function with appropriate method selection (e.g., 'zoh' for zero-order hold). For our model structure, we define the ARX parameters as na=2 (number of autoregressive terms), nb=2 (number of exogenous input terms), and for ARMAX we additionally set nc=1 (number of moving average terms).
The estimation algorithm employs iterative prediction-error minimization methods, where the armax() function in MATLAB would typically be used to compute model coefficients. Beyond parameter estimation, the implementation includes pole-zero analysis through the zpk() function, which extracts system poles and zeros from the estimated transfer function. This analysis provides critical insights into system stability and dynamic characteristics.
The complete workflow involves: 1) System discretization, 2) Model structure specification, 3) Parameter estimation using least-squares or maximum likelihood methods, and 4) Pole-zero computation for validation. This comprehensive approach ensures accurate system identification and facilitates subsequent controller design or system optimization.
- Login to Download
- 1 Credits