首页 / 专利库 / 人工智能 / 机器人视觉 / 智能开放型服务机器人操作系统及方法

智能开放型服务机器人操作系统及方法

阅读:452发布:2020-12-05

专利汇可以提供智能开放型服务机器人操作系统及方法专利检索,专利查询,专利分析的服务。并且本 发明 提供了一种智能开放型服务 机器人 操作系统 及操作方法。操作系统可以分为驱动控 制模 块 、核心处理模块和应用模块。驱动 控制模块 主要完成对执行机构以及 电机 的控制操作,对部分 传感器 进行控制、采集;核心处理模块中采用多核异构设计方法将采集与分析分离同时进行并行处理,应用层主要是工控板对主控板进行控制命令下达。操作系统在主控板 硬件 端进行ROS系统移植和重构;通过GNOME二次开发设计智能开放型服务机器人系统操作界面,同时设置了应用程序可远程控制机器人。本发明解决了目前服务 机器人操作系统 无法通用,满足了技术代码的复用性、模块化和网络共享的需求,设计优化了ROS操作系统的实时性,做到了 人工智能 模块即插即用。,下面是智能开放型服务机器人操作系统及方法专利的具体信息内容。

1.一种智能开放型服务机器人操作系统,包括一个主控板(5)连接一个驱动控制板(9),其特征在于:所述主控板(5)无线连接手机APP(1)和工控机(2),工控机(2)连接平台(3);所述主控板(5)连接人机交互设备—显示器、鼠标键盘,还连接机器人视觉/人脸识别(6)、激光雷达(7)和语音识别模块(8);所述驱动控制板(9)通过电机驱动器(10)连接直流电机(11),驱动控制器(9)还直接连接机(12)、传感器、红外、声波发生器(12);
所述主控板(5)用于UI处理和算法业务功能处理,并对驱动控制板进行命令下达,同时作为服务器与各客户端通讯;所述驱动控制板(9)用于完成对执行机构控制器的操作控制,根据需要选配运动配件和硬件,将实时的运动数据反馈到系统,同时对部分简单数据采集的传感器进行控制与采集;所述工控机(2)用于人机交互控制主控板,供开发者和用户进行远程控制和智能监控。
2.根据权利要求1所述的智能开放型服务机器人操作系统,其特征在于:所述主控板(5),为多核异构结构,其中处理器采用双处理器的设计思路ATMEL工业级处理器负责UI处理,Jetson TX1负责处理算法以及业务功能实现两者之间通过UART或者IIC、SPI等接口进行数据交互。
3.根据权利要求1所述的智能开放型服务机器人操作系统,其特征在于:所述手机APP(1)为移动控制端,针对服务器与移动端的通信通过WebSocket以JSON格式的API为非ROS环境提供ROS通信支持,包括对Topic和Service的各种操作,通过Rosbridge为非ROS环境提供一个使用ROS功能的JSON API,基于rosbridge协议,该协议用于向ROS发送基于JSON的命令规范,通过WebSocket实现与服务器交谈。
4.一种智能开放型服务机器人操作方法,采用根据权利要求1所述的智能开放型服务机器人操作系统进行操作,其特征在于:具体操作步骤如下:
(1)在主控板硬件端进行ROS系统移植,进行系统重构;
(2) 对不同模块进行封装,开放模块接口供给调取;
(3)通过设计的分布式程序框架,利用节点管理器与可视化编程调用机器人中的运动单元,整合到人工智能包并封装好相对应的APK,编写服务器端程序;
(4)通过GNOME二次开发的方式设计智能开放型服务机器人系统操作界面,用于人机交互;
(5)设计移动控制端应用程序,编写客户端程序。
5.根据权利要求4所述的智能开放型服务机器人操作方法,其特征在于所述步骤(1)中的系统重构是:在ROS系统上增加系统设置、文件管理、设备管理、网络设置功能。
6.根据权利要求4所述的智能开放型服务机器人操作方法,其特征在于所述步骤(2)中的封装接口:对各封装模块接口的调用主要有控制界面封装、指令转化封装和运行驱动封装,控制界面的封装上,使用QT Designer软件进行图像界面的设计,设置功能按钮、数据输入输出口、提示文字等,并对控件进行布局优化,生成界面的布局XML文件,最后利用pyuic5指令将XML文件转化为能供程序调用的py文件,完成界面的封装;指令转化封装是指,把分析后划分的基本基础动作标识为不同的命令标志,将该标志信号映射到具体的控制模式上建立两者的联系,并将其打包封装为类,以供程序调用运行;运行驱动封装是指底端控制层面上的封装,用于程序直接调用接口进行通信并对硬件进行控制。
7.根据权利要求4所述的智能开放型服务机器人操作方法,其特征在于所述步骤(3)中分布式程序框架、节点管理器和可视化编程:内核群向工作群进行事件推送,工作群在执行任务的同时对内核群进行注册并监听,每一个事件发生时都向日志群进行数据更新;可视化编程界面内,罗列有硬件运行中相关的逻辑、操作、文本、代码等内容,可直接拖拉功能模块构成程序的顺序结构,每个模块可进行内部编辑,修改单一模块的运行内容,模块之间可以互相嵌套、关联、叠加,后台自动根据拖拉拼接结果生产可用于执行的程序文件和配置内容。
8.根据权利要求4所述的智能开放型服务机器人操作方法,其特征在于所述步骤(4)中操作界面:多通道感知模式传递,它的信息内容包含了多个维度、操作流程、模块功能和任务;在信息传递方面,信息架构的复杂性在于复杂信息系统界面的子系统层级的复杂性,和不同感知通道的来源渠道的多样性;在人机信息交互方面,界面所传递的多通道信息在人机的视觉编码、接收、解码中的复杂交互。
9.根据权利要求4所述的智能开放型服务机器人操作方法,其特征在于所述步骤(5)中所述移动端控制程序:远程无线、低延迟控制机器人的移动,支持语音识别控制,支持人脸识别,支持实时地图构建显示。

