




已阅读5页,还剩52页未读, 继续免费阅读
(模式识别与智能系统专业论文)基于vxworks的智能机器人软件系统支撑平台的研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
南京理工大学硕士学位论文基于v x w o r k s 的智能机器人软件系统支撑平台的研究与实现 摘要 多智能体的概念起源于分布式人工智能,多智能体机器人是多智能体概念 在机器人学领域的一个具体应用。本文根据多智能体机器人系统理论,结合教 研室的课题履带式自主移动机器人,对基于v x w o r k s 的智能机器人软件 系统支撑平台做了初步研究,并部分实现了该平台。 本文首先介绍了智能体及多智能体机器人系统的概念,研究了其系统结 幸句,提出多层次智能体树结构模型;然后根据该模型,结合嵌入式实时系统和 履带式自主移动机器人的分布式硬件系统的特点,研究设计了机器人软件系统 支撑平台。该支撑平台位于实时操作系统v x w o r k s 之上,和机器人上层软件 系统之下,为上层系统提供了透明、稳定的运行环境和交互接口。支撑平台以 操作系统为基础,为上层软件系统提供运行控制、内存管理、安全保障、消息 通信、系统调度等服务。此外,支撑平台良好的兼容性保证了上层应用系统的 可移植性。 文中研究并设计了支撑平台的软件模型,详细讨论了模型中各组成部分的 功能与实现。本文最后两章重点讲述了支撑平台的调度策略和通信系统的设计 与实现。 关键字:智能体多智能体机器人实时操作系统v x w o r k s内存管理机制 异常处理机制实时调度消息通信机制 a b s ”a c t 硕士论文 a b s t r a c t t h ec o n c e p to fm u l t i a g e n tc o m e sf r o md a i ( d i s t r i b u t e da r t i f i c i a li n t e l l i g e n c e ) m u l t i z a g e n tr o b o ti so n eo fi t sa p p l i c a t i o n si nt h ef i e l do fr o b o t i c s t n sp a p e rd o e s s o m er e s e a r c ho nm u l t i a g e n tr o b o ts s p ( s o f t w a r es y s t e ms u p p o r tp l a o e o 脯) a n d r e a l i z e st h ep l a t f o r mp a r t i a l l nt h ed e s i g no ft h ep l a t f o r mi sb a s e do nm u l t i a g e n t s y s t e mt h e o r ya n do u rl a b sr e s e a r c hp r o j e c t p a m r ( p e d r a i la u t o n o m o u sm o b i l e r o b o t ) f i r s t l y , t h i sp a p e ri n t r o d u c e st h ec o n c e p to fa g e n ta n dm a r s ( m u l t i - a g e n tr o b o t s y s t e m ) ,a n di n v e s t i g a t e si t ss y s t e ma r c h i t e c t u r em o d e l at r e es t r u c t u r em o d e lo f m u l t i l a y e ra g e n ti sp r o p o s e d t h e n ,c o m b i n i n gw i t ht h i st r e es t r u c t u r em o d e l ,t h e c h a r a c t e r i s t i co fe m b e d d e ds y s t e ma n dt h ed i s t r i b u t e dh a r d w a r es y s t e mo fp a m r , s s pi s d e v e l o p e d t h ep l a t f o r ml o c a t e sb e t w e e nr e a l - t i m eo p e r a t i n gs y s t e m v x w o r k sa n dr o b o tt o ps o f t w a r es y s t e m i tp r o v i d e st o ps o f t w a r es y s t e mw i t h s t e a d yc r y s t a lm ne n v i r o n m e n ta n di n t e r a c t i o ni n t e r f a c e s s pp r o v i d e st o p s o f t w a r e s y s t e mw i t hs e r v i c eo f i a nc o n t r o l ,m e m o r ym a n a g e m e n t ,s e c u r i t y g u a r a n t e e ,m e s s a g ec o m m u n i c a t i o n ,s y s t e ms c h e d u l i n ge t c b e s i d e s ,t h e c o m p a t i b i l i t yo ft h i sp l a t f o r me n s u r e st h er e p l a n t a t i o no fa p p l i c a t i o ns y s t e m t h es o f t w a r em o d e lo fs s pi sd e s i g n e d ,a n dt h ec o m p o n e n t so ft h em o d e la r ed i s c u s s e di n d e t a i li nt h i s p a p e r i nt h el a s tt w oc h a p t e r s ,m e s s a g ec o m m u n i c a t i o na n ds c h e d u l i n g m e c h a n i s ma r em a i n l yi n v e s t i g a t e d k e y w o r d s :a g e n tm u l t i - a g e n tr o b o t r e a l - t i m eo p e r a t i n gs y s t e mv x w o r k s m e m o r ym a n a g e m e n tm e c h a n i s me x c e p t i o nh a n d l i n gm e c h a n i s m r e a l - t i m e s c h e d u l i n g m e s s a g ec o m m u n i c a t i o nm e c h a n i s m n - 声明 本学位论文是我在导师的指导下取得的研究成果,尽我所知,在 本学位论文中,除了加以标注和致谢的部分外,不包含其他人已经发 表或公布过的研究成果,也不包含我为获得任何教育机构的学位或学 历而使用过的材料。与我一同工作的同事对本学位论文做出的贡献均 己在论文中作了明确的说明。 研究生签名:盈兰理 学位论文使用授权声明 南京理工大学有权保存本学位论文的电子和纸质文档,可以借阅 或上网公布本学位论文的全部或部分内容,可以向有关部门或机构送 交并授权其保存、借阅或上网公布本学位论文的全部或部分内容。对 于保密论文,按保密的有关规定和程序处理。 研究生签名:逸生靼 南京理工大学硕士学位论文 基于v x w o r k s 的智能机器人软件系统支撑平台的研究与实现 l 绪论 1 1 引言 随着计算机、通讯、电子、控制等技术以及人工智能的飞速发展,机器人 的开发与应用得到了不断地提高。机器人的发展经历了以下三个阶段:可编 程的示教机器人;带有一定的视觉、触觉,具有定适应能力的机器人; 带有多种传感器,具有自适应能力、自学习功能的自主式机器人,即“智能机 器人”。智能机器人是多种学科技术的集成,涉及到控制工程、计算机技术、 人工智能、传感技术、仿生学和其它一些相关的领域,国内夕 都对智能机器人 展开了相关的研究。 随着智能机器人技术的发展,人工智能领域的研究重点已经转到多智能体 机器人系统的研究上f l 】。众多事实表明,一个相互协调的多机器人系统有着众 多优势,同时多机器人系统也存在许多的问题有待研究。进行多机器人系统的 研究是机器人技术发展的必然趋势,必将对机器人技术的发展带来划时代的变 革【2 】。本文将对基于多智能体的机器人控制器软件支撑平台进行初步研究。 1 2 多智能体机器人的研究现状 近年来,受分布式人工智能中多智能体系统研究的启发,一些从事机器人 学研究的人员将智能体概念应用于机器人系统,其基本思想是依据多智能体的 组织特性来控制机器入系统,使系统具有能合作完成人所赋予任务的能力。系 统中的每个机器人或功能模块都被视为一个具有智能行为的自主系统 ( a g e n t ) ,能利用局部信息进行自主规划,并能通过规划推理解决局部冲突实 现协作,从而完成与自身相关的局部目标。依据多智能体系统的特性来组织和 控制机器人是机器人学研究领域的新课题,具有重要的理论和现实意义。 目前多智能体机器人领域的研究内容主要有控制结构( 或体系结构) ,通 信和冲突的解决等问题 2j 。除了上述的几个主要问题外,多机器人系统中需要 研究的问题还有多机器人系统的学习问题和环境观察问题等。 基于多智能体系统理论的研究已进行了多年,许多研究机构都开展了这方 面的理论研究,并取得了一定的成果。相关的研究工作包括f u k u d a 研究的 c e b o t 系统叭g b e n i 研究的s w a r m 系统”、a c t r e s s n 、g o f e r 7 1 等 系统。以上介绍的研究项目多以理论和仿真研究为主,因此,近年来出现的实 验系统研究报道颇受关注。m a t a r i c 研究了基于同构机器人a g e n t 间的协作行 为,她从硬件上实现了一个由多个机器入a g e n t 组成的机器入团队【8 】,并演示 第一章绪论硕士论文 了基于多机器人系统的群集、搜寻等群体协作行为。r a r k i n 领导的移动机器 人实验窒( m o b i lr o b o t i cl a b o r a t o r y , g e o r g i ah l s t i t u t eo f t e c h n o l o g y ) 致力于地 面无人车辆系统( u g v ,u n m a n n e dg r o u n dv e j l i c l e ) 的研究渺j ,该项目受到美 国国防部高级研究计划署( a r p a ) 支持。2 0 0 2 年该项目进行到d e m or n 阶段, 其目标是为美国军队研制一队可投入战场使用的无人驾驶侦查车辆【l 。r c a r k i n 的研究小组对基于反应控制的机器人团队( 一组自主车辆) 在动态、危 险环境下的协同工作进行了深入研究【1 1 1 ,并且在移动机器入团队导:航、避障、 行进编队、搜寻及任务指派等方面取得相应的研究成果 1 2 1 1 1 3 1 1 1 4 ) 【1 5 】【1 6 l 。相关结 论在实验室中进行了模拟验证,并进一步在u g v 团队中进行了实验。c t h o r p e 领导的研究小组( 隶属于r o b o t i ci n s t i t u t e ,c a r n e g i em e l l o nu n i v e r s i t y ) 对基于 城市环境下的自治移动机器人系统( u r b a nr o b o t ) 进行了研究,他们的研究重 点是目标的跟踪与检测,以及从目标丢失事件中自举等。其中综合了机器人的 其他行为,典型如避障等。此外,他们也对u g v 进行了研究 1 8 。 国内这方面的工作开展的比较晚,清华大学,上海交通大学,南京理工大 学,国防科技大学等陆续开展了研究,目前已经取得了一定的成果。 1 3 本文的主要研究目的与内容 智能机器人系统在工业生产、军事等领域都有广泛应用,近年来国家对多 机器人系统的研发给予了较大的重视。本文结合国防预研项目履带式自主 移动机器人的开发,对基于嵌入式系统的多智能体机器人软件系统支撑平台做 了初步研究,并部分实现了该平台的部分功能。 多智能体机器人系统代表了冗余的、多变量的控制系统,同时又是复杂的 耦合动态系统,这使得机器人系统对控制精度、实时性能、可靠性的要求较高。 目前在机器人上运行的操作系统大都为实时操作系统,并在这些实时操作系统 的基础上开发出机器人的软件系统。本文中机器人上运行的操作系统为实时操 作系统v x w o r k s ,支撑平台位于操作系统和机器人上层的软件系统之间,是一 个中间层软件系统。支撑平台根据多智能体系统的相关理论,并结合嵌入式实 时系统的特点,研究了多智能体机器人系统的任务调度、通信以及系统内存分 配、系统稳定性等方面的内容,为多智能体机器人的上层软件系统提供了个 透明的运行环境。 本文研究多智能体机器人软件系统的支撑平台,主要采用理论分析和具体 设计实现相结合的方法。本文的主要工作集中在以下几个方面: ( 1 ) 分析并设计了支撑平台的总体结构及其详细组成。 ( 2 ) 讨论了嵌入式系统的内存管理,系统稳定性机制,并给出其在支撑平 台中的具体实现。 2 南京理工大学硕士学位论文基于v x w o r k s 的智能机器人软件系统支撑平台的研究与实现 ( 3 ) 研究了多智能体机器人的通信系统,给出了通信系统的模型,并根据模 型在支撑平台中实现了消息发送任务,接受任务,分派任务以及通信接口。 ( 4 ) 研究了多智能体机器人系统的调度机制,给出了支撑平台中全局调度和 局部调度的双重策略,来分配系统中的c p u 和网络资源,为系统的运行提供 了实时保障。 1 4 本文主要内容安摔 本文的结构体系如下: 第一章绪论。介绍多智能体机器人的研究现状和多机器人系统的主要研 究内容。概要介绍本文的研究目的和研究内容。 第二章多智能体机器人与实时系统概论。介绍多智能体系统( m a s ) 的 相关内容,然后介绍履带式自主移动机器人的软件和硬件体系结构,最后介绍 实时系统的基本概念。 第三章支撑平台的模型分析与部分实现。介绍了机器入软件系统的总体 结构和支撑平台的总体结构。分析了支撑平台的各组成部分,并详细讲述了其 中的内存管理机制,系统安全机制的实现。 第四章支撑平台的通信系统。通信是多智能体机器人系统中的关键技 术,本章首先研究了多智能体机器人的通信模型,然后根据通信模型详细介绍 了通信系统中各部分的结构和算法实现。 第五章支撑平台的调度策略。介绍了常用实时任务的调度算法,结合机 器人控制系统的特点提出了全局和局部的双重调度机制。局部调度策略保证了 本地任务的实时调度:全局调度策略保证了系统中消息的实时调度。 第二章多智能体机器人与实时系统概论硕士论文 2 多智能体机器人与实时系统概论 本课题的履带式自主移动机器人( p a m r ,p e d r a i la u t o n o m o u sm o b i l er o b o t ) 是媳型的多智能体机器人。因此,本章我们将从智能体的概念和结构模型入手, 概要介绍现有多智能体机器人( m a r ,m u l t i a g e n tr o b o t ) 的结构,提出一种多 层次智能体树模型,并以树模型中的子层作为本文后续章节的基础。本节最后介 绍p a m r 的软硬件体系结构,并简述了实时系统以及v x w o r k s 的基本概念。 2 1 智能体简介 “智能体”( a g e n t ) - - 词在多机器人系统中具有广泛的实际意义。一般来说, a g 鲫t 实质上是指能实现某一性能的计算机程序单元的模型,同时可以从更为抽象 和普遍的意义上作为复杂软件系统的分析、说明及实现的代名词。它以软件系统 的形式作为人的智能“代理”,简称为智能体。“智能体”也是一个伸缩性极强的 概念,最简单的a g e n t 就是一个具有相关特性的计算机进程j ,而该进程可能只 是一个具有某种智能的子程序,能够与别的a g e n t 交换信息:同时,a g e n t 也可以 是一个具有复杂智能行为的机器人系统,多个a g e n t 即组成多智能体机器人系统。 a g e n t 至少应具有以下特性:1 ) 能感知它所处的环境;2 ) 能自主与其它智能 体相互作用;3 ) 能自主实现自己的局部目标。 a g e n t 结构可以抽象描述为:a g e n t 通过传感器感知环境,通过效应器作用环 境。此时,a g e n t 可看作一个自治的独立模块。 大多数a g e n t 不仅要与环境交互,更主要的是处理和解释接收的信息,以达 到自己的目的。图2 1 1 给出了智能体的工作过程。a g e n t 接收的信息首先要以适 当的方式进行融合,并能为a g e n t 知识库所接受。信息融合特别重要,不同交互 模块得到的结果可能不同,表达方式也不一样。信息处理过程是智能体的核心, 它反映了智能体的真正功能。信息处理的目的是解释可用数据,形成具体规划。 由于每个a g e n t 都有具体目标,内部目标的影响必须作为影响的一部分考虑,如 果影响弄清了就要采取行动,使之达到或接近目标。 由此可见,从结构上来说,智能体可定义为从感知序列到智能体示例动作的 映射。人工智能的任务是设计智能体程序,实现从感知到动作的映射。 南京理工大学硕士学位论文 基于v x w o r k s 的智能机器人软件系统支撑平台的研究与实现 f 酮 1 一 q 彭 q 吵 ( d 叫二堕 智能悔 图2 1 1 智能体的工作过程 人工智能领域的不同学派根据各自理论对智能体进行了不同地诠释和实现, 这直接导致智能体结构模型的分化,典型的如基于经典人工智能符号模型的慎思 智能体( d e l i b e r a t i v ea g e n t ) 模型以及基于行为的反应智能体( r e a c t i v ea g e n t ) 和 混合型a g e n t ( h y b r i da g e n t ) 口”。从当前的研究和应用现状来看,审慎型a g e n t 占 据主导地位,因为多数研究和开发者都喜欢使用自己已经较为熟悉的符号a 技术 和方法;反应型a g e n t 的研究和应用目前尚处于初级阶段;混合型a g e n t 由于集中 了上述两种a g e n t 的优点而成为当前的研究热点。 2 2 多智能体机器人系统结构 目前,由于基于行为的反应控制( 以b r o o k s 的包含结构为代表) 在实际控制 中具有较快的反应而显得比传统的方法更具优势,因而成为智能机器人研究领域 关注的焦点。然而正如前面所述,基于行为的控制结构有其固有缺陷,难以适应 复杂的智能行为。因此,现代智能机器人系统多采用混合结构模型,使机器人a g e n t 具有一定的推理规划能力。 多智能体系统是由一系列具有不同功能的智能体组成,但又不是多个智能体 简单的集成。它主要研究系统中智能体之间智能行为的协调,其应用主要涉及到 智能体结构、系统整体体系框架和各智能体之间的通讯协调等。多智能体机器人 系统与多智能体机器入概念的一个重要区别是:前者是“群体”概念,而后者是“个 体”概念,由多个机器人“个体”组成机器人“群体”,从而形成m a r s ( m u l t i a g e n t r o b o t i cs y s t e m ) 系统。在多机器人系统中,每台机器人可被抽象地描述为具有一 定判断、感觉、动作以及通信交流能力的智能体,而其中的判断、感觉、动作以 及通信模块又可被认为是具有特定功能的子a g e n t ,根据需要子a g e n t 还可进一步 荐细分,依次类推,则整个机器人系统就形成一个多层次的智能体树 ( h a t , h i e r a r c h i c a la g e n tt r e e ) ,其中,每台机器人通过网络中智能体的连接关系 e 一 第二章多智能体机器人与实时系统概论硕士论文 产生相互作用。这种系统也就是通常所说的多智能体机器人系统( m a r s ) 。它的 网络拓扑结构如下: k a , r s 事智能体机器人系统 r s 机器人智自 体 s 子智能体 图2 2 1 多层次智能体树结构 图2 2 1 给 b 了多智能体机器人系统的网络拓扑结构,是一种典型的分层树结 构。树根为m a r s ,第二层为r a ( r o b o t a g e n t ) 层,第三层及以下层为s a ( s u b r o b o t a g e n t ) 层,r a 层各节点采用并行工作方式;s a 层中具有相同父节点的a g e n t 通常 涉及分布式任务协作,它们往往按一定顺序有序并发执行,而不具有相同父节点 的a g e n t 彼此一般无关系。通常,多机器人协作研究关注r a 层,而机器人内部的 分布式任务求解则关注s a 层,这也是本文关注的焦点。 按照经典人工智能理论,构建机器人控制系统通用的方法是将系统分解为一 系列的串行功能单元,这种系统被构建为垂直系统。基于垂直架构的移动机器人 系统是由多个a g e n t ( 感知、决策、规划、控制等) 组成,它们在一定方式下协调 工作,通常黑板系统在这里充当通信或调度a g e n t ,负责各a g e n t 间的数据交换及 调度。图2 2 2 给出了具体化的移动机器人a g e n t 网络s a 层关系图,系统由二维 道路检测、三维障碍检测、信息融合、路径规划、调度器等a g e n t 组成。在基于 分布式多a g e n t 的实时系统中,同时存在数据流和控制流。数据流由各a g e n t 处理 的物理对象结果数据组成,调度a g e n t 接收到数据流后,得出功能a g e n t 所处工作 状态,若需要,对数据进行预处理,将处理后的数据流传给下一个功能a g e n t ;而 控制流是由“事件一状态”组成的高级监控回路,由调度a g e n t 统一集中处理。 各a g e n t 在不同的c p u 上并发运行,图中黑色箭头回路反应了各a g e n t 任务处理 时序上的先后关系,这一关系对多智能体机器人分布式任务求解非常重要,必须 严格遵守2 2 】 2 3 1 24 1 。 磊轰 南京理工大学硕士学位论文基于v x w o r k s 的智能机器人软件系统支撑平台的研究与实现 与垂直系统相反,基于反应 控制的水平系统强调感知和动作 的水平分离,它同时考虑各感知 一动作模块依据分层模型得出特 定行为。在水平系统中,参考前 面的a g e n t 分层网络模型,可以 将每个行为模块理解为多层 a g e n t 网络中s a 层的一个a g e n t , 而此a g e n t 直接根据感知输入计 算动作输出,并且高层模块可包 含底层模块。 譬圭要兰:。套目要荸萼登竺图2 2 2 移动机器a a g e n t 网络s a 层关系图 机器人控制系统中,无论是垂直 结构、水平结构或是混合结构,都可以统一于多层次智能体树模型。本文以该模 型中的某一r a 及其s a 的结构,来设计p a m r 的控制系统,本文后面的讨论均以此 为基础。 2 3p a 敝的结构 2 3 1p a 趣的体系结构 根据前面的叙述,本文采用多层次智能体树模型,来致计履带式自主移动机器 人( p a m r ) 的控制系统。系统中一个智能体实际上是由软硬件组成的独立的计算 模块,这些模块在运行时作为一个或几个进程执行相应的任务,并与其他智能体 模块进程共享资源或信息传递。p a m r 系统主要由以下功能a g e n t 模块组成:二 维视觉、立体视觉、三维视觉、g p s i n s 、多传感器数据融合、局部路径规划、全 局路径规划、人机交互接口等。各个模块的功能描述如下: 二维视觉模块,根据c c d 采集的图像来检测路边信息: 立体视觉模块,采用双摄影机来测量物体的三维轨迹坐标点,并判断外部空 间的景物深度和距离: 三维视觉模块,负责处理激光雷达数据,检测路面障碍; g p s i n s 模块主要定位机器人在全局地图中的位置; 多传感器数据融合模块通过对各种传感器的采样进行处理,以更高的精度、 置信度得到目标的状态,为局部路径规划提供决策信息; 第二章多智能体机器人与实时系统概论硕士论文 局部路径规划模块根据数据融合的结果规划出机器人的局部运行路径; 全局路径规划模块根据全局地图信息规划出机器人的路径; 人机交互接口模块显示机器人的现场数据和控制信息,并提供遥操作的操作 平台和接口,该模块运行于控制中,t 5 的机器上。 w 州r 控制系统的软件结构如图2 3 i 1 所示,各个功能模块独自完成一定的 功能,有自己的输入与输出,并且相互协作,共同完成对机器人的控制。 图2 3 1 1p a m r 系统的软件结构 实时系统可并发执行多任务,但为了真正实现平行处理,必须有一个紧密耦 合的多机系统作为支撑,本文的支撵平台就提供这样一个多处理机平行处理环境。 因此控制支撑平台是机器人控制系统的关键,它为上层的各功能模块提供运行环 境。支撑平台屏蔽掉底层的通信、调度细节,提供一个逻辑上连通的环境,使得 - 8 南京理工大学硕士学位论文基于v x w o r k s 的智能机器人软件系统支撑平台的研究与实现 在各功能模块能有效地协调工作。此外,还为整个控制系统的初始化、资源管理、 以及系统安全等提供统一的管理机制。移动机器人的控制系统总体结构如图2 3 1 ,2 所示。 图z 3 1 2 移动机器人控制系统总体结构 2 3 2p 弧的硬件结构 为了便于对整个p a m r 系统的理解,本节简单的介绍一下p a m r 的硬件结构。 p h v i r 系统是一个由机器人本体和控制终端组成的分布式系统,本体和控制终端通 过无线通信系统连接,本体上若干台嵌入式工控机通过商速以太网连接,组成本 体控制系统。机器人本体具有的自主运行的能力,控制终端的上位计算机可以监 控机器人的运行,并可在任何时候向本体发出遥操作指令。 图2 3 2 1p a m r p m a r 系统的本体包括两个主臂、两个辅臂、电源和驱动系统。主臂由前、后轮 和履带组成,前后两轮的尺寸相同,前轮作为驱动轮,采用履带方式传动。机器人 有主臂的直线运动、辅臀的同步旋转运动两种运动自由度。辅臀和相应主臀的前轮 9 _ 第二章多智能体机器人与实时系统概论硕士论文 采用同轴连接以实现辅臂和相应主臂的同步直线运动。车体运动方向通过两个主臂 的速度进行间接控制,当两轮速度大小相同、方向相反时,可以实现车体的旋转运 动。车载电池组提供整个机器人本体工作时的电源。 驱动系统包括电机驱动芯片、功率放大电路和现场可编程门阵列( f p g a ) 三个 部分。机器人本体上的由若干台嵌入式工控机p c 1 0 4 组成的上位主控系统、c c d 等传 感器分别安装在各本体控制系统各工控机上。机器人本体设计图如2 3 2 1 所示。 p a m r 的硬件控制系统是由若干台嵌入式工控机p c 1 0 4 组成的分布式系统,它 们通过有线或者无线的方式实现互连,采用并行的分布式结构工作。p c 1 0 4 标准 的与p c 兼容的体系结构更易于维护、扩展、升级,可以大大减少开发者的工作量( 2 5 1 。 2 4 嵌入式实时系统简介 嵌入式系统就是以应用为中心,以计算机技术为基础,软硬件可裁剪,适合 应用系统对功能、可靠性、成本、体积和功耗要求的专用计算机系统【2 6 j 。 在嵌入式系统中,计算机系统一般作为智能控制部件嵌入到整个应用系统中, 是整个系统的控制中心,主要用于对系统的信息处理部件和用户界面加以控制。 用户并不知道( 或者不需要知道) 嵌入式计算机系统的存在,系统控制软件一股 被固化在嵌入式计算机中,嵌入式计算机一般不需要( 或不能) 被用户重新编程, 而是通过特殊的输入、输出设备与系统交互。 嵌入式系统包括硬件和软件两个方面。硬件包括微处理器、存储器、i 0 端口 等:软件包括操作系统和应用软件。与通用p c 的硬件相比,嵌入式系统的硬件系 统具有体积小、集成度高、低功耗、电磁兼容性好等特点;软件是嵌入式系统的 灵魂,它和硬件紧密相关,与通用的软件系统结构相比有很大的不同,通用软件 系统的应用程序一般建立在操作系统之上,通过调用操作系统提供的功能实现程 序的运行,操作系统完全控制硬件。而嵌入式系统软件中,操作系统和应用软件 结合得非常紧密,形成一个整体。图2 4 1 表示了这种差别。 嵌入式系统软件结构 b 通用系统软件结构 图2 4 1 嵌入式系统与通甩系统的软件结构 南京理工大学硕士学位论文基于v x w o r k s 的智能机器人软件系统支撑平台的研览与实现 实时性是嵌入式领域的一个重要概念,实时系统( r e a l t i m es y s t e m ) 是指 在确定的时间内完成规定的功能,并对外部异步事件做出正确响应的计算机系统。 它主要由响应时间( r e s p o n s et i m e ) 、生存时间( s u r v i v a lt i m e ) 、和吞吐量 ( t h r o u g h p u t ) 等3 个指标来衡最【2 6 i 。 v x w o r k s 是美国风河公司( w i n d r i v e r ) 设计开发的一种嵌入式实时操作系统 ( r t o s ,r e a l t i m eo p e r a t i n gs y s t e m ) ,该系统以其高可靠性、强实时性,及高 速率、稳定、可配置内核的优势,广泛地应用在通信、军事、航天等高精失技术 及实时性要求极高的领域中。v x w o r k s 是美国航空航天局( n a s a ) 研制的火星探测 机器人“s o j o u r n e r ”的操作系统,这是其最著名的应用之一。 v x w o r k s 是一个具有可伸缩、可裁剪和高可靠性,同时适用于所有流行目标 c p u 平台的实时操作系统,它包括个微内核、强大的网络支持、文件系统、i 0 系统。其主要特点如下 2 7 1 2 8 】: 高效的微内核设计:v x w o r k s 微内核具有全部实时特性,包括迅速的多任务 调度、中断支持以及同时支持抢占式调度和时间片轮转调度。与此同时该内核还 具有系统负担小、对外部事件的响应时间确定等特点。v x w o r k s 还提供了广泛的任 务间通信机制,包括共享内存、消息队列、s o c k e t s 和信号量等。 可裁剪的运行软件:v x w o r k s 的可裁剪特性使得开发者可以对操作系统的功 能、大小进行增减,从而为自己的应用程序保留更多的资源。利用t o r n a d o 的工 程项目管理工具,可以轻松对v x w o r k s 的各种功能选项进行增减。 丰富的网络支持:v x w o r k s 是第一个集成标准t c p i p 网络功能的实时操作 系统。到目前为止它的t c p i p 协议支持最新的b e r k e l e y 网络协议。 实时性:由于v x w o r k s 系统本身开销小,任务调度、任务间的通信和中断 处理等系统功用程序精练而高效,使得同样的硬件配置能满足更强的实时性要求。 2 5 本章小结 本章首先讨论了智能体的基本概念及其结构,然后根据人工智能领域的不 同学派讨论了智能体结构模型的分类;在此基础上给出了多智能体机器人的结 构模型,并提出了多层次智能体树模型,为后续章节的展开打下基础。本章最 后两小节介绍了p a m r 系统的软硬件结构,并简要介绍了嵌入式实时系统以及 v x w o r k s 的基本概念。 第三章支撑平台的模型分析与部分实现硕士论文 3 支撑平台的模型分析与部分实现 智能机器人软件系统支撑平台在机器入控制系统中有着举足轻重的作用, 它为上层控制系统提供了透明的运行环境。本章将重点介绍其结构,并按其结 构简单介绍各个组成部分,本章最后部分详细介绍了支撑平台中的内存管理和 安全保障机制。 3 1 机器人控制支撑平台的鳍构 3 1 1 支捧平台的总体结构 基于嵌入式系统的智能机器人软件系统,可以分为上层系统与下层支撑系 统,其中上层系统是由相互协作的各种功能a g e n t 组成,下层系统支撑上层系 统的运行。下层系统可以看作由b s p ( b o a r ds u p p o r tp a c k a g e ,板级支持包) , v x w o r k s 、以及控制器支撑平台( s s p ,s o f t w a r es y s t e ms u p p o r tp l a t f o r m ) 三部 分组成,软件系统的具体层次结构如图3 1 1 1 所示。其中b s p 来源于嵌入 式操作系统与硬件无关的设计思想,操作系统被设计为运行在虚拟的硬件平台 上,对于具体的硬件平台,与硬件相关的代码都被封装在b s p 中,由b s p 向 上提供虚拟的硬件平台,b s p 与操作系统通过定义好的接口进行交互。b s p 是 所有与硬件相关代码的结合p ”。v x w o r k s 层是根据实际需要定制和裁剪过的操 作系统,它提供系统运行的平台,并给出了基本的任务管理、消息队列服务、 内存管理等机制以及其它的系统服务。 上层系统 下层系统弋 感 规 控 知划制 支撑平台( s s p ) , v x w o r k s b s p 硬件 图3 1 1 1 机器人软件系统的层次结构 南京理工大学硕士学位论文 基于v x w o r k 3 的智能机器人软件系统支捧平台的研究与实现 支撑平台( s s p ) 是本文的研究重点,它位于v x w o r k s 操作系统层之上, 是下层支撑系统中与上层系统联系最密切的层,是一个承上启下的连接层。该 平台调用其下层v x w o r k s 操作系统提供的a p i 函数,屏蔽所有的底层通信、调 度等细节,建立上层系统运行的环境,监控系统的运行,并且提供相应接口函 数供上层系统调用。该支撑平台可以看作操作系统的子系统,它提供比操作系 统更高层次的服务,又向上屏蔽各种具体的实现细节,对上层是完全透明的。 它服务于上层各功能模块,并为其提供一整套的运行机制,包括:建立运行环 境,监视和控制进程的运行,提供上层各功能模块的调度和消息通信机制,为 上层提供简洁的调用接口。参照图3 1 1 2 我们可以更直观的理解该控制支持 平台在分布式的机器人控制系统中的作用和位置。 图3 1 1 2s s p 在分布式系统中的结构 v x w o r k s 实时操作系统提供微功能形式,在系统内部只提供可以运行程序 的最小功能集,它以提供多任务运行的环境为目标,包括内存区划分,时间管 理机制,调度管理机制,任务通信管理机制等,其它复杂的功能则通过这些简 单而又精密的机制,提供调用接口给用户,由用户的程序来完成具体的功能, 即实现策略和实现的分离】。所以,从通用操作系统的角度看,所谓实时操作 系统仅仅是一个操作系统的内核,它所实现的仅仅是系统可咀运行多任务的最 小功能原语集。与通用非实时操作系统相比,实时操作系统本身非常灵巧,可 灵活应用于各种嵌入式系统的开发。同时,它的“灵巧”也使得它所提供的功 能变得单一,用户需要在此基础之上设计开发可满足自己需要的如内存管理、 异常处理等功能,这增加了开发的风险。因此,在v x w o r k s 基础上开发相应的 外层软件,并且提供功能各异的开发包,是成功开发嵌入式系统的重要保障。 根据实际需要,对b s p 进行定制和v x w o r k s 进行裁剪,将它重新编译生成 1 3 。 第三章支撑平台的模型分析与部分实现硕士论文 内核,看似满足了用户的需要,其实问题并没完全解决。从工程的角度看,操 作系统只是应用软件实现的平台,它屏蔽了底层的软硬件细节,但用户的应用 程序以什么样的方式运行,如何统计定位程序的错误,如何监控系统的运行等, 都需要设计自己的策略。 综上所述,在操作系统基础上建立控制支撑平台,完成系统初始化,监控 上层系统的运行,实现任务管理和调度,提供了上层系统中进程间的消息通信, 并提供功能完善的开发接口,是上层控制系统稳定运行的关键,也是成功研发 p a m r 系统的重要保障。 3 1 。2 支捧平台的详细结构 上一节分析了支撑平台的结构,它为上层系统提供运行的环境。为了设计 该支撑平台,这里先了解一下上层系统中进程的编程模型,再据此来进行相关 设计。上层系统采用有限状态机( f s m ,f i n i t es t a t em a c h i n e ) 模型【29 l 来调度, 它具有离散式输入的有限状态集合。上层任务通常处于某个状态,它会根据触 发事件( 本文中是接收到的消息) 进行相应的状态跃迁,在新的状态下工作, 并等待新的触发事件一 从上层系统的编程模型可以看出,上层系统是以消息通信的方式运行,支 撵平台必须提供相应的通信机制,例如紧急事件需要尽快传达目的地,重要消 息需要回复确认等:系统的运行需要内存空间,支撑平台为各任务提供统一的 内存的分配与回收服务,使得各任务有足够的运行空间,又能安全地访问自己 的数据区,不会越界操作。此外,根据系统上层任务的消息驱动特性,需要设 计专门的调度服务程序来调控各任务的运行。除了前述的各项功能外,s s p 还 需要解决几个重要的问题:当系统中操作系统v x w o r k s 启动后,虽然操作系统 知道各任务的存在,但任务间的逻辑关系操作系统是无法知晓的,s s p 需要设 计相应的启动控制机制,使整个控制系统r 邕正确启动。系统启动后,还需要保 证任务的正常运行,正确处理各种异常。v x w o r k s 操作系统提供基本的异常处 理机制:当系统中的任务出现异常时,将异常任务挂起,并给出程序的入口地 址以及异常发生前的相关信息。但是直接利用这些信息来定位问题所在,会给 上层系统的研发带来根大的不便。上层系统的任务是消息驱动的,消息处理通 常都比较复杂,涉及多个函数,因此s s p 根据系统运行的情况,设计了专用的 异常处理机制,该机制能够反映异常发生时程序间的调用关系,可以具体定位 到引起异常的地方。最后,从安全性和简化上层开发的角度出发,s s p 还提供 一套完善的a p i 给上层各功能模块,这些a p i 是通过封装v x o r k s 提供的一 些系统调用来实现的。 由上述分析可以看出,s s p 是上层系统运行古勺环境,它通过提供各种服务 ,1 4 南京理工大学硕士学位论文基于v x w o r k s 的智能机器人软件系统支撑平台的研究与实现 来支撑上层系统的运行,因此本文设计了若干诸如监控任务、分派任务、消息 收发任务等服务任务来实现各种功能,各服务任务只被s s p 所管理,对上层任 务是透明的,上层任务无法感知这些服务任务的存在,它们通过接口函数实现 交互。 综上所述,支撑平台可具体化为下面5 个组成部分:系统控制、安全保障、 内存管理、系统调度、通信服务。支撑平台的详细结构如图3 1 2 1 所示。 j 系 内谤遗安 统存度:ji 德垒 控管机 蔡- 保 制 理制统障 , , 、 、b d l ,0 妇s 图3 12 1 支撑平台的组成结构 本文以下的章节将按照支撑平台的组成,详细研究分析各部分的功能与结 构,并论述其具体实现。 3 2 支捧平台的通信讥制 v x w o r k s 系统中最基本的执行单位是任务,系统提供了汇编级的多任务运 行环境。任务是多方面的综合,包括状态、堆栈、上下文和执行代码等。每个 任务都对应一个任务控制块( t c b ) 用于保存关键的动态信息,同时内核用来 控制和表示任务”。系统存在多个任务,包括v x w o r k s 基本的系统任务和用户 任务,用户任务是实现应用目的的执行实体。为了便于理解和表述,本文用进 程来表示上层系统中的任务,它是应用程序可控的逻辑运行实体,本质上进程 就是用户任务的加强,进程控制块( p c b ) 中除了包括任务控制块( t c b ) 中的信息 外,还拥有自己的消息队列、私有数据区、入口参数等一些额外信息。 v x w o r k s 提供了灵活丰富的任务间通信机制,包括共享存储区( s h a r e d m e m o r y ) 、信号量( s e m a p h o r e ) 等,但它们都局限于用在本机任务之间的通信。 第三荤支捧平台的模型分析与都分实现硕士论文 而我们的p a m r 系统是典型的分布式系统,它除了保证单机上各任务之间的通 信外,还要保证整个分布式系统中不同主机上任务之间的通信。为了满足机器 人上层系统的要求,s s p 借助于v x r k s 提供的消息通信与网络通信机制,研 究设计了完整的系统通信的方案。 首先,s s p 提供了常用的两种通信方式,同步消息通信和异步消息通信。 同步消息数据量少,紧迫性很高;异步消息数据量大,但紧急程度低。如果用 同一个消息队列存放所有消息,并用f i f 0 方式进行存取操作,同步消息很可 能得不到及时的处理,所以s s p 中设置了两个消息队列,分别存放同步和异步 消息a 其次,机器人控制系统中各进程间的通信包括两部分:本地进程间的通 信,分布式系统中不同主机上进程问的通信。仅仅使用v x w o r k s 提供的消息发 送机制,还不能构成我们的通信系统。若每个进程部设计自己的通信机制,整 个系统将变得相当繁冗,并且一旦发生错误,跟踪调试将非常困难。本文采用 共享内存和基于t c p i p 的网络通信相结合的方式,由s s
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 燃气管道接入与分配系统优化方案
- 智能建筑空调系统设计、安装及能源管理服务合同
- 夫妻共同财产分割与离婚诉讼子女抚养费支付合同
- 房屋建筑工程施工现场废料管理与利用方案
- 脑出血护理测试题及答案
- 钢结构全寿命周期管理方案
- 道路工程课程的教学改革与虚拟实践模式
- 农林大学复试真题及答案
- 2025年中级轮胎测评题库及答案
- 4.3.1呼吸道对空气的处理(一)说课稿2023-2024学年人教版生物七年级下册
- 湿地巡护员培训课件
- 2025鄂尔多斯市城市建设投资集团招聘92人考试参考题库及答案解析
- 2025年地质实验室技术员综合素质考核试卷及答案解析
- 一氧化碳试卷及答案
- 2025年全国企业员工全面质量管理知识竞赛题库及答案(共132题) - 副本
- DL5000-火力发电厂设计技术规程
- 全文解读2021年新修订的《工会法》实用专题PPT讲授课件
- 深圳创业投资行业发展状况
- 《会议摄影怎样拍出彩?》PPT课件
- 美丽的秋天作文习作课件.ppt
- 标准版个人购房合同
评论
0/150
提交评论