Shifting state space variables by constant value

Hi,
I have a discrete time state space model for which I want to shift the state variables by a constant value. The actual model is as follows,
x(k+1) = Ax(k) + Bu(k)
It is a 4-state system. The goal is to change state variables and input to the following variable.
z(k) = x(k) - c
v(k) = u(k) - c
Where c is a constant. My question here is, how shall this change of variable be implemented to change the state space equation accordingly. Is the following change going to work? I could not see similarity transform working here.
z(k+1) = Az(k)+ Ac + Bv(k) + Bc
Am I missing anything here? Please advise of your thoughts.
Thank you.

답변 (1개)

Azzi Abdelmalek
Azzi Abdelmalek 2014년 7월 22일
편집: Azzi Abdelmalek 2014년 7월 22일

0 개 추천

You gave an incomplete state space equation. What about the output?
y[k]=e.x[k]+d u[k] ,
The output should also change
y[k]=e.(z[k]+c])+d.(v[k]+c)
The states change but not the output

댓글 수: 4

I am so sorry about it.
Output is simply
Y(k) = x(k)
Ok, then y[k] will be
y[k]=z(k)+c
Salman
Salman 2014년 7월 23일
Thank you for your feedback. But what about the x(k+1)? It is a discrete time system. For continuous time system, dx/dt = dz/dt as the derivative of constant c = 0. But what will happen to x(k+1) in discrete time?
Nothing happens to x[k+1],
x(k+1) = Ax(k) + Bu(k)
In your case you have considered another state z[k], you have the choice to work with x or z, just do not forget to change the equations

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Deep Learning Toolbox에 대해 자세히 알아보기

질문:

2014년 7월 22일

댓글:

2014년 7월 23일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by