Halcon 平台
下载并安装 Halcon
在 Halcon 官网 下载 Halcon (Windows 版) 安装包,并根据官方文档安装 Halcon。
重要
Image Acquisition Interfaces 安装包必须安装。若无特殊要求,建议勾选所有安装包并安装。
下载 SDK
选择以下任意方式,下载 Camport3_Halcon_gentl SDK:
使用 git 指令获取本地副本:打开终端,切换到需存放 SDK 的工作目录下,输入 git clone 命令克隆远程仓库。
git clone https://gitee.com/percipioxyz/camport_gentl.git
选择以下任意方式,下载 Camport3_Halcon_gentl SDK:
使用 git 指令获取本地副本:打开终端,切换到需存放 SDK 的工作目录下,输入 git clone 命令克隆远程仓库。
git clone https://github.com/percipioxyz/camport_gentl.git
camport_gentl SDK 目录结构如下图所示:
📦 camport_gentl
├── 📁 win_x64
│ └── percipio.cti # Windows x64 平台的 GenTL Producer 实现文件(供 Halcon 加载)
│
├── 📁 ubuntu_x64
│ └── percipio.cti # Ubuntu x64 平台的 GenTL Producer 实现文件
│
├── 📁 halcon_samples
│ ├── check_status.hdev # Halcon 示例:设备状态检查
│ ├── fetchframe.hdev # Halcon 示例:单相机取图
│ ├── fetchframe_2cameras.hdev # Halcon 示例:双相机取图
│ ├── fetchframe_RGBD.hdev # Halcon 示例:RGBD 数据采集
│ ├── genicamtl_parameters.hdev # Halcon 示例:GenTL/GenICam 参数访问
│ └── triggermode1.hdev # Halcon 示例:触发模式采集
│
├── README.md # 仓库说明、支持平台与使用方法
└── Release.log # 版本发布记录与变更日志
halcon_samples 目录
存放了可供用户编程参考的示例程序。
check_status.hdev:该示例程序用于展示相机连接的状态。fetchframe.hdev:该示例程序用于 1 台深度相机采集图像数据。fetchframe_2cameras.hdev:该示例程序用于 2 台深度相机同时连续采集图像并输出图像数据。fetchframe_RGBD.hdev:该示例程序用于获取 RGBD 深度彩色对齐图。genicamtl_parameters.hdev:该示例程序用于枚举图漾相机支持设置的参数。triggermode1.hdev:该示例程序用于设置深度相机工作在模式 1,相机收到软触发指令或硬触发信号后采集图像并输出图像数据。
ubuntu_x64 目录
percipio.cti:Linux 系统下的 GenTL Producer 实现文件。
win_x64 目录
percipio.cti:Windows 系统下的 GenTL Producer 实现文件。
配置环境变量
进入环境变量页面,新建一个环境变量。变量名为 GENICAM_GENTL64_PATH,变量值为 percipio.cti 的存储路径,如果是 Windows 系统,则为 win_x64 目录下的路径;如果是 Ubuntu 系统,则为 ubuntu_x64 目录下的路径。重启电脑后,配置生效。
配置环境变量
查看相机属性
双击 “halcon_samples” 路径下的
genicamtl_parameters.hdev文件。在 Halcon 程序窗口修改程序:
在 “open_framegrabber” 前指定相机序列号。下方以 ‘PercipioTL_DEV_207000155512’ 为例。
Device:= 'PercipioTL_DEV_207000155512' open_framegrabber ('GenICamTL', 1, 1, 0, 0, 0, 0, 'default', -1, 'default', -1, 'false', 'default', 'Device', -1, -1, AcqHandle)
在 “get_framegrabber_param” 前打开目标组件。程序才会将该组件下所有的属性列出来。 下方以 Left IR 组件为例。
* 如是 Gige_2_0 相机,请使用以下代码打开 Left IR 组件 set_framegrabber_param(AcqHandle, 'SourceSelector', 'Source_LeftIR') set_framegrabber_param(AcqHandle, 'ComponentEnable', 1)
* 如是 Gige_2_1 相机,请使用以下代码打开 Left 组件 set_framegrabber_param(AcqHandle, 'SourceSelector', 'Left') set_framegrabber_param(AcqHandle, 'ComponentEnable', 1)
备注
相机的定义见 Gige_2_0 相机 和 Gige_2_1 相机。
点击运行按钮,执行
genicamtl_parameters.hdev程序。 在genicamtl_parameters.hdev文件的同级目录下会生成parameters_info.dat参数文件。
打开
parameters_info.dat文件可查看相机支持的属性列表,详细说明及读写方法请点击
查阅参考。
运行示例
在程序窗口中输入相机序列号,此处 ‘PercipioTL_DEV_207000155512’ 为举例说明,请替换成目标相机后再运行。
* 设置目标相机设备标识(替换为设备的实际序列号) Device := 'PercipioTL_DEV_207000155512' * 通过GenICam协议打开相机 open_framegrabber ('GenICamTL', 1, 1, 0, 0, 0, 0, 'default', -1, 'default', -1, 'false', 'default', Device, -1, -1, AcqHandle)点击运行按钮,执行
fetchframe.hdev示例。查看运行结果。