Data Store Write

Запись данных в хранилище данных

  • Библиотека:
  • Simulink/Маршрутизация сигнала

  • Data Store Write block

Описание

Блок Data Store Write копирует значение на своем входе в именованное хранилище данных. Каждая операция записи, выполняемая блоком Data Store Write, записывает через хранилище данных или его выбранный фрагмент и заменяет предыдущее содержимое.

Хранилище данных, в которое записывается этот блок, определяется местоположением Data Store Memory блока или объекта сигнала, который определяет хранилище данных. Для получения дополнительной информации смотрите Хранилища данных и Data Store Memory. Размер хранилища данных устанавливается объектом сигнала или блоком Data Store Memory, который определяет и инициализирует хранилище данных. Каждый Data Store Write блок, который записывает в это хранилище данных, может записать до объема данных в хранилище данных.

В одно и то же хранилище данных можно записать более одного блока Data Store Write. Однако, если два блока Data Store Write пытаются записать в одно и то же хранилище данных во время одного и того же шага симуляции, результаты непредсказуемы.

Получение правильных результатов из хранилищ данных требует, чтобы чтение и запись данных осуществлялись в ожидаемом порядке. Для получения дополнительной информации смотрите Order Data Store Access и Data Store Diagnostics.

Можно записать значения переменной данных локального или глобальные данные хранилища для всех шагов симуляции. Для получения дополнительной информации см. Журнал хранилищ данных.

Можно выбрать Data Store Read, Data Store Write или Data Store Memory блок, чтобы подсветить связанные с ним блоки.

Порты

Вход

расширить все

Значения для записи в указанное хранилище данных. Блок Data Store Write принимает действительный или комплексный сигнал.

Можно использовать массив шин с блоком Data Store Write. Для получения дополнительной информации об определении и использовании массива шин смотрите Group Nonvirtual Buses in Arrays of Buses.

Чтобы назначить подмножество элементов шины или матрицы связанному хранилищу данных, используйте панель Element Assignment. Значок Data Store Write блока отражает заданные элементы. Для получения дополнительной информации смотрите Доступ к определенной шине и Элементам матрицы.

Типы данных: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated | bus

Внешний порт, задающий индекс для назначения соответствующих подэлементов хранилища данных.

Зависимости

Чтобы включить внешний порт индекса, на вкладке Element Assignment, выберите Enable indexing. Затем, в NВ-й строке Index Option таблицы установите Index Option значение Index vector (port) или Starting index (port).

Типы данных: int8 | int16 | int32 | uint8 | uint16

Параметры

расширить все

Параметры

Укажите имя хранилища данных, в которое этот блок записывает данные. Смежный список предоставляет имена блоков Data Store Memory, которые существуют на том же уровне в модели, что и блок Data Store Write или на более высоких уровнях. В список также входят все Simulink.Signal объекты в базовых и рабочих пространствах модели. Чтобы изменить имя, выберите имя из списка или введите имя непосредственно в поле редактирования.

При компиляции модели, содержащей этот блок, Simulink® ищет в модели вверх от уровня блока Data Store Memory блок с заданным именем хранилища данных. Если Simulink не находит такой блок, он ищет рабочее пространство модели и MATLAB® рабочая область для Simulink.Signal объект с таким же именем. Если Simulink находит объект сигнала, он создает скрытый Data Store Memory блок на корневом уровне модели со свойствами, заданными объектом сигнала, и начальным значением, установленным на массив нулей. Размерности этого массива наследуются от Dimensions свойство объекта сигнала.

Если Simulink не находит ни блока Data Store Memory, ни объекта сигнала, это останавливает компиляцию и отображает ошибку. Дополнительные сведения о пути поиска файлов см. в разделе Разрешение символов.

Программное использование

Параметры блоков: DataStoreName
Тип: Вектор символов
Значения: имя хранилища данных
По умолчанию: 'A'

Это свойство доступно только для чтения.

В этом поле перечислен Data Store Memory блок, который инициализировал хранилище, в которое записывается этот блок.

Это свойство доступно только для чтения.

В этом поле перечислены пути ко всем блокам Data Store Read с таким же именем хранилища данных, как и к этому блоку, которые находятся в одной (подсистеме) или в любой подсистеме под ним в иерархии модели. Щелкните любую запись в этом списке, чтобы выделить соответствующий блок в вашей модели.

Шаг расчета, который управляет, когда блок записывает в хранилище данных. Значение -1 указывает, что шаг расчета наследуется. Дополнительные сведения см. в разделе «Задание шага расчета».

Программное использование

Параметры блоков: SampleTime
Тип: Вектор символов
Значения: скаляр | вектор
По умолчанию: '-1'

Назначение элемента

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

Если Enable indexing не выбран, выберите элемент и используйте один из следующих подходов:

  • Щелкните Select>>, чтобы отобразить этот элемент и все его подэлементы в списке Selected element(s).

  • Используйте Specify element(s) to assign поле редактирования, чтобы задать подэлементы, которые необходимо выбрать для записи. Затем нажмите Select>>.

Чтобы выбрать несколько элементов, повторите вышеописанную процедуру для каждого элемента.

Также можно выбрать Enable indexing, затем выбрать один элемент и динамически задать подэлементы с помощью параметра Index Option.

Чтобы обновить отображение и отразить изменения массива или шины, используемые в хранилище данных, нажмите кнопку Обновить.

Зависимости

