d9e5a92d

Создание окна параметров


Окно параметров создается с помощью вкладки Initialization (Инициализация) редактора маски.

Для создания поля ввода параметра с его описанием необходимо выполнить следующие действия:

Нажать кнопку Add (Добавить).

Ввести описание параметра в поле Prompt (Подсказка). В качестве описания параметра обычно используется его название в виде текста, например, “Gain”, “Constant value” ит.п.

Указать идентификатор параметра в поле Variable (Переменная). Естественно, что это должен быть один из тех идентификаторов, который использовался при задании параметров блоков внутри подсистемы (хотя это не обязательно, поскольку параметр может быть использован и для модификации самого окна диалога). Все переменные, идентификаторы которых заданы на вкладке Initialization, помещаются в Mask Workspace – локальную рабочую область маски и являются доступными только внутри подсистемы.

 

 

Выбрать тип элемента интерфейса задающего параметр из списка Control Type:

Edit – Редактируемое поле ввода.

Checkbox – Флажок.

Popup – Раскрывающийся список. В этом случае вграфе Popup Strings (Элементысписка) необходимо ввести элементы списка, разделенные символом вертикальной черты. Например, выражение alpha|beta|gamma задаст список из трех элементов: alpha,beta и gamma.

 

Выбрать формат параметра из списка Assiggment:

Evaluate – Вычисляемый. Выбирается, если параметр должен иметь числовое значение. В данное поле можно будет ввести выражение в соответствии с правилами языка MATLAB. Формат Evaluate позволяет также использовать числовую форму значения переменной в том случае, если тип элемента интерфейса выбран в виде флажка или раскрывающегося списка. Так, например, для раскрывающегося списка alpha|beta|gamma значение связанной со списком переменной будет равно 1, если в списке выбрано alpha, 2 – если в списке выбрано beta, и 3 – если всписке выбрано gamma. Для элемента интерфейса Checkbox вычисляемые значения будут равны 1 (при установленном флажке) и 0 (при снятом флажке).



Literal – Текстовый. Выбирается, если параметр должен быть строкой символов.

Ввести команды инициализации в графе Initialization commands. Команды инициализации представляют собой обычные команды на языке MATLAB и могут включать операторы и m-функции. Такие команды задают переменные, которые будут находиться в рабочей области маскированной подсистемы. Эти переменные доступны внутриподсистемы и могут быть использованы в качестве параметров блоков входящих в состав подсистемы, а также для создания пиктограммы подсистемы.

 

Команды инициализации выполняются в следующих случаях:

При открытии окна модели.

При запуске модели на выполнение.

При выполнении команды Edit/Update diagram.

При вращении блока маскированной подсистемы (в этом случае команды инициализации обеспечивают перерисовку пиктограммы).

При автоматическом изменении пиктограммы, зависящей от параметров блока.

 

В качестве примера маскированной подсистемы рассмотрим функциональный генератор. Схема модели генератора показана на рисунке 9.10.2.

 

Модель генератора обладает следующими возможностями:

Значения амплитуды и частоты сигнала могут задаваться либо как параметры генератора в его окне диалога, либо от внешних источников через входные порты.

Форма выходного сигнала генератора (треугольник, прямоугольник или синусоида) задается в окне диалога.

Вид окна диалога, созданного с помощью редактора маски показан на рисунке 9.10.3.

 

 

Название параметра, идентификатор связанной с ним переменной, тип элемента интерфейса и формат параметра приведены в ниже лежащей таблице.

 

Prompt

Variable

Control Type

Assiggment

Назначение

Internal source of frequency signal

Internal_freq

Checkbox

Evaluate

Задает тип источника сигнала задания на частоту: внутренний или внешний.

 

Frequency (Hz)

Freq

Edit

Evaluate

Задает величину задания на частоту внутреннего источника

Wave form

Wave_form

Popup

Evaluate

Задает форму выходного сигнала: треугольник, прямоугольник или синусоида

Internal source of magnitude signal

Internal_magn

Checkbox

Evaluate

Задает тип источника сигнала задания на амплитуду: внутренний или внешний.

Magnitude

Magn

Edit

Evaluate

Задает величину задания на амплитуду внутреннего источника

 

Окно редактора маски с открытой вкладкой Initialization, в котором создано окно параметров генератора, показано на рисунке

9.10.4.

Выбор типа источников задания на частоту (внутренний или внешний) осуществляется с помощью блока Selector1 (смотри рисунок 9.10.2). Для этого значение параметра Elements блока Selector1 задано как [(Internal_freq+1)]. Таким образом, если флажок параметра Internal source of frequency signal установлен, то числовое значение переменной Internal_freq равно 1 и на выход селектора проходит сигнал от внутреннего источника, если же флажок снят, то на выход селектора проходит сигнал от входного порта системы (т.е. от внешнего по отношению к генератору источника). Аналогичным образом с помощью переменной Internal_magn выполняется выбор источника сигнала задания на амплитуду.

Выбор формы выходного сигнала выполняется также с помощью блока Selector. Треугольный, прямоугольный и синусоидальный сигналы объединяются в вектор с помощью блока Mux, а затем в зависимости от числового значения переменной Wave_form, блок Selector выполняет выбор нужного элемента входного вектора.

 

 

Значение параметра Elements блока Selector задано как [Wave_form]. Таким образом, если, например, параметр генератора Wave form имеет значение Sine, то числовое значение переменной Wave_form равно 3, и, следовательно, на выход селектора проходит третий элемент входного вектора, т.е. синусоидальный сигнал.

 

 




Содержание раздела