Этот пример показов, как управлять возможностями с написанием скриптов.
Используйте объект Строение для программного доступа к параметрам scope.
Измените заголовок, подписи по осям и пределы по осям
Включите или отключите легенду или сетку
Управляйте количеством входов
Изменение количества отображений и количества активных отображений
Создайте модель и добавьте блок Scope и Time Scope. Затем используйте get_param
для создания объекта Строение 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';
Найдите блоки Scope и Time Scope.
find_system(mdl,'LookUnderMasks','on','IncludeCommented','on', ... 'AllBlocks','on','BlockType','Scope')
ans = 2x1 cell
{'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 Time Scope.
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