1英文
机器人系统仿真
【simulationofrobotsystem】
2简介
通过计算机对实际的机器人系统进行模拟。机器人系统仿真可以通过单
仿真机器人
机或多台机器人组成的工作站或生产线。仿真可以通过交互式计算机图形技术和机器人学理论等,在计算机中生成机器人的几何图形,并对其进行三维显示,用来确定机器人的本体及工作环境的动态变化过程。通过系统仿真,可以在制造单机与生产线之前模拟出实物,缩短生产工期,可以避免不必要的返工。在使用的软件中,工作站级的仿真软件功能较全,实时性高且真实性强,可以产生近似真实的仿真画面;而微机级仿真软件随实时性和真实性不高,但具有通用性强、使用方便等优点。目前机器人系统仿真所存在的主要问题是仿真造型与实际产品之间存在误差,需要进一步的研究解决。
3发展概况
国外很早便认识班机器人仿真在机器^研究和应用方面的重要作用,并从70年代开始进行了这方面的研究工作.在许多从事机器人研究的部门都装备有功能较强的机器人仿真软件系统,它们为机器人的研究提供了灵活和方便的工具倒如,美国Cornell大学开发了一个通用的交互式机器人图形仿真系统INEFFABELLE,它不是针对某个具体机器人,而是利用它可以很容易建立所需要的机器人及环境的模型,并且具有图形显示和运动的功能。西德Saarlandes大学开发了一个机器人仿真系统R0BsIM,它能进行机器人系统的分析、综合及离线编程,美国Maryland大学开发了一个机械手设计和分析的工具DYNAMAN,它能产生机械手的动力学模型.根据需要可以自动产生F0RTRAN的仿真程序,同时也可产生符号表示的雅可比矩阵MIT开发了一个机器人CAD软件包OPTARMⅡ,它可用于时间最优轨迹规划的研究。Michigan大学开发了一个机器人图形编程系统——PR0GREss,其特点是菜单驱动和光标控制,并能有219图形符号来仿真外界的传感器和执行部件,以使用户获得更加接近真实的编程环境.
自80年代以来国外已建成了许多用于机器人工作站设计和离线编程的仿真系统,例如美国McAuto公司开发了机器人仿真系统PLACE,它主要用于机器人工作站的设计;PIRensselaerPolytechnicInstitute)研制了GRASPCalma公司在GRAsP的基础上开发了Robot—SIM软件,它主要用于工作站设计和机器人选型。通用电气公司的研究开发部对Robot-SIM进行丁改进工作。Intergraph公司也研制了一个机器人仿真系统,它更加强调机器人的动力学特性和控制系统对精度及整个性能的影响。Computervision公司开发了软件包obographix,它具有产生机器人工作路径、仿真机器人运动及碰撞检测等多种功能。目前它能对8种常用的机器人进行仿真。Autosimu]ations公司研制了两个机器人仿真软件包AutoMod和AutoGramAutoGram是利用GPSS仿真语言的建模软件,AutoMod是图形显示软件。Deneb公司开发了IGRIP软件,它主要用于工作站设计和离线编程SRI国际部研制了仿真软件包RCODE,它具有几乎实时的碰撞检测功能西德Kadsruke大学建立了机器人仿真系统ROSI和ROS2。法国LAMM开发了CARO系统,它主要强调三维数据库设计技术,快速性及能在小机器上运行是其追求的目标。以色列OSHAP公司推出了ROBCAD,它主要用于工作站设计和离线编程,并能将程序下装到系统内。在以上舟绍的软件中.大部分已经商品化,并已在很多生产和研究部fJ获得了广泛应用。
国内从80年代后期起,许多单位也开始从事机器人仿真技术的研究工作。在国家高技术计划自动化领域智能机器凡号题中,清华大学浙江大学、沈阳自动化所及上海受大等单位承担了机器人系统仿真的研制任务,取得了多项研究成果,本文后面还将对此工作专门介绍。哈工大、北航、国防科大等单位承担了机器人机构仿真的任务,摄后也研制成功一个大型的机器人仿真软件。fl;fl,,还有不少单位针对某一具体方面进行了广泛深入的机器人仿真技术的研究。
4机器人本身的设计和研究
机器人仿真主要应用在两个方面一是机器人本身的设计和研究,这里机器人本身包括机器人的机械结构以及机器人的控制系统,它们主要包括机器人的运动学和动力学分析。各种规划和控制方法的研究等。机器人仿真系统可为这些研究提供灵活和方便的研究工具,它的用户主要是从事机器人设计和研究的部门和高等学校。机器人仿真的第二个方面的主要应用是那些以机器人为主体的自动化生产线,它包括机器人工作站的设计、机器人的选型、离线编程和碰撞检测等。机器人可为此提供既经济又安全的设计和试验的手段,它的用户主要是那些使用机器人的产业部门。目前,用于这方面的机器人仿真系统最常见的ROBCAD和IGRIP。下面以机器人离线编程为例来说明机器人仿真系统的应用。机器人是一种通用机械,通过重新编程,它可以完成不同的工作任务当机器人改变工作任务时,通常需中断机器人的当前工作,先对机器人进行示教编程,然后机器人按照新的程序执行新的工作.若借助于机器人仿真系统就可首先在仿真系统上进行离线编程,然后将编好的程序装到机器人中,机器人便可按照新的程序执行新的工作,因此机器人可不必中断当前的工作,从而提高了生产效率,而且这种方法既经济又安全。利用机器人仿真系统进行离线编程在国外已十分普遍,它是机器人仿真系统应用最普遍和最典型的例子。
5机器人的教学和培训
机器人仿真系统的另外一个应用是它可以用于机器人的教学和培训。机器人是一个比较昂贵的设备,在进行机器人教学时,不可能用许多实际的机器人来作为教学和培训的试验设备,机器人仿真系统可为此提供一个方便和灵活的试验工具和手段。
6遥控操作机器人
机器人仿真对于遥控操作机器人有着特殊的应用。1993年德国空间研究机构在美国的哥伦比亚号航天飞机上进行了搭载试验,其中一项内容便是地面操作人员对在航天飞机上的空间机器人进行遥控操作由于从地面到空间的信号传输往返时间达7秒钟。对于这么大的延时,通过手控操作来遥控机器人显然是非常困难的。解决这个大延时间题的唯一有效的途径是利用三维图形实时仿真。即通过对空间机器人及周围环境进行实时仿真,建立一个虚拟的现实环境,操作人员对仿真图形进行操作。由于操作人员与仿真图形之间不存在延时,因而这种控制是非常容易的。而实际的机器人则在几秒钟后跟着仿真图形的动作而动作,从而实现了地面控制人员对空问机器人的遥控操作,有效地解决了大时延的问题。这里机器人三维实时图形仿真起到了关键的作用。目前我国已开始从事这方面的研究工作。
7仿真平台开发软件OpenGL技术
随着CAD技术的发展,三维实体建模技术得到了广泛的应用。OpenGL是OpenGraphicsLibrary的缩写,它是SGI公司开发的一套高性能图形处理系统。OpenGL的特点包括:硬件无关性,可以在不同的平台上实现;建模方便,可以构建相当复杂的几何造型;出色的编程特性,由于OpenGL可以集成到各种标准视窗和操作系统中,因此基于OpenGL的三维仿真程序有良好的通用性和可移植性。
OpenGL的库函数被封装在OpenGL32.d11动态链接库中,从客户应用程序发布的对OpenGL函数的调用首先被OpenGL32处理,在传给服务器后,被Winsrv.dll进一步进行处理,然后传递给DDI(DeviceDriverInterface),最后传递给视屏驱动程序。
微软机器人仿真平台的开发(MRDS)
微软机器人开发工作室(MicrosoftRoboticsDeveloperStudio,以下简称MRDS)使机器人爱好者,研究人员和商业开发者能够更容易的在多种硬件平台下建立机器人的应用程序。MRDS软件开发包包含一个轻量级的,面向服务的运行时,一套可视化编辑和模拟工具以及开发示例代码和开发指南。在美国,德克萨斯大学约翰.普雷沃斯特(JohnPrevost)等在MRDS仿真环境中对水下机器人(潜艇)在水下的工作情况进行了仿真。学者亚历杭德罗.门德斯(AlejandroMendez)博士建立了机器人三维模型,将其嵌入到微软工业机器人仿真平台的仿真环境中,来分析虚拟机器人的行为。在中国,台湾淡江大学学者刘寅春(PeterLiu)将MRDS应用于安全机器人的仿真。大陆学者对MRDS的研究较少,哈尔滨工业大学深圳研究生院的王宏、张东来等,上海交通大学尹航、言勇华分别将MRDS应用于工业机器人和仿人机器人的仿真。浙江大学黄立等人在MRDS的基础上定义了机器人模型定义系统(MDS)和机器人模拟仿真控制系统(SCS)。南京理工大学自动化学院将MRDS用于多机器人系统编队控制研究等。