EDA365电子论坛网

标题: set_param给simulink模块设置参数时如何以变量赋值 [打印本页]

作者: dark    时间: 2019-12-3 13:59
标题: set_param给simulink模块设置参数时如何以变量赋值
比如我设a=10
: v4 C- f' l1 M3 N# A4 {4 } 然后想把a赋值到某个模块里得参数
$ `( v5 E! B( Q0 v0 `. j set_param('','',a)5 ]* j2 S3 S# P5 \$ c
不行,$ f" A6 k# \+ C! V$ u% R
set_param('','',‘a’)
6 }6 }: B+ b/ X; ~: ~! P/ p 也不行,# p- J& n) L- C% v8 `3 a2 K0 i- d; M
有什么办法,谢谢,(因为需要在m文件中运行simulink,并根据仿真结果不断改变a的值,继续仿真这样不断迭代)' |/ w5 O% O) G! `

作者: fawa    时间: 2019-12-3 18:10
首先,你得清楚你赋值的参数名是什么
  d" O, f. L' b7 c假如要将constatn模块值赋成10,那么就是set_param('xxx/constant','value',num2str(10));, Y2 X: Q. L4 U' H" w" E0 Y
这个value就是你需要知道的参数名,每个模块可能都不一样& y* x2 d4 A" U+ p" x$ @
建议先用get_param来获知一下参数名; J" G. Z$ y4 Q- y( Y' h0 W
如,temp=get_param('xxx/xxx','ObjectParameters');& M/ }' u0 v" ^* t$ W. G
然后查阅temp变量,找寻到你要的变量名,然后再尝试一下
4 d, h) g; B8 J3 ivalue=get_param('xxx/xxx','YourParamterName');+ a) R# b( m  A0 U% ?% p
确定一下value是对得上的,再进行set_param操作




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2