start
функционируйте и trigger
функция является асинхронными функциями. Таким образом, они запускают приобретение систем координат и возвращают управление в командную строку MATLAB® сразу.
В некоторых сценариях вы можете хотеть, чтобы ваше приложение ожидало, пока приобретение не завершается перед продолжением другой обработки. Для этого вызовите wait
функционируйте сразу после start
или trigger
функция возвращается. wait
функциональные блоки, которые командная строка MATLAB до приобретения завершает или значение тайм-аута, истекают, какой бы ни на первом месте.
По умолчанию, wait
блокирует командную строку, пока объект ввода видео не прекращает запускаться. Можно опционально задать тот wait
блокируйте командную строку, пока объект не прекратит регистрировать. Для приобретений с помощью мгновенного триггера объекты ввода видео всегда прекращают запускаться и прекращают регистрировать одновременно. Однако с ручным триггером, сконфигурированным для множеств потоков выполнения (TriggerRepeat
> 0), можно использовать wait
сразу после каждого вызова trigger
функционируйте, чтобы блокировать командную строку, в то время как логгирование происходит, даже при том, что объект остается в состоянии выполнения в течение целого приобретения.
Следующая фигура иллюстрирует поток управления в командной строке MATLAB для одного выполнения мгновенного триггера и ручного триггера, с и без wait
функция. Аппаратный триггер похож на ручную триггерную схему, за исключением того, что приобретение инициировано внешним сигналом к плате камеры или устройства захвата изображения, не trigger
функция. Для примера смотрите Блокирование Командной строки, Пока Приобретение Не Завершится.
Используя ожидание, чтобы Блокировать командную строку MATLAB
Следующий пример иллюстрирует, как использовать wait
функционируйте, чтобы поместить 60 пределов второго раза на выполнение аппаратного триггера. Если аппаратный триггер не выполняется в ограничении по времени, wait
возвращает управление в командную строку MATLAB.
Создайте объект получения изображений — Этот пример создает объект ввода видео для устройства получения изображений Matrox®. Чтобы запустить этот пример в вашей системе, используйте imaqhwinfo
функция, чтобы получить конструктора Object для вашего устройства получения изображений и заменить тем синтаксисом следующий код.
vid = videoinput('matrox',1);
Сконфигурируйте аппаратный триггер — Использование triggerinfo
функция, чтобы определить допустимые настройки TriggerSource
и TriggerCondition
свойства. Смотрите Определение Допустимых Настроек для получения дополнительной информации. В этом примере, triggerinfo
возвращает следующие допустимые триггерные настройки.
triggerinfo(vid) Valid Trigger Configurations: TriggerType: TriggerCondition: TriggerSource: 'immediate' 'none' 'none' 'manual' 'none' 'none' 'hardware' 'risingEdge' 'TTL' 'hardware' 'fallingEdge' 'TTL'
Сконфигурируйте триггерные свойства объекта ввода видео к одной из допустимых комбинаций, возвращенных triggerinfo
. Можно задать каждое значение свойства в качестве аргумента к triggerconfig
функция
triggerconfig(vid, 'hardware','risingEdge','TTL')
В качестве альтернативы можно установить эти значения путем передачи одной из структур, возвращенных triggerinfo
функционируйте к triggerconfig
функция.
configs = triggerinfo(vid); triggerconfig(vid,configs(3));
Сконфигурируйте другие свойства объектов — Этот пример также устанавливает значение FramesPerTrigger
свойство сконфигурировать приобретение, достаточно большое, чтобы произвести значимую длительность. (Значением по умолчанию являются 10 систем координат на триггер.)
vid.FramesPerTrigger = 100
Запустите объект получения изображений — Вызов start
функционируйте, чтобы запустить объект получения изображений.
start(vid)
start
функционируйте устанавливает объектное выполнение и возвращает управление в командную строку.
Блокируйте командную строку до концов приобретения — После start
функция возвращается, вызовите wait
функция.
wait(vid,60)
wait
истекают функциональные блоки, которые командная строка до аппаратных триггерных огней и приобретения завершает или до количества времени, заданного значением тайм-аута.
Вымойтесь — Всегда удаляют объекты получения изображений из памяти и переменные, которые ссылаются на них, когда вам больше не нужны они.
delete(vid) clear vid