一种基于IROS的CAN大消息通信方法、设备、存储介质技术

技术编号:32539006 阅读:20 留言:0更新日期:2022-03-05 11:35
本申请公开了一种基于IROS的CAN大消息通信方法、设备、存储介质,属于数据传输领域,该方法包括:在计算设备中建立CAN发送节点、第一CAN发送接口,并配置第一CAN模块;其中,所述第一CAN发送接口用于封装CAN通信协议;通过在所述计算设备中安装的应用程序将第一消息发送到话题中,然后由所述CAN发送节点从所述话题实时获取所述第一消息;将所述第一消息通过所述CAN发送节点调用所述第一CAN发送接口,发送至所述第一CAN模块;通过所述第一CAN模块与控制设备中的第二CAN模块建立的基于CAN协议的通信连接,向所述第二CAN模块发送所述第一消息。息。息。

【技术实现步骤摘要】
一种基于IROS的CAN大消息通信方法、设备、存储介质


[0001]本申请涉及数据传输领域,尤其涉及一种基于IROS的CAN大消息通信方法、设备、存储介质。

技术介绍

[0002]随着科技的发展,机器人的出现是社会和经济发展的必然,机器人操作系统(Robot Operating System,ROS)是一个适用于机器人的开源的元操作系统。它提供了操作系统应有的服务,包括硬件抽象,底层设备控制,常用函数的实现,进程间消息传递,以及包管理。
[0003]智能机器人操作系统(Intelligent Robot Operating System,IROS),具备ROS类似的功能,替代了开源ROS的内核,提供了兼容ROS的接口,解决了ROS可靠性、性能、安全等相关的问题,并增加了新的功能,支持云化机器人开发、支持云边端通信、支持多机器人协作等。
[0004]控制器局域网络(Controller Area Network,CAN),是一种用于实时应用的串行通讯协议总线,它可以用双绞线来传输信号,作为一种现场总线技术,由于其可靠性高、稳定性好、抗干扰能力强、通讯速率高和维护成本低等特点,被普遍应用于工业控制领域。
[0005]目前,在ROS中进行CAN通信,要求开发人员必须熟知CAN协议,并且ROS支持传输的有效数据最多是8个字节,这不仅对开发人员的要求高而且数据传输效率低。基于此,需要能够降低开发人员的作业难度,提高数据传输效率的方案,以更好地实现机器人内部的数据传输。

技术实现思路

