一种实现服务机器人三维仿真的方法与流程

文档序号:11135372阅读:508来源:国知局
一种实现服务机器人三维仿真的方法与制造工艺

本发明涉及三维仿真技术领域,尤其涉及一种实现服务机器人三维仿真的方法。



背景技术:

现有的可视化监控系统,仅起到监控作用,在实际运行中,机器人操作系统直接进行物理实验,且市面上的服务机器人仿真多是二维形式,交互性和直观性不强,并未进行真实仿真,易给直接操作机器人实体造成很多不必要的损失。



技术实现要素:

本发明所解决的技术问题在于提供一种实现服务机器人三维仿真的方法,以解决上述背景技术中的缺点。

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

一种实现服务机器人三维仿真的方法,在Windows操作系统环境下,基于Visual Studio 2010/2012开发三维仿真系统平台,利用三维仿真系统平台实现服务机器人三维仿真,三维仿真系统平台架构分为三层,包括底层、中间层及应用层,具体步骤如下:

1)利用Visual Studio 2010/2012在底层,面向工程三维仿真应用搭建基于MFC的系统框架;

2)在基于MFC的系统框架中,添加OpenGL库文件和头文件,并完成初始化设置,同时调用中间层OpenGL命令进行环境模块绘制,以建立机器人模块和家具环境模块;

3)建立坐标系统,坐标系统包括OpenGL坐标系、窗口坐标系及目标坐标系;

4)对步骤3)中的坐标系统进行坐标转换,通过跟踪视点和固定视点方式并调用OpenGL转换函数实现定点转换;

5)利用3DS Max软件绘制机器人三维模型,并对机器人三维模型进行纹理贴图和关照渲染,以增加显示效果的真实性;

6)将步骤5)中绘制的机器人三维模型另存为3DS文件;

7)在工程中读取步骤6)中存储的3DS文件,并对三维模型进行对象管理;

8)系统框架中的视角通过鼠标左键交互,并调用OpenGL中的透视投影函数实现;

9)利用OpenGL双缓存技术在应用层实现虚拟仿真平滑的动画。

在本发明中,底层用于基于Windows操作系统环境下编程,包括各种基础类库,如WindowsAPI、OpenGL(OpenGraphicsLibrary)图形库及VisualC++MFC类库。

在本发明中,中间层用于调用通用模块、功能模块及API,创建完整的图形应用程序方法为:利用底层函数,整合包装成高级API或具有扩展的功能模块,如常用几何图元绘制模块、高级图元绘制模块、视图窗口模块。

在本发明中,应用层是面向具体工程三维仿真应用搭建的系统框架。

在本发明中,步骤6)中,3DS文件的头文件是Read3DS.h,源文件是Read3DS.cpp。

有益效果:

1)本发明交互式环境将环境模型转换成统一的图形模块,可快速生成环境信息,具有灵活、通用、快捷特性,支持用户二次开发;

2)本发明有效降低了机器人开发的进入门坎,使更多的学生、开发人员、爱好者能够投入到机器人开发中;

3)本发明机器人交互式仿真环境平台的能够减小不必要的物理损失,同时减少项目开支。

附图说明

图1是本发明的较佳实施例的三维仿真系统平台层次结构示意图。

图2是本发明的较佳实施例的总体设计框架示意图。

图3(a)是本发明的较佳实施例中的窗口坐标系初始化示意图。

图3(b)是本发明的较佳实施例中的窗口坐标系转换后示意图。

图4是本发明的较佳实施例中的3DS Max软件绘制的小车底盘模型示意图。

图5是本发明的较佳实施例中的3DS Max软件绘制的家具模型示意图。

具体实施方式

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

一种实现服务机器人三维仿真的方法,如图1~2所示,在Windows操作系统环境下,基于Visual Studio 2010/2012开发三维仿真系统平台,利用三维仿真系统平台实现服务机器人三维仿真,三维仿真系统平台架构分为三层,包括底层、中间层及应用层,具体步骤如下:

1)利用Visual Studio 2010/2012在底层,面向工程三维仿真应用搭建基于MFC的系统框架;

2)在基于MFC的系统框架中,添加OpenGL库文件和头文件,并完成初始化设置,同时调用中间层OpenGL命令进行环境模块绘制,以建立机器人模块和家具环境模块;

3)建立坐标系统,坐标系统包括OpenGL坐标系、窗口坐标系及目标坐标系;

4)对步骤3)中的坐标系统进行坐标转换,通过跟踪视点和固定视点方式并调用OpenGL转换函数实现定点转换,建立窗口坐标系时,初始化的坐标系统是图3(a),而后进行坐标转换,使窗口坐标系的中心点(0,0,0)转换到屏幕中央,如附图3(b),OpenGL转换函数为glTranslatef()和glRotatef();

5)利用3DS Max软件绘制机器人三维模型,如图4~图5所示,以小车底盘和家居环境三维模型为例,并对机器人三维模型进行纹理贴图和关照渲染,以增加显示效果的真实性;

6)将步骤5)中绘制的机器人三维模型另存为3DS文件;

7)在工程中读取步骤6)中存储的3DS文件,并对三维模型进行对象管理;

8)系统框架中的视角通过鼠标左键交互,调用OpenGL中的透视投影函数gluPerspective()实现;

9)利用OpenGL双缓存技术在应用层实现虚拟仿真平滑的动画,调用OpenGL的glutSwapBuffers()。

在本实施例中,底层用于基于Windows操作系统环境下编程,包括各种基础类库,如WindowsAPI、OpenGL(OpenGraphicsLibrary)图形库及VisualC++MFC类库。

在本实施例中,中间层用于调用通用模块、功能模块及API,创建完整的图形应用程序方法为:利用底层函数,整合包装成高级API或具有扩展的功能模块,如常用几何图元绘制模块、高级图元绘制模块、视图窗口模块。

在本实施例中,应用层是面向具体工程三维仿真应用搭建的系统框架。

在本实施例中,步骤6)中,3DS文件的头文件是Read3DS.h,源文件是Read3DS.cpp。

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

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