说明书全文

智能开放型服务机器人操作系统及方法

技术领域

[0001] 本发明涉及到智能机器人技术人工智能技术领域,具体地涉及一种面向应用的人机交互和面向底层的运动控制的智能开放型服务机器人操作系统及方法。

背景技术

[0002] 目前机器人内部的各种技术都具备独有设计,各大机器人厂商之间的技术无法通用,而较成熟的工业机器人与服务机器人的技术更是有着不可逾越的鸿沟。随着机器人领域的快速发展和复杂化,技术与代码的复用性、模化和Web共享的需求越来越强烈,而已有的机器人操作系统又不能很好的适应需求。与此同时目前流行的机器人操作系统ROS实时性不高,只用于机器人的环境建模、目标识别和任务规划等非实时任务;ROS缺乏有效的测试和验证手段,使用传统的测试和仿真方法无法对系统进行完备的验证。

发明内容

[0003] 本发明目的是要解决目前现有服务机器人操作系统无法满足技术与代码的复用性、模块化和网络共享的需求,机器人与机器人网络互连以及多机协作也难以方便地实现,以及机器人市场机器人厂商的软件无法通用的问题,同时也针对实时性进行了设计优化,提供一种智能开放型服务机器人操作系统及方法。
[0004] 为了达到上述目的,本发明的构思如下:基于Linux的系统内核,从系统集成创新度出发,在Ros机器人操作系统、机械本体设计、智能控制技术和人机交互等技术的基础上突破系统设置、文件管理、设备管理、网络设置等Ros操作系统不具备的功能,重点集成面向应用的人机交互层和面向底层的运动控制层,通过标准接口与标准交换协议进行通信,实现功能与接口的分离,提高操作系统的复用性、灵活性和模块化配置,通过嵌入DNN、CNN等人工智能核心技术,形成开放式智能模块化配置和工业互联网模式下的服务机器人操作系统,该系统将缩短机器人研发周期,提高人工智能软件模块的重用性,提升机器人的自户型和交互性。
[0005] 该系统是用于机器人的一种开源的后操作系统,或者说次级操作系统。提供类似操作系统所提供的功能,包括硬件抽象描述、底层驱动程序管理、共用功能的执行、程序间的消息传递、程序发行包管理,也提供一些工具程序和库用于获取、建立、编写和运行多机整合的程序。还提供了库和工具来帮助软件开发者创建机器人的应用程序。
[0006] 根据上述发明构思,本发明采用下述技术方案:一种智能开放型服务机器人操作系统,包括一个主控板连接一个驱动控制板,主控板无线连接手机APP和工控机,工控机连接平台;所述主控板连接人机交互设备—显示器、鼠标键盘,还连接机器人视觉/人脸识别模块、激光雷达语音识别模块;所述驱动控制板通过电机驱动器连接直流电机,驱动控制器还直接连接机、传感器、红外、声波发生器;所述主控板用于UI处理和算法业务功能处理,并对驱动控制板进行命令下达,同时作为服务器与各客户端通讯;所述驱动控制板用于完成对执行机构控制器的操作控制,根据需要选配运动配件和硬件,将实时的运动数据反馈到系统,同时对部分简单数据采集的传感器进行控制与采集;所述工控机用于人机交互控制主控板,供开发者和用户进行远程控制和智能监控。
[0007] 所述的智能开放型服务机器人操作系统,其特征在于:所述主控板,为多核异构结构,其中处理器采用双处理器的设计思路ATMEL工业级处理器负责UI处理,Jetson TX1负责处理算法以及业务功能实现两者之间通过UART或者IIC、SPI等接口进行数据交互;所述手机APP为移动控制端,针对服务器与移动端的通信通过WebSocket以JSON格式的API为非ROS环境提供ROS通信支持,包括对Topic和Service的各种操作,通过Rosbridge为非ROS环境提供一个使用ROS功能的JSON API,基于rosbridge协议,该协议用于向ROS发送基于JSON的命令规范,通过WebSocket实现与服务器交谈。
[0008] 一种智能开放型服务机器人操作方法,采用上述操作系统其特征在于:在主控板硬件端进行ROS系统移植,进行系统重构;对不同模块进行封装,开放接口模块供给调取;通过设计的分布式程序框架,利用节点管理器与可视化编程调用机器人中的运动单元,整合到人工智能包并封装好相对应的APK,编写服务器端程序;通过GNOME二次开发的方式设计智能开放型服务机器人系统操作界面,用于人机交互;设计移动控制端应用程序,编写客户端程序。
[0009] 所述的智能开放型服务机器人操作方法,其特征在于在ROS系统上增加系统设置、文件管理、设备管理、网络设置功能;对各封装模块接口的调用主要有控制界面封装、指令转化封装和运行驱动封装。控制界面的封装上,使用QT Designer软件进行图像界面的设计,设置功能按钮、数据输入输出口、提示文字等,并对控件进行布局优化,生成界面的布局XML文件,最后利用pyuic5指令将XML文件转化为能供程序调用的py文件,完成界面的封装;指令转化封装是指,把分析后划分的基本基础动作标识为不同的命令标志,将该标志信号映射到具体的控制模式上建立两者的联系,并将其打包封装为类,以供程序调用运行;运行驱动封装是指底端控制层面上的封装,用于程序直接调用接口进行通信并对硬件进行控制;内核群向工作群进行事件推送,工作群在执行任务的同时对内核群进行注册并监听,每一个事件发生时都向日志群进行数据更新;可视化编程界面内,罗列有硬件运行中相关的逻辑、操作、文本、代码等内容,可直接拖拉功能模块构成程序的顺序结构,每个模块可进行内部编辑,修改单一模块的运行内容,模块之间可以互相嵌套、关联、叠加,后台自动根据拖拉拼接结果生产可用于执行的程序文件和配置内容;操作系统操作界面采用多通道感知模式传递,它的信息内容包含了多个维度、操作流程、模块功能和任务;在信息传递方面,信息架构的复杂性在于复杂信息系统界面的子系统层级的复杂性,和不同感知通道的来源渠道的多样性;在人机信息交互方面,界面所传递的多通道信息在人机的视觉编码、接收、解码中的复杂交互;移动控制程序包括远程无线、低延迟控制机器人的移动,支持语音识别控制,支持人脸识别,支持实时地图构建显示。
[0010] 本发明与现有技术相比较,具有以下显而易见的突出实质性特点和显著技术进步:1.解决了目前现有服务机器人操作系统无法满足技术与代码的复用性、模块化和网络共享的需求。
[0011] 2.针对底层驱动进行封装,采用操作系统主控板与驱动控制分离,保证通用性。
[0012] 3.采集数据与算法处理的多核异构,并开发节点管理器弥补实时性。
[0013] 4.封装接口开发多种模块的API保证其二次开发的可拓展性。
[0014] 5.开发可视化编程模块方便用户二次开发的便捷性。附图说明
[0015] 图1示出了本发明实施例面向应用的人机交互和面向底层的运动控制的智能开放型机器人操作系统整体分层架构图。
[0016] 图2 示出了本发明实施例面向应用的人机交互和面向底层的运动控制的智能开放型机器人操作系统工作原理图。
[0017] 图3示出了本发明实施例面向应用的人机交互和面向底层的运动控制的智能开放型机器人操作方法流程图
[0018] 图4示出了本发明系统方法中的节点管理器。
[0019] 图5示出了本发明的操作系统的人机交互桌面。
[0020] 图6 示出了本发明的可视化编程界面。
[0021] 图7、8示出了本发明的移动程序主功能界面。

