Control Systems/Introduction to Digital Controls
Discrete-Time Stability
editThe stability analysis of a discrete-time or digital system is similar to the analysis for a continuous time system. However, there are enough differences that it warrants a separate chapter.
Input-Output Stability
editUniform Stability
editAn LTI causal system is uniformly BIBO stable if there exists a positive constant L such that the following conditions:
imply that
Impulse Response Matrix
editWe can define the impulse response matrix of a discrete-time system as:
[Impulse Response Matrix]
Or, in the general time-varying case:
A digital system is BIBO stable if and only if there exists a positive constant L such that for all non-negative k:
Stability of Transfer Function
editA MIMO discrete-time system is BIBO stable if and only if every pole of every transfer function in the transfer function matrix has a magnitude less than 1. All poles of all transfer functions must exist inside the unit circle on the Z plane.
Lyapunov Stability
editThere is a discrete version of the Lyapunov stability theorem that applies to digital systems. Given the discrete Lyapunov equation:
[Digital Lypapunov Equation]
We can use this version of the Lyapunov equation to define a condition for stability in discrete-time systems:
- Lyapunov Stability Theorem (Digital Systems)
- A digital system with the system matrix A is asymptotically stable if and only if there exists a unique matrix M that satisfies the Lyapunov Equation for every positive definite matrix N.
Poles and Eigenvalues
editEvery pole of G(z) is an eigenvalue of the system matrix A. Not every eigenvalue of A is a pole of G(z). Like the poles of the transfer function, all the eigenvalues of the system matrix must have magnitudes less than 1. Mathematically:
If the magnitude of the eigenvalues of the system matrix A, or the poles of the transfer functions are greater than 1, the system is unstable.
Finite Wordlengths
editDigital computer systems have an inherent problem because implementable computer systems have finite wordlengths to deal with. Some of the issues are:
- Real numbers can only be represented with a finite precision. Typically, a computer system can only accurately represent a number to a finite number of decimal points.
- Because of the fact above, computer systems with feedback can compound errors with each program iteration. Small errors in one step of an algorithm can lead to large errors later in the program.
- Integer numbers in computer systems have finite lengths. Because of this, integer numbers will either roll-over, or saturate, depending on the design of the computer system. Both situations can create inaccurate results.