Trigger And Image Statistics

간략한 설명

파일: \examples\Processing\DebuggingAndTest\TriggerAndImageStatistics.va

기본 플랫폼: mE5-MA-VCL

요약 설명

트리거 및 Camera Link 기능에 대한 분석이 제공됩니다. 사용자는 ‘ Camera Link ’ 기본 구성에서 그레이스케일 카메라의 이미지 데이터 스트림을 분석할 수 있습니다. 이 설계는 하드웨어 전용으로 사용하도록 되어 있습니다.

예제 설계인 "TriggerAndImageStatistics.va"를 사용하면 펄스 수, 신호 폭 및 주기와 같은 트리거 및 Camera Link 기능에 대한 분석이 가능합니다. 또한 트리거 신호와 Camera Link 신호 간의 차이도 측정됩니다. 사용자는 트리거 신호 생성을 위해 소프트웨어 트리거, 트리거 생성기 또는 외부 소스 중에서 선택할 수 있습니다. 이 설계에서 사용자는 또한 Camera Link 기본 구성의 그레이스케일 카메라에서 나오는 이미지 데이터 스트림을 분석할 수 있습니다. 이 설계는 하드웨어 전용으로 사용되도록 의도되었습니다. VisualApplets 내에서의 시뮬레이션 용도로는 의도되지 않았습니다. 이 설계는 이미지 처리 설계를 위한 디버깅용 “애드온”으로 적합합니다. 다음에서는 “TriggerAndImageStatistics.va”의 기능에 대해 설명합니다. 이 설계의 기본 구조는 그림 290에 표시되어 있습니다.

VA 디자인 “TriggerAndImageStatistics.va”의 기본 설계 구조

그림 290. VA 설계 “TriggerAndImageStatistics.va”의 기본 설계 구조


HierarchicalBox 내에서 ImageAnalysis 에서는 ‘ Camera Link ’ 기본 구성의 그레이스케일 카메라에서 나오는 이미지 데이터 스트림을 분석합니다. 현재 프레임 뿐만 아니라 전체 이미지 시퀀스의 이미지 속성(예: 이미지 크기 및 개별 프레임 간의 라인 길이 편차)도 이곳에서 측정됩니다. 프레임은 DMA를 통해 PC로 전송됩니다. 또한 사용자는 디버깅 연산자 ImageMonitor를 사용하여 파이프라인의 임의의 지점에서 이미지를 모니터링할 수 있습니다. HierarchicalBox TriggerStatistics 에서는 트리거 신호의 속성은 물론, LVAL 및 FVAL과 같은 Camera Link 신호의 속성도 측정됩니다. 박스 내용에 대해서는 그림 291을 참조하십시오. TriggerAnalysis의 내용에 대해서는 그림 291을 참조하십시오.의 내용은 그림 291을 참조하십시오. .

HierarchicalBox의 TriggerAnalysis 내용

그림 291. HierarchicalBox의 TriggerAnalysis 내용


이 상자 안에 CameraLink_LVAL_FVAL 에서 LVAL 및 FVAL 신호가 정의되어 있습니다. 각 이미지 라인 및 각 프레임의 시작과 끝에서 연산자 LineStartToSignal/ LineEndToSignal 및 FrameStartToSignal/FrameEndToSignal. 연산자 RsFlipFlop 연산자는 해당 시작/중지 신호를 LVAL 및 FVAL 신호로 결합하며, 사용자는 이를 이벤트로 모니터링할 수 있습니다. 이러한 이벤트는 HierarchicalBox CameraLink_Events 내에서 연산자 EventToHost연산자를 사용하여 정의됩니다.를 사용하여 정의됩니다. CameraLink_LVAl_FVAL_GPO 상자에서 LVAL 및 FVAL 신호는 PinID 1을 가진 GPO 및 Front GPO에 할당됩니다. LVAL 및 FVAL 시작 및 정지 펄스의 통계 정보는 HierarchicalBox CameraLink_InputStatistics상자에서 정의됩니다. 이 상자의 내용은 그림 292에서 확인할 수 있습니다.에서 정의됩니다. 이 박스의 내용은 그림 292에서 확인할 수 있습니다.

HierarchicalBox의 CameraLink_InputStatistics 내용

그림 292. HierarchicalBox의 CameraLink_InputStatistics 내용


