5월, 2020의 게시물 표시

FvGeniCam application compile error

GenApi:: namesapce에 속한 object type이 타 GigE camera library의 include file과의 참조 모호성 발생으로 컴파일 안됨. GenApi:: namespace object는 직접 사용하지 않을 것 FLIRGigE.h 에서 using namespace Spinnaker; using namespace Spinnaker::GenApi; using namespace Spinnaker::GenICam; 로 인해 GenApi namespace 정의되어 모호성 발생함.

FvGenICam build 링크 에러 관련

FvGenICam 빌드시 GenApiLinkage.h 에서 build target 참조 라이브러리 자동 참조 기능이 구현되어 있는데, 참조 라이브러리 이름 불일치 현상으로 링크 라이브러리 참조 할수 없다는 에러 발생함. #define GENICAM_NO_AUTO_IMPLIB 1 FvGetICam.h 파일 최상단에 위 라인 추가할 것.

FvGenICam ?

1. FvGenICam 은?    FvGenICam은 GenICam 표준을 따르는 카메라를 쉽게 연결 할 수 있도록    GenICam Wrapping Library 임.    최상위 레이어에 해당 함.    1.0 IP 어드레스, User ID 기반 연결 지원    1.1 카메라 재연결        카메라 케이블 분리 혹은 Power reset된 경우, 자동 재연결 지원    1.2 쓰레드를 통한 Grab 이벤트 처리    1.3 프로그램 레벨의 Circular grab buffer 관리    1.4 Grab 후 프로세싱 쓰레드 이벤트 처리    1.5  FvGenICam Legacy Visual studio 6.0과 같은 최신 SDK가 지원하지 않는        개발 툴 지원을 위한 제어 인테페이스 제공      2. GenICam 라이브러리    FvGenICam은 다음의  rc_genicam_api 를 기반으로 wrapping된 라이브러리임.    rc_genicam_api는 MAC ID 기반 연결만 지원 함. (IP 어드레스 지원 하지 않음)     https://github.com/roboception/rc_genicam_api 3. GenTL Library    rc_genicam_api 는 각 카메라 제조사 제공한 GenTL (전송 계층) API 기능 기반으로   프로그램된 GenICam API 임. 4. 계층 구조   FvGenICam         - Application layer ...

GenICam, eBus (Pelora) 관련

1. GenICam 이란?     GenICam은 USB, GigE, Camera Link, CoaXPress 등의 카메라 인터페이스 규약을 통합    하기 위한 Hardware, Software 규약임.    따라서, GenICam 표준을 따른 카메라는 프로그램 수정 없이 사용이 가능하단 의미임. 2. GenICam API    GenICam은 Dynamic Link Library 형태의 표준 API를 제공함.    GenICam API 라이브러리는 DLL 확장자를 '.CTI' (Common Transport Interface)     확장자 형식의 파일임.      실질적으로 보면 DLL과 내부 구조는 동일하고, 파일 확장자만 다른 형식임. 3. GenICam API 설치 위치      Windows의 경우, 내컴퓨터 -> 고급 시스템 설정 -> 환경변수에     - GENICAM_GENTL32_PATH (Win32 CTI 파일 위치)     - GENICAM_GENTL32_PATH (x64 CTI 파일 위치)   각 플랫폼에 맞는 GenICam 표시 API가 제공됨.  4. 카메라 제조사 API    각 제조사 별로 GenICam을 wrapping한 별도의 SDK 인터페이스를 제공하지만    내부적으론 GenICam + 제조사 특화된 비표준 API도 제공함.    GenICam API는 프로그래머 입장에서 프로그램 하기 까다로운 구조임.    Event 처리 및 내부 쓰레드 관리등 기능들이 정의되어 있지 않아     제조사에서는 이런 개발자 관점에서 실질적으로 필요한 기능들을 보...

GenICam 카메라 재연결 문제

1. GenICam 기반 GigE 카메라 연결이 비 정상적으로 종료된 상황에서, 대상 디바이스가     Busy, Read Only 상태에 놓인 경우, 연결 후 제어 불능 상태에 놓이게 된다.   단, POE type GigE 카메라 케이블 분리 시 power reset되므로, Busy, ReadOnly 상태    미 발생.    이를 해결하는 방법으로 GigE 카메라의 GEV Heartbit Timeout 설정 값을 짧게 설정하는   방법이 있음.