具体实施方式

[0022] 下面结合附图和优选实施例来针对本发明进行进一步说明,以下实施例将有助于本领域技术人员理解该发明,以及如何应用技术手段来解决技术问题。需要说明的是在不脱离本发明构思的前提下,提出进一步改善和变形,以及各实施例相互结合形成的技术方案都在本发明的保护范围内。
[0023] 实施例一:参见图1,本智能开放型机器人操作系统的整体分层可以分为驱动控制模块、核心处理模块和应用模块。驱动控制模块主要完成对执行机构以及电机的控制操作,对部分简单数据采集的传感器进行控制、采集,如红外、陀螺仪3Axis,加速度计3Axis,磁计3Axis。一块驱动控制板根据所配置的服务机器人调用相应的电机驱动器、舵机和各简单的传感器。驱动控制板通过USB或者UART串口与主控板进行通讯。
[0024] 核心处理模块中采用多核异构设计方法主要用来解决前面提到的ROS实时性以及系统可靠验证问题。将采集与分析分离同时进行并行处理,基于ROS操作系统进行实时化改造和二次开发在保留ROS现有丰富软件资源的同时解决ROS的实时应用难题,采用软件测试仿真、物理平台测试和形式化验证三位一体的测试验证方法,充分保证机器人操作系统的可靠性。处理器采用双处理器的设计思路,其中ATMEL工业级处理器负责UI处理,Jetson TX1负责处理算法以及业务功能实现,两者之间通过UART或者IIC、SPI等接口进行数据交互,将两个处理器搭建在图1示出的主控板上,接入视频、图像、激光雷达、人脸识别、语音识别等功能模块。通过USB或者UART串口与TX1主控板进行通讯接入驱动控制板,基于以上硬件进行人工智能算法实现。
[0025] 应用层主要是工控板对主控板进行控制命令下达,针对服务器与移动端的通信通过WebSocket以JSON格式的API为非ROS环境提供ROS通信支持,包括对Topic和Service的各种操作,通过Rosbridge为非ROS环境提供一个使用ROS功能的JSON API,基于rosbridge协议,该协议用于向ROS发送基于JSON的命令规范,通过WebSocket实现与服务器交谈。采用bs架构,通过roslibjs+html5的方法实现跨平台通信;工控机通过RJ45或者wifi与主控板进行通讯,同时与云平台进行交互。
[0026] 实施例二:本实施例与实施例一基本相同,特别之处如下:参见图2,本操作系统的工作原理为:采集设备以Kinect和激光雷达为例,用户层的管理员或用户通过移动控制端或者工控机对服务器发出指令,系统内核接到指令启动各个节点,人机交互节点和机器人控制节点接到指令调用OpenNI、Laser_driver、Kobuki_driver、Keyboard和LM2576驱动,通过网络和串口传递到设备层控制底盘运转从而与激光雷达和深度摄像头进行数据交互。传感器数据接收节点、图像处理节点等功能节点调用相应的驱动和人工智能处理模块,通过串口及SPI等与设备进行数据交互并进行处理,处理好的数据通过串口与内核相连,数据再通过串口和网络与人机交互界面及移动端相连。
[0027] 实施例三:参见图3,在ROS系统上增加系统设置、文件管理、设备管理、网络设置功能。首先进行ROS操作系统移植,首先要进行将Ubuntu的“restricted”“universe”“multiverse”设置为允许状态,然后将工具需要设置系统区域设置例如:
“sudo update-locale LANG=C LANGUAGE=C LC_ALL=C LC_MESSAGES=POSIX”。
[0028] 设置接受ARM镜像的Packages,之后确保处理器软件包是最新的状态,然后设置安装环境“echo "source /opt/ros/indigo/setup.bash" >>  /.bashrcsource  /~ ~.bashrc”。接着要创建工作空间“mkdir  /catkin_wsmkdir  /catkin_ws/src cd  /~ ~ ~
catkin_ws”。然后每打开新的shell时,将一个新的工作区添加到环境路径中。最后遵照“opencv4tegra”来制作或者编译外部人工智能节点。之后基于Ros机器人操作系统,构建人工智能核心知识库开发与调用池,包括语音语义分析、深度视觉、人脸识别、地图构建等,以服务机器人为载体,进行机器人操作系统的开放服务应用,实现知识图谱、基于大数据深度学习、多模态人机交互、服务重用、功能快速组合与机器人结构和底层通信机制, 将常用部件进行封装形成模块化包括安全、内存管理、进程管理、网络堆栈、驱动ROS共用功能的执行,使用QT在ROS系统上增加系统设置、文件管理、设备管理、网络设置功能。最后在重构系统环境里运行测试ROS系统节点之间通过消息以主题或服务形式相互通信的模式。接下来对各封装模块接口的调用主要有控制界面封装、指令转化封装和运行驱动封装。控制界面的封装上,使用QT Designer软件进行图像界面的设计,设置功能按钮、数据输入输出口、提示文字等,并对控件进行布局优化,生成界面的布局XML文件,最后利用pyuic5指令将XML文件转化为能供程序调用的py文件,完成界面的封装;指令转化封装是指,把分析后划分的基本基础动作标识为不同的命令标志,将该标志信号映射到具体的控制模式上建立两者的联系,并将其打包封装为类,以供程序调用运行;运行驱动封装是指底端控制层面上的封装,用于程序直接调用接口进行通信并对硬件进行控制;内核群向工作群进行事件推送,工作群在执行任务的同时对内核群进行注册并监听,每一个事件发生时都向日志群进行数据更新;可视化编程界面内,罗列有硬件运行中相关的逻辑、操作、文本、代码等内容,可直接拖拉功能模块构成程序的顺序结构,每个模块可进行内部编辑,修改单一模块的运行内容,模块之间可以互相嵌套、关联、叠加,后台自动根据拖拉拼接结果生产可用于执行的程序文件和配置内容;操作系统操作界面采用多通道感知模式传递,它的信息内容包含了多个维度、操作流程、模块功能和任务;在信息传递方面,信息架构的复杂性在于复杂信息系统界面的子系统层级的复杂性,和不同感知通道的来源渠道的多样性;在人机信息交互方面,界面所传递的多通道信息在人机的视觉编码、接收、解码中的复杂交互;移动控制程序包括远程无线、低延迟控制机器人的移动,支持语音识别控制,支持人脸识别,支持实时地图构建显示。
[0029] 本发明智能开放型机器人操作方法具有点对点设计、多语言支持、精简与集成、工具包丰富、免费并且开源的特点,其本质可以看作给予开放源代码系统的机器人平台虚拟机。硬件驱动配置层主要适用于常见的底层硬件配置技术,例如处理器、D/A、A/D、I/O、RAM、ROM、通用接口与操作系统的数据交换,通过与各个传感器之间的相互配合提供可靠的信息获取保障,同时为机器人操作系统提供环境保障,还包括系统所需要的硬件驱动,以及相对应的库,从而面向上层的应用软件提供运行与开发的环境,灵活、高效地开发和集成复杂的应用软件,同时进行UI和算法的处理,针对每种硬件进行驱动开发,以达到各种传感器即插即用的目的。
[0030] 实施例四:图4示出了本发明系统方法中的节点管理器,在节点管理中可以显示各节点的节点名称、PID、其占用的内存、运行状态、以及每个节点的功能,在详细信息中则会显示更加详尽的信息方便用户使用,当用户需要某个特定功能时则可以到启动界面启动当对应的节点。
同时开发分布式程序框架,内核群向工作群进行事件推送,工作群在执行任务的同时对内核群进行注册并监听,每一个事件发生时都向日志群进行数据更新,这其中还包括在开源系统中开发HTML文件,利用相应的API接口调用机器人平台中的运动单元,整合到人工智能包封装好各类APK提升开发效率和平台的支持性,管理计算资源和网络通信。
[0031] 图5示出了操作系统的人机交互桌面,桌面可供存放文件以及程序,这里提供了八种应用程序,可根据实际情况进行相对应的开发。设置程序用来设置系统的各项参数;节点管理器用来控制机器人的各项程序的进程开启、关闭;VisualProgramming程序用来进行编写程序,从而进行二次开发;文件管理用来管理各个程序的源文件;Navigation&SLAM程序用来控制机器人的移动及地图构建定位导航;Opencv程序用于视觉检测目标追踪;机械臂抓取程序用于控制机器人机械臂的一系列操作;Kinect深度摄像程序用于3D建模及3D拍摄,并且可以从中设置相关参数。
[0032] 图6示出了可视化编程,改程序罗列有硬件运行中相关的逻辑、操作、文本、代码等内容,可直接拖拉功能模块构成程序的顺序结构,每个模块可进行内部编辑,修改单一模块的运行内容,模块之间可以互相嵌套、关联、叠加,后台自动根据拖拉拼接结果生产可用于执行的程序文件和配置内容。
[0033] 图7 、图8示出了移动程序,其主连接界面采用线性布局,由两个编辑框用来输入IP地址及端口号,两个文本框用来提示用户注意事项;主页可以实时查看连接状态,有四个功能模块分别为运动控制、人脸识别、实时地图、语音参数设置。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