一种基于多核处理器架构的机器人混合系统应用框架技术方案

技术编号:20363003 阅读:63 留言:0更新日期:2019-02-16 16:35
本发明专利技术描述了一种基于多核处理器架构的机器人混合系统应用框架。在采用ARM/X86多核处理器作为控制器的机器人系统中,利用ARM/X86多核处理器的多核并行处理结构,在整个机器人控制器同时运行由实时操作系统、非实时操作系统、系统支撑框架组成的机器人混合系统应用框架,来提供改进的操作系统服务。在该应用框架中,一个实时操作系统单独运行在其中一个ARM/X86核中,同时若干个非实时操作系统运行在其它ARM/X86核中,操作系统间彼此单独占用处理器资源与外设,分别运行不同实时性要求的机器人应用程序,应用程序可以以统一的机器人操作系统(ROS)应用节点形式使用。

【技术实现步骤摘要】
一种基于多核处理器架构的机器人混合系统应用框架本申请是中国专利申请第201410324304.3号的分案申请。
本专利技术属于机器人领域,涉及一种基于多核处理器架构的机器人混合系统应用框架。
技术介绍
机器人控制是机器人研究的一个重要领域,其对应用程序的需求日趋复杂,并伴随着使用各种实时与非实时操作系统来提供系统支持。程序员需要使用操作系统提供的丰富编程资源编写机器人控制程序,同时也需要操作系统提供的实时性支持。基于Linux的机器人操作系统(RoboticOperatingSystem,ROS)就是为了提高机器人开发效率所诞生的开源操作系统,但Linux的非实时特性限制了机器人操作系统ROS在机器人实时控制领域的应用。而目前市场上有众多的实时操作系统,由于相对通用操作系统来说,它们大多都是功能单一,系统应用资源少,难以方便实现复杂的应用。机器人开发者需要在满足实时性的同时能够高效地开发出机器人应用程序。
技术实现思路
为了解决现有的技术问题,本专利技术提供一种基于多核处理器架构的机器人混合系统应用框架。该框架可以应用于各种基于ARM/X86多核架构的机器人控制器中,在保证实时性要求的同本文档来自技高网...

【技术保护点】
1.一种基于多核处理器架构的机器人混合系统,其特征在于包括:机器人操作系统(ROS)(12),其包含支持机器人操作系统的非实时操作系统(13),用于提供基本的机器人应用、相应服务和系统资源;实时操作系统(17),用于提供机器人实时任务的服务和系统资源;混合操作系统支撑框架(RGMP)(19),用于支撑机器人操作系统和实时操作系统的运行和协调,将非实时操作系统(13)与实时操作系统(17)同时运行在多核处理器平台上,其中:所述多核处理器平台是基于ARM/X86架构的开放式多核处理器控制板、控制器和/或工控机,混合操作系统支撑框架RGMP包括RGMP非实时部分框架(191)和RGMP实时部分框架(...

【技术特征摘要】
1.一种基于多核处理器架构的机器人混合系统,其特征在于包括:机器人操作系统(ROS)(12),其包含支持机器人操作系统的非实时操作系统(13),用于提供基本的机器人应用、相应服务和系统资源;实时操作系统(17),用于提供机器人实时任务的服务和系统资源;混合操作系统支撑框架(RGMP)(19),用于支撑机器人操作系统和实时操作系统的运行和协调,将非实时操作系统(13)与实时操作系统(17)同时运行在多核处理器平台上,其中:所述多核处理器平台是基于ARM/X86架构的开放式多核处理器控制板、控制器和/或工控机,混合操作系统支撑框架RGMP包括RGMP非实时部分框架(191)和RGMP实时部分框架(192),非实时操作系统(13)是嵌入式系统,运行在RGMP非实时部分框架(191)之上,实时操作系统(17)运行在RGMP实时部分框架(192)之上,非实时操作系统(13)包含操作系统基本的系统库SYSLIB(131)、C语言库LIBC(132)、网络协议NET(133)、BOOST库(134)、非实时操作系统内核(135)以及驱动程序(136),实时操作系统(17)中提供有符合POSIX标准的系统调用接口,实时操作系统(17)包含操作系统基本的系统库SYSLIB(171)、C语言库LIBC(172)、网络协议NET(173)、BOOST库(174)、实时操作系统内核(175)以及驱动程序(176),实时操作系统(17)和非实时操作系统(13)之间通过混合操作系统支撑框架RGMP(19)的VNET虚拟网络机制进行通信,实时操作系统(17)和非实时操作系统(13)分别单独占用多核处理器的不同处理器核心来运行,它们同时维持各自的应用状态而不必针对混合操作系统架构进行优化,其运行、调试均相互独立,在混合系统运行时,实时操作系统(17)和非实时操作系统(13)独立占有各自的硬件资源;对于共享设备的调度,实时操作系统(17)和非实时操作系统(13)通过它们之间的所述通信来实现,非实时操作系统(13)根据不同的机器人控制应用需求,运行不同功能的机器人操作系统实时节点,包括:位置闭环控制单元(2408)、电流控制单元(2410)、插补解算单元(2409)、位置控制单元(2411),以及不同功能的机器人操作系统非实时节点,包括:语音处理单元(2401)、图像处理单元(2403)、语音识别单元(2402)、三维建模单元(2404)、物体识别单元(2405)、建图导航单元(2406),实时操作系统(17)中的运动控制以不同的线程进行功能区分,其中,主线程(31)为实时机器人操作系统节点线程,负责建立符合机器人操作系统通信协议的实时节点,负责机器人电机的初始化以及实时操作系统(17)与非实时操作系统(13)上运行的机器人操作系统节点之间的通信,负责实时与非实时节点之间的通信,并把消息分发到其余的各个线程,CAN总线收发线程(34)用于发送和读取从CAN总线设备描述符中获得的CAN总线(23)的数据,并把相关的数据实时发布到其它线程(36),运动控制线程(32)用于设置机器人的初始位置姿态,同时实现针对运动单元动作的精细插补,在发送运动控制指令之后,闭环控制线程(33)读取目前机器人各个运动关节的状态,若运动单元节没有到达控制指令所要求到达的位置,闭环控制线程(33)会重发并修正当前运动单元的位置姿态,实时系统中具有监控线程(35)负责在CAN总线(23)空闲时读取机器人的运行姿态,以保证运动控制的正常运行,同时读取各个运动单元上的传感器数据信息,以及控制板上的任务状态标志。2.根据权利要求...

【专利技术属性】
技术研发人员:魏洪兴邹莹陈友东刘淼黄真
申请(专利权)人:北京航空航天大学
类型:发明
国别省市:北京,11

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

1