Получение времени выполнения

Введение

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

Чтобы увидеть пример извлечения времени выполнения, смотрите Определение Длительности Задержки Системы координат.

Определение времени выполнения триггера

Чтобы определить, когда триггер выполнен, проверьте информацию, возвращенную событием триггера в журнале событий объекта. Вы также можете получить доступ к этой информации в функции обратного вызова, связанной с событием триггера. Дополнительные сведения см. в разделе Получение информации о событии.

Для удобства тулбокс возвращает время первого выполнения триггера в InitialTriggerTime объекта входа видео свойство. Этот рисунок показывает, какой триггер возвращается в этом свойстве при конфигурировании нескольких триггеров.

InitialTriggerTime Записи Первое выполнение триггера

Триггерное время выполнения сохранено в MATLAB® формат вектора синхроимпульса. В следующем примере отображается время первого триггера для объекта входа видео vid. В примере используется MATLAB datestr функция для преобразования информации в форму, которая более удобна для просмотра.

datestr(vid.InitialTriggerTime)

ans =

02-Mar-2007 13:00:24

Определение того, когда система координат был приобретаема

Тулбокс предоставляет два способа определить, когда был получаема конкретная система координат:

  • По абсолютному времени приобретения

  • По истекшему времени относительно выполнения триггера

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

Получение относительного времени приобретения

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

[data time] = getdata(vid);

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

Получение абсолютного времени приобретения

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

[data time meta ] = getdata(vid);

Каждая структура массива содержит следующие четыре поля. The AbsTime поле содержит абсолютное время, в течение которого был получаема система координат. Можно также получить эти метаданные с помощью коллбэков событий. Дополнительные сведения см. в разделе Получение информации о событии.

Метаданные системы координат

Имя поля

Описание

AbsTime

Абсолютное время получения системы координат, возвращенного в MATLAB clock формат

[year month day hour minute seconds]

FrameNumber

Номер системы координат относительно момента запуска объекта

RelativeFrame

Номер системы координат относительно выполнения триггера

TriggerIndex

Инициируйте событие, с которым связано событие. Для примера, когда объект запускается, связанный триггер равен 0. После остановки это эквивалентно TriggersExecuted свойство.

Определение длительности задержки системы координат

Для иллюстрации в этом примере вычисляется длительность задержки, заданной TriggerFrameDelay свойство.

  1. Создайте объект сбора изображений - Этот пример создает объект входа видео для перевода данных® устройство сбора изображений с использованием формата видео по умолчанию. Чтобы запустить этот пример в своей системе, используйте imaqhwinfo функция, чтобы получить конструктор объектов для устройства сбора изображений и заменить этот синтаксис следующим кодом.

    vid = videoinput('dt',1);
  2. Сконфигурируйте свойства - Для этого примера сконфигурируйте задержку системы координат, достаточно большую, чтобы получить заметную длительность.

    vid.TriggerFrameDelay = 50
  3. Запустите объект сбора изображений - Вызовите start функция для запуска объекта сбора изображений.

    start(vid)

    Объект выполняет немедленный триггер и начинает получение систем координат данных. The start функция возвращает управление в командную строку немедленно, но логгирование данных начинается только после истечения срока действия системы координат. После логгирования заданного количества систем координат объект перестает выполняться.

  4. Вывод полученных данных в рабочую область - Вызов getdata функция для ввода систем координат в рабочую область. Задайте значение возврата, чтобы принять времена выполнения, возвращенные getdata.

    [data time ] = getdata(vid);

    Переменная time - вектор, который содержит время регистрации каждой системы координат, измеренное в секундах, относительно выполнения первого триггера. Проверьте первое значение в временном векторе. Это должно отражать длительность задержки до начала логгирования данных.

    time
    
    time =
    
        4.9987
        5.1587
        5.3188
        5.4465
        5.6065
        5.7665
        5.8945
        6.0544
        6.2143
        6.3424
  5. Очистка - Всегда удаляйте объекты сбора изображений из памяти, и переменные, которые ссылаются на них, когда они вам больше не нужны.

    delete(vid)
    clear vid