EN
新闻资讯
您当前的位置: 首页 > 公司动态 > 公司动态

案例背景:机器人云台通过相机识别目标位置并跟踪和预测

使用产品:维特WT61C

产品优势:频率高,延时低,可以帮助解决坐标系转化的问题

系统组成:机器人底盘,二轴云台(与工业相机和IMU互相固联),NUC(Ubuntu系统)


 


项目难点

主要难点是控制和预测。相机拍摄到上位机处理信息再到将解算角度(相对角)发送给下位机这一过程的延时不可控,会造成电机响应卡顿或者抖动的现象。在相机和目标物相对位置不改变的情况下通过vofa可视化数据发现目标值不收敛。由此得出在此案例中相对角并不适用,并且在预测模型中相对角无法描述目标的真实运动状态。

 

解决思路

客户工程师决定通过改变世界坐标系来解决此难题。当世界坐标系在云台中心时,目标位置就是一个绝对角,只要保持云台中心和目标位置相对不变那么无论相机如何运动,目标位置的绝对角仍然是正确的,就可以保证电机直接达到该目标值,而不会出现上述目标值不收敛的情况。

 

维特IMU的具体应用

借助维特IMU传感器频率高、延时低的功能特性,客户工程师决定引入维特WT61C传感器帮助完成坐标系转换的问题。使用kalibr标定IMU传感器和工业相机,得到两者之间4*4的状态转移矩阵,WT61的安装位置接近云台轴中心,可将相机坐标系转换到云台中心,最后解算出来的pitch和yaw轴角度便是相对于云台中心的绝对角,可以直接作为pitch和yaw轴电机的目标值,需要注意的是如果使用的是六轴传感器,下位机需要重新规范180°(或-180°)时的yaw轴角度控制,避免出现云台旋转360°情况。


(维特IMU在本案例机器人中运作流程图)

 

多传感器融合问题解决

除此之外客户工程师后续遇到了时间同步的问题,这是多传感器融合常见的问题,即如果WT61传感器返回数据的时间和相机拍摄照片时的时间无法一一对应(近似相等,数量级为1毫秒),那么最终解算出来的目标位置仍然是错误的,客户工程师通过可视化数据可以发现目标值呈现锯齿形状,并且难以通过滤波器来矫正。为此,客户工程师决定借助ros系统的通讯框架使用软同步来解决此问题。由于在多传感器融合的场景中通常使用的同步方式为硬同步(硬件触发同步)和软同步,硬同步的操作难度较高,在本案例中,维特智能基于开放原则提供官方SDK,供客户工程师按实际需求改写,使其能在ros中运行并发布传感器数据(修改了Linux c的代码),然后再使用tf工具更平滑的实现坐标系转换的问题,同样的,tf自带时间戳对齐的功能,也能帮助解决时间同步的问题。需要注意的是,对于简单的移动目标,客户工程师使用了卡尔曼滤波器来预测目标位置,并且通过实验得出此理论可行。对于一些复杂的机动目标不太适用。

 

维特智能感谢为提供本研究案例的客户工程师,我们认识到在智能机器人领域ros系统是绕不开的一个名词,鉴于客户开发的实例情况,未来考虑拓宽生态来满足ros的开发需求,如推出适配ros通信的例程,以及针对在一些项目中需要传感器误差数据的需求,开发操作相对简单的传感器标定工具,以解决开源的标定工具操作体验差的问题。为更多机器人客户提供开发便利。