YDLIDAR HP60C 紧凑型激光雷达传感器用户手册
YDLIDAR HP60C 紧凑型激光雷达传感器

Windows下操作

设备连接
HP60C在windows下进行评估开发时,需要将HP60C与PC进行互联互通,具体流程如下:
设备连接

如何使用 EAIViewer
YDLIDAR 提供 EAIViewer,一款针对HP60C实时扫描的可视化软件。用户可以通过该软件直观的观察HP60C的扫描图。可视化软件下载  链接:ht​​tps://www.ydlidar.com/道琼斯file.html?cid=29&类型=5

数据显示
打开软件后会自动显示RGB和Depth数据,其中Depth
鼠标位置的信息会显示在Depth窗口的左下角,如下图所示:
数据显示
图2 软件界面

数据管理 – 更改保存地址
设置保存数据的地址。

默认情况下,数据保存在名为“Nuwa - HP60C”的同一目录文件夹中。

数据保存地址
图3 更改数据保存地址

记录数据
用户可以记录Depth、RGB、Point Cloud数据,并默认保存在对等目录中。
保存地址更改指 数据管理——更改保存的地址。
标准差
图 4 显示平均值和标准差

保存图片
深度、RGB、点云数据默认可保存在对等目录中;保存地址更改请参考数据管理-更改保存地址。

保存图片
图 5 保存图像

保存相机参数
相机参数以文本格式保存。

保存相机参数
图 6 保存相机参数

LINUX ROS操作

运行 Ubuntu (Linux) 系统 Examp程序
去sample/linux 目录,其中 build.sh 是编译脚本,run_ascamera.sh 是运行脚本ample程序。执行该程序需要root权限,在脚本中以sudo模式运行。

编译:
$./build.sh

起始节点:
$./run_ascamera.sh

运行 ROS 系统 Samp程序
去sample/ros目录,其中build.sh为编译脚本,run_ascamera.sh为启动节点脚本,启动节点需要root权限,在脚本中以sudo方式运行。

编译:
$./build.sh

起始节点:
$./run_ascamera.sh

运行 ROS2 系统 Samp程序
去sample/ros2目录,其中build.sh为编译脚本,run_ascamera.sh为启动节点脚本,启动节点需要root权限,在脚本中以sudo方式运行。

编译:
$./build.sh

起始节点:
$./run_ascamera.sh

RVIZ 图像检查
节点启动后,打开rviz接收并 view 图像。步骤如下:

  1. 使用以下命令启动 rviz 节点:
    ROS1:
    $ rosrun rviz rviz
    ROS2:
    $ ros2 运行 rviz2 rviz2
  2. 在RVIZ启动后显示的Globa Options中选择用户想要的Fixed Frame,如下图。
    操作说明
  3. 添加显示选项,点击RVIZ左下角的【添加】,在弹出的窗口中选择【按主题】添加用户想要显示的主题。
    操作说明
  4. 到 view 深度作为前任ample,选择/xxx/depth/image_raw0下的图像,点击[确定],即可将主题添加到显示窗口。
    操作说明

常问问题

如何在没有 Root 权限的情况下运行 ROS 节点
在 Linux 中,访问设备需要 root 权限,对于操作 /dev 目录下设备节点的程序,可以通过 chmod 命令改变设备节点权限,但这只是暂时的,而对于不操作 /dev 目录下设备节点的程序,则需要 root 权限,无法通过 chmod 改变权限,此时用户可以使用 Linux udev 和规则来管理设备权限。

对于使用HP60C相位模块的Linux系统,amp可以通过/linux_ros/ros/SRC/ascomata/create_udev_rules/scripts目录下执行.sh脚本,可以通过普通权限的ros节点访问HP60C摄像头进行操作。修改s目录中的run_ascamera_node.sh脚本ample/linux_ros/roes/目录下查看并申请root权限的注释。如下图:
根权限

如何在没有 Root 权限的情况下运行 Ros2 节点
在 Linux 中,访问设备需要 root 权限,对于操作 /dev 目录下设备节点的程序,可以通过 chmod 命令改变设备节点权限,但这只是暂时的,对于不操作 /dev 目录下设备节点的程序,需要 root 权限,无法通过 chmod 改变权限,此时用户可以使用 Linux udev 和 rules 规则来管理设备权限。

对于使用HP60C相位模块的Linux系统,通过按住ample/linux_ros/ros2/src/ascamera create_udev_rules/scripts目录下有.sh脚本,以正常权限运行ROS60节点即可访问HP2C摄像头。

执行 SDK 提供的脚本错误
执行 SDK 提供的 script: Bad replacement 或 Syntax error: redirection expected 等错误,这是因为 SDK 提供的 shell 脚本是 bash shell,而 ubuntu 默认的 shell 解析器是 dash。Bash 比 Dash 功能强大,部分 Bash 语法可能无法被 dash 解析。用户可以按照以下步骤将 ubuntu 的默认 shell 改为 bash。
终端执行sudo DPKG重新配置dash,在弹出的窗口中选择【NO】。
Ubuntu 20.04/22.04 ROS 上的编译错误
Ubuntu 20.04/22.04 中的 ROS(Noetic 或更高版本)报告了以下错误。由于我们的节点 exampROS下的le程序是基于ubuntu18.04 melodic开发版的ROS,移植到ROS-Noetic时,可以在Ros/SRC/ascomata/CMakeLists.txt file –STD = c++ 11 更改为 –STD = = 14 c++ 或 –STD = = c++ 17。
编译错误
根权限
在 ROS2 上使用 RVIZ2 未找到发布主题
原因: 不执行方法3.2时,脚本会以root权限运行应用,导致ubuntu22.04或者某些没有root权限的rviz2版本将无法订阅应用发布的主题。

解决方案: 执行上述 3.2。

虚拟机深度相机匹配异常问题
由于HP60C摄像头是由两个USB设备组合成一个摄像头(1个USB通讯设备+1个UVC设备),所以需要用户自行匹配;在虚拟机中运行时,由于虚拟机的设备拓扑可能不正确,USB设备无法正确配对。因此在虚拟机中运行程序时,只能连接一个HP60C摄像头。如果使用多个摄像头,可能会因为上述原因导致匹配失败。

多台摄像机运行异常流量
此问题的一个可能原因是系统内核参数 usbfs_memory_mb 设置得太小。Usbfs_memory_mb 是一个内核参数,用于指定 USB 使用的内存大小 file 系统(USBFS)。USBFS 是一个虚拟 file system used to transfer USB device data between user space and the kernel. This parameter specifies the memory size, in MB, allocated by usbfs to the USB device communication buffer. By default, this value is 16 MB. By increasing 或递减asing this value, you can adjust the memory size of the USB device communication buffer.
临时修改方法(系统重启后会失效):将此内核参数增大到64/128/512或者更高。
命令: echo “64” | sudo tee – a/sys/module/usbcore/parameters/usbfs memory_mb 永久修改方式客户可根据自己使用的系统自行设置。

修订

日期 版本 内容
2024-06-05 1.0 第一次发布

公司徽标

文件/资源

YDLIDAR HP60C 紧凑型激光雷达传感器 [pdf] 用户手册
HP60C,HP60C 紧凑型激光雷达传感器,紧凑型激光雷达传感器,激光雷达传感器,传感器

参考

发表评论

您的电子邮件地址不会被公开。 必填字段已标记 *