Можно разработать Систему object™ для использования в блоке System и в интерактивном режиме предварительно просмотреть диалоговое окно блока. Эта функция требует Simulink®.
С опциями редактирования System Block Редактор MATLAB® вводит предопределенный код в Системный объект. Этот метод кодирования помогает вам создать и изменить свой Системный объект быстрее и точность увеличений путем сокращения опечаток.
Используя эти опции, вы можете также:
Просмотрите и взаимодействуйте с проектом диалогового окна блока, когда вы задаете Системный объект.
Добавьте методы индивидуальной настройки диалогового окна. Если диалоговое окно блока открыто, когда вы вносите изменения, диалоговый предварительный просмотр проекта блока обновляет отображение при том, чтобы сохранить файл.
Добавьте методы значка. Однако эти элементы отображаются только на MATLAB System Block в Simulink, не в Preview Block Dialog.
Создайте Системный объект с помощью пункта меню New> System Object> Simulink Extension.
Назовите Системный объект PlotRamp
и сохраните файл. Это имя становится заголовком диалогового окна блока.
Удалите комментарий в начале файла и замените его на описание блока.
% Display a button to launch a plot figure.
Этот комментарий становится описанием диалогового окна параметров блоков, в соответствии с заголовком блока.
Выберите System Block> Preview Block Dialog. Диалоговое окно блока отображается, когда вы разрабатываете Системный объект.
Добавьте предел пандуса путем выбора Insert Property> Numeric. Затем измените имя свойства и установите значение к 10
.
properties (Nontunable)
RampLimit = 10;
end
Найдите getPropertyGrouplsImpl
метод с помощью кнопки Analyze.
function group = getPropertyGroupsImpl % Define property section(s) for System block dialog group = matlab.system.display.Section(mfilename('class')); end
Создайте группу для действия Visualize.
function group = getPropertyGroupsImpl % Define property section(s) for System block dialog group = matlab.system.display.Section(mfilename('class')); group.Actions = matlab.system.display.Action(@(~,obj)... visualize(obj),'Label','Visualize'); end
Добавьте функцию, которая добавляет код, чтобы отобразить кнопку Visualize на диалоговом окне.
methods function visualize(obj) figure; d = 1:obj.RampLimit; plot(d); end end
Когда вы добавляете элементы в определение блока System, сохранили ваш файл. Наблюдайте эффекты своих добавлений кода к определению блока System.
Меню System Block также отображает проверки рядом с методами, включенными в ваш файл.
Удалите любые неиспользованные методы в шаблоне или измените методы, чтобы далее настроить блок Системный объект и System. Файл определения класса теперь имеет весь код, необходимый для PlotRamp
Системный объект.
classdef PlotRamp < matlab.System % Display a button to launch a plot figure. properties (Nontunable) RampLimit = 10; end methods(Static, Access=protected) function group = getPropertyGroupsImpl group = matlab.system.display.Section(mfilename('class')); group.Actions = matlab.system.display.Action(@(~,obj)... visualize(obj),'Label','Visualize'); end end methods function visualize(obj) figure; d = 1:obj.RampLimit; plot(d); end end end
После того, как вы завершаете свое определение блока System, сохраняете его, и затем загружаете его в блок MATLAB System в Simulink.