Forward and feedback controllers in SISOtool.
이 질문을 팔로우합니다.
- 팔로우하는 게시물 피드에서 업데이트를 확인할 수 있습니다.
- 정보 수신 기본 설정에 따라 이메일을 받을 수 있습니다.
오류 발생
페이지가 변경되었기 때문에 동작을 완료할 수 없습니다. 업데이트된 상태를 보려면 페이지를 다시 불러오십시오.
이전 댓글 표시
0 개 추천
Hello.
I have two different controllers in a feedback loop which I'd like to keep seperated. My problem is that the architectures in SISOtool that support 2 controllers, I can't really "block algebra" my setup to look like those while still keeping the controllers seperated.
What I have is the following:

where C and F would be my controllers.
Any advise is really apprecieated.
Regards Mathias
채택된 답변
Arkadiy Turevskiy
2014년 6월 18일
Hi Mathias,
Unfortunately there is no way to do this now with SISO Tool. The only option is to tune C first using configuration 1, and use F using configuration 2.
Of course you could still tune them without SISO Tool too. Arkadiy
댓글 수: 8
Mathias
2014년 6월 19일
Hi Arkadiy.
I thank you for taking the time to answer me. In the mean time i found out that using controller design from simulink allows me to use sisotool the way i wanted. I simply design above coled loop in simulink and chose both controllers as tunable.
Hope you can confirm this :)
You also write as the last point in your reply that other tools exist to tune multiple controllers? Could you give a reference to some? And would some of these alternatives be an advantage?
Regargs Mathias
Arkadiy Turevskiy
2014년 6월 19일
편집: Arkadiy Turevskiy
2014년 6월 19일
Hi Mathias, You are correct. If you have access to Simulink, you can setup an arbitrary control architecture, and then tune it with what we now call Control System Designer (SISO Tool). For your configuration you will be able to edit both C and F (change magnitude, set poles and zeros), and see the impact of your interactive tuning on a step response of the system.
As for the second question: there is a tool called Control System Tuner (in Robust Control Toolbox) that lets you automatically tune arbitrary MIMO control architectures in Simulink. In your case you would specify C and F as blocks to tune, specify the system requirements (for example, reference tracking from r to y,as well as minimum stability margins), and let the tool tune both C and F automatically for you. When you create a block diagram in Simulink, you select what blocks to use for C and F (transfer function, state space, PID controller, etc), and the tool tunes block parameters while keeping the specified controller structure.
In comparison to Control System Designer (SISO Tool), Control System Tuner can deal with arbitrary MIMO systems, and it tunes the gain automatically to meet specified requirements (as opposed to you basically doing loop shaping for a SISO system yourself in SISO Tool).
Feel free to ask further questions if interested.
Hi Arkadiy
Once again thank you very much for taking your time to provide such a fullfilling reply, most helpful.
So if I gather your text correct, the "Control System Designer" run from SIMULINK can not do the "optimization based tuning" as when run via "sisotool" from MATLAB, only manual tuning? And is this the reason that when i try to press the "optimize compensators" that it gives a error message saying "Use two or more subscripts to select or delete all elements, as in the "sys(:)" command." when running via SIMULINK.
However it seems that this feature has been implemented via the Control System Tuner which can be run via SIMULINK?
Regards Mathias
By the way, i'm using R2013b.
Hi Mathias, No, you should be able to do optimization-based tuning if you setup a controller architecture in Simulink.
Optimization-based tuning requires Simulink Design Optimization. Do you have this tool?
I can further troubleshoot if you attach the model with saved session of Control System designer.
Hi again.
Sorry for the late answer, but somehow I'm now able to do the optimization-based tuning, must have done something wrong before. Any way to define steady state value as a criteria? Sometimes it finds a solution that fits the step characteristics, but in slowly diverges to another steady state.
Regaards Mathias
Mathias, you simply need to change the boundary "duration", just click on the final segment right point and drag to the right as far as you need.

To get more time on the time axis, right click on the pliot, and set the limits as needed in "properties".
Mathias
2014년 7월 11일
Thanks again for your assistance. This was what i had already been doing, but thought there might be a way of entering it as a design rule. ;)
Thanks again for all your help Arkadiy. How is "help appreciation" shown best on this fora?
you are welcome. you show your appreciation by accepting the answer - that's it.
추가 답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Loop-Shaping Design에 대해 자세히 알아보기
참고 항목
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!웹사이트 선택
번역된 콘텐츠를 보고 지역별 이벤트와 혜택을 살펴보려면 웹사이트를 선택하십시오. 현재 계신 지역에 따라 다음 웹사이트를 권장합니다:
또한 다음 목록에서 웹사이트를 선택하실 수도 있습니다.
사이트 성능 최적화 방법
최고의 사이트 성능을 위해 중국 사이트(중국어 또는 영어)를 선택하십시오. 현재 계신 지역에서는 다른 국가의 MathWorks 사이트 방문이 최적화되지 않았습니다.
미주
- América Latina (Español)
- Canada (English)
- United States (English)
유럽
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
