How can I disable data logging for all the signals in my model?

207 次查看(过去 30 天)
I have enabled data logging for a lot of signals in my model, how can do this via command line functions?

采纳的回答

MathWorks Support Team
The following code will disable signal logging for all the signals in the model ('gcs' can be replaced by the model name):
mdlsignals = find_system(gcs,'FindAll','on','LookUnderMasks','all','FollowLinks','on','type','line','SegmentType','trunk');
ph = get_param(mdlsignals,'SrcPortHandle')
for i=1: length(ph)
set_param(ph{i},'datalogging','off')
end
  1 个评论
Asvin Kumar
Asvin Kumar 2020-9-7
For those who want to copy paste this into a laaarge model...
...add a semicolon on line 2.
My ph variable had an output of length 2077x1. :/

请先登录,再进行评论。

更多回答(1 个)

Keqin Xu
Keqin Xu 2020-11-3
I made a convenient shortcut out of the following script.
% this will remove logging of any selected signals in the SimuLinkmodel
mn=inputdlg({'Input SimuLink Model Name:'},'',1,{''});
if ~isempty(mn)
if exist(mn{1})==4
mdlsignals = find_system(mn,'FindAll','on','LookUnderMasks','all','FollowLinks','on','type','line','SegmentType','trunk');
ph = get_param(mdlsignals,'SrcPortHandle');
for i=1: length(ph)
set_param(ph{i},'datalogging','off')
end
msgbox(['Any signal loggings in "',mn{1},'" have been removed.'])
else
msgbox(['"',mn{1},'" is not a valid SimuLink model.'])
end
end

类别

Help CenterFile Exchange 中查找有关 Modeling 的更多信息

标签

尚未输入任何标签。

产品


版本

R2015b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by