驱动测试

本节将介绍机器人驱动的测试,为了确保您手中机器人各个驱动在运送的过程中没有受到损坏。如果有问题,请及时联系我们。

注意:要关掉有进程正在运行的终端,请在该窗口使用 Ctrl+C 来中断程序,然后在关掉该窗口。

1 硬件介绍

1.1 IMU

IMU(英文Inertial measurement unit,简称 IMU)即惯性测量单元,是测量物体三轴姿态角及加速度的装置。一般的,一个IMU包含了三个单轴的加速度计和三个单轴的陀螺,加速度计检测物体在载体坐标系统独立三轴的加速度信号,而陀螺检测载体相对于导航坐标系的角速度信号,测量物体在三维空间中的角速度和加速度。

您可以理解为IMU可以测量物体的姿态和位置。它在我们机器人的导航中有着很重要作用。

1.2 Lidar

Lidar(指激光雷达)激光雷达,是以发射激光束探测目标的位置、速度等特征量的雷达系统。其工作原理是向目标发射探测信号(激光束),然后将接收到的从目标反射回来的信号(目标回波)与发射信号进行比较,作适当处理后,就可获得目标的有关信息,如目标距离、方位、高度、速度、姿态、甚至形状等参数,从而对一些物体目标进行探测、跟踪和识别。

Lidar在我们机器人建图和导航中都有着很重要作用。

1.3 rgbd_camera

rgbd_camera(RGB-D相机,也叫做深度相机) = 普通的RGB三通道彩色图像 + 深度图像

在3D计算机图形中,Depth Map(深度图)是包含与视点场景对象的表面距离有关的信息图像或图像通道。其中,Depth Map 类似于灰度图像,只是它的每个像素值是传感器距离物体的实际距离。通常RGB图像和Depth图像是配准的,因而像素点之间具有一对一的对应关系。

1.4 云台

云台是安装、固定摄像机的支撑设备,它分为固定和电动云台两种。giraffe和stone是电动的云台,所以我们需要对其进行测试。

2 机器人硬件连接测试

在正式进行测试之前,我们先检测一下各种设备的连接,这里以HandsFree Gemini和omni机器人为例,打开终端依次运行:

  • lsusb
  • ls /dev/HFRobot
  • ls /dev/lidar_front

终端显示如下:
run_lsusb

发现两个CP210x UART BridgeUSB设备,其中一个是前置激光雷达,并在操作系统层映射成 /dev/lidar_front 。另外一个是底盘运动控制板,并在操作系统层映射成 /dev/HFRobot 。底盘运动控制板上已经包含了IMU传感器。

如果以上测试出现问题,请检查机器人和各设备的连接是否正常,以及主机的HandsFree软件环境是否配置完整。然后再进行后面的测试。

如果运行 ls /dev/lidar_front 指令仍没反应的话

  1. 请进入 /etc/udev/handsfree-serial.rules 文件中,查看UART Bridge Controller 项后的SYMLINK 对应值是否为 “lidar_font”
  2. 倘若不是的话,则要进入 ~/handsfree/handsfree_ros_ws/src/handsfree/Documentation 目录中,在终端输入 bash set_usb_env.sh 以执行usb规则文件,执行完后再查看步骤1中的SYMLINK对应值,倘若正常显示”lidar_front”,则可以正确执行ls /dev/lidar_front指令

3 IMU测试

Tips:上电之前请不要晃动机器人,否则在进行IMU测试时,可视化界面会出现模型不水平,或在不断旋转。

  1. 打开终端(Ctrl+Alt+T),输入下面的指令,启动我们的机器人

     roslaunch handsfree_hw handsfree_hw.launch
    

    正常情况下,会显示:
    handsfree_hw

  2. 打开第二个终端(Ctrl+Alt+T或Ctrl+Shift+T),输入下面的指令,打开rviz可视化界面

     roslaunch handsfree_hw view_rviz.launch
    

    正常情况下,会显示:(如果未出现下面的图像,可以如图勾选所有选项)
    rviz_01

    现在您晃动您的机器人,可以看到可视化界面的模型也会跟着晃动。

  3. 测试机器人的IMU 转动机器人,先尝试旋转180度,通过可视化界面查看模型是否跟着旋转了180度,然后再转动180度,让机器人旋转一圈,回到原来的位置。此时查看可视化界面中的模型是否回到了原来的位置,同样旋转了一圈。如果您实际旋转了180度,而可视化界面的模型旋转了360度,那么这个IMU就是有问题的。

    tips1: 鼠标左键按下拖拽可以旋转视图,鼠标左键按下+Shift拖拽可以上下左右移动视图。

    tips2: 如果画面显示陀螺仪不水平或在不断旋转,有可能是刚开始上电的时候晃动了机器人,请关闭所有程序,将机器人断电,然后重新上电,上电过程不要晃动机器人。