여기서는 연산자를 사용하여 펄스 수를 계산합니다 PulseCounter를 통해 펄스 수가 계산됩니다. 사용자는 GetStatus_ReadPulses연산자를 통해 이 수치를 모니터링할 수 있습니다를 통해 이 펄스 수를 모니터링할 수 있습니다. LVAL 또는 FVAL 시작 또는 정지 펄스 간의 주기는 연산자 SignalToPeriod를 통해 정의됩니다. 사용자는 연산자GetStatus_ReadPulses를 통해 정의됩니다. 사용자는 연산자 GetStatus_ReadPeriod 를 통해 이 값을 모니터링할 수 있으며, 최대값과 최소값은 GetStatus_ReadMax 및 GetStatus_ReadMin를 통해 확인할 수 있습니다.를 통해 최대값 및 최소값과 함께 확인할 수 있습니다. Camera Link 신호의 통계 정보를 모니터링하는 것 외에도, 사용자는 트리거 신호의 통계 정보를 확인할 수 있습니다. 트리거 신호는 트리거 생성기, SoftwareTrigger 또는 GPI를 통한 외부 트리거 소스를 사용하여 생성할 수 있으며, 이는 GPI_InputSelect에서 선택할 수 있습니다. 사용자는 GPI 입력 이벤트와 입력 상태를 모니터링할 수 있습니다(상자 참조 GPI_InputEvents 및 GPI_InputStatus참조). 사용자는 GPI 입력 이벤트와 입력 상태를 모니터링할 수 있습니다.참조). 트리거 신호는 HierarchicalBox 내의 카메라 제어 및 GPO에 적용됩니다 TriggerOutput에 적용됩니다. 사용자는 정의된 대로 트리거 신호의 통계를 모니터링할 수 있습니다 HierarchicalBox에서 카메라 제어 및 GPO에 트리거 신호가 적용됩니다. 사용자는 HierarchicalBox Trigger_Statistics에서 정의된 대로 트리거 신호의 통계 정보를 모니터링할 수 있습니다. 그 내용은 그림 293에서 확인할 수 있습니다.

HierarchicalBox의 Trigger_Statistics 내용

그림 293. HierarchicalBox의 Trigger_Statistics 내용


여기서는 트리거 신호의 폭이 정의됩니다(참조: SignalToWidth 연산자 SignalToWidth연산자 참조). 사용자는 이 값을를 참조하십시오). 사용자는 GetStatus 연산자 ReadSignalWidth를 통해 이 값을 확인할 수 있습니다를 통해 이 값을 확인할 수 있습니다. 트리거 상승 에지 펄스의 개수는 PulseCounter를 통해 트리거 상승 에지 펄스의 개수를 집계합니다. 사용자는 GetStatus 연산자 ReadPulses를 통해 이 수치를 확인할 수 있습니다.를 통해 이 수치를 확인할 수 있습니다. 이는 트리거 상승 에지 펄스 간의 주기, 최대값 및 최소값에 대해서도 마찬가지입니다( GetStatus 연산자 ReadPeriod, ReadMax, ReadMin). 다시 그림 291을 보겠습니다. HierarchicalBox DelayAnalysis 에서는 CameraLink 신호와 트리거 신호를 비교합니다. 다음의 내용을 확인할 수 있습니다. DelayAnalysis 의 내용을 확인할 수 있습니다.

HierarchicalBox DelayAnalysis의 내용

그림 294. HierarchicalBox DelayAnalysis의 내용


여기서는 LVAL 또는 FVAL 시작 또는 정지 신호와 트리거 상승 에지 사이의 지연 시간을 측정합니다. 사용자는 다음 함수를 통해 이 값을 확인할 수 있습니다. GetStatus 연산자를 통해 이 값에 접근할 수 있습니다. 또한 두 신호 간의 펄스 수 차이도 측정됩니다. 사용자가 ReadDifferenceCount 값이 1보다 큰 경우, 트리거 신호는 전송되었으나 카메라가 응답하지 않은 것입니다. 이 값이 1보다 작다면, 카메라가 수신된 트리거 펄스 수보다 더 많은 프레임이나 라인을 전송한 것입니다. 트리거 및 Camera Link 신호 분석 외에도, 이미지 데이터 스트림 분석 기능은 HierachicalBox 내의 "TriggerAndImageStatistics.va" 파일에 구현되어 있습니다. ImageAnalysis 내의 "TriggerAndImageStatistics.va" 파일에 구현되어 있습니다(그림 290 참조). 해당 파일의 내용은 그림 295에서 확인할 수 있습니다.

HierarchicalBox의 이미지 분석 내용

그림 295. HierarchicalBox ImageAnalysis의 구성


운영자 ImageAnalyzer 는 마지막 프레임의 이미지 속성과 현재 프레임의 중간 값을 분석할 수 있는 기능을 제공합니다. 이러한 속성에는 이미지 크기, 선 길이 편차 및 선 간 시간 간격이 포함됩니다. 또한 이 연산자는 연산자 입력의 차단 상태에 대한 정보도 제공합니다. 연산자 ImageStatistics 는 전체 이미지 시퀀스를 분석합니다. 이미지 크기, 라인 간격 등의 편차를 측정합니다. 오퍼레이터 StreamAnalyzer 는 데이터 흐름 및 블로킹 상태에 대한 정보를 제공합니다. 분석 과정에서 이미지 데이터는 변경되지 않습니다.