




已阅读5页,还剩75页未读, 继续免费阅读
(模式识别与智能系统专业论文)面向复杂作业的微操作机器人编程语言.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 微操作机器人系统是机器人技术向微细领域的延伸n 1 ,目前,面向单目标的 微操作技术已经日趋完善和成熟。与此同时,随着它的应用在广度和深度两方 面的拓展,微操作技术对复杂作业的需求不断增多。简单操作命令不足以满足 机器人系统在灵活、方便上的要求,因此产生了对微操作机器人语言的研究需 求,使之能够通过在线给出的一系列命令语句的方式,来完成非结构化环境下 微操作复杂作业。 论文首先分析了微操作机器人语言的总体需求,接着提出语言系统的整体 架构,给出功能划分。然后对其中各个子模块的功能进行了详细说明,并对各 个子模块间的通信和同步机制进行了深入分析。 其次,论文给出了微操作机器人语言解释器的设计与实现过程。分别从词 法分析模块、语法分析模块、语义分析模块和目标函数调用模块介绍说明,并 给出根据这些设计方法建立的微操作机器人语言指令代码集。 最后,本文分析并解决了在进行微操作复杂作业实验中的几项关键性技术, 并在此基础上,设计并实现基于微操作机器人语言的复杂作业实例,验证了本 文微操作机器人语言的有效性。 微操作机器人语言建立了用户和机器人系统之间有效的通信方法,使用户 能更加方便地控制机器人完成预定的任务,并可以把预定完成的任务通过字符 串的形式保存起来,这就为机器人自动完成多种微操作任务奠定了基础。 关键字:微操作复杂作业机器人语言解释器 i a b s t r a c t ab s t r a c t m i c r o m a n i p u l a t i o nr o b o ts y s t e mi st h er e s u l tt h a tr o b o tt e c h n o l o g ye x t e n d s i n t o m i c r of i e l d ,a n dm i c r o - m a n i p u l a t i o nt e c h n o l o g yw h i c hi ss i n g l eo b j e c to r i e n t e dh a s b e e nm o r ep e r f e c ta n dm a t u r et i l ln o w a tt h es a m et i m e ,a l o n g 谢mi t sa p p l i c a t i o n s p r e a d i n gi ne x t e n ta n dd e e p n e s s ,c o m p l e xt a s k sa r en e e d e dm o r ea n dm o r ef o rt h e m i c r o - m a n i p u l a t i o nt e c h n o l o g y s i m p l em a n i p u l a t i o nc o m m a n dc a n t f u l f i lt h e r e q u i r eo fa g i l i t ya n dc o n v e n i e n c et h a tr o b o ts y s t e ma s k sf o r , s ot h er e s e a r c ho f p r o g r a m m i n gl a n g u a g eo fm i c r o m a n i p u l a t i o nr o b o ti sn e e d e df o rm a k i n gt h er o b o t c o m p l e t ec o m p l e xo p e r a t i o n i n n o n - c o n f i g u r a t i o nc o n d i t i o nt h r o u g hs e r i e s o f i n s t r u c t i o n sg i v e no n l i n e f i r s t l y , t h er e q u i r e m e n to ft h ep r o g r a m m i n gl a n g u a g eo fm i c r o - m a n i p u l a t i o n r o b o ti sl a b o r e d t h ea r c h i t e c t u r eo ft h el a n g u a g ei sc l a r i f i e da n dt h ef u n c t i o ni s p a r t i t i o n e d t h e nt h ea r t i c l ei l l u s t r a t e ss u b m o d u l e so fi n t e r p r e t e ra n dd e m o n s t r a t e s c o m m u n i c a t i o na n ds y n c h r o n i z a t i o nm e c h a n i s ma m o n gm o d u l e s s e c o n d l y , t h ep a p e rd e m o n s t r a t e st h ed e s i g na n dr e a l i z a t i o no ft h e r o b o t l a n g u a g ei n t e r p r e t e r l e x i c a la n a l y s i sm o d u l e ,s y n t a xa n a l y s i sm o d u l e ,s e m a n t i c a n a l y s i sm o d u l ea n dt r a n s f e r r i n go b j e c t i v ef u n c t i o nm o d u l ea r ei n t r o d u c e ds e p a r a t e l y t h e nt h em i c r o m a n i p u l a t i o nr o b o tl a n g u a g ec o m m a n d ss e ta r es e tu pa c c o r d i n gt h e s e m e t h o d s a tl a s t ,t h i sp a p e rs o l v e ds e v e r a lk e y t e c h n o l o g i e so fc o m p l e xo p e r a t i o no r i e n t e d m i c r o - m a n i p u l a t i o n t h e ne x a m p l e s b a s e do n p r o g r a m m i n gl a n g u a g e o f m i c r o - m a n i p u l a t i o nr o b o ta r ed e s i g n e da n dc o m p l e t e du s i n gt h e s et e c h n o l o g i e s t h ep r o g r a m m i n gl a n g u a g eo fm i c r o m a n i p u l a t i o nr o b o tw h i c hi sc o m p l e x o p e r a t i o no r i e n t e de s t a b l i s h e sc o m m u n i c a t e dw a yb e t w e e nu s e ra n dr o b o ts y s t e m i t c a nm a k eu s e rt oc o n t r o lt h er o b o tt of i n i s hs c h e d u l e dt a s k sm o r ee a s i l y , i tc a na l s o s a v e dt h et a s k si n t h ef o r m a to fc h a r a c t e rs t r i n g a l lo ft h e s es e r i e st h ef o u n d a t i o nf o r r o b o tt oc o m p l e t ek i n d so fm i c r o - m a n i n p u l a t i o nt a s k sa u t o m a t i c a l l ya n di ti s e m b o d i m e n to fi n t e l l i g e n t i z ea n da u t o m a t i z a t i o no fr o b o ts y s t e m i i a b s t r a c t k e yw o r d s :m i c r o - m a n i p u l a t i o nc o m p l e xo p e r a t i o nr o b o tl a n g u a g ei n t e r p r e r i i i 南开大学学位论文版权使用授权书 本人完全了解南开大学关于收集、保存、使用学位论文的规定, 同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版 本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、 扫描、数字化或其它手段保存论文;学校有权提供目录检索以及提供 本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有 关部门或者机构送交论文的复印件和电子版;在不以赢利为目的的前 提下,学校可以适当复制论文的部分或全部内容用于学术活动。 学位论文作者签名巧如玮也 ) o u 占年r 月和日 经指导教师同意,本学位论文属于保密,在年解密后适用 本授权书。 指导教师签名:学位论文作者签名: 承砷牡 解密时间:年月日 各密级的最长保密年限及书写格式规定如下: 南开大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下,进行研究工作 所取得的成果。除文中已经注明引用的内容外,本学位论文的研究成果不包含 任何他人创作的、已公开发表或者没有公开发表的作品的内容。对本论文所涉 及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明。本学 位论文原创性声明的法律责任由本人承担。 学位论文作者签名:和峥争如 歹口必年厂月d 日 第1 章引言 第一章引言 第一节微操作复杂作业 微操作机器人系统是机器人技术向微细领域的延伸n 1 ,在过去的十多年里吸 引了世界范围内研究者的目光。当前,面向单目标的微操作技术已经日趋完善 和成熟。与此同时,随着它的应用在广度和深度两方面不断拓展,微操作技术 在推动其它行业发展的同时,实际应用也为微操作技术提出了新的问题和研究 内容。 , 操作目标空间位置分布广和操作目标运动造成的显微图像模糊等问题的出 现促进了微操作机器人系统复杂作业的研究。 在面向生物医学工程的微操作应用中,早期应用是单目标的转基因等操作。 目前,应用中经常遇到多目标批量操作。以辅助生育技术中显微授精为例:通 常操作人员一次要完成一批( 如6 个) 卵细胞授精操作。方法是将特定的液滴 滴在培养皿中;每个液滴中放置一个卵细胞;一定数量的精子也集中在某个液 滴中。液滴在培养皿中是由操作人员手工按一定排列方式放置的。操作过程中, 操作人员先找到一个卵细胞,再移动平台寻找精子所在液滴,捕获精子后,再 移回卵细胞区域进行授精操作,如此逐个进行直到完成全部操作。利用微操作 系统进行该操作,只需点击鼠标即可完成,确实为减轻操作人员高精度手工劳 动作出了贡献。但仔细分析,该应用也存在以下问题:首先,它存在多个液滴, 也就是多个操作目标;其次,液滴中的卵细胞直径达1 0 0 微米,而精子仅几微 米,也就是不同操作目标尺度差异大( 可能跨1 个以上数量级) ;第三,液滴是 手工放置的,它的间距会较大( 如毫米量级) ,因此,全部液滴会占用较大的空 间区域( 如超过l 平方厘米) ,也就是不同操作目标空间位置分布很广。 同样是在生物医学工程领域,在分子生物学的应用基础研究中,目前的微 操作机器人系统已经能够胜任各种细胞操作实验,但更深入的研究工作需要进 一步对执行完微操作的细胞进行2 4 7 2 小时实时监控,观察其内部形态和颜色 以及细胞活性的动态变化( 相当于一种可视化的“动态模型 ) 。由于细胞变化 极其缓慢,通常利用显微成像系统进行录像监测。但是,细胞是活的生物体, 第1 章引言 在培养液中会进行游动,一旦细胞的光轴方向( z 方向) 坐标发生变化而游离出 聚焦区,就只能获得模糊显微图像。也就是说,若将操作之后的观察也纳入微 操作研究领域,又引出一个问题:操作目标运动造成的显微图像模糊。 上述在研究中存在的问题为微操作机器人进一步发展指明了方向微操 作复杂作业。 事实上,满足上述条件的微操作复杂作业广泛存在着。在微机电系统( m e m s ) 研究中,m e m s 部件组装;材料科学中的材料均匀性观测等领域均存在微操作复 杂作业的需求。i d e m s 部件组装环境,是人为设计加工的结果,是一个典型的结 构化环境;材料是用物理、化学、生物手段制备出来的,完美的晶体是结构化 的,其中瑕疵当然是非结构化的,所以材料均匀性观测是一个半结构化环境; 生物医学应用当然是典型的非结构化环境。这又从一个侧面验证,微操作的复 杂作业在结构化环境、半结构化环境和非结构化环境各种条件下广泛存在着。 微操作机器人复杂作业的研究具有重要的意义,不仅可以解决微操作中操作 目标空间位置分布广和操作目标运动造成的显微图像模糊等问题,还在材料科 学领域、高分子材料领域和基于微装配的m e m s 器件制作等了方面具有重要的应 用价值。 在材料科学领域,材料检测是一个共性问题。比如铊系超导材料,它的样品 是3 n m a l c m 或6 m m l c m 的晶体薄膜,材料的均匀性检测的范围是整块晶体, 检测过程是要发现某些晶体生长的缺陷。有缺陷的晶体当然不可能是一个,这 项工作一定是多目标的;检测工作要在整块晶体范围内进行,需要切换大量的 空间视野;若以最高分辨率1 0 倍目镜6 0 倍物镜观测整块晶体,则需几万次视 野切换。因此检测工作是以低倍率显微镜大范围扫描和缺陷晶体高倍率显微镜 观察相结合;因此,它涉及空间分辨率切换。也就是说晶体检测符合复杂作业 前三条,但它可能仅仅是观察,并不需要操作,因此不一定是微操作的复杂作 业。举此例只是为了说明上述复杂作业前三条是在材料检测中广泛存在的。另 一方面,确实有很多材料需要操作,那么它就属于微操作的复杂作业。 在高分子材料领域,过去的十多年里,基于超分子相互作用的高分子自组装 是新材料最主要的成就之一。高分子材料的发展已经从单一分子结构的设计、 材料的共混、复合等发展到超分子有序自组装,从而获得具有功能性的组合材 料,如生物传感器、光学元件、多层微胶囊等。高分子自组装就是通过大分子 的一系列构象的转变而达到最终有序材料的设计。由于微器件结构及功能的多 2 第1 章引言 样性,单纯的自组装技术只能在局部形成理想的结构,还不能满足制备微器件 的要求。使用微操作机器人对高分子自组装纳米材料进行定点移动、测量和重 新组装,可以解决目前高分子纳米材料研究的瓶颈问题,有力推动该领域研究 的发展。以目前南开大学高分子所正在进行的高分子自组装技术为例,研究目 标是获得新型高分子材料的微纳尺度导线。通过自组装化学反应可获得长几微 米( 如34 , u m ) ,直径0 1 “m 的短棒状材料,利用微操作机器人系统将尽可 能多条的短棒连接到一起就可以形成长长的一条线,再去测量不同材料的导 电性能,就可能获得新型的高分子材料的微纳尺度导线。该项操作中,反应溶 液里布满了短棒状材料,相应的操作是寻找较长的材料( 如6 - 7r u m ) ,将其抓取、 移动,并将其首尾相连组装在一起,构成长长的一条线,为进一步测量做准备。 较长的材料是目标,它是多目标操作:分布很广充满整个培养皿:寻找材料用 低倍率显微镜,组装则需1 0 倍目镜1 0 0 倍物镜才能看清01 , u r n 直径的短棒端; 这是一种复杂作业。 在当前的m e m s 器件研制过程中,基于微装配的m e m s 器件制作方法吸引越来 越多研究者的关注图11 所示为多伦多大学正在进行的m e m s 部件微装配工作。 整个操作需要装配许多微部件,是多目标操作;微部件分布彳e 整个器件范围达 亚毫米,操作过程需多次空间视野切换:微部件装配精度是01 口卅,需要空间 f 旋魏 。:彩 7 殇- 】 繁:4 】 图t1 壮m s 微部件装配 分辨率的切换。除此以外,由于整个器件布局紧凑、复杂,微部件移动过程还 需路径规划和避碰。这当然又是一项复杂作业。 上述三类微操作应用领域非常具有典型性:生物医学中的操作目标和环境是 纯自然的,操作目标形状、大小、分布、环境特征很难人为控制;材料科学中 第1 章引言 操作目标和环境是人工合成的,操作目标形状、大小、分布、环境特征可由反 应溶液温度、湿度等间接控制;而m e m s 部件微装配中的操作目标和环境布局 是工艺线加工出来的,是高度可控的。也就是说,从纯自然领域,到人工间接 可控制领域,最后到高度可控领域均有微操作复杂作业存在。因此,可以粗略 得出这样一条结论,微操作复杂作业广泛存在并且应用面很广。 第二节微操作机器人编程语言 微操作机器人编程语言是微操作机器人软件系统中一项重要的研究内容, 它可以满足由微操作复杂作业日益增多引起的简单操作命令不足以满足机器人 在灵活性和方便上的要求。同时,它还可以通过在线给出的一系列命令语句的 方式,来完成非结构化环境下微操作的复杂作业。该研究方向,旨在建立用户 和机器人系统之间有效的通信方法,使用户能更加方便地控制机器人完成预定 的任务,并可以把预定完成的任务通过字符串的形式保存起来,这就为机器人 自动完成多种微操作任务奠定了基础。 1 2 1 机器人语言的发展现状与特点 1 2 1 1 机器人语言的发展1 3 机器人是个软件可控的机械装置,利用传感器引导执行器动作,通过可编程 运动操作物体,进行作业。为此,必须重视人和机器人之间的通讯接口。机器人 语言提供了一种通用方式来解决人机通讯问题。机器人语言也是机器人系统先 进水平的重要标志之一。从一机器人系统所提供的机器人语言,可以看出该机器 人系统所提供的功能和系统构成。 从信息控制的观点出发,我们将机器人系统看成是带有某些特定的“外部设 备( 机器人运动机构、机器人动作机构、机器人传感机构和机器人与用户的通 讯机构) 的计算机系统( 机器人控制器) 。因而,我们可将机器人语言定义为能 处理某些特定的“外部设备 的计算机程序设计语言系统。 机器人语言是从7 0 年代发展起来的,在较早期的机器人语言中,有些是 以普通计算机程序设计语言( ! z l p as c a l 、p l i 和li s p 语言等) 为主体,再加入 4 第1 章引言 一些专用的机器人控制指令而成;有些则是由数控语言改进而成。 1 9 7 3 年,美国斯坦福人工智能实验室开发出第一个实验性的机器人编程 语言w a v e 瞄。,最初的目的是用于研究机器人学的理论问题,而不是用于执行生 产任务,它提供了对机器人操作的符号描述,提供了力和力矩的控制,通过接 口还可以与一个外部视觉系统相连,该语言可以同时控制两个机器人手臂。次 年,该实验室开始开发第二个机器人语言a l 瞄。,它能并行控制多个机器人手臂, 使用了力传感器,能方便的进行装配操作的编程。 从1 9 7 5 年起,i b m 公司的t j w a t s o n 研究中心开发出几种机器人语言,用 于控制直角坐标机械手,最早的语言是m a p l e 、e m i l y 和m l h 。,他们曾用于各 种装配工作。1 9 7 7 年又开发出a u t o p a s s 语言曲。,这是一种用于装配操作编程 的半自动化程序设计高级语言。同时,麻省理工学院人工智能实验室也开发出 类似的高级语言l a m a 。1 9 7 8 年,美国普渡大学的k t a k a s e 等人提出结构 化程序设计的p a l “1 语言,b e n d i x 公司推出t e a c h 语言瞪1 ,它能并行控制多个 机器人和传感器。国际斯坦福研究所( s r i ) 开发的r p l 语言俐依靠调用内部特殊 功能的子程序实现控制,能方便地控制由机器人、工具和视觉系统组成的机器 人工作单元。喷气推进实验室开发的j a r s 语言u w 是基于p a s c a l 语言的机器人 语言,曾用于控制机器人装配太阳能电池。 最早的商品化文本机器人语言是v a l u ,由美国u n i m a t i o n 公司在1 9 7 9 年 推出,它是b a s i c 语言的扩展,最初的v a l 语言只提供给p u m a 系列机器人产 品使用,后来扩展到该公司的大多数机器人产品上,1 9 8 4 年又开发出新版本的 v a l _ i i 语言u 引。1 9 7 9 年,伊利诺大学的c c g e s c h k e 等人开发出r s s 语言“, 它能根据传感信息直接伺服控制机器入。 1 9 8 1 年,美国a u t o m a t i x 公司推出了u l 语言u 射,用于控制视觉检查和弧 焊、装配机器人。1 9 8 2 年,美国推出了两种商品化的机器人语言,它们是i b m 公司的a m l 语言u 副和通用电气公司的h e l p u w 语言。1 9 8 3 年,德国出现了两种 机器人语言,b i o m a t i k 公司推出了基于p a s c a l 语言的p a s 2 r o 语言u ,卡尔斯 鲁厄( k a r l s r u h e ) 大学在p a s c a l 语言和a l 语言的基础上开发出结构化程序设计 的s i u 语言u 。法国贝藏松( b e s a n c o n ) 大学开发出用于柔性生产系统机器人编 程的l m a c u 副语言。此外,一些厂家推出了基于b a s i c 语言的机器人语言,如 s e i k o 、机器智能、美国机器人和i n t e l l e d e x 等公司l i o jb a s i c 语言作为一种基本 语言再次受到重视。 5 第1 章引言 8 0 年代,日本的机器人技术发展很快,开发出多种机器人语言。1 9 8 1 年 在日本东京举行的第十一届国际工业机器人讨论会( i s i r ) 上,日本推出了两种 机器人语言,即东京大学开发的g e o m a p 语言u w 和k o m a t s u 公司用于焊接机器 人编程的p l a w 语言k 。 美国惠普( h p ) 公司在1 9 8 6 年推出了类似于p a s c a l 语言结构的h a l 语言瞄“, 该语言在h p 9 0 0 0 计算机上运行。同年,普渡大学开发出用于装配机器人编程的 f p r o l o g 语言瞄副,它不同于以往的机器人语言,是一种逻辑程序设计语言,在 装配系统的项层,具有与l i s p 语言的接口,允许使用逻辑程序设计环境来构造 装配计划。美国北卡州的l o r d 公司也推出控制传感器和机器人的s e l 语言瞄别。 美国加州a d e p t 技术公司推出运用于装配操作的任务级高级机器人编程控制 系统灿m 阱。,它是用v a l i i 语言写成的。密歇根大学的a n a y l o r 等人与通用电 气公司和a t & t 公司的贝尔实验室合作,开发出一种图形化离线机器人编程系 统p r o g r e s s 比圳,它允许用户以交互方式生成高级语言仿真程序,以图形方式 仿真,并能转换成机器人程序,该系统在i b m2 p c 微机上运行,用p a s c a l 语 言实现。此外,日本的两家公司共同开发出f r c 语言瞄制,是一个多任务的柔性 机器人编程系统。 英国纽卡斯尔大学m j l o n g l e y 等人开发出用于移动机器人控制的 r e a c t 瞄u 语言,该语言采用人工智能结构,能够进行任务级规划。日本的y k a n a y a m a 等人开发出控制移动机器人的m m l 语言瞄驯。 值得注意的是,随着计算机高级语言的发展,有些普通高级语言已开始用 于机器人的编程控制。1 9 8 3 年,普渡大学的r p p a u l 等人提出用u n i x 环境下的 c 语言控制机器人,其方法是在c 语言系统中增加一个用c 语言编程的机器人控 制函数库r c c l 瞄圳,这样,机器人控制程序就变成通常的c 语言程序。 国内的机器人语言研究工作开展较晚,从8 0 年代后期以来,中国科学院 沈阳自动化研究所、浙江大学、清华大学等单位相继进行了有关的研究工作 1 2 1 2 机器人语言的特点 机器人的编程控制需要使用专用的机器人程序设计语言,而一般不使用普 通计算机程序设计语言,这是因为: ( 1 ) 机器人的控制涉及大量算法( 运动学、动力学、控制等) ,在机器人语 言中可以用专门的控制指令进行处理,使用户摆脱了繁琐算法的约束,能在更 6 第1 章引言 高层次上操作机器人。 ( 2 ) 机器人操作的物体是在三维空间中,有许多不同的物理特性,而普通 计算机语言没有提供对三维物体的描述方法。 ( 3 ) 机器人是在一个复杂的空间环境中工作,必须使用传感信息进行监控, 这在机器人语言中也可用专门的指令来处理,方便了用户的使用。 1 9 8 6 年,北大西洋公约组织( n at o ) 的一个工作小组对机器人语言作了 如下定义:“机器人程序设计语言是程序员能够表达期望的机器人操作和有关 活动的工具 。这表明机器人语言不仅能够表达机器人的运动,而且能够与用 户、机器人控制系统、传感器、几何模型系统、规划系统和知识系统等连接。 根据面向方向的不同现有的机器人语言可以分为两大类: ( 1 ) 机器人级语言( 面向机器人的语言) :在这类语言中,机器人执行的任 务被描述为机器人运动的序列,程序的每个语句相当于一个机器人动作,整个 程序引导和控制机器人完成任务。现有的大多数机器人语言都属于这一类,如 a m l 、h e l p 和v a l 语言等。 ( 2 ) 任务级语言( 面向对象的语言) :在这类语言中,机器人执行的任务被 描述为机器人操作对象的位置目标系列,而不是机器人为完成这些目标所需的 运动,因此它没有明确规定机器人的动作。这类语言为数不多,其代表有 a u t o p a s s 、r a p t 和l a m a 语言等。 机器人级语言的组成: ( 1 ) 位置说明:使用语言提供的数据结构定义物体的位置和特性。在装配 操作中,机器人和零件被限制在良好定义的工作空间中,装配的状态可以用机 器人和零件的现行位置和姿态来描述。通常采用直角坐标系描述物体的位置和 姿态,可以表示成4 4 的齐次变换矩阵。 ( 2 ) 运动说明:通常用一系列机器人要达到的位置目标来说明,不仅需要 说明初始状态和终止状态,为了避免碰撞,还应说明路径上足够的中间点此 外,还需说明运动的速度和加速度以及接近和离开物体的方向等。 ( 3 ) 传感和控制流程:工作空间中物体的位置和尺寸具有不确定性,因此 需要使用传感信息作为环境反馈,使机器人能够检验装配的现状。通常使用的 传感信息有三种:位置传感、力和触觉传感以及视觉传感,一般使用传感命令 来处理。此外机器人程序的流程通常由传感器信息控制,大多数语言都提供了 一般的判定结构,女l l i f - t h e n e l s e 、c a s e 、d o u n t i l 、w h i l e d o 等。 7 第1 章引言 ( 4 ) 程序设计支持:提供必要的程序开发和调试功能,主要包括:在线修 改、跟踪传感器输出和仿真。 任务级语言的组成: 这类语言类似于人工智能中的自动程序生成。允许用户使用高级语言描述 任务( 任务说明) ,系统的任务规划程序通过查询数据库( 环境模型) ,将任务说 明转换为机器人级语言程序( 程序合成) ,然后执行之。 、 ( 1 ) 环境模型:用于描述物体( 包括机器入) 的几何和物理特性,以及工作 空间中物体的状态。 ( 2 ) 任务说明:任务被描述成工作空间中物体状态的序列,物体状态可以 用物体之间的空间关系表示,通常用定义了语法和语义的高级语言来描述。 ( 3 ) 程序合成:首先将任务说明转换为可用的形式,得到一个由物体状态 组成的集合,再根据物体的几何和物理特性,规划机器人的运动,从而产生机 器人级程序。这里的一个重要问题是如何规划无碰撞运动。 目前,任务级机器人语言还处于实验研究阶段,有许多问题尚未解决,但 这是一种很有前途的机器人语言。 现有的绝大多数机器人语言都是以某种普通计算机程序设计语言为基础, 这对机器人语言的发展极为重要,因为这些普通计算机程序设计语言具有较完 善的结构,使机器人语言不必开发基本的数据结构和程序结构,易于语言标准 化,并提高了语言的可移植性。 1 2 1 3 几种主要机器人语言简介 这里所介绍的几种目前国际上常用的机器人语言,已在工业上或实验室中 投入实际运用。 v a l ( v e r s a t i l ea s s e m b l yl a n g u a g e ) : v a l 是为u n i m a t i o n 机器人开发的程序设计语言,它提供了易于定义机器 人任务的能力。v a l 有b a s i c 语言的结构,在此基础上加入了许多机器人编程 指令。v a l 有自己的操作系统,称为v a l 监控程序,它包括用户接口、编辑程序 和文件管理程序。中央处理机是一台d e c 公司的l s i i i 0 3 机,每个关节由一台 6 5 0 3 微处理机控制,外设包括用户终端、软驱、示教盒、i o 组件和一台机器智 能公司的视觉系统。v a l 语言在执行中使用了c 语言和6 5 0 3 汇编语言。现在,v a l 己开发到能在所有p u m a 机器人和u n i m a t e 2 0 0 0 和4 0 0 0 系列机器人使用。1 9 8 4 年, 8 第1 章引言 在v a l 的基础上又推出v a l i i 语言,它提供了先进的网络通信能力,改进了语 言运算功能、用户接口和传感器接口,能进行实时路径修正,提高了并行处理 能力,并支持复杂的应用程序设计。 a m l ( am a n u f a c t u r i n gl a n g u a g e ) : a m l 语言是i b m 公司为其机器人产品开发的一种商品化机器人语言。a m l 的命令可分为基本子程序、计算程序、机器人和传感器i o 命令、系统接口命令 和数据处理命令。a m l 语言针对不同的程序开发者,提供了一个强有力的基语 言,由一个解释程序执行基语言,子程序可以是用户编写的代码,也可以是基 语言的一部分。a m l 具有与外部视觉系统的接口,也可以与数控机器系统连接 最初的a m l 语言的硬件环境是一台最小1 9 2 k 字节内存的i b m s e r i e s 1 小型计算 机,用于i b m7 5 6 5 型装配机器人后来,a m l 语言又开发出多个版本,如在 i b m p c 微机上运行的a m l e ,它是a m l 的一个子集,用于控制i b m7 5 4 5 型机 器人。a m l x 是一个实验系统,目的是提供一种具有机器人控制能力的通用程 序设计语言。 r p l ( r o b o tp r o g r a m m i n gl a n g u a g e ) : r p l 语言是斯坦福研究所( s r i ) 开发的,目的是为方便自动化生产系统控制 算法的开发和调试,这些生产系统由几台机械手、传感器和一些辅助设备组成。 r p l 语言简单易懂,可以看成是用f o r t r a n 语言写成的l i s p 语言。在s ri 机器 人程序设计系统( r p s ) 中,有一个能把r p l 程序转换成可解释代码的编译程序 和一个代码解释程序。r p l 程序可以在p d p 2 11 或l s l 2 11 计算机上运行,操作系 统为r t 2 11 ,r p l 语言作为子程序调用执行,它提供了许多调试手段,如多种错 误信息显示、手动中断、跟踪、单步执行、设置断点、存盘和装入过程等。r p l 已用于控制一台p u m a5 5 0 机械手和一个机器智能公司的视觉系统,也可控制 一台u n 2 i m a t i o n2 0 0 0 a 或2 0 0 0 b 液压机械手和一个s r i 视觉系统。 1 2 2 微操作机器人编程语言 虽然机器人语言的种类繁多,但是按照作业描述水平的高低,通常可以分 为三级:动作级、对象级、任务级。动作级语言是以机器人的动作为描述中心, 每一个命令通常对应一个动作。动作级语言的代表是v a l 语言,它的语句比较 简单、直观,易于编程,但是不能进行复杂的数学运算,也无法接受复杂的传 9 第1 章引言 感器信息,只能接收开关量信息。对象级语言解决了动作级语言的不足,描述 了物体间的关系以使机器人动作,这类语言的代表由a m l ,a u t o p a s s 等。任 务级语言是比较高级的机器人语言,它的代表是美国普渡大学r p p a u l 提出用 u n i x 环境下的c 语言控制机器人,这类语言允许使用者对工作任务所要求达到 的目标直接下命令,不需要规定机器人所做的每一个动作的细节。操作人员只 发出环境模型和最终工作状态指令,机器人程序会自行运行推理、计算,最后 生成机器人动作指令序列。 以上三种语言,面向用户及开发难易程度都有所不同。其中,第一种方式 最为简单,易于操作员使用,不需要对操作人员进行过多的培训;第二种方式 扩充了第一种语言,主要增加了运算、控制以及通讯功能;第三种语言对操作 人员来说十分简单,但是前提是建立了准确的环境模型,而且任务级语言的编 译或者解释也需要一个长期开发过程,成熟的、商品化的任务级语言并不多见。 从微操作机器人的需求角度来说,它的使用者主要是实验人员,操作对象一般 为微针,暂时不需要多机器人协作等问题,由此可见,微操作机器人编程语言 应力求实现方便、使用简单,并且要可重复使用。所以本机器人系统主要采用 动作级机器人语言,但也综合任务级机器人语言的优点,不仅包含了动作级的 指令和简单的任务级指令,同时具有一些运算功能,运用该微操作机器人语言, 不仅可以实现机器人作业程序的手动编写,同时也可以完成任务级指令的直接 实现。一 第三节论文的研究背景、主要研究内容和意义 1 3 1 论文的研究背景 本文是基于南开大学微操作机器人n k t ym r 0 5 进行的面向对象的微操作 机器人编程语言的开发,n k t ym r 0 5 是由南开大学机器人与自动化研究所 ( 瓜认s ) 研制的微操作机器人,其应用领域有生物医学的细胞显微注射、染色 体显微切割等。 微操作机器人( m i c r o o p e r a t i o nr o b o t ) ,又称为微驱动机器人,是一项 跨世纪的技术,是机器人技术和微机电系统( m e m s ) 的结合。与传统的工业机 器人不同,微操作机器人具有宏空间、微操作的特点,即被操作对象十分微小 1 0 第1 章引言 ( 主要是微米级的细胞) ,运动空间却相对较大( 可达两个厘米) 是一种能够在 微观领域进行操作或作业的智能机器人系统。它的外型体积未必很小,但是运 动精度高,操作对象微小,能够完成一些精细操作和加工组装过程。 微操作机器人编程语言是在原有微操作机器人软件系统上进行开发,采用 解释控制原理对语句进行解释后调用原有微操作机器人软件控制系统中其他层 次结构中相应的功能函数。下面是南开大学微操作机器人n k t ym r 0 5 软件系 统的简要介绍: n k t ym r 0 微操作机器人软件系统采用了基于分层递阶的微操作机器人软 件体系结构,对微操作机器人软件控制系统进行了层次划分,并采用面向对象 的软件工程方法进行系统的抽象和封装。此外,在软件结构中,引入了原语控 制层以实现非结构化环境中微操作的“示教再现”。作为实时的软件控制系统, 我们采用了基于图形用户接口( g u i ) 的软件交互界面,用户可以通过键盘输入 或者鼠标点击等简单的方式来实现对微操作机器人的控制,进行生物细胞的转 基因等精微操作。同时,系统还通过显微成像系统,实时地把当前操作区域的 视频信息显示在计算机屏幕上,用户可以通过它进行规划和监控任务执行过程。 在智能机器人典型的控制结构中,整个系统按照任务的颗粒度和抽象级别 不同,自顶向下分为:任务规划层、轨迹规划层、运动控制层和伺服控制层四 个层次。机器人是实时控制系统,一般采用多机协作的工作方式,即由下位机 实现实时性要求高的运动控制和伺服控制,采用嵌入式系统;上位机实现任务 规划和轨迹规划等智能化操作。使用面向对象发给你放,把微操作机器人上位 机软件系统抽象为三个层次和四个独立模块( 见图1 2 ) 。 人机交互模块以图形的方式同用户进行交互。人机交互模块负责接收用户 的指令,调用其它对象的服务模块去执行,然后把执行结果以友好的方式反馈 给用户。 在层次化软件系统中,各个层次和模块需要以一定的方式进行交互和协作。 主框架模块以全局数据库的形式提供整个系统运行所需的环境信息,所有的对 象都通过主框架模块实现基于全局变量的信息交互和协同工作。 在微操作机器系统中,显微图像的处理、分析和理解是实现系统闭环控制的 关键。图像理解模块实现对微操作工具和操作对象的空间位置信息的获取,显 微图像的理解速度和精度直接影响着整个系统的性能。 运动接口模块主要实现笛卡儿坐标系下的运动距离到电机转动角度的转换 第1 章引言 功能;对于多轴系统,运动接口模块还负责把多轴命令分解为若干个单轴命令 下发给各个轴。 轨迹规划完成空间点到点运动的路径生成,在进行运动路径生成时,考虑路 径上的障碍问题并进行避碰处理。 一 图1 2 微操作机器人软件体系结构 原语控制的基本思想是把机器人的任务简单抽象为任务原语的一个执行序 列,从而实现了任务规划和任务执行的分离。这样,借助于人对任务的理解, 在线地进行任务的规划,规划好的任务作为机器人学习到的知识和经验保存在 数据库中。执行任务时,从任务库中调出相应的原语序列,交由原语控制层去 解释执行。要实现原语控制的目标,必须要求整个系统具有高度的实体抽象和 优良的模块封装。任务原语按类型可以分为两种:感知原语和动作原语。感知 原语为任务规划提供工作空间的状态信息,动作原语为任务规划提供运动控制 功能。 任务规划就是机器人的问题求解,根据用户提出的要求,感知当前工作空间 状态,求取完成任务所要执行的动作序列并执行。由于原语控制层的引入,它 1 2 第1 章引言 们的功能被大大简化。任务规划模块根据对数据库的操作可进一步细分为三个 模块:新建、修改和删除。 1 3 2 论文主要研究内容 本文首先分析了微操作机器人语言的总体需求,接着提出语言系统的整体 架构,给出功能划分。然后对其中各个子模块的功能进行了详细说明,并对各 个子模块间的通信和同步机制进行了深入分析。 其次,论文给出了微操作机器人语言解释器的设计与实现过程。分别从词 法分析模块、语法分析模块、语义分析模块和目标函数调用模块分别介绍说明, 并给出根据这些设计方法建立的微操作机器人语言指令代码集。 最后,解决了在进行微操作复杂作业实验过程中的几项关键性技术,包括 实时显示针尖位置、多边形任务轨迹规划和多个运动命令依次下达时运动分线 程的问题,并在此基础上,设计并实现了基于微操作机器人语言的复杂作业实 例,验证了本文微操作机器人语言的有效性。 1 3 3 论文研究意义 微操作机器人编程语言是微操作机器人软件系统中一项重要的研究内容, 它可以通过在线给出的一系列命令语句的方式,来完成非结构化环境下微操作 的复杂作业。该研究方向,旨在建立用户和机器人系统之间有效的通信方法, 使用户能更加方便地控制机器人完成预定的任务,并可以把预定完成的任务通 过字符串的形式保存起来,这就为机器人自动完成多种微操作任务奠定了基础。 在n k t ym r 0 微操作机器人软件系统的基础上开发出的微操作机器人编程 语言,使编程语言与原设置页面结合起来,既可在原设置控件上设置运动模式 及速度相关参数完成操作,也可通过编程实现相关设置及实验。 微操作机器人编程语言是微操作机器人软件系统的一部分,它包括用来规 划系统完成特定任务的编程语言。使编程语言与原设置页面结合起来,既可在 原设置控件上设置运动模式及速度相关参数完成操作,也可通过编程实现相关 设置及实验。而且十分易学,它结构简单、明了、易读,它所有的命令都使用 人类易读、易记忆的单词或数字串,用户的控制机器人运动的程序可以在计算 机上方便的编写、调试。 1 3 第1 章引言 微操作机器人语言一大特点是提供了完成各种基本运动操作的子程序库, 一个复杂的机器人运动,可以分解为一系列的简单的子运动操作,实现这些子 操作的程序或命令一般都己存在,这为用户编写复杂运动的程序提供了方便。 机器人语言是该软件系统中至关重要的一部分,是机器人系统智能化和自 动化进一步体现,它不仅能使工具操作起来简单灵活,而且可以方便继承一些 现有的成熟的功能,方便用户使用。 1 4 第2 章微操作机器人语言结构设计 第二章微操作机器人语言结构设计 第一节微操作机器人语言需求分析和功能描述 2 1 1 微操作机器人语言需求分析 应用于复杂作业的微操作机器人语言不同于原有的微操作机器人语言,首 先原有微操作机器人语言是面向对象的,类似高级编程语言的书写格式,而面 向复杂作业的微操作机器人语言是参考美国u n i m a t i o n 公司的v a l i i 语言基本 表达格式,采用解释控制方法对语句进行分析,便于理解和书写:其次,应用 于复杂作业的微操作机器人语言着眼于面向复杂作业,通过语言来实现微操作 复杂作业,并存在于微操作机器人系统中,在功能上更高级,有更丰富的语言 指令。 同任何其他机器人语言相似,本文提出的微操作机器人语言实际上也表达 了用户的操作意图。通过微操作
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年黄山市徽州国有投资集团有限公司招聘13人模拟试卷含答案详解
- 2025年烟台市公费医学生考试选聘(139人)模拟试卷及答案详解(各地真题)
- 2025湖南湘潭市市直学校人才引进45人考前自测高频考点模拟试题附答案详解(考试直接用)
- 2025福建漳州市漳浦县金瑞集团招聘20人模拟试卷附答案详解
- 2025湖南株洲市茶陵县卫生健康局所属事业单位就业见习岗位招聘10人模拟试卷及答案详解(名师系列)
- 2025内蒙古鄂尔多斯生态环境职业学院人才引进38人模拟试卷及完整答案详解1套
- 2025届春季江苏金陵科技集团有限公司校园招聘模拟试卷及参考答案详解
- 2025年福建南平武夷有轨电车有限公司招聘1人模拟试卷及完整答案详解1套
- 2025年嘉兴市秀洲区王江泾医院公开招聘编外合同制人员5人模拟试卷有答案详解
- 2025江苏南京市栖霞区人民法院编外人员招聘6人考前自测高频考点模拟试题附答案详解
- 2025年上海市公安辅警、法检系统辅助文员招聘考试(职业能力倾向测验)历年参考题库含答案详解
- XX园项目销售手册
- 锅炉工安全培训知识课件
- GB 46031-2025可燃粉尘工艺系统防爆技术规范
- T/DGGC 005-2020全断面隧道掘进机再制造检测与评估
- 手机媒体概论(自考14237)复习题库(含真题、典型题)
- 2024版人教版八年级上册英语单词表(含音标完整版)
- 天津地区高考语文五年高考真题汇编-文言文阅读
- 高三为梦想扬帆++励志班会课件
- 个人简历模板(5套完整版)
- 跟踪出站调车讲解
评论
0/150
提交评论