赵家进 文汉云
摘要:在诸如污染物泄露、排爆现场、狭小作业空间等不宜人员出现的危险场景中,可远程控制并且能将现场图像传输回操作人员眼前的设备尤为重要。现有的此类设备中,其特点多为履带式底盘,越障能力强;附带可控机械抓手、视频采集与传输单元;各个单元之间的依赖性较高,需要运行在一个稳定的操作系统上。机器人操作系统ROS对现有传感器数据类型进行了分类封装、定义了各个功能节点程序之间的通讯方式,能有效组织机器人运动、控制、传感器数据采集等各个功能之间的协调稳定运行。在ROS的基础上设计了一台具有图像传输、可控抓手、运送物体功能的可视化移动抓取设备,并构造了一台具有完整功能的设备样车。
关键词:运动学分析;图像传输;机械臂;ROS
中图分类号:TP391 文献标识码: A
文章编号:1009-3044(2021)06-0001-03
Abstract: In dangerous scenes such as pollution leakage, explosion removal sites, and small working spaces that are not suitable for personnel, it is particularly important to remotely control and transmit on-site images back to the operators equipment. Most of the existing equipment of this type is characterized by a crawler-type chassis with strong obstacle surpassing ability; with a controllable mechanical gripper, a video capture and transmission unit; the dependence between each unit is high, and it needs to operate in a stable Operating system. The robot operating system ROS classifies and encapsulates the existing sensor data types, defines the communication mode between each function node program, and can effectively organize the coordinated and stable operation of various functions such as robot motion, control, and sensor data collection. On the basis of ROS, a visual mobile grasping device with image transmission, controllable gripper, and object transportation functions was designed, and a prototype vehicle with complete functions was constructed.
Key words: kinematics analysis; image transmission; robotic arm; ROS
1引言
移动机器人的研究一直是国内外各大实验室的重点研究方向;在他们的不断努力下,机器人技术不断发展,让远程手术机器人[1]、深海作业机器人[2]、月球探测机器人[3]的实现成为可能。在日常生产生活中,不免会出现工厂污染物泄露、转移易燃易爆等危险物品、探测狭小空间等可能对人员造成伤害或不宜人员进入的场景。基于现有技术和上述场景需求,构建一台具有图像传输、可控机械臂、良好的灵活性的设备尤为重要;其中,操作系统是管理和实现上述各功能的重要支撑。机器人操作系统ROS的分布式节点管理机制能够将分散的各个功能节点联系起来;动态的节点注册机制又不会影响各自的独立性。与此同时,ROS封装了通用的传感器数据和控制命令类型,在此基础上能够快速开发并实现相应的功能。
设备采用两轮差速的驱动方式以及圆形双层的底盘结构,能最小化转弯半径和保证其灵活性。采用单片机直接控制轮式电机和机械臂的各个舵机;使用树莓派3B+作为运行ROS和传输图像的硬件设备;利用WiFi传输数据于设备和控制人员之间,人员根据传回的图像操作控制手柄,设备上的树莓派主机收到控制指令,通过数据线传输给单片机,进而控制设备移动和机械臂抓取。
2底座的运动学模型
为了能够最大限度地保证设备的灵活性,构造了如图5所示的两轮差速圆形移动底座。该底座由四个轮组成,为两个驱动轮和两个支撑导向轮。驱动轮电机输出轴末端带有编码器可供测速和调速以及底座移动里程计算的测量数据;整个结构一共分为两层,第一层集成了控制器、电源、驱动器以及相关电路。第二层上部分摆放着一枚旋转式测距仪,满足底座探测四周障碍物功能,便于脱困。
根据设想和图5构造的实体,可将底座的运动学分析[4]绘制如图2所示。该图描述了?t时间间隔内,底座从实线处移动至虚线处。根据左右驱动轮被测量的编码计数信息可计算?t时间间隔内左右轮的平均速度VL,VR,以及整个底座旋转的平均角速度ω和线速度v。具体的计算过程如下所示:
为了提高底座的精准控制程度,需要对两驱动轮进行调速控制,这里使用经典的PID(Proportion-Integral-Derivative比例-积分-微分控制器)算法[5],以驱动轮附屬的编码器测量值作为输入反馈,实时输出电机驱动器所需的PWM信号实现速度控制。如图2所示:该算法利用编码值作为反馈,通过比例系数、积分系数、微分系数三个运算,能较快速地输出驱动电机所需的PWM信号,进而控制电机达到目标速度。
顶层的旋转式测距雷达采用飞行时间差(Time of Fly)ToF原理,该原理计量电磁波从发射到返回的时间差,根据波速可算出障碍物距离信息;
为辅助人员对移动底座的操作,将移动底座的实时速度信息作为输入,通过速度对时间的积分推算出移动底座的当前位置,为设备定位以及返航提供帮助。如图1所示,若已知上一时刻移动底座的位置位于实线模型处,经过Δt时间间隔,可根据这段时间内的左右轮编码值计算左右轮平均速度,并根据式(1)可得出底座圆心处的平均线速度和平均角速度。 若该时间间隔Δt充分短,那么可认为该平均速度为瞬时速度;由此,根据积分学的思想,即可计算出虚线模型相对于实线模型的位置(x,y)和姿态θ,推导过程如公式(2)所示:
3图像压缩与数据传输
在如图5所示的移动底座上安装了图像采集摄像头,由树莓派处理器采集图像数据并完成压缩与传输。由于树莓派的WiFi元件的发射功率有限,以及本着节约无线传输带宽的目的,这里将摄像头采集的每一帧图像都采用JPEG压缩算法[6]处理,然后再按照一定的帧率传输。该图像压缩算法的流程图如图3所示:
具体的过程为:将需要压缩的图像数据划分为8×8的小块,这样图像就被划分成许多的小块,每个小块包含64像素值;小块大小划分依据是方便进行离散余弦(Discrete Cosine Transform)DCT变换[7],变换之后使用统一的量子化表格对变换后的系数进行量子化,量子化就是选用合适的系数,将构成8×8的量子化表,与经DCT变换之后的对应位置系数作除运算;最后进行熵编码以进一步压缩;最后输出被压缩的图像数据。
机器人操作系统ROS的分布式节点管理机制可以保证节点之间的数据传输,而且其核心功能包提供了网络通信的TCP和UDP两种方式,其中ROSUDP适合WiFi等不稳定的无线网络。因此,将前期通过JPEG算法压缩的图像通过ROSUDP方式,以Topic的方式发布,其余节点就可以订阅被压缩的图像话题数据,按照JPEG压缩的逆过程对其进行还原。
设备和控制端之间的联系如图4所示,除了传输被压缩的图像数据之外,整个移动底座的控制指令、机械手关节电机的转动指令、移动底座的编码值数据均会使用WiFi传输。控制端主机连接手柄,实时采集手柄信号,然后通过ROS节点间的Topic通讯方式被设备主机上的订阅节点获取,该控制信号被设备主机节点程序订阅。然后将具体的执行指令通过串口线传输给单片机,进而控制机械臂或移动底座的运动。
4机械臂运动学分析
如图5所示,这里将一款4自由度的机械臂安装在底座的第二层上,机械臂的各个关节采用的是大功率伺服舵机驱动,由单片机控制板直接输出控制信号,转动指定角度。机械臂后方放置的是带有2自由度的摄像头,方便终端操作人员查看移动底座四周环境,以及辅助操作人员抓取物品,摄像头第一视角画面在左侧的右上角。
为了便于理解机械臂的构造,在上图右侧绘制了简易的模型图。上面右图中,红圈代表关节,关节与关节之间黑色部分为连杆,箭头标识了关节可旋转的姿态和角度;末端为一个抓手,负责夹紧待抓取物品。按照Denavit和Hartenberg于1955年提出的对机器人进行表示和建模D-H方法[8],建立了如图红色部分所示的坐标系。并根据机械臂的参数确定了D-H参数如上表1所示。
初始状态下,也就是图6所示情况下,θi的数值如式(2)所示:
可以根据式(4)所示的变换矩阵[8],求解出坐标系0与坐标系5之间的变换关系:
5总结
经过研究和实践,该设备具有灵活的移动底座、图像压缩传输、可控制机械臂,三个功能来实现可视化的抓取与搬运动作;旋转测距雷达和编码器能实现设备的辅助定位,协助人员更好地操控底座移动与脱困。为了保证各个功能的稳定运行与节约实现时间,各个子功能节点程序都是运行在以ROS为操作系统的移动端和控制端主机中,降低了程序的耦合性。
采用4自由度可控机械臂,对其做了基于D-H方法的机械臂运动学分析,可实现机械臂正逆向求解,为后期自动化抓取提供理论基础。
综上所述,从原理技术层面上对该设备的功能进行了研究,并且利用现有设备搭建了一台简易的具有完整功能的设备。
参考文献:
[1] 闫志远,梁云雷,杜志江.远程手术机器人研究与关键技术分析[J].机器人技术与应用,2020(2):15-18.
[2] 吴杰,王志东,凌宏杰,等.深海作业型带缆水下机器人关键技术综述[J].江苏科技大学学报(自然科学版),2020,34(4):1-12.
[3]刘宏,孙奎,谢宗武,等. 月球及行星探测的机器人技术[A]. 中国宇航学会深空探测技术专业委员会.中国宇航学会深空探测技术专业委员会第七届学术年会论文集[C].中国宇航学会深空探测技术专业委员会:中国宇航学会深空探测技术专业委员会,2010:9.
[4] 王维新.两轮差速机器人运动学分析和控制研究[J].现代电子技术,2012,35(10):93-96.
[5] 邓良益,易佳,王浩,等.一种基于PID算法的智能小车设计[J].科技创新与应用,2019(30):93-94.
[6] 熊哲源,樊晓平,刘少强,等.一种适用于无线多媒体传感器网络的JPEG图像编码算法[J].传感技术学报,2011,24(10):1489-1495.
[7] Cappellini V,del Re E.Image data compression by the discrete cosine transform[J].Mathematics and Computers in Simulation,1985,27(5/6):599-608.
[8]Tony Owen. Introduction to Robotics[J]. Robotica,1991,9(4).
【通聯编辑:梁书】