Программа OPC Toolbox™ может возвращать массивы данных Value, Quality и TimeStamp из задачи ведения журнала. Можно извлечь массивы из памяти с помощью getdataили с диска с помощью opcread, путем указания типа данных как 'cell' или любого типа данных числового массива MATLAB ®, например, 'double' или 'uint32'. Подробные сведения об указании типа данных см. на страницах ссылок на функции.
При запросе данных в формате массива панель инструментов возвращает массивы каждого из следующих элементов записей в памяти или на диске:
ItemID - A 1-by-nItems список всех идентификаторов элементов, встречающихся в массиве структуры. Выполняется поиск каждой записи, и все уникальные идентификаторы элементов возвращаются в массиве ячеек. Порядок идентификаторов элементов должен использоваться для интерпретации любого из массивов Value, Quality или TimeStamp.
Value один nRecsоколо-nItems массив значений для каждого идентификатора элемента, определенного в ItemID переменная, в каждый момент времени, определенный TimeStamp массив. Каждый столбец Value массив представляет историю значений для соответствующего элемента в ItemID массив. Каждая строка соответствует одной записи. Для получения информации о том, как Value массив заполнен.
Quality один nRecsоколо-nItems клеточный массив символьных векторов. Каждый столбец представляет историю качеств для соответствующего элемента в ItemID массив. Каждая строка соответствует качествам определенной записи. Если определенный идентификатор номенклатуры не был частью записи (поскольку номенклатура не изменилась в течение этого периода), соответствующий столбец в этой строке имеет значение 'Repeat'.
TimeStamp один nRecsоколо-nItems массив временных меток для каждого значения в Value поле. Метки времени имеют формат номера даты MATLAB. Для получения дополнительной информации о датах MATLAB см. datenum функциональная справка.
EventTime один nRecs- на 1 массив раз, когда запись была получена программным обеспечением OPC Toolbox ( LocalEventTime поле записи в структурном формате). Время в формате номера даты MATLAB. Для получения дополнительной информации о датах MATLAB см. datenum функциональная справка.
При запросе данных в формате массива из getdata или opcread, необходимо определить требуемый тип данных для возвращаемого Value массив. Программное обеспечение OPC Toolbox автоматически преобразует каждую запись зарегистрированных данных из типа данных элемента (определенного DataType свойства этого элемента) к запрошенному типу данных.
При преобразовании записанных данных в массивы панель инструментов должна учитывать два фактора при заполнении возвращаемых массивов:
Запись не может содержать сведения для каждого элемента в задаче ведения журнала. В разделе Обработка отсутствующих данных обсуждается, как инструментарий работает с отсутствующими данными.
Запись может содержать значение массива для одного элемента. Такие значения не могут быть легко преобразованы в одно значение числовых типов данных. В разделе Обработка значений данных массива обсуждается, как инструментарий решает эту проблему.
Когда программное обеспечение OPC Toolbox регистрирует данные, каждая записанная запись может содержать не все элементы задачи ведения журнала. При преобразовании данных в формат массива каждому элементу, участвующему в задаче ведения журнала, необходимо назначить значение, качество и метку времени для каждой записи. Следовательно, в задаче регистрации могут присутствовать «отсутствующие» данные для конкретного элемента в конкретной записи. Для определения способа заполнения отсутствующей записи в каждом массиве на панели инструментов используются следующие правила:
Value - При запросе 'cell' тип данных массива, значение, используемое для отсутствующей записи, является пустым двойным массивом ([]). При запросе числового типа данных значение, используемое для отсутствующей записи, является последним значением для этого элемента. Если предыдущее значение не известно, эквивалент NaN (не число) используется запись. Например, если самая первая запись не содержит записи для этого элемента, NaN используется для заполнения отсутствующей записи в первой строке Value массив. Эквивалент NaN значение для целочисленных и логических типов данных 0.
Quality - Отсутствующая запись заполняется конкретным качеством 'Repeat'.
TimeStamp - Метка времени, используемая для отсутствующей записи, является первой меткой времени, найденной в этой конкретной записи (строке).
Для каждой записи, хранящейся в памяти или на диске во время задачи ведения журнала, один элемент может возвращать массив значений. При преобразовании зарегистрированных данных в формат массива каждый элемент в каждой записи имеет только одну запись в Value массив, назначенный этой записи и элементу.
Для 'cell' тип данных, OPC Toolbox программное обеспечение может хранить массив, возвращенный в качестве значения для этого элемента, поскольку массив ячеек MATLAB способен хранить любой тип данных любого размера в каждом элементе массива ячеек.
Для числовых типов данных, таких как 'double' или 'uint32', полученные в результате Value массив обеспечивает пространство только для одного значения. Следовательно, если в задаче ведения журнала найдено значение массива и запрошен числовой тип данных массива, будет сгенерирована ошибка. Необходимо использовать 'cell' тип данных или формат структуры для возврата зарегистрированных данных, содержащих массивы в качестве значений.