如何纠正错误在仿真软件端口宽度或维度?金宝app

940(30天)
我得到以下端口尺寸错误当我尝试运行仿真软件模型:金宝app
“无效的设置输入端口“CONT_assignment / Demux1”维度。大小被设置为[1]。这是无效的,因为输入和输出元素的总数是不一样的”
“港口宽度误差或维度。无效的尺寸已经指定了输出端口1的‘CONT_assignment /转让Fcn’。”
这是一个模型的图像。这是一个简单的PID控制器模型。中指定的控制器增益值m文件作为全局参数。
谁有解决方案吗?

接受的答案

沃尔特·罗伯森
沃尔特·罗伯森 2018年6月16日
块之间通过转让Fcn Add1:显式地设置它们中的任何一个有一个输出宽度为1。
困难你是与你的循环你设置的方式,这将是有效的对你最重要的是保持一个向量的大小被传播。例如如果向量长度5 Add1,然后进入PID,这将创建一个输出长度5,这将进入Gain5,这将创建一个输出长度5,这将进入Gain4,这将创建一个输出长度5,这将进入Add2将生成一个输出长度5,这将进入Fcn转移,这将产生一个输出长度5,这将进入多路分配器。但多路分配器没有被告知如何输入长度为5的分手,因为你没有告诉它多少值去输出。如果我们想要得到5个输出底部,然后在Add1和反馈循环将完成这部分,不会有任何问题,所以一个向量输出不符合任何的块。这反过来意味着模型不能推导出它应该是使用大小。金宝app如果你要修复的输出大小的任何一块,尤其是Add1块,然后仿真软件能够算出加所有的大小。金宝app
然而,再看看多路分配器。为了多路分配器,你必须将输入分成多条路径,所以每个输出必须小于输入。如果你发送一个标量通过这些Add1等等,你会有一个标量fcn转移,多路分配器。现在你至少有两个输出的多路分配器但只有一个输入,这是一个问题。
多路分配器是分裂向量。我不认为你想要分裂的输出传递函数:我认为你想要相同的标量输出Add1和块范围。不需要任何块:连接两个相同的输入。
3评论
穆罕默德khosravani
穆罕默德khosravani 2023年5月24日16:52
我也有同样的问题,一个小差异。我有develpoed子系统和一切运行良好。但是当我把它放在一个更大的仿真模型,我收到这个消息。输入是一样的但是我不知道是什么问题吗?

登录置评。

答案(1)

阿喀琉斯Jacquemond
阿喀琉斯Jacquemond 2018年6月16日
谢谢你!我删除了多路分配器,它似乎工作。
我只是不知道如何“显式地设置它们中的任何一个有一个输出宽度1”
如何做到这一点呢?

下载188bet金宝搏


释放

R2017a

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!