simulink mask的使用技巧
1.mask界面布局
1.1如何调整控件的位置和控件大小?
反正2020a是调不了,
找了好久,只能是调布局,例如你要调成下面这样:
第一个控件的iTem location属性选择New row
后面跟着的几个和第一个同一行的空间属性选择Current row
1.2.block界面文字的显示
本人用的2020a,发现测试出来几个原则
1)disp和port_label只能在Icon&Ports里面调用,而且不能在回调函数里面调用,否则是无效的。2)特别是port_label,只要不是在Icon&Ports,调用就会报错。
3)disp如果不在Icon&Ports里面调用,打印的内容是显示在MATLAB命令行中,而不是blokck上。
其他显示的例子自行看网上基础教材。
1.3.不可见的参数不与callback修改的参数同步更新,即apply/OK按钮无效,只在右上角关闭按钮时才更新。
在parameters&Dialog选项中的参数,如果某个parameter的Visible属性不✓(当时就是为了传递一个中间变量),那么整个block如果有哪个控件的回调函数用到了这个参数,使用mask的时候点击APPLY和OK的时候,这个参数会传不出去,mask又恢复为调用callback以前的了。
所以没事不要把parameter的Visible属性勾掉。
1.4.Evaluate属性
对于文本框Edit来说,如果这个框打勾,就是需要“Simulink 使用您在封装对话框中键入的封装参数值”,什么意思呢?就是如果这个框的值一定要填写单引号字符串,就会报错。
对于Edit来说,本人认为可以把这个✓去掉,通过代码来判断输入的正确性,并且也不用使用mask的时候,把字符串加单引号。
1.5.使用m语言回调函数
很多控件可以编辑回调函数,点击回调函数按钮,建议新建一个m文件的Function,在callback文本框里面调用这个Function,而不是直接写函数内容,这样不好调试,放在外面的m文件里面可以打断点也可以在matlab的工作区看变量。