Effacer les filtres
Effacer les filtres

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

207 vues (au cours des 30 derniers jours)
I have enabled data logging for a lot of signals in my model, how can do this via command line functions?

Réponse acceptée

MathWorks Support Team
MathWorks Support Team le 11 Juil 2018
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 commentaire
Asvin Kumar
Asvin Kumar le 7 Sep 2020
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. :/

Connectez-vous pour commenter.

Plus de réponses (1)

Keqin Xu
Keqin Xu le 3 Nov 2020
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

Catégories

En savoir plus sur Modeling dans Help Center et File Exchange

Tags

Aucun tag saisi pour le moment.

Produits


Version

R2015b

Community Treasure Hunt

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

Start Hunting!

Translated by