이 페이지는 기계 번역을 사용하여 번역되었습니다. 최신 내용을 영문으로 보려면 여기를 클릭하십시오.
트리거 작업
이 예제에서는 다양한 유형의 트리거를 사용하는 방법과 다른 트리거 속성을 구성하는 방법을 보여줍니다.
트리거 속성 구성
구성 가능한 트리거 설정 목록을 얻으려면 비디오 입력 객체와 함께 TRIGGERINFO 함수를 사용합니다. TRIGGERINFO는 비디오 입력 객체와 관련된 이미지 수집 장치에서 지원하는 모든 가능한 트리거 구성을 반환합니다. 가능한 구성은 유효한 트리거 유형, 트리거 조건, 트리거 소스 조합으로 구성됩니다.
참고: 모든 이미지 수집 장치는 즉시 트리거 유형과 수동 트리거 유형을 지원합니다. 하드웨어 트리거 유형은 이미지 수집 장치에서 지원하는 경우에만 사용할 수 있습니다.
% Access an image acquisition device. vidobj = videoinput('matrox', 1); % Display all valid trigger configurations. triggerinfo(vidobj)
Valid Trigger Configurations:
TriggerType: TriggerCondition: TriggerSource:
'immediate' 'none' 'none'
'manual' 'none' 'none'
'hardware' 'fallingEdge' 'digitalTrigger'
'hardware' 'fallingEdge' 'optoTrigger'
'hardware' 'fallingEdge' 'timer1'
'hardware' 'fallingEdge' 'timer2'
'hardware' 'risingEdge' 'digitalTrigger'
'hardware' 'risingEdge' 'optoTrigger'
'hardware' 'risingEdge' 'timer1'
'hardware' 'risingEdge' 'timer2'
이미지 수집 장치에 대한 트리거 설정을 구성하려면 원하는 트리거 유형, 트리거 조건 및 트리거 소스와 함께 TRIGGERCONFIG 함수를 사용합니다.
triggerconfig(vidobj, 'hardware', 'fallingEdge', 'optoTrigger') % View the current trigger configuration. currentConfiguration = triggerconfig(vidobj)
currentConfiguration =
TriggerType: 'hardware'
TriggerCondition: 'fallingEdge'
TriggerSource: 'optoTrigger'
참고: 트리거 설정을 구성하려면 고유한 구성을 지정해야 합니다. 트리거 유형을 지정하여 구성을 고유하게 식별하는 경우 TRIGGERCONFIG에 추가 인수를 제공할 필요가 없습니다.
하드웨어 트리거는 일반적으로 여러 개의 유효한 구성을 갖는 유일한 트리거 유형입니다.
즉각적인 트리거
기본적으로 비디오 입력 객체의 트리거 유형은 즉시 트리거되도록 구성됩니다. 즉시 트리거는 START 함수가 실행되자마자 데이터 기록이 시작됨을 나타냅니다.
% Configure the trigger type. triggerconfig(vidobj, 'immediate') % Initiate the acquisition. start(vidobj) % Wait for acquisition to end. wait(vidobj, 2) % Determine the number frames acquired. frameslogged = vidobj.FramesAcquired;
frameslogged =
10
수동 트리거
수동 트리거를 실행하려면 데이터 기록을 시작하기 전에 TRIGGER 함수를 실행해야 합니다.
% Configure the trigger type. triggerconfig(vidobj, 'manual') % Initiate the acquisition. start(vidobj) % Verify no frames have been logged. frameslogged = vidobj.FramesAcquired;
frameslogged =
0
% Trigger the acquisition. trigger(vidobj) % Wait for the acquisition to end. wait(vidobj, 2); % Determine the number frames acquired. frameslogged = vidobj.FramesAcquired;
frameslogged =
10
하드웨어 트리거
하드웨어 트리거는 트리거 소스를 통해 트리거 조건이 충족되자마자 데이터 기록을 시작합니다.
이 예에서 우리는 함수 발생기의 광분리 트리거 소스를 이미지 수집 장치에 연결했습니다. 이미지 수집 장치는 소스에서 하강 에지 신호를 감지하면 데이터 기록을 시작합니다.
% Configure the trigger settings. triggerconfig(vidobj, 'hardware', 'fallingEdge', 'optoTrigger')
처음에는 소스에서 이미지 수집 장치로 아무런 신호도 전송되지 않습니다.
% Initiate the acquisition. start(vidobj) % Verify nothing has been acquired. frameslogged = vidobj.FramesAcquired;
frameslogged =
0
이제 트리거 소스에서 이미지 수집 장치로 사각파 신호가 전송됩니다.
% Wait for the acquisition to end. wait(vidobj, 10) % Verify frames were acquired. frameslogged = vidobj.FramesAcquired;
frameslogged =
10
% Once the video input object is no longer needed, delete % it and clear it from the workspace. delete(vidobj) clear vidobj