GenTL 인터페이스 사용#
GenTL Producer를 사용하여 다음 작업을 수행할 수 있습니다.
- 동일한 인터페이스(GenApi)를 통해 다양한 표준의 GenICam 호환 카메라를 구성합니다. 지원되는 표준은 Camera Link 및 CoaXPress입니다.
- 이미지 취득 시스템의 계층 구조를 확인합니다.
- 사용된 카메라 표준을 고려하지 않고 범용 애플리케이션(GenTL consumers)을 개발합니다.
구현된 GenTL producer는 GenTL 1.5를 제공합니다.
GenTL Producer#
Basler Framegrabber SDK에는 두 개의 GenTL Producer인 ProducerCXP.cti(CXP 프레임 그래버용)와 ProducerCL.cti(Camera Link 프레임 그래버용)가 포함되어 있습니다.
GenTL 구성#
GenTL Producer는 검색된 각 프레임 그래버에 대한 구성 파일을 다음 디렉터리에 저장합니다.
- Windows 환경: %Appdata%\basler
- Linux 환경: ~/.config/basler
*.config 파일을 삭제하면 GenTL Producer가 기본 설정으로 초기화됩니다.
인터페이스 Applet#
인터페이스 모듈 XML에는 InterfaceApplets category 노드의 applet에 대한 정보가 포함되어 있습니다. InterfaceApplets> InterfaceApplet 노드에서 다른 앱릿을 선택하거나 .hap 파일을 선택할 수 있습니다. 앱릿 변경 사항은 지속성 GenTL 구성 파일에 저장되지만, 모든 디바이스를 닫고 디바이스 목록을 업데이트하거나 인터페이스를 닫았다가 다시 연 후에만 적용됩니다. 앱릿을 선택하고 디바이스를 업데이트한 후 몇 초간 기다린 다음, InterfaceAppletStatus applet이 로드되었는지 확인하는 파라미터입니다.
Applet은 언제 사용할 수 있나요?
- On imaWorx 및 imaFlex frame grabbers의 경우, 컴퓨터의 파일 시스템(Framegrabber SDK 설치 디렉토리의 하위 디렉토리)에 앱릿이 있는 즉시 사용할 수 있습니다.
DLL또는Hardware Applets)에 applet이 있는 즉시 사용할 수 있습니다. applet이 없는 경우, 사용하려는 applet이 포함된 applet 설치 프로그램을 실행하거나 VisualApplets로 생성된 applet인 경우 applet 파일(*.hap)을Hardware AppletsFramegrabber SDK 설치 폴더(예:...\Basler\FramegrabberSDK5.x.x\Hardware Applets\*.hap). - marathon frame grabbers에서는 앱릿이 frame grabber에 플래싱되는 즉시 사용할 수 있습니다. 사용하려는 앱릿이 아직 frame grabber에 플래싱되지 않은 경우, Flashing Applets onto marathon Frame Grabbers 주제의 지침에 따라 플래싱하세요.
microDiagnostics에서 앱릿을 관리하는 방법에 대한 자세한 내용은 Managing Applets (microDiagnostics)를 참조하세요.
Applet 구성#
다음 파라미터 블록에서 UserSetControl 인터페이스 모듈의 카테고리에서 현재 선택된 앱릿의 구성 파일을 로드하고 저장할 수 있습니다. 이렇게 하려면 존재하거나 존재하지 않는 *.mcf 파일의 경로를 UserSetFile 파라미터에 입력하고 UserSetLoad 또는 UserSetSave 명령에 지정합니다. 경로를 비워두거나 *.mcf와 다른 파일 확장자를 사용하는 경우, UserSetLoad 및 UserSetSave 명령을 사용할 수 없습니다.
The *.mcf 구성 파일은 앱릿의 구성을 저장하고, *.config 파일은 GenTL Producer의 구성을 저장합니다. 파일에서 로드된 *.mcf 구성은 앱릿 변경 또는 시스템 종료 후에도 유지되지 않습니다. 현재 로드된 앱릿이 로드된 *.mcf 파일의 앱릿과 일치하지 않는 경우, GenTL Producer는 먼저 설정을 시도합니다. InterfaceApplet 을(를) 구성 파일의 값으로 설정하려고 시도합니다. 이 경우 구성이 적용되도록 하려면 디바이스를 닫고(시스템을 닫지 않고) 디바이스 목록을 업데이트해야 합니다.
가상 디바이스#
다음 파라미터 블록에서 TransportLayerControl 인터페이스 모듈의 카테고리에서 DiscoveryMethod 열거형 노드를 찾을 수 있습니다. 이 노드에는 CameraDiscovery, EmulationDiscovery및 MixedDiscovery 값이 포함되어 있으며, 여기서 CameraDiscovery 은(는) CXP frame grabbers의 기본값이고, EmulationDiscovery 은(는) Camera Link frame grabbers의 기본값입니다. 에뮬레이션된 디바이스는 Camera Link frame grabbers 및 **.hap 파일 작업 시 특히 중요합니다.
선택하는 경우 EmulationDiscovery, 에뮬레이션 디바이스가 자동으로 감지되고 기본 원격 디바이스 XML 파일이 생성됩니다. applet에 이미지 생성기가 포함되어 있는 경우, 이미지 생성기가 기본적으로 활성화됩니다. Camera Link 카메라에서 이미지를 수신하려면 원격 디바이스 노드 내부에서 이미지 생성기를 비활성화할 수 있습니다. 각 수집 채널마다 에뮬레이션 디바이스가 존재합니다.
The MixedDiscovery 은(는) 실제 카메라는 검색하지만 빈 acquisition channel은 에뮬레이션된 디바이스로 채웁니다. CXP frame grabbers의 .hap 파일에 이 값을 사용합니다.
검색 모드 개요#
검색 모드는 카메라 또는 유사 디바이스가 감지되는 방식을 정의합니다. API의 DiscoveryMethod 섹션에 있는 Interface 노드를 통해
| Mode | 설명 | Node Path |
|---|---|---|
| Emulation Discovery (Default for CL) | 각 acquisition channel에 대한 유사 디바이스(즉, 가상 디바이스)를 생성하여 원격 디바이스를 에뮬레이션합니다. | Interface.DiscoveryMethod |
| Mixed Discovery | GenCP 또는 CLP를 사용하여 실제 카메라를 검색합니다. 실제 카메라가 감지되지 않으면 가상 장치(pseudodevice)로 대체됩니다. | Interface.DiscoveryMethod |
| 카메라 검색(CXP 기본값) | 가상 장치를 사용하지 않고 실제 카메라만 검색합니다. | Interface.DiscoveryMethod |
호환성 상태#
Compatibility Status 카테고리는 인터페이스 및 장치의 상태에 대한 정보를 제공합니다.
인터페이스 호환성 상태 (예: 프레임 그래버)#
- Interface Driver Version: 인터페이스 드라이버의 버전 번호를 표시합니다.
- Interface Producer Version: 현재 GenTL Producer의 버전 번호를 표시합니다.
- Interface PCIe Status:
- 실제 속도가필요 속도와 같거나 이를 초과하는 경우, 이 기능은 감지된 PCIe 속도(예: Gen3x8)를 표시합니다.
- 실제 속도가 필요 속도와 일치하지 않거나 미달하는 경우, 이 기능은 Warning: Gen2x1 detected, but Gen3x8 possible을 표시합니다.
- Interface Power Supply Status:
- Connected: 프레임 그래버의 전원 커넥터가 연결되어 있습니다.
- Warning: PCI-Power connector missing: 프레임 그래버의 전원 커넥터가 연결되어 있지 않습니다.
pylon Viewer에서 인터페이스의 Compatibility Status는 다음과 같이 표시됩니다.

