이 페이지는 기계 번역을 사용하여 번역되었습니다. 영어 원문을 보려면 여기를 클릭하십시오.
이벤트 정보 조회
R2026b소개
각 이벤트에는 툴박스에서 생성되어 이벤트 구조체에 저장된 일련의 정보가 연결되어 있습니다. 이 정보에는 이벤트 유형, 이벤트 발생 시간 및 기타 이벤트 관련 정보가 포함됩니다. 비디오 입력 객체가 실행 중일 때, 툴박스는 해당 객체의 EventLog 속성에 이벤트 정보를 기록합니다. 콜백 함수 내에서 특정 이벤트와 연관된 이벤트 구조체에 액세스할 수도 있습니다.
이 섹션은 다음을 설명합니다.
콜백 함수에서 이벤트 정보에 액세스하는 방법에 대한 자세한 내용은 콜백 함수 생성 및 실행를 참조하십시오.
이벤트 구조체
이벤트 구조체에는 Type와 Data라는 두 개의 필드가 포함되어 있습니다. 예를 들어, 다음은 트리거 이벤트에 대한 이벤트 구조입니다:
Type: 'Trigger' Data: [1x1 struct]
Type 필드는 이벤트 유형을 지정하는 문자형 벡터입니다. 트리거 이벤트의 경우, 이 필드에는 문자형 벡터 'Trigger'가 포함됩니다.
Data 필드는 이벤트에 대한 정보를 포함하는 구조체입니다. 이 구조의 구성은 발생한 이벤트의 유형에 따라 달라집니다. 특정 이벤트와 관련된 정보에 대한 자세한 내용은 다음 섹션을 참조하십시오.
시작, 종료, 수집된 프레임 수 및 트리거 이벤트에 대한 데이터 필드
시작, 중지, 수집된 프레임 및 트리거 이벤트의 경우, Data 구조체에는 다음과 같은 필드가 포함되어 있습니다.
필드 이름 | 설명 |
|---|---|
| 이벤트가 발생한 절대 시간으로, MATLAB® 클록 형식으로 반환됨
|
| 객체가 시작된 시점을 기준으로 한 프레임 번호 |
| 트리거 실행을 기준으로 한 프레임 번호 |
| 해당 이벤트와 연관된 트리거입니다. 예를 들어, 시작 시 관련 트리거 값은 0입니다. 중지 시에는 |
오류 이벤트에 대한 데이터 필드
오류 이벤트의 경우, Data 구조체에는 다음과 같은 필드가 포함됩니다.
필드 이름 | 설명 |
|---|---|
| 이벤트가 발생한 절대 시간으로, MATLAB 클록 형식으로 반환됨
|
| 오류와 관련된 문자 메시지 |
| 오류와 관련된 MATLAB 메시지 식별자 |
타이머 이벤트의 데이터 필드
타이머 이벤트의 경우, Data 구조체에는 다음과 같은 필드가 포함됩니다.
필드 이름 | 설명 |
|---|---|
| 이벤트가 발생한 절대 시간으로, MATLAB 클록 형식으로 반환됨
|
이벤트 로그의 데이터 조회
비디오 입력 객체가 실행 중일 때, 툴박스는 해당 객체의 EventLog 속성에 이벤트 정보를 저장합니다. 이 속성의 값은 이벤트 구조체 배열입니다. 각 구조는 하나의 이벤트를 나타냅니다. 각 이벤트 유형별 이벤트 구조의 구성에 대한 자세한 내용은 이벤트 구조체를 참조하십시오.
이 툴박스는 이벤트가 발생하는 순서대로 EventLog 배열에 이벤트 구조를 추가합니다. 첫 번째 이벤트 구조는 기록된 첫 번째 이벤트를 나타내고, 두 번째 이벤트 구조는 기록된 두 번째 이벤트를 나타내며, 이와 같은 방식으로 이어집니다.
참고
EventLog 속성에는 시작, 중지, 오류 및 트리거 이벤트만 기록됩니다. 프레임 단위로 발생한 이벤트와 타이머 이벤트는 EventLog에 포함되지 않습니다. 이러한 이벤트(및 그 밖의 모든 이벤트)에 대한 이벤트 구조체는 콜백 함수에서 사용할 수 있습니다. 자세한 내용은 콜백 함수 생성 및 실행를 참조하십시오.
이벤트 로그를 설명하기 위해, 이 예제에서는 비디오 입력 객체를 생성하고 실행한 다음, 해당 객체의 EventLog 속성을 확인합니다:
이미지 수집 객체 생성 — 이 예제에서는 Matrox® 이미지 수집 장치에 대한 비디오 입력 객체를 생성합니다. 이 예제를 시스템에서 실행하려면
imaqhwinfo함수를 사용하여 이미지 수집 장치에 대한 객체 생성자를 가져오고 해당 구문을 다음 코드로 바꾸십시오.vid = videoinput('matrox',1);이미지 수집 객체 시작 — 이미지 수집 객체를 시작합니다. 기본적으로 이 객체는 즉시 트리거를 실행하고, 10 프레임 분량의 데이터를 수집한 다음 중지됩니다.
start(vid)
이벤트 로그 보기 — 비디오 입력 객체의
EventLog속성에 액세스합니다. 비디오 입력 객체의 실행으로 인해 start, trigger, stop이라는 세 가지 이벤트가 발생했습니다. 따라서EventLog속성의 값은 이벤트 구조체로 구성된 1x3 배열입니다.events = vid.EventLog events = 1x3 struct array with fields: Type DataEventLog속성에 기록된 이벤트를 확인하려면Type필드의 내용을 살펴보십시오.{events.Type} ans = 'Start' 'Trigger' 'Stop'특정 이벤트에 대한 정보를 얻으려면 해당 이벤트 구조체의
Data필드를 참조하십시오. 이 예제는 트리거 이벤트에 대한 정보를 가져옵니다.trigdata = events(2).Data trigdata = AbsTime: [2004 12 29 16 40 52.5990] FrameNumber: 0 RelativeFrame: 0 TriggerIndex: 1정리 — 더 이상 필요하지 않으면 메모리에서 이미지 수집 객체와 이를 참조하는 변수를 항상 제거합니다.
delete(vid) clear vid