中易网

Matlab中simulink的问题 一个输入怎么多个输出 我做的是电机的仿真 具体问题如下图

答案:1  悬赏:40  
解决时间 2021-01-12 05:20
  • 提问者网友:太高姿态
  • 2021-01-11 22:56
Matlab中simulink的问题 一个输入怎么多个输出 我做的是电机的仿真 具体问题如下图
最佳答案
  • 二级知识专家网友:七十二街
  • 2021-01-12 00:22
你用的是Demux模块,错误的原因是输入和输出信号的维数不匹配。
 
Demux模块的基本作用是把一个输入信号给展开成多个输出信号,有两种工作模式,即向量模式和总线选择(Bus selection)模式,取决于你是否选中了Bus selection mode参数(注意:MathWorks公司不鼓励使用Bus selection模式来展开总线信号)。猜测你很可能是按照默认情况下使用向量模式,所以下面的讨论以向量模式为前提。
 
Demux模块的参数Number of outputs可以是标量或向量,如果是标量,则指定了输出的个数;如果是向量,则向量的元素个数对应输出个数。关于该参数的详细规定可以用doc demux查看相关文档。
 
可能导致出错的主要有以下两种情况(其他条件下,Simulink会采取一种比较合理的方式来理解你的输入参数):
如果Number of outputs为标量,该标量的值大于输入向量的元素个数;
如果Number of outputs为向量,向量各元素均为正且求和与输入向量的元素个数不等。
 
请核对一下你的Demux模块参数是怎样设置的,以及输入信号的维数,二者是否匹配?
追问输入是一维的 怎么解决呢追答你所说“输入是一维的”是什么概念?是一维的向量,还是说只有一个元素的标量?
如果是向量,请参考前面的回答,核实向量元素个数与输出是否匹配;
如果是标量,Dmux的作用就是把向量给拆分成几个小的向量(或标量),请问你把只有一个元素的标量怎样再进行拆分?
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息