기타 디바이스 호환성 상태 (예: 카메라)#
- Device Pixelformat Status:
- Supported: 카메라에서 Pixel Format이 지원됩니다.
- Warning: Not supported: 카메라에서 Pixel Format이 지원되지 않습니다.
- Device Automatic ROI Control Status:
- Deactivated: Device Transport Layer -> Image Format Control을 통해 자동 ROI가 비활성화되었습니다.
- Activated: 자동 ROI가 활성화되어 있습니다(기본값).
- Warning: ROI truncated according to stepping: 기능이 활성화되었으며 ROI 크기가 조정되었습니다. 카메라와 앱릿의 스텝 크기가 달라 요청된 값을 설정할 수 없는 경우, ROI 크기는 그보다 작은 일치하는 값으로 설정됩니다.
- Device Tap Geometry Status:
- Supported: 탭 지오메트리 일치 항목을 찾았습니다.
- Warning: Driver does not support tap geometry setting: 드라이버가 탭 지오메트리 설정을 지원하지 않습니다.
- 경고: 앱릿에서 요청한 지오메트리를 지원하지 않습니다. 카메라에 지원되지 않는 탭 지오메트리가 필요합니다. 현재
1X1Y이(가) 기본값입니다. 다음을 설정하세요.1X2YE카메라에 필요하고 앱렛에서 지원하는 경우에만 해당됩니다.1X_1Y모드를 사용하면 전체 이미지가 단일 데이터 스트림으로 전송되도록 정의할 수 있습니다. 이 모드는 대부분의 카메라에서 기본 모드입니다. 센서가 커짐에 따라 더 빠른 리드아웃이 필요합니다. 이를 달성하려면 다음을 사용하십시오.1X_2YE모드입니다. In1X_2YE모드에서는 센서가 두 개의 서브프레임으로 동시에 판독됩니다.
pylon Viewer에서 장치의 Compatibility Status는 다음과 같이 표시됩니다.

