В этом примере показано, как управлять осциллографами с написанием скриптов.
Используйте объект Scope Configuration в программируемом доступе, чтобы определить объем параметров.
Измените заголовок, подписи по осям и пределы по осям
Включите или выключите легенду или сетку
Управляйте количеством входных параметров
Измените количество отображений и какое отображение активно
Создайте модель и добавьте Осциллограф и блок Time Scope. Затем используйте get_param
создать объект Scope Configuration myConfiguration
.
mdl = 'myModel'; new_system(mdl); add_block('simulink/Sinks/Scope', [mdl '/myScope']); add_block('dspsnks4/Time Scope', [mdl '/myTimeScope']); myConfiguration = get_param([mdl '/myScope'],'ScopeConfiguration')
myConfiguration = Scope configuration with properties: Name: 'myScope' Position: [360 302 560 420] Visible: 0 OpenAtSimulationStart: 0 DisplayFullPath: 0 PreserveColorsForCopyToClipboard: 0 NumInputPorts: '1' LayoutDimensions: [1 1] SampleTime: '-1' FrameBasedProcessing: 0 MaximizeAxes: 'Off' MinimizeControls: 0 AxesScaling: 'Manual' AxesScalingNumUpdates: '10' TimeSpan: 'Auto' TimeSpanOverrunAction: 'Wrap' TimeUnits: 'none' TimeDisplayOffset: '0' TimeAxisLabels: 'Bottom' ShowTimeAxisLabel: 0 ActiveDisplay: 1 Title: '%<SignalLabel>' ShowLegend: 0 ShowGrid: 1 PlotAsMagnitudePhase: 0 YLimits: [-10 10] YLabel: '' DataLogging: 0 DataLoggingVariableName: 'ScopeData' DataLoggingLimitDataPoints: 0 DataLoggingMaxPoints: '5000' DataLoggingDecimateData: 0 DataLoggingDecimation: '2' DataLoggingSaveFormat: 'Dataset'
Установите свойство.
myConfiguration.DataLoggingMaxPoints ='10000';
Найдите блоки Осциллографа Осциллографа и Времени.
find_system(mdl,'LookUnderMasks','on','IncludeCommented','on', ... 'AllBlocks','on','BlockType','Scope')
ans = 2x1 cell array
{'myModel/myScope' }
{'myModel/myTimeScope'}
Найдите только блоки Осциллографа Simulink.
find_system(mdl,'LookUnderMasks','on','IncludeCommented','on',... 'AllBlocks','on','BlockType','Scope','DefaultConfigurationName',... 'Simulink.scopes.TimeScopeBlockCfg')
ans = 1x1 cell array
{'myModel/myScope'}
Найдите только блоки Осциллографа Времени DSP.
find_system(mdl,'LookUnderMasks','on','IncludeCommented','on',... 'AllBlocks','on','BlockType','Scope','DefaultConfigurationName',... 'spbscopes.TimeScopeBlockCfg')
ans = 1x1 cell array
{'myModel/myTimeScope'}
Для получения дополнительной информации о свойствах объектов Настройки Осциллографа, смотрите TimeScopeConfiguration
.
Floating Scope | Scope | Scope Viewer