发布网友 发布时间:2022-04-26 06:44
共1个回答
热心网友 时间:2023-10-08 19:11
首先解答一下题主目前的困惑。这个问题是由于求解器(solver)选择不当造成的,题主选择的求解器只适用于离散系统,而这个系统是连续系统。按Ctrl+E打开模型参数配置对话框进行设置即可。
之前看到了题主的另一个提问(编号498486916605446084),那位知友的答案是正确的,但对于具体做法和回答问题的方式,我有一些不太赞成的地方:
1、最重要的,回答Simulink建模的问题,一般应该上传mdl文件,不然,提问者还需要再自己重新搭建。这样倒也不算浪费时间,毕竟也是一个练习的过程。但Simulink模型有很多信息是不能体现在截图上的,自行搭建模型可能会遇到各种问题,例如现在题主的情况。
2、模型中的一些常数,不建议直接使用数值,而应该考虑使用变量。例如,我搭建的模型如下:
其中的常数可以直接在命令窗口中定义,更可取的做法是通过初始化回调函数定义。具体入口是,模型的File --> Model Properties菜单,打开对话框,选择Callback面板,然后设置InitFcn的内容:
3、其它还有一些建模的小细节。例如,对于一些从图标就能看出用途的常用模块,一般应考虑Hide Name,以使得模型看上去更简洁;对于信号的标注,应该双击信号线然后对其命名,而不是在空白处双击添加Annotation(前者信号线有移动时会自动跟随移动,后者不会)。
最后,顺便说一下,题主自建的模型中,最后一项的符号是错的。