王樱璇 范慧龙 姜博今 王旭 伊磊业

关键词:机器人;ROS操作系统;自动化;作用及应用

1. ROS在机器人控制系统中的应用

1.1 ROS的应用

ROS系统是一个可以通过计算机操控机器人的开源系统。在过去几年的时间里,该操作系统已经在机器人控制系统领域逐渐的进行了普及,并渐渐成为机器人操作系统的主流。现阶段ROS系统被广泛应用于机械臂、无人机、移动服务机器人等机器人领域,并愈发成熟。ROS系统使机器人操作更加细化,简化了冗长的数据处理过程,并且可以实现对问题进行及时处理,提高了机器人设备运行的稳定性。

1.2 ROS系统操作灵活

ROS系统通常由大量节点控制操作,其中每一个节点均可通过发布与订阅的方式与其他节点进行连接通信,方便操作者快速构建出计算系统并进行操作。此外,ROS系统为机器人的控制提供了:硬件抽象、底层设备控制、共用功能的执行、进程间消息传递以及包管理,并为代码复用提供了帮助,避免了繁琐工作时间的浪费,极大地提高了工作效率,提高了企业生产率,为企业的发展提供良好的竞争力。

2.ROS的基本概念

2.1 ROS系统的介绍

ROS系统作为新兴操作系统,它是一个集成了开发库和开发工具并适用于机器人软件开发的框架。ROS系统支持多种语言编程,可以实现点对点调试,同时还具备快速计算等编程优点。

2.2 ROS系统的组成

ROS系统由三个层级组成——文件级,计算图级、社区级三部分。

文件级表示ROS的文件(即ROS源代码),主要为计算机硬盘上看到的ROS目录和文件。在该层级,我们可以组织编写ROS源代码。它主要包括功能包集、Packages、package.xml、CMakeLists.txt等。

计算图级描述了ROS系统进行通信和计算的过程。ROS中的计算和通讯是通过节点网络将参数提供给图层进行相应的计算完成的。计算图级主要内容包括:Master、ROS节点(Node)、Service、Bags、Parameter server、Topics、Message等。

社区级是指ROS开源社区通过网络社区对ROS资源的获取和分享。这也使得ROS系统快速普及与发展。

3.ROS系统在机器人领域中的具体应用方式

3.1 ROS节点通信

ROS系统含有一个超级管理员(ROS Master),系统中的所有节点均被ROS Master控制,节点中的相互通信也由ROS Master控制。ROS系统中的各个节点之间通过发布与订阅的方式进行相互通信。当ROS运行时,每一个节点均可访问网络并进行通信,并可以通过此方式获取其他节点所发布的信息,同时也将该节点的自身数据发布到该网络上。

例如,在ROS Master管理下,当一个节点(Node)发出一个Topic并发送所需信息,与之相关的节点对其Topic订阅。当某节点在某一时刻需要一个请求时,Node提出一种Service,并发送到ROS Master,并由Master建立与之相关的节点之间的联系通道。

3.2 ROS系统控制

ROS系统可以涉及算法、仿真等多个方面,能够将机器人编程和仿真技术结合起来,并且可以用ROS系统与传感器所读取的数据和相应的滤波算法相结合。此外,ROS系统支持人机智能交互技术,提供关于机器人运动、机器视觉等方面的研习,并支持图像识别、语音识别、手势交互等功能。

ROS编程人员应该在调试程序的过程中及时对机器人进行调试和维护,特别注意对机械关节在不同自由度的移动和机械装置所需要完成的控制形式进行测试和调节,避免使用过程出现问题,预防危险性的增加,防止影响最终的工作效率。

4.总结

ROS系统搭建机器人程序框架的功能,在目前来看依然具有较为广泛的推广空间。同时ROS系统可以实现点对点调试,工作人员在日常操作使用过程中可以对所发现的问题进行及时处理,最大程度地保证机器人运行的稳定性,为全面实现智能化制造生产带来合理的解决方法,促进了机器人相关领域的快速发展和进步。

参考文献:

[1]曹正万,平雪良,陈盛龙,蒋毅.基于ROS的机器人模型构建方法研究[J].组合机床与自动化加工技术,2015(08):51-54.

[2]黄开宏,杨兴锐,曾志文,卢惠民,郑志强.基于ROS户外移动机器人软件系统构建[J].机器人技术与应用,2013(04):37-41+44.

[3]孟韶南,梁雁冰,师恒.基于ROS平台的六自由度机械臂运动规划[J].上海交通大学学报,2016,50(S1):94-97.

作者简介:

王樱璇(2001—),女,汉族,辽宁鞍山人,沈阳航空航天大学本科在读。