exponenta event banner

Simulink. Bus.cellToObject

Преобразовать массив ячеек, содержащий информацию о шине, в объекты Simulink.Bus

Описание

пример

Simulink.Bus.cellToObject(busCell) создает набор Simulink.Bus объекты в базовом рабочем пространстве MATLAB ® из массива данных шины ячеек.

Simulink.Bus.cellToObject(busCell,scope) создает набор Simulink.Bus объекты в словаре данных, указанные scope из массива данных шины соты.

Примеры

свернуть все

В этом примере показано, как создать и использовать массив ячеек для создания Simulink.Bus объектов в базовом рабочем пространстве.

Чтобы определить элементы, которые Bus содержит объект, создайте массив из Simulink.BusElement объекты или массив ячеек значений свойств для BusElement объекты.

При определении элементов в массиве BusElement необходимо указать значения, отличающиеся от значений по умолчанию.

elementsArray(1) = Simulink.BusElement;

elementsArray(2) = Simulink.BusElement;
elementsArray(2).Name = 'b';
elementsArray(2).Min = -3;
elementsArray(2).Max = 3;
elementsArray(2).Unit = 'm';
elementsArray(2).Description = 'b is distance from the origin.';

При определении элементов в массиве ячеек значений свойств необходимо указать имя элемента, размеры, тип данных, сложность и режим выборки. Можно также указать режим размеров, минимум, максимум, единицы измерения и описание.

elementsCellArray = {{'a',1,'double',-1,'real','Sample'}; ...
            {'b',1,'double','real','Sample',...
            'Fixed',-3,3,'m','b is distance from the origin'}};

В этом примере: elementsArray и elementsCellArray создать то же самое BusElement объекты в Bus объекты.

Создание массива ячеек с двумя подчиненными массивами ячеек, которые определяют Bus объекты. Для каждого Bus укажите имя шины, файл заголовка, описание, область данных, выравнивание, размеры сохраняемых элементов и элементы. Для первого Bus объект, укажите элементы с помощью elementsArray. Для второго Bus объект, укажите элементы с помощью elementsCellArray.

busCells = { ...
        { ...
            'myBusObjArray', ...
            'MyHeader.h', ...
            'My description', ...
            'Exported', ...
            '-1', ...
            '0', ...
            elementsArray,...
        }, ...
        { ...
            'myBusObjCellArray', ...
            'MyHeader.h', ...
            'My description', ...
            'Exported', ...
            '-1', ...
            '0', ...
            elementsCellArray,...
        }, ...
    };

Создать Bus объектов в базовом рабочем пространстве из массива ячеек массивов ячеек.

Simulink.Bus.cellToObject(busCells)

Сравнение сгенерированных Bus в редакторе шины.

buseditor

Bus объекты идентичны, кроме имен.

Входные аргументы

свернуть все

Bus объектная информация, заданная как массив ячеек массивов ячеек. Каждый подчиненный массив ячеек должен содержать Bus информация об объекте:

  1. Название автобуса

  2. Файл заголовка

  3. Описание

  4. Объем данных

  5. Выравнивание

  6. Сохранить размеры элемента

  7. Элементы

Поле elements представляет собой массив ячеек, который содержит эту информацию для каждого из Simulink.BusElement объекты, которые Bus ссылки на объекты:

Поле elements должно содержать массивы или массивы ячеек с этой информацией для каждого из Simulink.BusElement объекты, которые Bus ссылки на объекты:

  1. Имя элемента

  2. Размеры

  3. Тип данных

  4. Время выборки (необязательно) - если указано время выборки, укажите наследуемое время выборки (-1). Отсутствие наследования времени выборки приводит к ошибке во время компиляции модели. Для получения дополнительной информации см. раздел Объекты Simulink.BusElement, которые больше не поддерживают свойство SampleTime.

  5. Сложность

  6. Режим отбора проб

Массивы полей элементов или массивы ячеек также могут содержать следующую информацию:

  1. Режим «Размеры»

  2. Минимум

  3. Максимум

  4. Единицы

  5. Описание

Пример: Simulink.Bus.cellToObject(busCell);

Словарь данных, указанный как Simulink.data.Dictionary объект. Перед использованием этого аргумента представляйте словарь с помощью Simulink.data.Dictionary с помощью, например, Simulink.data.dictionary.create или Simulink.data.dictionary.open функция.

Если scope пуст, функция использует базовую рабочую область MATLAB в качестве источника Bus объекты.

Пример: Simulink.Bus.cellToObject(busCell,dataDictionaryObject);

Совет

Обратная функция Simulink.Bus.objectToCell.

Вопросы совместимости

развернуть все

Ошибки, начинающиеся с R2020b

Не рекомендуется начинать с R2016b

Представлен до R2006a