Setting the initial output value for state space block in MATLAB
4 次查看(过去 30 天)
显示 更早的评论
I've got the following control loop in Simulink:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/547893/image.png)
What I'm trying to do is to set the initial value for the output to be 23, right now it starts from 0 and I can't find any explanation how that's done, these are my ABCD parameters which I got from my 2nd order Transfer Function:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/547898/image.png)
I hope I have provided enough information.
0 个评论
回答(1 个)
Gobiha Duraisamy
2022-6-10
Initial condition in the state-space block corresponds to the initial condition of the states x and not the initial condition of the output y.
In your case, the C matrix which relates states and output has a scaling factor. The desired initial output along with the state-space equation could be used to compute the initial condition of the states. But this is not straightforward.
Alternatively, State-Space with Initial Outputs block allows you to specify initial outputs directly. This block can be found under Simulink Extras > Additional Linear.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Additional Math and Discrete 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!