你好!大家好,我又来了,上一篇文章写了数据字典中自动添加参数类型变量,那么可能就有同学会问了,既然能自动添加参数类型的变量,那能不能自动添加信号类型的变量呢?答案是:当然可以,毕竟矩阵实验室的如此强大,提供了丰富的函数接口,话不多说,直接给大家展示吧。
函数add single()Signal=find _ system(BD root,' FindAll '' on '' type '' line ');%找到当前模型的线条类n=长度(信号);err _ SIG define=0;success _ SigDefine=0;for I=1:n Signal _ Name=get _ param(Signal(I),' Name ');%获取线条的名称exist _ flg=0;if ~isempty(信号名称)%如果名称存在,则与工作区中的变量名进行对比,如果存在,则输出exist _ flg=1 base work=who for I=1:length(base work)if strcmp(Signal _ Name,BaseWork(i).name)exist _ flg=1;打破;end end if ~exist_flg==1%如果不存在,则新建信号类型的变量,并定义该变量的各个属性试试temp_defined=Simulink .信号;临时定义的编码器信息。存储类=“导出的全局”;assignin('base 'Signal_Name,temp _ defined);Success _ SigDefine=Success _ SigDefine 1;catch fprintf(' Err _ SIG define=% s \ n 'Signal _ Name);%如果新建出错,则Err _ SIG define 1 Err _ SIG define=Err _ SIG define 1;end end end if Err _ SIG define==0 disp(' Successful ');else disp('错误');fprintf('Success_Define=%d\n 'Success _ SIG Define);%输出成功_信号定义和错误_信号定义计数fprintf('Err_SigDefine=%d\n 'Err _ SIG define);恩登视频加载中.