海康威视在linux下使用笔记——ros驱动相机

经过两天的踩坑,因为是第一次用海康威视的相机,下面是海康的相机在linux下的二次开发和在ros下驱动的笔记。

一、下载官方海康威视Linux系统的MVS SDK:

官方网址:海康机器人-机器视觉-下载中心 选择“机器视觉工业相机客户端MVS V2.1.0(Linux)”下载。

解压后有适应各种架构计算机的压缩包:

 

其中常用的是:

  • 树梅派:armhf架构

  • jetson nano: aarch64架构

  • PC: x86_64架构

解压后安装:

里面有一个INSTALL文件可以参考步骤如下:

  • 安装前,需要获取root权限:sudo su 或 su root

  • tar-xzvf 文件名: 解压压缩包

  • cd MVS-2.1.0_x86_64_20201228/ : 进入文件根目录

  • ./setup.sh  :运行安装脚本

  • 安装完成在路径下/opt/MVS下会看到:

     

     

  • 其中:

    • Sample:示例程序

    • lib:封装好的so库

    • include:头文件

    • doc:说明文档

    • bin:可运行文件,包括客户端软件等

运行demo,测试linux环境是否搭建成功:

运行之前先阅读文件夹下的README,步骤如下,如GrabImage:

  • 进入文件GrabImage

  • maek编译

  • ./GrabImage运行可执行文件

  • 运行后会枚举网络中的设备,输入相应的camera index,如0,回车

  • 结果如下:

 

注意事项:

1.关闭防火墙

2.配置ip使得相机的ip和PC的ip在同一网段:

 

Linux 下建议开启巨帧,开启方法(仅供参考,可选择操作部分):

1、临时开启:ifconfig eth0 mtu 9000 2、永久开启:将"ifconfig eth0 mtu 9000"语句写到配置文件,重启生效。

注意:eth0 代表网卡名字,不同系统名字有可能不一样;9000 代表最大接收包的 5大小,一些较老的网卡最大接收包或许无法达到,需根据实际来设置,并且相机 侧需将 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相机。

在ROS下驱动,这里在github上找到一个大佬自己写的驱动:

请自取,主页和方法在下方:

GitHub - luckyluckydadada/HIKROBOT-MVS-CAMERA-ROS: The ros driver package of Hikvision Industrial Camera SDK.​​​​​

 

mkdir -p ~/ws_hikrobot_camera/src
git clone https://github.com/luckyluckydadada/HIKROBOT-MVS-CAMERA-ROS.git ~/ws_hikrobot_camera/src/hikrobot_camera
cd ~/ws_hikrobot_camera
catkin_make
source ./devel/setup.bash 
roslaunch hikrobot_camera hikrobot_camera.launch
#rviz
source ./devel/setup.bash 
roslaunch hikrobot_camera hikrobot_camera_rviz.launch

这里有一个坑,如果在安装MVS配置了bin目录的环境变量,会和rviz需要的libQT5*等库冲突。

要修改相机参数请自行阅读代码内容。如config文件和src文件。

  • 8
    点赞
  • 128
    收藏
    觉得还不错? 一键收藏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值