使用Scilab,获取传递函数闭环

时间:2013-05-27 15:36:34

标签: pid scilab xcos

我有一个XCOS计划,其中有礼物:

  • 我的系统G(Z)

  • Pid控制器

Xcos scheme

现在,我想知道闭环传递函数。

我如何通过scilab / Xcos获得它?

由于

最佳

***编辑:****

按照user1149326的建议:

loadXcosLibs(); loadScicos();
importXcosDiagram("/home/dursino/Desktop/nostro_sistema.xcos");
for i=1:length(scs_m.objs)
if typeof(scs_m.objs(i))=="Block" & scs_m.objs(i).gui=="SUPER_f" then
    scs_m = scs_m.objs(i).model.rpar;
    break;
end

-->sys = lincos(scs_m);

最后一个语句返回: lincos:无法找到图表输入 在函数lincos的第118行称为:
sys = lincos(scs_m);

祝你好运

2 个答案:

答案 0 :(得分:0)

您可以使用lincos从xcos图描述的通用动力系统创建线性状态空间模型。

获取状态空间模型后,您可以使用ss2tf将其转换为传递函数。

答案 1 :(得分:0)

正如@spoorcc 所提到的,您可以使用 lincos 来获取您在 Xcos 中创建的系统的状态空间表示。要记住的一件重要事情是,您应该在 Xcos 中使用 IN_f 作为输入和 OUT_f 作为输出。只有这样,您才能使用 lincos 获得状态空间表示。我认为您没有在 Xcos 模型中使用这些,这就是您遇到该错误的原因。

附言我知道这个答案可能对 OP 没有帮助(自从被问到它已经 8 年了)但我希望这可以帮助像我这样花了很多时间寻找这种方法的人。