Чтобы проиллюстрировать, как использовать коллбэки, в этом разделе представлен простой пример, который создает объект сбора изображений и связывает функцию обратного вызова с событием запуска, событием запуска и событием остановки. Дополнительные сведения обо всех коллбэках событий, поддерживаемых тулбоксом, см. в разделе Типы событий.
В примере используется функция обратного вызова по умолчанию, предоставляемая тулбоксом imaqcallback
. Функция обратного вызова по умолчанию отображает имя объекта вместе с информацией о типе события, которое произошло и когда оно произошло. Чтобы узнать, как создать собственные функции обратного вызова, смотрите Создание и Выполнение функций обратного вызова.
Этот пример иллюстрирует, как использовать функцию обратного вызова по умолчанию.
Создайте объект сбора изображений - Этот пример создает объект входа видео для Matrox® устройство для сбора изображений. Чтобы запустить этот пример в своей системе, используйте imaqhwinfo
функция, чтобы получить конструктор объектов для устройства сбора изображений и заменить этот синтаксис следующим кодом.
vid = videoinput('matrox',1);
Сконфигурируйте свойства - Установите значения трех свойств коллбэка. В примере используется функция обратного вызова по умолчанию imaqcallback
.
vid.StartFcn = @imaqcallback vid.TriggerFcn = @imaqcallback vid.StopFcn = @imaqcallback
В данном примере укажите объем данных для регистрации.
vid.FramesPerTrigger = 100;
Запустите объект сбора изображений - Запустите объект сбора изображений. Объект выполняет немедленный триггер, получает 100 системы координат данных, а затем останавливается. При включенных трех функциях обратного вызова объект выводит информацию о каждом событии во время его возникновения.
start(vid) Start event occurred at 14:38:46 for video input object: M_RS170-matrox-1. Trigger event occurred at 14:38:46 for video input object: M_RS170-matrox-1. Stop event occurred at 14:38:49 for video input object: M_RS170-matrox-1.
Очистка - Всегда удаляйте объекты сбора изображений из памяти, и переменные, которые ссылаются на них, когда они вам больше не нужны.
delete(vid) clear vid