[0006]本申请提供了一种基于IROS的CAN大消息通信方法、设备、存储介质,解决了开发人员的工作难度大,机器人系统内部数据传输效率低的技术问题。
[0007]一种基于IROS的CAN大消息通信方法,应用于计算设备中,所述计算设备基于智能机器人操作系统IROS运行,包括:
[0008]在所述计算设备中建立CAN发送节点、第一CAN发送接口,并配置第一CAN模块;其中,所述第一CAN发送接口用于封装CAN通信协议;
[0009]通过在所述计算设备中安装的应用程序将第一消息发送到话题中,然后由所述CAN发送节点从所述话题实时获取所述第一消息;
[0010]将所述第一消息通过所述CAN发送节点调用所述第一CAN发送接口,发送至所述第一CAN模块;
[0011]通过所述第一CAN模块与控制设备中的第二CAN模块建立的基于CAN协议的通信连接,向所述第二CAN模块发送所述第一消息。
[0012]在本申请的一种实施例中,当所述计算设备接收来自所述控制设备的第二消息时,所述方法还包括:所述计算设备还包括CAN接收节点、第一CAN接收接口;通过所述第一
CAN模块与所述第二CAN模块建立的基于CAN协议的通信连接,接收来自所述控制设备的第二消息;通过所述CAN接收节点调用所述第一CAN接收接口,将所述第二消息从所述第一CAN模块接收至对应的话题中存储;通过应用程序从所述对应的话题中获取所述第二消息。
[0013]在本申请的一种实施例中,所述方法还包括:根据IROS支持的话题实时订阅功能,建立多个话题类型,生成每个话题类型对应的话题名称;通过CAN发送节点进行配置,将每个所述话题名称与对应的CAN ID绑定,以使所述第一消息能够实时发送。
[0014]在本申请的一种实施例中,所述方法还包括:通过CAN接收节点进行配置,将每个所述话题名称与对应的CAN ID绑定,以实时接收来自所述控制单元的第二消息;将所述第二消息存储到对应的话题中。
[0015]一种基于CAN的大消息通信方法,其特征在于,应用于控制设备中,包括:
[0016]所述控制设备包括第二CAN接收接口、第二CAN模块;
[0017]通过第二CAN模块接收来自计算设备的第一消息;
[0018]由所述控制设备安装的嵌入式应用调用所述第二CAN接收接口从所述第二CAN模块获取接收到的所述第一消息。
[0019]在本申请的一种实施例中,所述控制设备还包括第二CAN发送接口;所述方法还包括:所述嵌入式应用通过调用所述第二CAN发送接口将第二消息发送到所述第二CAN模块;通过所述第二CAN模块与计算设备中的第一CAN模块建立的基于CAN协议的通信连接,将所述第二消息发送至所述第一CAN模块。
[0020]在本申请的一种实施例中,所述方法还包括:当计算设备的第一CAN发送接口或控制设备的第二CAN发送接口发送数据时,将待发送的大消息拆分成多个CAN协议能识别的小消息;其中,首个小消息表示消息数目和总消息大小;将拆分后的小消息根据设定的可配置的CAN ID发送到目的地。
[0021]在本申请的一种实施例中,所述方法还包括:当所述第一CAN接收接口接收到小消息时,通过对应的CAN ID通道向所述第二CAN发送接口发送消息回执,以确认成功接收所述小消息;当所述第二CAN接收接口接收到小消息时,通过对应的CAN ID通道向CAN ID向所述第一CAN发送接口发送消息回执,以确认成功接收所述小消息;根据所述首个小消息包括的消息数目和总消息大小,将所述小消息组合还原成大消息。
[0022]一种基于IROS的CAN大消息通信设备,包括:
[0023]至少一个处理器;以及,
[0024]与所述至少一个处理器通信连接的存储器;其中,
[0025]所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
[0026]在计算设备中建立CAN发送节点、第一CAN发送接口,并配置第一CAN模块;其中,所述第一CAN发送接口用于封装CAN通信协议;
[0027]通过在所述计算设备中安装的应用程序将第一消息发送到话题中,然后由所述CAN发送节点从所述话题实时获取所述第一消息;
[0028]将所述第一消息通过所述CAN发送节点调用所述第一CAN发送接口,发送至所述第一CAN模块;
[0029]通过所述第一CAN模块与控制设备中的第二CAN模块建立的基于CAN协议的通信连
接,向所述第二CAN模块发送所述第一消息。
[0030]一种非易失性存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为:
[0031]在计算设备中建立CAN发送节点、第一CAN发送接口,并配置第一CAN模块;其中,所述第一CAN发送接口用于封装CAN通信协议;
[0032]通过在所述计算设备中安装的应用程序将第一消息发送到话题中,然后由所述CAN发送节点从所述话题实时获取所述第一消息;
[0033]将所述第一消息通过所述CAN发送节点调用所述第一CAN发送接口,发送至所述第一CAN模块;
[0034]通过所述第一CAN模块与控制设备中的第二CAN模块建立的基于CAN协议的通信连接,向所述第二CAN模块发送所述第一消息。
[0035]本申请提供了一种基于IROS的CAN本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于IROS的CAN大消息通信方法,其特征在于,应用于计算设备中,所述计算设备基于智能机器人操作系统IROS运行,包括:在所述计算设备中建立CAN发送节点、第一CAN发送接口,并配置第一CAN模块;其中,所述第一CAN发送接口用于封装CAN通信协议;通过在所述计算设备中安装的应用程序将第一消息发送到话题中,然后由所述CAN发送节点从所述话题实时获取所述第一消息;将所述第一消息通过所述CAN发送节点调用所述第一CAN发送接口,发送至所述第一CAN模块;通过所述第一CAN模块与控制设备中的第二CAN模块建立的基于CAN协议的通信连接,向所述第二CAN模块发送所述第一消息。2.根据权利要求1所述的方法,其特征在于,当所述计算设备接收来自所述控制设备的第二消息时,所述方法还包括:所述计算设备还包括CAN接收节点、第一CAN接收接口;通过所述第一CAN模块与所述第二CAN模块建立的基于CAN协议的通信连接,接收来自所述控制设备的第二消息;通过所述CAN接收节点调用所述第一CAN接收接口,将所述第二消息从所述第一CAN模块接收至对应的话题中存储;通过应用程序从所述对应的话题中获取所述第二消息。3.根据权利要求1所述的方法,其特征在于,所述方法还包括:根据IROS支持的话题实时订阅功能,建立多个话题类型,生成每个话题类型对应的话题名称;通过CAN发送节点进行配置,将每个所述话题名称与对应的CAN ID绑定,以使所述第一消息能够实时发送。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:通过CAN接收节点进行配置,将每个所述话题名称与对应的CAN ID绑定,以实时接收来自所述控制单元的第二消息;将所述第二消息存储到对应的话题中。5.一种基于CAN的大消息通信方法,其特征在于,应用于控制设备中,包括:所述控制设备包括第二CAN接收接口、第二CAN模块;通过第二CAN模块接收来自计算设备的第一消息;由所述控制设备安装的嵌入式应用调用所述第二CAN接收接口从所述第二CAN模块获取接收到的所述第一消息。6.根据权利要求5所述的方法,其特征在于,所述控制设备还包括第二CAN发送接口;所述方法还包括:所述嵌入式应用通过调用所述第二CAN发送接口将第二消息发送到所述第二CAN模块;通过所述第二CAN模块与计算设备中的第一CAN模块建立的基于CAN协议的通信连接,...

【专利技术属性】
技术研发人员:李朝铭王建华高明
申请(专利权)人:山东新一代信息产业技术研究院有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1