Запрос для этого раздела (Elements in the array или Signals in the bus) зависит от типа данных в хранилище данных.

Программное использование

Параметры блоков: DataStoreElements
Тип: Вектор символов
Значения: разделенный фунтами список элементов (См. Спецификация с помощью командной строки.)
По умолчанию: ''

Введите выражение MATLAB, чтобы задать конкретный элемент, который вы хотите записать, а затем щелкните Select>>, чтобы добавить элемент к Assigned element(s) таблице. Повторите, чтобы выбрать дополнительные элементы.

Например, для хранилища данных с именем DSM который имеет максимальные размерности [3,5], можно ввести такие выражения, как DSM(2,4) или DSM([1 3],2) в поле редактирования. См. «Доступ к конкретным элементам шины и матрицы».

Чтобы применить выбор элемента, щелкните OK или Apply.

Зависимости

Поле редактирования Specify element(s) to assign появляется только в том случае, если Enable indexing не выбран.

Программное использование

Параметры блоков: DataStoreElements
Тип: Вектор символов
Значения: разделенный фунтами список элементов (См. Спецификация с помощью командной строки.)
По умолчанию: ''

Элементы, которые вы выбираете для назначения. Значок Data Store Write блока отображает порт входа для каждого заданного элемента.

Чтобы изменить порядок шины или элементов матрицы в списке, выберите элемент в списке и нажатии кнопки Up или Down. Изменение порядка элементов в списке изменяет порядок портов. Чтобы удалить элемент, нажмите Remove.

Зависимости

Таблица Assigned element(s) появляется, только если Enable indexing не выбран.

Программное использование

Параметры блоков: DataStoreElements
Тип: Вектор символов
Значения: разделенный фунтами список элементов (См. Спецификация с помощью командной строки.)
По умолчанию: ''

Выберите этот параметр, чтобы включить индексацию, подобную используемой блоком Assignment, посредством которой можно динамически задавать индексы подэлементов для записи с помощью одного или нескольких входных портов индекса, а также задавать индексы с помощью диалогового окна блока. Блок Data Store Write может записывать только в один элемент массива хранилища данных (то есть один сигнал в шине), когда этот параметр выбран. Чтобы записать в несколько элементов массива хранилища данных с помощью динамического индексирования, используйте несколько блоков Data Store Write.

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

Примечание

Не выбирайте Enable indexing, если связанное хранилище данных содержит только один, скалярный элемент.

Программное использование

Параметры блоков: EnableIndexing
Тип: Вектор символов
Значения: 'off' | 'on'
По умолчанию: 'off'

Количество размерностей выбранного элемента хранилища данных. Вы должны явным образом указать этот номер.

Зависимости

Этот параметр включен, только если выбран Enable indexing.

Программное использование

Параметры блоков: NumberOfDimensions
Тип: Вектор символов
Значения: positive integer
По умолчанию: '1'

Выберите режим индексации. Если One-based выбран, индекс 1 задает первый элемент входного вектора. Если Zero-based выбран, индекс 0 задает первый элемент входного вектора.

Зависимости

Этот параметр включен, только если выбран Enable indexing.

Программное использование

Параметр: IndexMode
Тип: Вектор символов
Значения: 'Zero-based' | 'One-based'
По умолчанию: 'One-based'

Определите по размерности, как индексируются подэлементы выбранного элемента хранилища данных. В списке выберите:

Элемент менюДействие
Select all

Отключает столбец Index. Все подэлементы назначены.

Index vector (dialog)

Включает столбец Index. Введите вектор, содержащий индексы субэлементов, которые будут значениями.

Index vector (port)

Отключает столбец Index. Соответствующий порт индекса определяет индексы подэлементов, которым будут присвоены значения.

Starting index (dialog)

Включает столбец Index. Введите начальный индекс области значений субэлементов, которые будут значениями. Размер области значений наследуется от размера соответствующих размерностей сигнала входных данных.

Starting index (port)

Отключает столбец Index. Соответствующий порт индекса определяет начальный индекс области значений элементов, которым будут назначены значения. Размер области значений наследуется от размера соответствующих размерностей сигнала входных данных.

Столбец Index отображается соответствующим образом.

Зависимости

Этот параметр включен, только если выбран Enable indexing.

Программное использование

Параметр: IndexOptionArray
Тип: Вектор символов
Значения: 'Select all' | 'Index vector (dialog)' | 'Index vector (port)' | 'Starting index (dialog)' | 'Starting index (port)'
По умолчанию: 'Index vector (dialog)'

Если Index Option Index vector (dialog), введите вектор, содержащий индексы каждого записываемого подэлемента.

Если Index Option Starting index (dialog), введите начальный индекс области значений подэлементов для записи.

Зависимости

Этот параметр активируется, только если выбран Enable indexing и Index Option для размерности Index vector (dialog) или Starting index (dialog).

Программное использование

Параметр: IndexParamArray
Тип: Вектор символов
Значения: массив ячеек
По умолчанию: '{ }'

Характеристики блоков

Типы данных

Boolean | bus | double | enumerated | fixed point | half | integer | single | string

Прямое сквозное соединение

no

Многомерные сигналы

yes

Сигналы переменного размера

no

Обнаружение пересечения нулем

no

Расширенные возможности

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

.

Преобразование с фиксированной точкой
Разрабатывайте и моделируйте системы с фиксированной точкой с помощью Fixed-Point Designer™.

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