环境配置

一、客户端安装

SDK有 2 个安装包,分别对应的环境为:x86_64 | i386 ,在不同的硬件平台上选择不同的安装包安装。详情请咨询本司技术支持。
安装步骤:
  1. 安装客户端前,需获取系统 root 权限: sudo su su root
  2. 我们提供两种打包方式的安装包 xxxx.deb 和 xxxx.tar.gz 。安装方式分别如下:
    a、安装 xxxx.deb 的安装包:打开客户端安装包所在文件夹,使用“ sudo dpkg -i xxxx.deb ”直接安装客户端。
    b、安装 xxxx.tar.gz 的安装包:打开客户端安装包所在文件夹,使用“ tar –xzvf xxxx.tar.gz ”对安装包进行解压,打开解压后生成的文件夹,运行安装脚本 “ source ./setup.sh ” 安装 客户端。
  3. 客户端安装在 opt/(客户端名称) 路径下,安装完成后,在客户端文件夹中一般包含:bin、doc、driver、include、lib、logserver、MVFG、Samples 等文件夹(不同版本可能存在差异)。
  4. 在客户端安装路径的/bin中,运行“(客户端名称).sh”,测试 客户端 是否安装成功。

二、客户端开发目录介绍

客户端默认安装在 /opt/路径下,安装完成后,在客户端文件夹下包含目录结构如下:
  • bin(执行文件)
  • doc(工业相机SDK相关文档)
  • driver(Gige相机驱动安装)
  • include(SDK的头文件)
  • lib(SDK的Lib文件)
  • license(SDK的许可文件)
  • logserver(日志服务)
  • MVFG(实体采集卡文件和示例程序)
  • Samples(示例程序)

三、驱动安装步骤

Gige相机驱动和采集卡驱动会在安装客户端的时候同时安装,也可以通过以下的方式进行安装或卸载。
  1. 安装驱动:在客户端安装目录下的driver/gige 中运行“ ./load.sh ”安装Gige相机驱动,在 /安装目录下的driver/pcie 中运行“ ./load.sh ”安装采集卡驱动。
  2. 卸载驱动:在客户端安装目录下的driver/gige 中运行“ ./unload.sh ”卸载Gige相机驱动,在 安装目录下的driver/pcie 中运行“ ./unload.sh ”卸载采集卡驱动。

四、防火墙关闭方式

Linux系统下如果枚举不到相机,则需要关闭防火墙。以下是不同Linux系统环境下关闭防火墙的方式(仅供参考,具体可能系统版本不一样方式也不一样):
  1. Ubuntu
    启动时是默认关闭的
  2. Centos7
    临时关闭:service firewalld stop 或systemctl stop firewalld
    永久关闭:chkconfig firewalld off
  3. RedHat7
    临时关闭:service firewalld stop 或systemctl stop firewalld
    永久关闭:chkconfig firewalld off

五、网卡相关设置

Linux下建议开启巨帧,开启方法(仅供参考):
  1. 临时开启:ifconfig eth0 mtu 9000
  2. 永久开启:将"ifconfig eth0 mtu 9000"语句写到配置文件 /etc/profile 中,重启生效

注意
eth0代表网卡名字,不同系统名字有可能不一样
9000代表最大接收包的大小,一些较老的网卡最大接收包或许无法达到。此时,您需根据实际设置,并且将相机的GevSCPSPacketSize节点设置为实际设置值的大小

六、脚本说明

  1. set_env_path.sh:设置环境变量,将SDK动态库放入系统环境变量中。
  2. set_rp_filter.sh:禁用rpfilter,使pc的IP网段和相机的IP网段不在同一网段时也能枚举的上。
  3. set_socket_buffer_size.sh:当出现GigE丢包时,可开大socket缓存,用来减缓丢包。
  4. set_usb_priority.sh:设置udev规则,使之能在非管理员权限下使用u3相机。
  5. set_usbfs_memory_size.sh:设置usb缓存,使之能兼容多个大分辨率u3相机。
  6. set_sdk_version.sh:生成SDK软链接。
注意
  • 使用GigE相机建议开启Linux网卡巨帧,设置MTU为9000,并且设置网络缓存(set_socket_buffer_size.sh)
  • 使用USB相机建议设置usb缓存(set_usbfs_memory_size.sh)