一种基于ROS的图形化开发平台的制作方法

文档序号:13660804阅读:1513来源:国知局
一种基于ROS的图形化开发平台的制作方法

本发明涉及机器人编程技术领域,尤其涉及一种基于ros的图形化开发平台。



背景技术:

机器人控制系统核心是计算机,而开发机器人控制软件的生命周期又在整个机器人研发过程中占据很大的比例,一个智能机器人系统通常是由四部分组成:机械系统、感知系统、规划系统、执行系统,机械系统是由底盘、轮子、电机等硬件模块搭建而成;感知系统是由传感器模块组成,如激光传感器、红外传感器;规划系统和执行系统都属于机器人的控制系统,控制系统中涉及的机器人算法又包含避障算法、巡线算法等;对于机器人初学者而言,控制系统的开发难度偏大,开发人员需要从硬件入手才能到上层的控制软件,随着机器人领域的快速发展和复杂化,代码的复用性和模块化的需求越来越强烈。

目前市面上只有针对移动机器人的仿真平台,开发平台几乎没有,同时开源机器人操作系统ros(robotoperatingsystem)是目前市面上比较火热的机器人开发环境,但是该系统是基于ubuntu操作系统之上的软件运行平台,同时软件运行需要ros相关文件的支持,不利于用户入门。



技术实现要素:

本发明所解决的技术问题在于提供一种基于ros的图形化开发平台,以解决上述背景技术中的缺点。

本发明所解决的技术问题采用以下技术方案来实现:

一种基于ros的图形化开发平台,在windows操作系统环境下,基于.net3.5开发完成,包括库管理模块、图形化编程模块、编译模块,且库管理模块、图形化编程模块、编译模块在人机交互开发界面上以图形区呈现,人机交互开发界面上设置有菜单栏区、部件库区、图形化编程区、信息反馈区及代码显示区;

菜单栏区

菜单栏包括文件、平台操作、图形化编程、库管理、样例库和帮助,文件包括新建项目、打开项目、保存项目、另存为,项目文件以xml形式进行保存;

部件库区

库管理模块包括部件库和算法库,部件库包括控制器库、驱动器库、传感器库、人机交互库、其他库、用户库,每个库文件下面设置有多个子部件,并在每个库文件的子部件上编辑有基于ros格式编写的源码文件;

算法库包括避障算法库、巡线算法库、跟随算法库、其他算法库、用户算法库,每个算法库设置有多个子算法,每个子算法编辑有基于ros格式编写的源码文件;

用户通过用户库增加所需的库源码文件与算法源码文件;

图形化编程区

用于实现图形化编程模块功能,通过对部件库中部件进行选择、拖拽、连线、设置属性以完成图形化编程预备工作后,再进一步完成图形化编程的后续工作,后续工作包括程序下载、远程编译;

在连线中,对接口类型相同才可进行互连,接口类型相同指模块的gpio口只能连接对方的gpio口,usb口只能连接到对方usb口;

在选择机器人算法,进行图形化编程;

代码显示区

用于显示被拖拽至图形化编程区的模块对应的源代码,用户若需修改模块的基本参数,代码显示区将自动匹配用户修改的参数,无需用户手动修改代码;

信息反馈区

用户完成图形化编程构建后,通过socket通讯机制,将所有的文件远程下载至控制计算机中,控制计算机可是嵌入式计算机或是通用计算机系统,该控制计算机安装ubuntu系统以及ros机器人操作系统,将下载的文件基于智能机器人的特性封装编译成图形控件,在通过socket通讯机制将图形控件回传给图形化开发平台,信息反馈区用于接收显示编译的信息。

有益效果:

1)本发明根据智能机器人现有特点结合ros优点,将代码封装成图形控件形式提供给用户,用户仅需根据机器人的特点修改接口参数,有效降低用户的编程难度,提高编程效率;

2)本发明在windows操作系统上实现交叉编译,并可下载到控制计算机中,操作便捷;

3)本发明基于ros开源机器人操作系统有丰富的案例源码,便于用户后续扩展和更新。

附图说明

图1为本发明的较佳实施例中的人机交互开发界面示意图。

图2为本发明的较佳实施例中的部件库示意图。

图3为本发明的较佳实施例中的算法库示意图。

具体实施方式

为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白清晰,下面结合具体图示,进一步阐述本发明。

参见图1所示一种基于ros的图形化开发平台,在windows操作系统环境下,基于.net3.5开发完成,包括库管理模块、图形化编程模块、编译模块,且库管理模块、图形化编程模块、编译模块在人机交互开发界面上以图形化区呈现,人机交互开发界面上设置有菜单栏区、部件库区、图形化编程区、信息反馈区及代码显示区;

菜单栏区

菜单栏包括文件、平台操作、图形化编程、库管理、样例库和帮助,文件包括新建项目、打开项目、保存项目、另存为,项目文件以xml形式进行保存;库管理是用于专门管理部件库,样例库是本开发平台为用户预备的案例,初学者可先模仿,然后深入学习;帮助菜单栏用于链接本开发平台的论坛,论坛有一系列详细教程供用户下载学习;

部件库区

库管理模块包括部件库和算法库,参见图2所示部件库分成6大块:控制器库、驱动器库、传感器库、人机交互库、其他库、用户库,每个库文件下面设置有多个子部件,如传感器库包括超声波传感器、红外传感器、激光传感器,每个传感器上编辑有基于ros格式编写的源码文件;

参见图3所示算法库分成5大块:避障算法库、巡线算法库、跟随算法库、其他算法库、用户算法库,同样,每个算法库含多个子算法,每个子算法编辑有基于ros格式编写的源码文件;

用户可在用户库中增加所需的库源码文件与算法源码文件;

图形化编程区

用于实现图形化编程模块功能,通过对部件库中部件进行选择、拖拽、连线、设置属性一系列工序完成图形化编程预备工作后,再进一步完成图形化编程的后续工作,后续工作包括程序下载、远程编译;

在连线中,对接口类型相同才可进行互连,接口类型相同指模块的gpio口只能连接对方的gpio口,usb口只能连接到对方usb口;

最后选择机器人算法,进行图形化编程;

代码显示区

用于显示被拖拽至图形化编程区的模块对应的源代码,用户若需修改模块的基本参数,代码显示区将自动匹配用户修改的参数,无需用户手动修改代码;

信息反馈区

用户完成图形化编程构建后,通过socket通讯机制,将所有的文件远程下载至控制计算机中,控制计算机可是嵌入式计算机或是通用计算机系统,该控制计算机安装ubuntu系统以及ros机器人操作系统,将下载的文件基于智能机器人的特性对图形控件进行分类(控制器、传感器、人机交互、其他、用户新增),并将机器人源码进行封装编译成一个可执行文件,在通过socket通讯机制将编译信息回传给图形化开发平台,信息反馈区用于接收显示编译的信息。

以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1