Когда Функциональный блок Simulink в рамках блока Function Caller, вы не должны задавать параметры. В таком случае блок Function Caller может определить спецификации аргумента ввода и вывода.
Вы задаете аргументы, когда Функциональный блок Simulink выходит за рамки блока Function Caller. Функциональный блок Simulink считается из осциллографа блока Function Caller, когда два блока находятся в отдельных моделях, на которые ссылается общая родительская модель.
Эта таблица приводит возможные спецификации аргумента ввода и вывода.
Тип данных функционального блока Simulink | Функциональное блочное выражение вызывающей стороны | Описание |
---|---|---|
'double' | double(1.0) | С двойной точностью скаляр. |
'double' | double(ones(12,1)) | С двойной точностью вектор - столбец длины 12. |
единственный | single(1.0) | Скаляр с одинарной точностью. |
int8 , int16 , int32 | int8(1) , int16(1) , int32(1) | Целочисленные скаляры. |
int32([1 1 1]) | Целочисленный вектор - строка из длины 3. | |
int32(1+1i) | Объедините скаляр, действительные и мнимые части которого являются 32-битными целыми числами. | |
uint8 , int16 , int32 | uint8(1) , uint16(1) , uint32(1) | Счетчики беззнаковых целых чисел. |
boolean | boolean(true) , boolean(false) | Булевская переменная, инициализированная к true (1) или лжи (0). |
|
|
16-битная фиксированная точка подписала скаляр с обнуленной двоичной точкой. Числа фиксированной точки могут переброситься парой слов размер до 128 битов. |
fixdt(1,16,4) | fi(0,1,16,4) | 16-битная фиксированная точка подписала скаляр с набором двоичной точки к 4. |
fixdt(1,16,2^0,0) | fi(0,1,16,2^0,0) | 16-битная фиксированная точка подписала скаляр с наклонным набором к 2^0 и набором смещения к 0. |
Bus: <object name> | parameter object name | Объект Simulink.Parameter с набором параметра Value к структуре MATLAB для шины. |
Enum: <class name> | parameter object name | Объект Simulink.Parameter с набором параметра Value к перечисляемому значению. |
<alias name> | parameter object name | Объект Simulink.Parameter с набором параметра DataType к объекту Simulink.AliasType и набором параметра Value к значению. |
Создайте шину с двумя сигналами, и затем задайте параметр спецификации Входного параметра для блока Function Caller. Блок Function Caller вызывает Функциональный блок Simulink, который принимает шину как входной параметр.
Входной параметр шины к блоку Function Caller должен быть невиртуальной шиной с помощью объекта шины.
Создайте объект myBus
шины Simulink®.
myBus = Simulink.Bus;
Добавьте элементы A
и B
.
myBus.Elements(1).Name = 'A'; myBus.Elements(2).Name = 'B';
Создайте структуру MATLAB® myBus_MATLABstruct
с полями A
и B
.
myBus_MATLABStruct.A = 0; myBus_MATLABStruct.B = 0;
Создайте объект параметра Simulink myBus_parameter
и присвойте структуру MATLAB параметру Value
.
myBus_parameter = Simulink.Parameter; myBus_parameter.DataType = 'Bus: myBus'; myBus_parameter.Value = myBus_MATLABStruct;
Для диалогового окна блока Function Caller, установленного параметр спецификации Входного параметра на myBus_parameter
.
Для диалогового окна блока Argument In Функционального блока Simulink, установленного параметр Типа данных на Bus: myBus
.
Создайте перечислимый тип данных для этих трех основных цветов, и затем задайте параметр спецификации Входного параметра для блока Function Caller. Блок Function Caller вызывает Функциональный блок Simulink, который принимает сигнал с перечислимым типом, как введено.
Создайте файл MATLAB для сохранения определения типов. На панели инструментов MATLAB выберите New> Class.
В редакторе MATLAB задайте элементы перечислимого типа данных. Класс BasicColors
является подклассом класса Simulink.IntEnumType
.
classdef BasicColors < Simulink.IntEnumType enumeration Red(0) Yellow(1) Blue(2) end end
Сохраните определение класса в файле с именем BasicColors.m
m.
Создайте объект параметра Simulink myEnum_parameter
и присвойте одно из перечисляемых значений к параметру Value
.
myEnum_parameter = Simulink.Parameter; myEnum_parameter.Value = BasicColors.Red;
Для диалогового окна блока Function Caller, набор спецификация Входного параметра. к myEnum_parameter
.
Для диалогового окна блока Argument In в Функциональном блоке Simulink, установленном параметр Типа данных на Enum: BasicColors
.
Создайте имя псевдонима для единственного типа данных, и затем задайте параметр спецификации Входного параметра для блока Function Caller. Функциональный блок Simulink, вызванный блоком Function Caller также, использует имя псевдонима, чтобы задать тип входных данных.
Создайте объект myAlias
типа данных псевдонима Simulink.
myAlias = Simulink.AliasType;
Присвойте тип данных.
myAlias.BaseType = 'single';
Создайте объект параметра Simulink myAlias_parameter
и присвойте имя псевдонима к параметру DataType
.
myAlias_parameter = Simulink.Parameter; myAlias_parameter.DataType = 'myAlias'; myAlias_parameter.Value = 1;
Для диалогового окна блока Function Caller, установленного параметр спецификации Входного параметра на myAlias_parameter
.
Для диалогового окна блока Argument In в Функциональном блоке Simulink, установленном параметр Типа данных на myAlias
.