本发明专利技术公开了连接IROS与ROS的桥接工具以及实现IROS与ROS的通信方法,属于机器人技术领域,本发明专利技术要解决的技术问题为如何打通IROS节点与ROS节点的数据通道,实现分步迁移,提高大工程排查和排除故障的效率,采用的技术方案为:该桥接工具采用一个普通的IROS节点irosbridge,启动时,irosbridge在IROS中注册,通过IROS提供的接口实现对消息队列、服务以及参数服务器的访问;irosbridge包括,通讯模块一,用于实现与IROS端普通节点的通讯;通讯模块二,用于完成与ROS端rosbridge的通讯;转换模块,用于实现JSON与二进制数据的数据格式的转换。转换。转换。
【技术实现步骤摘要】
连接IROS与ROS的桥接工具及实现通信的方法
[0001]本专利技术涉及机器人
,具体地说是一种连接IROS与ROS的桥接工具及实现通信的方法。
技术介绍
[0002]机器人操作系统ROS(Robot Operating System,机器人操作系统,以下简称ROS)是如今市面上比较流行的机器人开发软件,但作为一个次级操作系统,其在运行时存在着较多的问题,例如数据安全性得不到有效保障、实时性较差以及过分依赖master节点等,导致其在工业领域无法得到广泛应用。目前正在开发的IROS(Intelligent Robot OS,智能机器人操作系统,以下简称IROS)操作系统有效地解决ROS的这些问题,其稳定性、实时性安全性都超过了ROS。
[0003]IROS是一个智能机器人操作系统,安装简单,兼容各种常见系统。搭载有IROS的机器人可以集成多种路径规划和导航算法,同时由于其数据传输的实时性和安全性,保证了机器人能在各种不同工况下安全高效地运行。
[0004]在上层应用从ROS向IROS迁移的过程中,由于IROS与ROS无法完成直接通讯,往往需要将整个项目完全迁移后才能进行测试运行,这对于大型项目来说,一旦出现问题,很难定位问题位置,开发和测试人员需要花费很长时间去排查和解决问题,非常麻烦。
[0005]故如何打通IROS节点与ROS节点的数据通道,实现分步迁移,提高大工程排查和排除故障的效率是目前亟待解决的技术问题。
技术实现思路
[0006]本专利技术的技术任务是提供一种连接IROS与ROS的桥接工具及实现通信的方法,来解决如何打通IROS节点与ROS节点的数据通道,实现分步迁移,提高大工程排查和排除故障的效率的问题。
[0007]本专利技术的技术任务是按以下方式实现的,一种连接IROS与ROS的桥接工具,该桥接工具采用一个普通的IROS节点irosbridge,启动时,irosbridge在IROS中注册,通过IROS提供的接口实现对消息队列、服务以及参数服务器的访问;irosbridge包括,
[0008]通讯模块一,用于实现与IROS端普通节点的通讯;
[0009]通讯模块二,用于完成与ROS端rosbridge的通讯;
[0010]转换模块,用于实现JSON与二进制数据的数据格式的转换。
[0011]作为优选,通讯模块二的工作过程具体如下:
[0012](1)、irosbridge是一个websocket客户端,在启动时,irosbridge会向rosbridge发送连接请求;
[0013](2)、连接成功后,遵循ROS的数据通讯协议,以JSON的形式实现数据交换;其中,由于rosbridge本身的功能就是为了实现非ROS系统和ROS系统的交互,也就实现了irosbridge与ROS系统及系统中节点的数据通讯。
[0014]更优地,转换模块的工作过程具体如下:
[0015](1)、IROS中的数据反射机制通过根据消息、服务及参数的名称构建具体的消息类型,并通过统一接口实现向二进制数据和JSON的转换;
[0016](2)、基于数据反射机制,irosbridge实现IROS端二进制数据与ROS端JSON数据的通讯。
[0017]更优地,ROS端的应用迁移到IROS端时,分批次将ROS端迁移至IROS端并进行测试,通过irosbridge的帮助,每次迁移均能够进行测试,而不必再等到项目全部迁移完成后再测试,提高了迁移效率。
[0018]一种基于上述的连接IROS与ROS的桥接工具实现IROS与ROS的通信方法,该方法具体如下:
[0019]irosbridge启动时,加载用户的配置文件;其中,用户的配置文件包括IROS端与ROS端需要桥接的话题和服务名称及类型;
[0020]检查ROS的启动情况并在IROS中注册为一个普通的节点;
[0021]向已经启动的rosbridge发起连接请求,直到建立起连接为止;
[0022]根据配置文件中的话题和消息信息,一方面在IROS端建立起对应的消息发布者或订阅者、服务端或者客户端,另一方面向rosbridge发送相应的JSON数据,通知接下来可能会发生数据通讯的话题、服务名称及类型;
[0023]当IROS端的消息或者服务到来时,irosbridge通过IROS的反射机制,将数据转换成JSON格式,并通过端口发送至rosbridge,由rosbridge再发送到ROS端中;
[0024]当irosbridge收到来自rosbridge的JSON数据时,通过反射机制将数据转化成IROS识别的类型,并通过IROS接口发送至IROS端中。
[0025]作为优选,irosbridge启动前,正常启动IROS端、ROS端以及ROS端下的节点rosbridge;
[0026]irosbridge在成功加载配置文件后,建立起一个websocket客户端,并向ROS端的rosbridge发起连接请求,直至连接成功,IROS端和ROS端的通信依赖rosbridge发起的连接请求。
[0027]作为优选,irosbridge启动具体如下:
[0028]解析irosbridge配置文件;
[0029]建立起与rosbridge通讯的客户端并与该客户端建立连接,在收到irosbridge的连接请求时,建立连接;
[0030]向rosbridge发送发布指定服务的JSON数据,收到服务和消息的JSPN指令建立起对应的服务的服务端、客户端话题的订阅者以及发布者;
[0031]建立起相应的服务的服务端、客户端话题的订阅者以及发布者;
[0032]Irosbridge等待数据来临。
[0033]更优地,irosbridge配置文件具体内容如下:
[0034]ROS端发布话题,IROS端订阅话题;
[0035]ROS端请求服务,IROS端发布服务;
[0036]IROS端发布话题,ROS端订阅话题;
[0037]IROS端请求服务,ROS端发布服务。
[0038]一种电子设备,包括:存储器和至少一个处理器;
[0039]其中,所述存储器上存储有计算机程序;
[0040]所述至少一个处理器执行所述存储器存储的计算机程序,使得所述至少一个处理器执行如上述的实现IROS与ROS的通信方法。
[0041]一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序可被处理器执行以实现如上述的实现IROS与ROS的通信方法。
[0042]本专利技术的连接IROS与ROS的桥接工具及实现通信的方法具有以下优点:
[0043](一)本专利技术的irosbridge能够打通IROS与ROS系统,实现两个系统间节点的通讯,从而可以实现ROS项目向IROS的分步迁移,提高了IROS用户的开发和测试效率;
[0044本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种连接IROS与ROS的桥接工具,其特征在于,该桥接工具采用一个普通的IROS节点irosbridge,启动时,irosbridge在IROS中注册,通过IROS提供的接口实现对消息队列、服务以及参数服务器的访问;irosbridge包括,通讯模块一,用于实现与IROS端普通节点的通讯;通讯模块二,用于完成与ROS端rosbridge的通讯;转换模块,用于实现JSON与二进制数据的数据格式的转换。2.根据权利要求1所述的连接IROS与ROS的桥接工具,其特征在于,通讯模块二的工作过程具体如下:(1)、irosbridge是一个websocket客户端,在启动时,irosbridge会向rosbridge发送连接请求;(2)、连接成功后,遵循ROS的数据通讯协议,以JSON的形式实现数据交换。3.根据权利要求1或2所述的连接IROS与ROS的桥接工具,其特征在于,转换模块的工作过程具体如下:(1)、IROS中的数据反射机制通过根据消息、服务及参数的名称构建具体的消息类型,并通过统一接口实现向二进制数据和JSON的转换;(2)、基于数据反射机制,irosbridge实现IROS端二进制数据与ROS端JSON数据的通讯。4.根据权利要求3所述的连接IROS与ROS的桥接工具,其特征在于,ROS端的应用迁移到IROS端时,分批次将ROS端迁移至IROS端并进行测试,通过irosbridge的帮助,每次迁移均能够进行测试。5.一种基于权利要求1
‑
4中任一项所述的连接IROS与ROS的桥接工具实现IROS与ROS的通信方法,其特征在于,该方法具体如下:irosbridge启动时,加载用户的配置文件;其中,用户的配置文件包括IROS端与ROS端需要桥接的话题和服务名称及类型;检查ROS的启动情况并在IROS中注册为一个普通的节点;向已经启动的rosbridge发起连接请求,直到建立起连接为止;根据配置文件中的话题和消息信息,一方面在IROS端建立起对应的消息发布者或订阅者、服务端或者客户端,另一方面向rosbridge发送相应的JSON数据,通知接下来会发生数据通讯的话题、服务名称及类型;当IROS端的...
【专利技术属性】
技术研发人员:王召东,李朝铭,马辰,程瑶,
申请(专利权)人:山东新一代信息产业技术研究院有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。