Преобразуйте массив ячеек, содержащий информацию о шине к Simulink.Bus object s
Simulink.Bus Объект от массива ячеек информации о шинеВ этом примере показано, как создать и использовать массив ячеек, чтобы сгенерировать 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 объекты идентичны кроме своих имен.
busCell — информация о Simulink.Bus objectBus информация об объекте в виде массива ячеек массивов ячеек. Каждый зависимый массив ячеек должен содержать этот Bus информация об объекте:
Соедините шиной имя
Заголовочный файл
Описание
Осциллограф данных
Выравнивание
Сохраните размерности элемента
Элементы
Поле элементов является массивом ячеек, который содержит эту информацию для каждого Simulink.BusElement объекты, что Bus ссылки на объект:
Поле элементов должно содержать массивы или массивы ячеек с этой информацией для каждого Simulink.BusElement объекты, что Bus ссылки на объект:
Имя элемента
Размерности
Тип данных
(Дополнительный) шаг расчета — Если вы задаете шаг расчета, задайте наследованный шаг расчета (-1). Ненаследованный шаг расчета вызывает ошибку во время компиляции модели. Для получения дополнительной информации смотрите, что Simulink.BusElement object s больше не поддерживает свойство SampleTime.
Сложность
Режим Sampling
Полевые массивы элементов или массивы ячеек могут также содержать эту информацию:
Режим Dimensions
Минимум
Максимум
Модули
Описание
Пример: Simulink.Bus.cellToObject(busCell);
scope — Словарь данных, чтобы содержать Simulink.Bus object sSimulink.data.Dictionary объектСловарь данных в виде 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.
Simulink.BusElement объекты больше не поддерживают SampleTime свойствоОшибки, запускающиеся в R2020b
SampleTime свойство Simulink.BusElement объекты больше не поддерживаются.
BusElement объекты, которые задают шаг расчета, вызывают ошибку во время компиляции. Удалить спецификацию шага расчета из BusElement объект, набор его SampleTime к -1.
Simulink.Bus.cellToObject продолжает принимать массивы ячеек, которые задают шаг расчета для элементов шины. Simulink.Bus.objectToCell, Simulink.Bus.save, и Simulink.Bus.createObject продолжите возвращать массивы ячеек или массивы, которые включают шаг расчета, когда он не наследован. Когда шаг расчета наследован (-1), они не используют его. Точно так же Bus Editor и Model Explorer не используют шаг расчета, когда это наследовано.
Чтобы задать шаг расчета для элемента шины, используйте SampleTime параметры блоков соответствующих блоков. Например, можно использовать In Bus Element, Out Bus Element и блоки Signal Specification, чтобы задать шаг расчета.
Simulink.BusElement объекты больше не будут поддерживать SamplingMode свойствоНе рекомендуемый запуск в R2016b
В R2016b, SamplingMode свойство Simulink.BusElement объекты были удалены. Скрипты, которые используют SamplingMode свойство Simulink.BusElement объекты продолжают работать. Simulink.Bus.cellToObject продолжает требовать SamplingMode поле и Simulink.Bus.objectToCell продолжает включать режим выборки в выходные массивы ячеек.
В будущем релизе поддержите для SamplingMode свойство будет удалено.
Чтобы задать, основан ли сигнал на выборке или основан на системе координат, задайте режим выборки входных сигналов на блочном уровне вместо на уровне сигнала.
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.