已阅读5页,还剩55页未读, 继续免费阅读
(控制理论与控制工程专业论文)机器人三维图形仿真软件设计和研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
东南大学硕士学位论文机器人三维图形仿真软件设计和研究 摘要 在课题组承担的江苏省十五攻关项目“网络化焊接机器人研制与汽车生产线 应用工程”中,本课题负责其子任务“机器人三维图形仿真软件的设计和研 究”。 针对目前南汽生产线机器人在线示教编程方式效率低、自动化程度不高的情 况,本文根据国内外离线编程系统的一般设计方法,并结合南汽生产线的实际情 况,提出了机器人三维图形仿真软件系统的整体设计方案。 根据设计方案,作者做了些前期的设计和研究工作。论文首先设计了三维 图形仿真软件的系统结构,涉及了各功能模块的划分及实现方法,并实现了其中 的图形建模模块与图形编辑模块;其次研究了软件系统中的一些关键技术,阐述 了利用面向对象技术开发机器人三维图形仿真软件的方法,并实现了机器人三维 动画显示:最后以6 自由度的c o m a u 机器人为研究对象,建立了机械手的运动学 模型,并探讨了碰撞检测的应用方法。 关键词:机器人、运动学、图形仿真、面向对象 查堕奎兰廷主兰壁兰苎 垫登垒兰堡璺受堕基墼生堡堡塑墨 a b s t r a c t t h ed a _ d e rf o c u s e so t lt h er e s e a r c ha n dd e s i g n o f h es o f t w a r ea b o u t3 - dg r a p h i c s i m u l a t i o n ,w h i c hi st h es u b t a s ko f t h et e n t hf i v ek e yp r o j e c to fj i a n g s up r o v i n c e t r & do fo p e nn e t w o r ki n d u s t r i a lr o b o t a n dt h ea p p l i c a t i o np r o j e c to fa u t o m o b i l e w e l d i n gp r o d u c t l i n e g i v e nt h ec o n d i t i o no fl o we f f i c i e n c yi n o n l i n ep r o g r a m m i n gm e t h o da n do f s l i g h td e g r e ei na u t o m a t i o n a tp r o d u c tl i n e ,o nt h eb a s i so f t h eg e n e r a ld e s i g ns c h e m e i no f f - i i n ep r o g r a m m i n gs y s t e m ,t h ep a p e rp r o p o s e s t h es o f t w a r ed e s i g no f3 - d g r a p h i cs i m u l a t i o n f i r s t l y t h e p a p 。rd e s i g n s t h e s y s t e m s t r u c t u r ec o n s i s t e do fs e v e nf u n c t i o n a l m o d u l e s ,a n df i n i s h e st h ep r o g r a m m i n go f3 - i ) g r a p h i cm o d e l i n g m o d u l ea n dp i c t u r e d r a w i n 叠m o d u l e i na d d i t i o n ,t h ep a p e ra n a l y s e st h ek e yt e c h n o l o g yi ns o f t w a r e ,a n d p r o p o s e st h ea p p r o a c ht od e v e l o pt h e s o f t w a r et h r o u g ho b j e c t o r i e n t e dt e c h n o l o g y , 8 珏dr e a l i z e st h ed i s p l a yo f r o b o t s3 dg r a p h 。f i n a l l yt h ep a p e re s t a b l i s h e st h ek i n e t i c l 珏。d e lo fc o m a u r o b o to fs i xd e g r e e so ff r e e d o m ,a n dd os o m e r e s e a r c hi nc o l l i s i o n d e t e c t i o n 。 k e y w o r d s :r o b o t ,k i n e m a t i c s ,g r a p h i cs i m u l a t i o n ,o b j e c t “o r i e n t e dt e c h n o l o g y l i 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,赊了文中特别加以标注和致谢的地方外,论文中不包含 其他人已经发表或撰写过的研究成果,也不包含为获得东南大学或其它教育机构 的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均 已在论文中作了明确的说明并表示了谢意。 签名:兰) ! 型i 日期:必) ,l 关于学位论文使用授权的说明 东南大学、中国科学技术信息研究所、国家图书馆有权保留本人所送交学位 论文的复印件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人 电子文档的内容和纸质论文的内容相一致。除在保密期内的保密论文外,允许论 文被查阅和借阅,可以公布( 包括刊登) 论文的全部或部分内容。论文的公布( 包 括刊登) 授权东南大学研究生院办理。 签名:埤导师签名: 日 期:兰! :! 主! 兰r ? , z z 船 垮 明声性创独文沦位学 东南大学硕士学位论文机器人三维图形仿真软件设计和研究 第一章绪论 1 1 离线编程与图形仿真技术概况 1 1 1 课题背景及国内外动态 工业机器人( i n d u s t r i a lr o b o t ) 作为机械制造业和信息产业相结合的产物, 正越来越广泛地应用于机械、汽车、军工、航空航天、造船、计算机、光学仪器、 通信设备等行业,在很大程度上替代了人们的体力劳动,如制造、搬运、焊接以 及其它各种危险、恶劣环境下的工作。 德、美、曰、法等工业发达国家从2 0 世纪8 0 年代中后期开始,对工业机器 人离线编程技术进行研究。德国于1 9 8 6 年在a r c h e n 大学机床实验室建立了交互 式工业机器人离线编程和运动模拟工作站。日本东京大学为了适应不同的机械产 品和工作环境以及不同类型的机器人,提出了一种基于c a d c a m 模型的机器 人离线编程系统。利用该系统可以实现产品的建模和装配,形成了“c a d 建模 一产品建模一作业规划一离线编程一机器人产生运动”一个相对完整的系统。 h o r n i c k 等研制的计算辅助离线规划和编程系统s t a r 2 4 增对机器人进行运动规 划、任务描述和图形仿真。它对几何模型的任何修改不是直接的,只能通过修改 描述机器人和环境物几何模型的输入语言来实现。s p e e d l 2 5 峙艮道了在c i n c i n n a t i m i l a c r o n 公司研制的工业机器人离线编程系统,具有强大的造型功能,已成功地 用于t 3 7 6 6 机器人进行复杂表面的编程。不过它仍存在着一些不足之处:没 有提供高层的编程语言;无碰撞检测功能;无法实现自动编程。b u c h a l 等在s i l i c o n 图形工作站上开发的焊接机器人离线编程系统a u t o w e l d 具有对 凸体的碰撞检测和无碰路径规划的功能,能够对机器人焊接工作站进行自动编 程。日本m o t o m a n 公司的机器人离线编程系统具有较强的c a d 建模工具以及 碰撞检测功能,但是无法实现自动编程,也没有提供高层的编程语言。除此之外, 其它研究仍局限于工业机器人离线编程中的部分关键问题上。从总体上看,工业 机器人离线编程技术尚不成熟,国外大都处于研究阶段,但其中一些单元技术己 经或正在趋于成熟。在国内也对该项技术做了研究,但目前局限于基于微型计算 机应用方面,其开放性尚待作进一步研究。 近年来,国内许多大、中型企业都装配了自动化加工设备和计算机辅助设备 与系统。同时,c a d c a m 技术已趋于成熟,其便捷、高效的建模手段及集成技 术,能够成为工业机器人编程中的有力工具。这些设备和系统为工业机器人的离 东南大学硕士学位论文 机器人三维图形仿真软件设计和研究 线编程技术研究和推广提供了基本的硬件和软件条件。然而,机器人系统作为一 个相对独立的单元,限制了c a d c a m 平台的应用范围的进一步扩大。图形交 互式工业机器人离线编程系统能够实现编程系统和机器人系统的集成,具有广阔 的应用前景【1 3 , 15 , 2 0 。 1 1 2 离线编程与图形仿真技术的意义 早期的机器人主要应用于大批量生产,如在汽车自动生产线上的点焊与弧 焊,编程所花费的时间相对比较少,机器人用示教的方式进行编程可以满足一定 的要求。随着机器人应用到中小批量生产以及所完成任务复杂程度的增加,用示 教方式编程就很难满足要求。随着机器人学和计算机技术的不断发展,目前已形 成了高度自动化的生产系统,这些系统和c a d c a m 技术的结合已形成了不可 避免的趋势,这就是所谓的c a d c a m r o b o t i c s 一体化。在这样的 c a d c a m r o b o t i c s 一体化的系统中,由于机器人工作环境的复杂性,对机 器人及其工作环境乃至生产过程的计算机仿真是必不可少的。机器人仿真系统的 任务,就是在不接触实际机器人及其工作环境的情况下,通过图形技术,提供一 个和机器人进行交互作用的虚拟环境。 机器人离线编程技术,是利用计算机图形学的成果,建立起机器人及其工作 环境的模型,利用一些规划算法,通过对图形的控制和操作在脱离生产线的情况 下进行机器人的轨迹规划。机器人离线编程技术已被证明是一个有利的工具,用 以提高生产效率、减低成本和增加安全性等。图卜1 为示教编程和离线编程两种 方式的比较【2 0 】。 示教编程离线编程 需要实际机器人系统和工作环境需要机器人系统和工作环境的图形模型 编程时机器人停止工作编程不影响机器人工作 在实际系统上试验程序通过仿真试验程序 编程的质量取决于编程者的经验用规划技术可进行最佳路径规划 很难实现复杂的机器人轨迹路径可实现复杂运动轨迹的编程 图1 1示教编程和离线编程的比较 与在线示教编程相比,离线编程系统具有如下优点: ( 1 ) 可减少机器人非工作时间,当对下一个任务进行编程时,机器人仍可在 生产线上工作。 东南大学硕士学位论文机器人三维图形仿真软件设计和研究 ( 2 ) 使编程者远离危险的工作环境。 ( 3 ) 使用范围广,可以对各种机器人进行编程。 ( 4 ) 便于和c a d c a m 系统结合,做到c a d c a m j o l 器人一体化。 ( 5 ) 可使用高级计算机编程语言对复杂任务进行编程。 ( 6 ) 便于修改机器人程序。 1 1 3 离线编程系统的主要内容 离线编程系统不仅是机器人实际应用的一个必要手段,也是开发和研究任务 规划的有力工具。通过离线编程可建立起机器人与c a d c a m 之间的联系。设 计离线编程系统应考虑以下几方面的内容: ( 1 ) 机器人工作过程的知识。 ( 2 ) 机器人和工作环境三维实体模型。 ( 3 ) 机器人几何学、运动学和动力学知识。 ( 4 ) 基于图形显示和进行机器人运动图形仿真的关于上述( 1 ) ,( 2 ) ,( 3 ) 的 软件系统。 ( 5 ) 轨迹规划和检查算法,如检查机器人关节超限,检测碰撞,规划机器人 在工作空间的运动轨迹等。 ( 6 ) 传感器的接口和仿真,以利用传感器的信息进行决策和规划。 ( 7 ) 通讯功能,进行从离线编程系统所生成的运动代码到各种机器人控制柜 的通讯。 ( 8 ) 用户接口,提供有效的人机昴面,便于人工干预和进行系统的操作。 此外,由于离线编程系统的编程是采用机器人系统的图形模型来模拟机器人 在实际环境中的工作进行的,因此,为了使编程结果能很好地符合于实际情况, 系统应能计算仿真模型和实际模型间的误差,并尽量减少这一差别【2 7 】。 1 2 课题概况 为了经济地、高效率地进行机器人在工程实际问题的研究,根据江苏省十五 科技攻关计划项目“网络化焊接机器人研制与汽车生产线应用工程”的要求,开 发了一个机器人三维图形仿真系统r o b o t ,能在微型机上模拟机器人,主要是为 车身焊装生产线中的机器人提供离线编程。 1 2 1 本论文主要的工作 1 、解决从v c + + 读入3 d 图形的方法 东南大学硕士学位论文 机器人三维图形仿真软件设计和研究 2 、机器人模型的建立: 3 、三维图形编辑模块的开发: 4 、三维图形显示模块的开发( 包括光照、消隐) 以及交互式操作的开发( 包括 平移、缩放及变视点操作) : 5 、通过以上模块建立生产线的虚拟场景以及作一些轨迹规划及碰撞检测的研 究。 1 2 2 本文内容安排 本文共分五章: 第一章为绪论。 第二章首先简要介绍了南汽项目的概况,根据需求分析设计了三维图形仿真 软件的系统结构,涉及了七个功能模块的划分及实现方法,并实现了其中两个模 块。 第三章针对该图形软件的设计方案,分析了该软件中的关键技术:利用 面向对象技术定义了不同的类结构,用来描述机器人及其工件;研究了机器 人模型文件读取的方法:阐述了利用o p e n g l 和v c + + 开发机器人三维图 形仿真软件的方法,并实现了机器人三维动画显示;介绍了动态连接库技术 在软件中的应用。 第四章首先介绍了机器人运动学方法,并以六自由度c o m a u 机器人为模 型,建立了机器人运动学模型,并讨论了碰撞检测在图形仿真中的应用方法。 第五章总结了所做的主要工作。 东南太学硕士学位论文机器人置维图形仿真软件设计和研究 第二章离线编程仿真系统r o b o t 的设计 2 ,1 焊接生产线概况 南汽项目主要涉及6 台意大刹c o m a u - - 1 2 0 机器人,现场的情况如下所示 生产线总共分为三个z 位: 补焊线一工位( 贮存) : ( 1 ) 暂时存救程该工位。 ( 2 ) 小车升起,将车体送至下一工位。 浮绫二工位: ( 1 ) 小车下降,将车体放入夹熏,定能并夹紧。 ( 2 ) 点烬 ( 3 ) 小车升起,将车体送至下一工位。 点焊毫睚器大( 4 台) ( 6 令自由度) 补焊线三工位: ( 1 ) 小车下降,燎车体放入夹兵,定位并夹紧。 ( 2 ) 点焊 ( 3 ) 小车丹起,将车体送至下一工位。 点焊机器人( 2 台) ( 7 个自甑度) 其生产线布局如图2 * l 所示: 图2 - 1 车身焊装生产线 东南大学硕士学位论文 机器人三维图形仿真软件设计和研究 2 2 课题方案设计 本文结合江苏省十五科技攻关项目“网络化焊接机器人研制与汽车焊接生产 线应用工程”,以汽车车身机器人总焊线为背景,研究和设计了机器人三维图形 仿真软件系统r o b o t 。该生产线上的六台c o m a u 焊接机器人目前还处在单机使 用方式。当投产一个新产品时,由于多台机器人采用示教再现方式,导致编程时 间过长,严重影响生产,无法适应敏捷制造的要求。所以,此项目的目的就是对 生产线上的老机器人进行网络化改造,实现机器人焊接生产线的系统集成。机器 人作业仿真系统是虚拟制造( v m ) 的关键技术之一。对于机器人柔性制造领域 的v m 技术目前还不太成熟,有待在系统控制、操作的表达、系统的运动学表 达等方面得到强化。 2 2 1 需求分析 结合车身焊装加工的实际流程与特点,仿真环境下的焊接工位的仿真应能够 实现下列功能: 结合加工工艺设计工位设备布局; 根据相应算法优化机器人加工路径: 焊接加工过程仿真; 加工过程中设备动态碰撞检测; 输出仿真结果数据,辅助分析加工参数的选取; 2 2 2r o b o t 系统的结构 随着计算机技术的发展,微机的价格不断下降,而性能不断提高。原来只能 在小型机、图形工作站上实现的三维图形仿真功能,现在也可以很容易地在个人 计算机上实现。国外出现了一些离线示教和仿真软件包,但价格比较昂贵。为了 降低离线编程的成本,提高离线编程的实用性,本文在个人计算机的w i n d o w s 2 0 0 0 平台上,用3 d m a x 三维图形建模软件,以v i s u a lc + + 6 0 为开发环境, 并利用集成在v i s u a lc + + 中的三维图形软件接口的新一代标准o p e n g l 开发焊 接机器人离线编程系统。其总体结构如图2 2 所示: 6 东南大学硕士学位论文 机器人三维图形仿真软件设计和研究 图2 - 2r o b o t 系统总体结构圈 r o b o t 系统工作过程为:首先用系统提供的机器人语言,根据作业任务对机 器人进行编程,所得程序由机器人语言处理模块进行处理,形成仿真所需的第一 级数据。然后对编程结果进行三维图形动态仿真,进行碰撞检测和可行性检测。 最后生成通讯所需的代码,进过一定的后置处理后,将代码传到机器人控制柜, 使机器人完成给定的任务。 2 2 3r o b o t 系统的主要模块及其功能 根据目前离线编程系统设计的一般方法,针对南汽车身焊装生产线的实际情 况,该三维图形仿真软件系统的主要模块有: 1 、机器人和周边工件的模型建模。 建立机器人和周边工件的三维实体模型是本系统的基础,对于离线示教系 统,首先必须能够提供三维实体的基础,也就是创建三维实体的模型提供给用户。 本系统中提供了机器人、工件两个基模型。 目前用于机器人系统的构型主要有以下三种方式:( 1 ) 结构立体几何表示: ( 2 ) 扫描变换表示:( 3 ) 边界表示。在本系统中主要采用结构立体几何表示。 东南大学硕士学位论文机器人三维图形仿真软件设计和研究 构造工作单元中的机器人、夹具、零件和工具的三维几何模型,最好采用零 件和工具的c a d 模型,直接从c a d 系统获得,使c a d 数据共享。 2 、机器人运动学模块。 运动学计算分运动学正解和运动学反解两部分。正解是给出机器人运动参数 和关节变量,计算机器人末端位姿;反解则是由给定的末端位姿计算相应的关节 变量值。在离线编程系统中,应具有自动生成运动学正解和反解的功能。 就运动学反解而言,离线编程系统与机器人控制柜的联系有两种选择:一是 用离线编程系统代替机器人控制柜的逆运动学,将机器人关节坐标值通讯给控制 柜;二是将笛卡儿坐标值输送给控制柜,由控制柜提供的逆运动学方程求解机器 人的形态。第二种选择要好一些,因为机器人制造商对具体机器人运动学反解, 已采取了一些补偿措施,因此在笛卡儿坐标水平上,和机器人控制柜通讯效果要 好一些。 3 、图形显示与人机接口。 对于上述两个模块的内容,如何把他们显示出来时必须考虑的,每个使用机 器人离线编程的用户都是针对图形空间的,也就是如何在计算机上显示出用户的 编程意图和通过用户操作的结果是必须要考虑的。由于离线编程是在计算机上实 现的,对于现场的出现的可能性是不可预知的,所以必须提供用户控制当前编程 后提供到机器人端后的控制功能,能够停止或改变当前机器人运动。 4 、轨迹规划及碰撞检测模块。 离线编程系统除了对机器人静态位置进行运动学计算外,还应该对机器人在 工作空间的运动轨迹进行仿真。机器人的运动轨迹分为两种类型:自由移动( 仅 由初始状态和目标状态定义) 和依赖于轨迹的约束运动。约束运动受到路径约束, 受到运动学和动力学约束,而自由移动没有约束条件。轨迹规划器接受路径设定 和约束条件的输入,并输出起点和终点之间按时间排列的中间形态( 位置和姿态 等) 序列,它们可用关节坐标或笛卡儿坐标表示。主要采用关节空间的插补或笛 卡儿空间的插补讨+ 算轨迹规划。规划结果可在屏幕上显示,既可显示轨迹线,也 可显示各中间点的机器人图像。而在虚拟环境中,由于用户的交互和物体的运动, 物体间经常可能发生碰撞,此时为保持环境的真实性,需要及时检测到这些碰撞, 否则物体问会发生穿透现象,破坏虚拟环境的真实感。所以图形仿真必须设有碰 撞检测功能,以保证仿真结果的正确性、安全性和真实性。 5 、通讯接口 在离线编程系统中通讯接口起着连接软件系统和机器人控制柜的桥梁作用。 利用通讯接口,可以把仿真系统所生成的机器人运动程序转换成机器人控制柜可 以接受的代码。 由于工业机器人所配置的机器人语言差异很大,这样就给离线编程系统的通 东南大学硕士学位论文机器人三维图形仿真软件设计和研究 用性带来了很大的限制。离线编程系统实用化的一个主要问题是缺乏标准的通讯 接口。标准的通讯接口的功能是可以将机器人仿真程序转化成各种机器人控制柜 可接受的格式。为了解决这个问题,一种办法是选择一种较为通用的机器人语言, 然后通过对该语言加工,使其转换成机器人控制柜可接受的语言。这种直接进行 语言转化是很复杂的,这主要是由于目前工业上所使用的机器人语言种类很多。 另外一种方法是将离线编程的结果转换成机器人可接受的代码,这种方法需要一 种翻译系统,以快速生成机器人运动程序代码。我们主要采用第二种方法。 6 、误差校正模块 离线编程系统中的仿真模型( 理想模型) 和实际机器人模型存在有误差,产 生误差的因素主要有如下几方面: ( 1 ) 机器人 连杆制造的误差和关节偏置的变化。这些结构上小的误差将会产生机器 人终端较大误差。 相同型号机器人的不一致性。在仿真系统中,型号相同的机器人的图形 模型是完全一样的,而在实际情况下往往存在有差别。 控制器的数字精度。这主要受微处理器字长以及控制算法计算效率的影 响。 ( 2 ) 工作空间 在工作空间内,很难准确地确定出物体( 机器人、工件等) 相对于基准 点的方位。 外界工作环境( 如温度) 的变化,会对机器人的性能产生不利的影响。 ( 3 ) 离线编程系统 离线编程系统的数字精度。 实际世界模型数据的质量。 上述因素都会使离线编程系统工作时产生很大的误差。而如何有效地消除误 差,是离线编程系统实用化的关键。目前误差校正的方法有两种:一是用基准点 方法,即在工作空间内选取一些基准点( 一般不少于三点) ,这些基准点具有比 较高的位黄精度,由离线编程系统规划使机器人运动到这些基准点,通过两者之 间的差异形成误差补偿函数。二是利用传感器形成反馈。我们主要采用第一种方 式,应该能达到焊接精度的要求。 7 、后置处理模块 机器人离线编程中,仿真所需数据和机器人控制柜中的数据有些不同。传送 到控制柜的数据必须保证机器人运行平稳。而仿真受计算机所限,数据必须稍为 简练,只要一些关键数据即可。所以离线编程系统中生成的数据有两套:一一套供 仿真用,另。+ 套供控制柜使用,这些都由后羲处理进行操作。 东南大学硕士学位论文机器人三维图形仿真软件设计和研究 2 3 已完成软件系统模块的实现 目前已基本完成的模块是机器人图形建模模块与图形编辑模块两大模块。它 们的实现主要有两种途径:一种是直接用计算机编程语言实现。应用该方法开发 难度比较大,需要掌握大量的计算机图形学知识,编程过程繁琐,开发周期较长。 但其系统运行速度通常较快;另一种是利用商品化图形软件作为图形支撑来实 现。该方法的掌握相对来说较为容易一些,可降低成本,加快开发速度,并具有 良好的可扩展性。但其系统运行速度要比前一种慢一些【3 ,4 j 。 目前比较流行的主要有三种图形支撑软件。它们是m i c r o s o f t 公司的d i r e c t x , a u t o d e s k 公司的h e i d i 以s c i 公司的o p e n g l 。d i r e c t x 的主要用途是编写游戏 软件,h e i d i 和o p e n g l 功能、应用场合类似,主要区别在于:h e i d i 还只是一种 原始对象接口,使用不太方便,而且功能请求单一,是靠使用标准界面或者直接 利用特定的3 d 芯片来进行硬件加速。如果没有硬件的密切配合,在对大型的高 质高分的图形工作时,显示效率会受到很大影响。相比之下,o p e n g l 具有强大 的三维图形功能,较之w i n d o w s 下提供的g d i ( g r a p h i c a ld e v i c ei n t e r f a c e ) 接 口,o p e n g l 能够设置光照、材质,并且有直接构造三维多绵体的函数,因此, 在使用o p e n g l 开发模块时,能够直接调用其提供的函数。只需提供三维多面体 在实际三维空间中的坐标参数,就可画出带光照的、有表面材质的三维多面体来, 达到形象、逼真的效果,而不需要用户自行设计投影算法来计算多面体的每个顶 点在三维平面上的投影,然后画出点到点的联线。从投影方式的选择来讲, o p e n g l 提供的投影方式的设羲函数,使用户能够选择平行投影、透视投影,并 设置投影角度;从观测者的位置来讲,o p e n g l 还提供了使任意实体能够绕空间 任何一条直线旋转及沿空间任何一条直线平移的函数。所以能够从不同角度、不 同视距对机器人状态进行观测。但是o p e n g l 也存在一定的局限性,它只提供了 简单的图元的绘制命令如圆柱、圆锥、长方体等,对于比较复杂的图形,用它构 造就比较麻烦。利用其他功能强大的建模软件建立模型,然后导入o p e n g l 。这 样就降低了o p e n g l 复杂建模的难度,还可以得到较真实的复杂物体模型。 3 ds t u d i om a x 是美国a u t o d e s k 公司推出的一套优秀的三维动画制作的软 件。它使微机上的动画制作水准有了质的飞跃,并足以与工作站级的动画制作软 件相媲美。3 ds t u d i om a x 综合了低价格、易使用、功能更强大的特点,并带来 了全新水平的生产率、工作能力和可配置性。因而得到了迅速推广和普及。利用 3 d m a x 提供的三维建模工具,可以方便的构建具有高度真实感的机器人及其操 作环境的三维v r 模型。但是3 d m a x 只能生成顺序播放的三维动画,却不能提 供对v r 模型的交互式控制【“,1 2 ,1 5 ,1 6 】。 为此本文结合3 d m a x 和o p e n g l 取长补短,利用3 d m a x 友好的建模界面 0 东南人学硕士学位论文机器人三维图形仿真软件设计和研究 仿造实际机器人及其工作环境构建逼真的虚拟三维模型。将模型转化成o p e n g l 可读取的数据库文件,通过基于o p e n g l 的编程对用户输入做出实时响应,以实 现对虚拟环境的交互式控制。 2 3 1 机器人及其工件建模模块 ( 1 ) 三维几何构型 在机器人离线编程系统中,机器人及其环境的构型主要是为了对机器人运动 进行图形仿真,增强直观性,以检验机器人运动轨迹的可行性和合理性。因此在 构型时可将机器人和环境物的外形进行适当的简化。 描述机器人图形的几何模型有许多,诸如:线杆模型,线框模型,面模型和 实体模型,其中只有实体模型才能完全描述一个几何体,即能表示几何体的真实 形状,这对检验机器人在运动过程中是否和周围障碍物发生碰撞和干涉是很重要 的。本文采用实体模型对机器人进行几何造型。 机器人是个较为复杂的空间多连杆机构,其外形更为复杂。要在计算机上 以图形方式输出机器人的外形图,就必须对机器人的实际几何形状进行适当简化 并将其转化为计算机所能接收的信息。对机器人进行实体造型时首先应根据自由 度数n 将其分解为n + 1 个构建,再对每个构建分别进行几何造型。而每个构建又 是若干个基本体素经过布尔操作后的组合体,这就需要先对每个体素进行几何定 义和产生每个体素的实体图形,然后将这些体素按照几何关系经布尔操作后产生 某构件的实体图形,各个构件实体造型结束后按照它们之间的几何关系装配成机 器人的整体实体图形1 2 “。注意,两体元装配之前要确定装配平面,使两装配平 面贴合到一起,并确定相对的位置关系。 ( 2 ) 软件实现方法 c o m a u 机器人的几何模型通过3 d sm a x 建立,生成模型数据源文件,然 后通过读取数据源,编排数据点的组织情况,构造出物体的三维轮廓。总结起来 就是利用3 d sm a x 进行c o m a u 机器人各个部分的建模,将3 d sm a x 建立的 3 d s 文件格式转换为o b j 格式,然后用v c + + 语言读取o b i 格式的数据源,通过 o p e n g l 图形接口中的平移、旋转和缩放等变换,将各个部分拼凑成完整的 c o m a u 机器人模型。使用这种方法,能大大提高建模工作的效率,并且所建模 型完全符合形象逼真的要求。具体操作如下: l 、 根据c o m a u 机器人的自由度,将其在运动关节处拆分开来,分为 基座、底部、下臂、上臂1 、上臂2 、手腕、末端执行器七个部分。 在3 d sm a x 3 0 中按比例完成c o m a u 机器人各部分的建模工作, 生成6 个3 d s 格式的数据文件。 2 、 由于3 d s 格式的文件不能被o p e n g l 直接读取,要将3 d s 转换为可读 东南大学硕七学位论文机器人三维图形仿真软件设汁和研究 取的o b 文件。这里使用了3 de x p l o r a t i o n 转换工具,这是一款用于 浏览多种流行的3 d 文件格式如3 ds t u d i o ,l i g h t w a v e ,c a l i g a r i , d i r e c t x ,a u t o c a d 等,支持o p e n g l 硬件加速的浏览器,并能将各 种格式进行互相转化。利用3 de x p l o r a t i o n ,将已创建的c o m a u 机 器人各部分的3 d s 格式文件转换为o b i 格式文件并保存。o b j 文件结 构比较简单,它是由一些文本行组成,每一行文本都是由一个关键 字开头,紧跟着后面是该关键字所表示含义的具体参数。 根据创建的几何模型,建立了四个类对象,分别是机器人部件对象,机器人 整体对象,空间物体对象,空间模型对象。其中机器人部件对象是描述机器人某 个部件的类:机器人整体对象是描述机器人整体的类。考虑到动画的效果,采用 了o p e n g l 中的g l c a l l l i s t 功能,即把机器人拼装之后放在内存中的一段区域, 命名为一个表,调用的时候只要直接显示列表就能显示出来,节省了大量时间。 空间物体对象是描述工件的对象类,每个物体都被归为一个类,对于不同的 物体类型可以给出不同的属性对象。物体对象有一个基类对象,所有物体对象都 从这个基类派生。 空间模型对象是描述整体工件的对象类,可以把比较多的物体构成一个模型 类,如本系统相对于南汽机器人项目,可以创建汽车对象或者其他对象,这样做 的好处是使得模型对象构建在一起,可以方便的完成编辑等一系列功能。 所有这些模型都被放在文件当中,本系统可以描述为文件一模型一操作一文 件的方式,机器人和空间模型分别存放在不同的文件中,而对应每个工程都有一 个工程文件负责打开和保存上述模型文件。 c a d 接口:由于对于很多精密加工的场合都是用a u t o c a d 来描述的,所以 提供c a d 接口十分必要,就如同将o b j 文件转换为机器人模型一样,也可以 将c a d 文件转换为模型文件。 2 3 2 人机接口图形显示模块 离线编程系统的一个关键问题是能否方便地产生出机器人编程系统的环境, 便于人机交互。因此,用户接口是很重要的。工业机器人一般提供两个人机接口: 一个用于在线示教编程,而另一个是离线编程。本系统也就是利用第二个接口将 工作环境描述出来之后产生运动程序,下传到机器人控制柜,从而控制机器人的 运动。为便于操作,用户接口设计成交互式。用户可以用鼠标标明物体在屏幕上 的方位,并能交互地修改环境模型。 该系统所有命令均以菜单形式给出,包括图形菜单、弹出式菜单、循环显示 菜单,用户可利用鼠标方便地驱动整个系统。屏幕主要由主菜单区、子菜单区、 系统状态区、图形窗口、数据信息窗口等几部分组成,为用户提供了良好的人机 东南大学硕士学位论文机器人三维闭形仿真软件设计和研究 交互界面。软件界面效果如图2 3 所示 圈2 - 3 软件界面图 机器人属性控制面板,如图2 - 4 所示。主要功能是可以在空白栏中输入机器 人相关数据,通过更新功能键改变被选定机器人属性,能够方便的改变视图中机 器人的状态。 机器人o l p 控制面板,如图2 5 所示。o l p ( o f f l i n ep r o g r a m i n g ) 即离线 编程。用户可以选择添加,插入某个点的位置,指示机器人的运动。但在实际操 作的时候,必须把计算机坐标转换到空间坐标。也就是通过鼠标点击之后返回的 屏幕坐标点,屏幕所选点最外层的像素深度z ,得到一个三纬坐标值( p o i n t x , p o i n t y ,z ) ,将z 归一化替换成为z o x 7 f f f f f f f , z 就成为当前屏幕深度【o ,1 1 之间的 某个值,利用o p e n g l 提供的g l u u n p r o j e c t 的函数,将上述点转换为当前模型矩 阵的点,也就是返回实际构建模型的空间坐标,从而完成了从计算机坐标系到空 问模型坐标系的转换。而图2 5 中的六个方向键可以用来微调机器人模型的各个 关节角。 机器人o l p 类型选择面板,如图2 - 6 所示。主要功能是可以选择模型的末 端点,中间点,保证示教点的正确性。另外还提供了机器人运动类型和运动速度 的选择项。 东南大学硕士学位论文机器人三维图形仿真软件设计和研究 图2 - 4 机器人属性面板图2 - 5 0 l p 控制面板 图2 - 6 0 l p 类型选择面板 机器人工件控制面板,如图2 7 所示。主要功能是能够对工作单元中的工件 的一些基本属性进行修改,例如工件的尺寸、颜色以及坐标等。 东南大学硕士学位论文机器人三维图蟛仿真软件设计和研究 阐2 7 工件模型控制面板 编辑场景控制丽板,如图2 罐所示。通过光照位置可以改变光照的各项属性, 弼x ,y ,z 位置瀚设置可以将当前光源表示为l o ,1 0 ,l o 位置,方便角户观察。 允许光照:选定表示在场景中打开光照。 线条驻示:选定表示程场景串糟线条鞠只囊爨掰寿耪体的框絮两不菡寤面静 图形显示。 着琶过渡模式:选定寝示着彀豹模式为平涝麓色。 雾化处理:选定表示添加雾化效果。 纹理她理:选定表示在援器入模型土添熬纹遴。 图2 - 8 编辑场景控制面板 文件搡作,机器人工作荦元香不丽的工作路径,所以利用v e + + 的a p i 函数 创建目录和工程文件,把所有的文件归类存放,不仅方便用户查找和使用,而且 东南大学硕士学位论文机器人三维图形仿真软件设计和研究 更重要的是无论用户对于自己工程的文件操作都是对于主要的文件( 机器人文 件) 的拷贝的操作,不会影响其它工程的操作。 机器人及:i :件模型交互式操作菜单,如图2 - 9 所示。提供多种移动视图模型 的方式,根据用户的不同要求有不同的场景运动方式。 普通模式:用户移动场景的最初始模式,即左键按下后移动鼠标则移动所有 物体,右键按下鼠标移动放大缩小物体,而左右键同时按下则旋转所有物体。这 是默认模式。 自动移动:所有物体自动向右移动,选择其他模式停止该模式。 选择物体:在场景中点击任何物体( 注意物体代表机器人和工件模型) 在场 景中移动该物体。左键x ,y 向移动,右键z 向移动。 光照模式:按下鼠标之后光源的位置改变,从而所有的物体在光照下的效果 改变。 选点模式:返回当前鼠标选择点在空问中的位置( 当前选择点的三维坐标) 改变零点:场景中在任意点点击鼠标,场景的中心( 地板的中心) 移动到该 点。 旋转物体:与选择物体一样,点击任何物体则旋转该物体。移动方向也与移 动物体模式相同。 软件效果如图2 1 0 所示 谴转物件 改赉中心i 政燕辩照 选择目标煮 图2 - 9 机器人及工件模型交互式操作菜单 辫慧普燎蔽臻 东南人学顺士学位论文 机器人兰维图形仿真软件啦汁和研究 图2 1 0 软件效果图 1 7 东南人学硕士学位论文机器人三维图形仿真软件设计和研究 第三章软件中关键技术的分析 在机器人三维图形仿真软件中应用了多项技术,本章选取其中几项关键的技 术:面向对象、机器人几何模型的读取、多线程技术以及动态连接库技术加以介 绍和分析,并给出它们在该软件中的一些具体应用细节。 3 1 面向对象技术的应用 目前已有一些机器人离线编程系统已达到了实用化程度,如d e n e b 公司开 发的i g r i p 系统等。但这些传统的机器人离线编程系统的分析、设计、实现和 编程的方法都是面向过程的,存在着多方面的不足之处。面向对象方法o o m 被 认为是能解决上述问题的最有效方法,并已在许多领域取得了令人信服的成果, 但面向对象的机器人离线编程系统的成功例子并不多见。机器人系统中各对象之 间存在着较强的耦合性,对这些对象( 如机器人对象) 的设计和使用稍有不当, o o m 的优越性就会受到限制,如模块性和可扩充性等,为此需要从机器人系统 结构行为特点来研究机器人离线编程系统面向对象的设计准则,以充分发挥 o o m 的优越性。 3 1 1 机器人系统结构行为特点 机器人系统由一或多台机器人、传感器、材料加工设备、零件、计算机及其 他周围环境物以适当的内部联接方式按一定的空间位置关系布置而成,以便在执 行所需要的任务时便于组件之间的通信和协作,机器人系统的结构和功能特点如 下: ( 1 ) 物理结构上的分布性和功能上暂时的平行性。组成机器人系统各机械和 计算机子系统以结构化或非结构化的方式分散于机器人系统工作空间内。这些机 械和计算机子系统有时可平行作业以提高工作效率,机器人必须适应这种结构化 或非结构化环境的需要,并能对环境的变化做出反应; ( 2 ) 接口的重要性。机器人系统是个内部紧密相关且又具有开放功能的系统。 系统中各设备间通信行为和方式十分复杂,同时又必须同外部系统或设备进行必 要的信息交换,在系统设计或实现的后期向系统中加入新组元也须通过接口来实 现,因而设备和设备之间以及系统与外界之间的接口问题成为了系统设计首要关 注的问题。接口对系统结构和行为起着重要的作用,复杂系统可能的最大的潜在 危险也来自接口: ( 3 ) 高度柔性。体现在两个不同的方面:l 、系统的整体柔性。这是针对系统 东南人学硕+ 学位论文机器人三维图形仿真软件设计和研究 的艋体设计、任努调度、系统各组成部件的控制协调策略等而言的;2 、单个设 备的柔性。机器人系统包括机器人、数控帆床、自动控制器和视觉系统等可编程 设备,它们能够浃速适应不同任务的不同簧求,以及工作空间的变化等; ( 4 ) 强耦合性。这集中体现在机器人与系统中其他设铸和操作对象间的紧密 稠关性,使得整个系统其肖较强静耦合瞧; ( 5 ) 动态性和机器人角色的多灏性。动态性是指机器人与系统中各组件之间 有着繁多豹相互作弼,掘器入系统结稳随蓿系统翡运行发生着变化。辊嚣人角色 的多面性魁指同一机器人在完成作业任务过程中能够完成各种不同的操作,充当 不溺豹角惫: ( 6 ) 设备状态的复杂多变性。系统运行过程中信息在变换设备状态的过程中 氇变换蓑囊身,懿侮有效蟪矮述撬器a 系绕中懿各耱状态怒系统浚诗羲又一关键 所在。 交越霹显,搬器入系绞兹复杂蛙傣瑷在结援黢彳亍为嚣令方瑟,它们秘亘俸弱 相互影响。以何种方法或技术研究机器人系统的体系结构并实现栩应的功能是机 器入学数一个重要磅究方向。 3 1 。2 面囱对象的设计准则 对象鼹一种抽象数据类型,以对象为核心组织机器人离线编稷系统存在着多 方西静饶点。毽由于枫器入系统存在着上述多方瑟靛耨程,使褥辩o o m 的使焉 稍有不慎其优越性也就不焚存在了。机器人对象结构与行为的复杂性决定了机器 入怒令复杂静对象,在o o m 中,复杂对象重雳蕊蓑。为了馒瓿嚣久对象嶷有好 的煎用性须对其进行很好的抽象和分类。另外机器人系统的强耦台性使软件系统 中对象之麟有蓑强瓣关联撵矮,这对于霹羧熬独立整和重矮性,黪鬟是软件憝模 块性是不利的。为此用o o m 设计、开发机器人离线编程系统时,弄清和牢记有 关嚣向对象熬设计准则以拯导我们熬工 擘楚l 掌必要鲍。下嚣对这些设计及聂发 准则进行飘体地讨论。 、在高度抽象化款熬础上设诗系统接日。 机器人系统的“全域”是事先不能被完全确知的,系统有可能用于执行新的 任务,或加入毅对象以增强其功熊,或和其瞧系绞集成和通信,这酆须通过对象 间和系统闯的接口来完成。接口是对象的外部表现形式,麓对象间通信的唯一方 法稠系统删集成的唯一通邀。接口设计在系统设计中有着攀足轻熏的地位。机器 入系统结构行为的复杂性使系统中对象间的集成和系统可扩充性的实现并非易 事,必须对接口进行适当的抽象以达到集成和扩充的灵活性。 二、设计者应尽可能魂避免对机器入系统其体任务的描述和设计,而应对其 对象行为进行高度抽象以撮供一个高层次的设计方案,从而使系统设计独立于它 9 东南大学硕1 :学位论文 机器人三维图形仿真软件设汁和研究 的任何具体应用。 独立于任何具体应用的设计露高度抽象,使缎成系统的所有类都能被完整地 设计出。磁实现具体应用时只要剖建相应的类对象并通过对象上的操作采完成具 体系统的具体任务。由于类被完整地定义了,使系统从执行一种具体应用任务到 勇一种其体应用任务变樗方便可行。 三、以消息通信的形式描述机器人作业任务。 在对丰晁器久系统 睾登进行擒象对应避免受“避程法”思维方式翡影辅。以消 息流的形式来抽象机器人系统作业任务才真正体现了o o m 的风格。至于接受消 怠豹对象对淹意鲑理麓缀节鏊绘对象鸯己
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2018-2025四川省考面试真题及答案解析
- 牛仔童装产业规划专项研究报告
- 中国废铝市场供给趋势及投资运作模式分析研究报告
- 零食行业品牌营销消费者偏好创新产品投资评估发展规划
- 2026年幼儿园大班数学跳格子
- 2026年幼儿园社会忙碌的建筑工地
- 2026年幼儿园如何预防诺如病毒培训
- 2026年市一级幼儿园自评报告
- 2026年小儿垂钓幼儿园公开课
- 2026年关于幼儿园四季的课件
- (高级)电气值班员技能鉴定考试题库(重点高频500题)
- 四宫格数独课件
- DL∕T 707-2014 HS系列环锤式破碎机
- 一年级数学下册加减法口算练习题1400题(可直接打印)
- 初中英语首字母填空答题技巧详解(精心排版-可直接打印)
- 手术室建设标准
- 低压电工答题技巧
- 中国中冶施工现场安全文明标准化手册
- 神木市朱盖塔煤矿矿山地质环境保护与土地复垦方案
- PLC控制柜出厂检测报告
- 干部人事档案盒侧签模板
评论
0/150
提交评论