4 Lidar测试

HandsFree支持多种激光雷达,比如思岚的rplidar A1/A2/A3 , Hokuyo系列的雷达等。

  1. 打开新终端,输入下面的指令,打开激光节点

     roslaunch handsfree_lidar lidar.launch
    

    正常情况下,会显示
    run-rplidar

  2. 打开新终端,通过可视化界面检查雷达是否正常

     roslaunch handsfree_hw view_rviz.launch
    

    lidar

    打开界面后,您可以通过可视化界面和机器人当前所处的真实环境进行对比,出现在画面中的彩色线条对应真实环境下的障碍物。

    您可以在机器人周围摆放障碍物,来观察可视化界面信息改变的快慢,以检查雷达的实时性。如果10秒后可视化界面才出现变化,那么这台机器人雷达是有问题的。

5 rgbd_camera测试

HandsFree支持多种深度摄像头,包括Xtion Pro,奥比中光,Kinect等。请根据实际配备的摄像头型号启动摄像头驱动,该教程以gemini为例,启动大白摄像头

  1. 我们套餐中带有深度摄像头设备, 都是连接到USB 3.0,打开终端,运行下面的指令

     roslaunch handsfree_camera view_camera.launch
    

    会打开rviz可视化界面,出现两个Image框,上面的窗口将显示RGB图像,下面的窗口将显示深度图像。

    您可以在镜头前晃动手掌,查看Image框中图像的变化,来检测摄像头是否正常。

    rgbd-run

  2. 如果您的rviz可视化界面没有那两个摄像头的窗口,那么需要您手动添加,点击左下角的 Add按钮进行添加,会弹出一个小窗口,选中里面的Image,然后点击ok就会添加成功.

    添加成功后,需要进行设置,才能让Image框显示图像,找到侧边栏的Image点击使其展开,将Visiblity选框中的勾去掉,设置Image Topic的图像话题,一般我们选择的是/camera/rgb/image_raw或/camera/depth/image_raw
    rviz_add_camera_02

6 云台测试

本功能只有部分产品拥有

  1. 打开终端(Ctrl+Alt+T),输入下面的指令,启动我们的机器人(若之前已打开,请忽略此步骤)

     roslaunch handsfree_hw handsfree_hw.launch
    
  2. 打开第二个终端,依次输入以下指令来让云台来完成一些动作

    云台仰视45度:

     rostopic pub -1 /mobile_base/pitch_position_controller/command std_msgs/Float64 -- 0.79
    

    云台俯视45度:

     rostopic pub -1 /mobile_base/pitch_position_controller/command std_msgs/Float64 -- -0.79
    

    云台pitch居中:

     rostopic pub -1 /mobile_base/pitch_position_controller/command std_msgs/Float64 -- 0
    

    云台左转45度:

     rostopic pub -1 /mobile_base/yaw_position_controller/command std_msgs/Float64 -- 0.79
    

    云台右转45度:

     rostopic pub -1 /mobile_base/yaw_position_controller/command std_msgs/Float64 -- -0.79
    

    云台yaw居中:

     rostopic pub -1 /mobile_base/yaw_position_controller/command std_msgs/Float64 -- 0
    

    正常情况下,云台会完成各个角度的旋转。
    yuntai

7 底盘驱动测试

运行程序,通过键盘遥控测试机器人的运动的能力,这部分可以参考教程遥控机器人

results matching ""

    No results matching ""