자동 ROI 및 FORMAT#
다음 파라미터 블록에서 ImageFormatControl 카테고리에서 다음을 찾을 수 있습니다. AutomaticFormatControl, AutomaticROIControl, AutomaticTapGeometryControl및 OutputPacketFormats 노드. 만약 AutomaticFormatControl, AutomaticROIControl및 AutomaticTapGeometryControl 이(가) 활성화된 경우, GenTL Producer는 카메라 설정과 일치하도록 applet에서 올바른 형식과 ROI를 설정하려고 시도합니다. 이는 microEnable 6 frame grabber의 applet와 관련이 있습니다.
Camera Link XML 액세스#
Basler의 ProducerCL.cti GenTL Producer는 GenCP 또는 CLP(Camera Link Protocol)를 사용하여 Camera Link(CL) 연결을 통해 카메라 XML 파일에 대한 액세스를 제공합니다. 이는 대부분의 GenTL Producer가 이러한 설정에 대한 XML 액세스를 제공하지 않으므로 프레임 그래버에 연결된 타사 Camera Link 장치에 특히 유용합니다.
정보
Basler 카메라는 GenCP와 호환되지 않지만 CLP를 지원하므로, GenTL Producer를 통해 카메라의 XML에 직접 액세스하고 전체를 구성할 수 있습니다. 이를 통해 Camera Link 설정에 대한 향상된 제어와 유연성이 제공됩니다.
Basler CLP용 자동 구성#
The ConfigurationForBaslerCLP 기능을 사용하면 호환되는 라이브러리를 사용할 수 있을 때 Basler Camera Link 카메라에 대한 자동 XML 검색 및 최적화된 구성이 가능합니다. 이 기능은 기본적으로 활성화되어 있습니다. 활성화되면 Basler 전용 CLP 라이브러리를 확인합니다. BaslerClProtocol.dll 사용할 수 있습니다. 다음의 경우: GENICAM_CLPROTOCOL 환경 변수에 액세스할 수 있고 Basler CLP 라이브러리가 감지되면 다음 구성이 자동으로 적용됩니다.
DiscoveryMethod이 다음으로 설정된 경우Mixed인터페이스 초기화 중.ClpSharedLibraryPath은(는) 인터페이스 초기화 시 Basler 전용 CLP 라이브러리 경로로 설정됩니다.
이 자동 설정은 Basler CLP 라이브러리를 사용할 수 있을 때 Camera Link 장치에 대한 XML 액세스를 단순화합니다.
프로토콜 선택: GenCP 대 CLP#
다음 섹션에서는 frame grabber 구성에서 GenCP 및 CLP 검색 모드 사이에서 선택하는 방법을 확인할 수 있습니다. GenCP 또는 CLP 설정 여부는 카메라에 따라 다릅니다.
GenCP 구성#
- GenCP는 카메라 검색을 위한 기본 프로토콜입니다.
- GenCP를 활성화하려면,
DiscoveryMethod을(를)Mixed Discovery(으)로 또는Camera Discovery(으)로 설정합니다.Interface계층.
CLP 구성#
CLP 구성을 위해 다음 단계를 따르십시오.
| 단계 | Node Path | 동작 |
|---|---|---|
| 탐색 방법 설정 | Interface.DiscoveryMethod | Select Mixed Discovery 또는 Camera Discovery. |
| CLP 라이브러리 경로 지정 | Interface.ClpSharedLibraryPath | CLP 공유 라이브러리의 전체 경로를 정의합니다(DLL 또는 SO), 일반적으로 다음에서 정의된 폴더에 있습니다: GENICAM_CLPROTOCOL. |
| CLP 라이브러리 경로 확인 | Interface.LoadedClpSharedLibraryPath | 이 노드를 확인하여 CLP 라이브러리가 로드되었는지 검증합니다. |
언제 ConfigurationForBaslerCLP 이(가) 활성화되고 BaslerCLAutoConfig 이(가) 활성화된 경우, 다음 조건이 충족되면 Basler CLP 라이브러리 경로와 검색 모드가 자동으로 설정됩니다. GENICAM_CLPROTOCOL 변수가 올바른 위치를 가리키도록 합니다.
변경 사항 적용 및 유지#
변경 사항 DiscoveryMethod, GenCP 또는 CLP 설정은 장치 목록을 업데이트한 후에만 적용됩니다.
구성은 프레임 그래버와 연결된 내부 파일에 저장되므로 프로듀서가 닫힌 후에도 세션 간에 설정이 유지됩니다.
Interface Node Access in Some Consumers
HALCON과 같은 특정 응용 프로그램에서는 Interface 노드는 하나 이상의 장치가 감지된 경우에만 사용할 수 있습니다. 만약 DiscoveryMethod 이 다음으로 설정된 경우 Camera Discovery 잘못된 프로토콜(예: GenCP 대신 CLP)로 설정된 경우, 이로 인해 장치 감지가 방해받고 검색 방법 변경이 차단될 수 있습니다.
이러한 현상이 발생하면 프레임 그래버의 일련번호와 연결된 프레임 그래버 구성 파일을 찾으십시오:
- Windows 운영 체제: %AppData%\basler
- Linux 운영 체제: ~/.config/basler
이 파일에서 검색 방법(Discovery Method) 설정을 수정하거나 파일을 삭제하여 구성을 초기화하십시오.
GenTL을 위한 VisualApplets 설계 고려 사항#
pylon 또는 기타 GenTL 소비자(consumer)에서 GenTL Producer와 함께 사용할 수 있도록 애플릿을 설계할 때 몇 가지 고려해야 할 사항이 있습니다.
Applet 파일 이름 지정#
파일 이름은 인터페이스 XML의 열거형 노드인 InterfaceApplets 에서 직접 사용되며, Name 속성에 대한 GenICam 요구 사항을 준수해야 합니다.
GenICam 표준 버전 2.1.1은 다음과 같은 요구 사항을 명시합니다:
Each node has a Name attribute. The Name must be unique within the camera description
file. Names can be composed of alphanumeric characters [A-Za-z0-9]. The schema also
allows the use of the underscore ‘_’, but not as a leading character.
계층 구조 요소 및 오퍼레이터 인스턴스 이름 지정#
애플릿에서 액세스할 수 있는 파라미터는 VisualApplets 디자인의 오퍼레이터 계층 구조에서 형성됩니다. 파라미터 이름은 GenICam 요구 사항에 맞게 처리되지만, GenApi 요구 사항에 따라 오퍼레이터 인스턴스 및 계층적 요소의 이름을 지정하면 결과 노드 이름을 더 쉽게 이해할 수 있습니다.
GenTL에서 VisualApplets로 설계된 Applet 사용#
VisualApplets로 설계된 애플릿을 pylon 또는 다른 GenTL 소비자에서 GenTL Producer와 함께 사용할 경우, 일반적인 카메라 검색 방법으로는 충분하지 않을 수 있으며 카메라 매개변수의 애플릿 자동 동기화가 작동하지 않습니다.
인터페이스 XML의 DiscoveryMethod 열거(enumeration) 노드는 MixedDiscovery 으로 설정해야 합니다. 이는 모든 DmaToPc 연산자 인스턴스를 활성화하기 위해 장치를 열거하기 전에 수행해야 합니다.
장치를 연 후, 장치 XML의 다음 부울(boolean) 노드들은 다음과 같이 설정해야 합니다. false: AutomaticFormatControl, AutomaticROIControl 및 AutomaticTapGeometryControl.
정보
pylon에서 Basler 이외의 카메라를 사용할 때는 pylon 라이선스가 필요합니다. 카메라 연산자 인스턴스에 둘 이상의 DmaToPc 연산자 인스턴스가 사용되는 경우, 첫 번째 채널을 제외한 모든 채널은 비-Basler 카메라로 간주됩니다.