Linear System Stability Analysis: Matrix Blocks, Integral Block Included

AI Thread Summary
The discussion focuses on determining the stability of a matrix-based linear system with an integral block included. Participants emphasize the importance of reducing the block diagram to find the equivalent state-space representation, specifically focusing on the A matrix to analyze eigenvalues for stability. It is clarified that the system's stability is determined solely by the eigenvalues of the A matrix, which must all have negative real parts to ensure stability. The conversation also highlights the need to accurately represent the system's components and their interactions, particularly how to handle matrix dimensions and feedback. Ultimately, the stability can be assessed by examining the modified A matrix after incorporating feedback effects.
Number2Pencil
Messages
204
Reaction score
1

Homework Statement



I'm having to figure out if a system is asymptotically stable, stable, or unstable. I am given the system block diagram. However, each constant block is actually a matrix. Also, there is an integral block thrown in there...

Homework Equations


The Attempt at a Solution



In a regular, non-matrix system, I would reduce the block diagram until I arrive at the the system's equivalent transfer function in a canonical form, and then analyze the values of the roots to determine the system stability. The integral block would be a 1/s block...I believe

Since this is a matrix system however, I'm not exactly sure what to do. Should I still reduce the block diagram as if it was not matrix-constants and then perform some kind of analysis on the Matrix-laden system transfer function...or maybe start off by breaking up all the matrix math into individual element formulas?

Not really sure what to do in this case...
 
Physics news on Phys.org
Can you post the matrix block for us?
 
The inputs of the system are i_t and v_t, and the output is the output of the integrator.
 

Attachments

  • image001.png
    image001.png
    5.9 KB · Views: 458
Those blocks are matrices? You sure they're not just gains? If they are matrices, what are the elements of each?
 
A is a 2x2, and B and L are 2x1 matrices, Ro is just a constant. The OCV/VRC block is somewhat misleading as drawn, as it actually extracts the elements out of its input (let's call it x1 and x2), and performs the following math function: output = m*x1 + b - x2. So the input of this block is a 1x2 and the output is a 1x1

The system was modeled in Simulink, and I started questioning how A*integral_out (which would be a [2x2]*[1x2]) could output a [1x2], and the answer is apparently this formula:

y = (A*integral_out')', where ' is Transpose. No idea why Simulink decided to do this, but that's what it decided. It also decided this on the B and L blocks, so the dimensions just magically work out...

Exact values:

A = [0 0; 0 -0.0833]
B = [0.0019; 0.0167]
Ro = 1.45
L = [2.4147; 0.6299]

So...is there any way to determine mathematically if these values will result in a stable or unstable system?
 
Using matrices is a state space representation of the data. The way you are presenting the data to us is creating a good deal of confusion...

so typically state space system are written as follows

\dot{X}=A*X+B*U
Y=C*X+D*U

The B matrix controls controls the effect that the input have on any of the state variables
The A matrix controls the effect that the state variables have on themselves and other state variables
The C matrix controls the effect that the state variables have on the output
The D matrix control the effect that the inputs directly have on the output

If you find the eigen values of the system ( |λI-A| solve for λ, I=identity matrix ), the system is stable if the eigen values are all in the left half plane, aka all eigen values must have real negative parts.

your B, C and D matricies have no effect on stability

!HOWEVER!

It looks like in your problem took a state space system (the portion of the circuit with an input of I_T, the B matrix, A matrix, and inegrator) and changed it. They added another input (V_T) and added feedback from the state variables (X*[OCV;V_RC]) and multiplied that by a gain of L.

I included a lot of the high level theory behind this type of control analysis
So what do you need to do...

You need to determine the new state space format, we will call these matrices A', B', C', and D'

Use those matrices to find your eigen values (Hint if you only need stability, you only need to find your A' matrix. All other matrices do not matter.)

remember the A matrix controls the effect that the state variables have on themselves and other state variables.

So you need to find A'. If you think you can't just give it a try and I'll help you out. the answer is very easy
hint. A'=A+...
 
Last edited:
note the eigen values are essentially the poles of the system
if you have a simulink model, you can determine stability by adding a step response into both inputs and observing the output. if it reaches a steady value, it is stable.

also in my previous section. U=inputs, X=state variables, Y=output
in your case (and most cases) the D matrix is zero

and yes the integral block is equal to 1/s
 
here is a table governing the size of the matricies. this may give you insight into your problem earlier
x: p x 1
x':p x 1
u: q x 1
y: r x 1

A: p x p
B: p x q
C: r x p
D: r x q

you have two inputs, so q=2
you have 2 state variables, so p=2
you have 1 output, so r=1
 
Thanks for the patience. I do understand what you were saying about state-space and that I need to simplify my system into its equivalent state-space form. I'm not sure where to begin on actually doing this.

For starters, I tried to redraw the diagram to make it more accurate. Even doing that raised a few questions (see attached image). For one, I needed a symbol to split a 1x2 matrix into 2 1x1 signals. Not sure what the correct way to do that on a system diagram. Next, I wondered how I can represent the following formula as a transfer function block:

y = mx +b

I can't exactly get this into a y/x form (I end up with y/x = m + b/x), so I just moved the +b term outside the block. Now this makes me wonder if the +b is now considered another input.

As for simplifying, I wasn't sure if I need to use system diagram simplification skills like feedback equations and moving nodes around(is that even legal in a matrix system), or if I just need to write out the equations for X', which should be the input side of the 1/S block.

Thanks again for the help.
 

Attachments

  • SystemAnalysis.png
    SystemAnalysis.png
    31.2 KB · Views: 468
  • #10
that simplification wasn't 100% necessary, but its not a bad thing to see the system in more detail.
like i said above system stability is not dependent on the inputs at all. So you can remove the V, Ro, B, and I blocks.

You setup the N block correctly. And it should stay in there, due to the fact that it is a constant. By inputs to the system i mean dynamic inputs.

that leaves you with the original A matrix and the L,X[1],and X[2],M blocks
so your stability matrix will be A+L*( )
fill in the blank
 
  • #11
I also want to point out a neat little trick. if all non-diagonal elements of the A matrix are zero. then the poles of the system lie on the diagonal.

ex=
A=[1 0;0 -4]

this means that the poles of the system are 1 and -4, so the system is unstable.

in your problem, without the extra feedback from the L block and the output, the poles of the system are at 0 and -0.0833. So the system is marginally unstable before the extra output feedback was added
 
Back
Top