• 沒有找到結果。

基于嵌入式的智能机器人及其运动控制系统研究

N/A
N/A
Protected

Academic year: 2022

Share "基于嵌入式的智能机器人及其运动控制系统研究"

Copied!
58
0
0

加載中.... (立即查看全文)

全文

(1)

成都理工大学 硕士学位论文

基于嵌入式的智能机器人及其运动控制系统研究 姓名:周丹

申请学位级别:硕士 专业:测试计量技术及仪器

指导教师:李宏穆

20070501

(2)

基于嵌入式的智能机器人及其运动控制 系统研究

周丹,女,1981年11月出生,2004年从师于李宏穆副教授,于2007年6 月毕业于成都理工大学测试计量技术及仪器专业并获工学硕士学位。

摘要

伴随着嵌入式系统的应用领域不断发展,嵌入式智能机器人系统也逐步成为 智能机器人领域研究的一个热点。具备嵌入式微处理器和具备可裁剪的实时性嵌 入式操作系统的智能机器人也是智能机器人未来的一个发展方向。

智能机器人系统的研究不仅是一门涉及机械电子学、机器人学、传感器信息 融合、智能控制等的技术,同时也和通信、计算机视觉、计算机图形学、人工智 能等领域密不可分。

本文以上海英集斯MT—R型嵌入式智能机器人为硬件平台,对嵌入式智能机 器人系统和基于DSP+CPLD的运动控制系统给予了详尽的研究。对嵌入式处理器 和操作系统的选择予以了对比分析,并对基于CAN总线的通信方式设计了实现方 案,提出了运动控制系统的架构同时引入了单神经元PID控制的改进算法,最后 对运动控制演示程序进行了编译。

关键词:嵌入式系统智能机器人信号处理器(DSP)CAN总线运动控制

(3)

成都理I:人学硕+学位论文

The Research of InteI I igent Robot and Motion Contro l System Based

on

the Embedded System

ZHOU Dan,was bornOnNov.1981.Under the guidance ofassociateprofessor.LIHong-mu from

Sep.2004.Majored in Measuringand Testing Technologies and Instrument and gained the master degreeofengineeringin Chengdu UniversityofTechnologyonJune.2007.

ABSTRACT

As the unceasingly developing ofthe applicationoftheembedded system,the embedded intelligent robotsystemhasbecominghot spot indomainofthe research intelligent robot gradually.111e intelligent robot that hastheembedded microprocess-

or and real timeembeddedoperatingsystem whichmaycutout also hasbecame

future direction oftheintelligentrobot.

1he research of the intelligent robot system involvesnot only the technologies in mechanics—electronics,robotics,SellSOr information fusion and intelligent control,but also incommunication,computer vision,computer graphics,artificial intelligence and other domains.

In this paper is given the exhaustive research to the embedded intelligentrobot

system and its motion control systemwhich is basedontheDSP+CPLD technologies

and we do research on the MT-R that is developed by Shanghai YingJiSi Ltdas the hardware realization platform.How to choose the embedded microprocessor and operating system is presented contrast analysis.Secondly this paper has given the realizationplan forthe system communication is basedon the CAN Bus.Thirdly we have presented the structure of the motion control system and introduced the single

neuronPIDalgorithm.At last themotion control demo programhas beencomplied.

Keywords:Embeddedsystem intelligentrobot DSP CAN-Bus MotioncontroI

II

(4)

独创性声明

本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取锝的 研究成果。据我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其

他人已经发表或撰写过的研究成果,也不包含为获得盛壑堡王盔堂或其他教

育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示谤}意。

学位论文作者导师签名了齿产.宅窜

学位论文作者签名:

川]年

学位论文版权使用授权书

j-月扩日

本学位论文作者完全了解盛都堡王盔堂有关保留、使用学位论文的规定,

有权保留并向国家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和

借阅。本人授权盛壑狸王太堂可以将学位论文的全部或部分内容编入有关数

据库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。

(保密的学位论文在解密后适用本授权书)

学位论文作者签名:

硼年j一月Ⅻ一日

(5)

第1章引言

第1章引言

机器人是近年来迅速发展起来的高新技术密集的机电一体化产品。自1959 年美国英格伯格和德沃尔(Dev01)制造出世界上第一台工业机器人,机器人的历 史才真J下开始。机器人发展到了第三代不仅具有感觉能力,而且还具有独立判断 和行动的能力,并具有记忆、推理和决策的能力,能够完成更加复杂的动作的智

能机器人。其“智能”特征就在于它具有与外部世界——对象、环境和人相适应、

相协调的工作机能。从控制方式看,智能机器人不同于工业机器人的“示教、再 现”,不同于遥控机器人的“主一从操纵”,而是以一种“认知—适应”的方式自 律地进行操作。今天,智能机器人的应用范围大大地扩展了,除工农业生产外,

机器人应用到各行各业,机器人已具备了人类的特点。

在过去的20世纪,机器人的家族逐渐发展壮大。在科学技术高度发展的今 天,伴随着嵌入式系统的广泛应用,嵌入式智能机器人自然成为今后发展的一个 重要方向。将嵌入式技术和机器人技术紧密联系起来,还有视频技术、无线通信 技术、人工智能等领域知识的结合,嵌入式智能机器人的发展代表了高新科技的 紧密结合。

通过研究生阶段的学习积累了大量对智能机器人和嵌入式系统的研究资料,

同时也对轮式移动机器人进行了系统的实验,因此选择了本论文的研究课题。由 于个人能力有限。本文中存有不足之处,望各位老师和同领域的研究人员能够提 出宝贵意见和指正。

1.1智能机器人的技术概述”1

智能机器人技术是在新技术革命中迅速发展起来的一门新兴学科,它在众多 的科技领域与生产部门中得到了广泛的应用,并显示出强大的生命力。它是集精 密机械、光学、电子学、检测、自动控制、计算机和人工智能等技术于一体,形 成的一门综合性的新技术学科。

1.1.1机器人的由来和发展历程

从我国古代用木头制成的能歌善舞的伶人,到1961年第一台工业机器人的 生产,再到机器人蓬勃发展的今天,机器人主要经历了如下的发展历程:

(1)第一代机器人:

科技界把早期的机器人称作第一代机器人,它们按人编的程序干活。这些机器

(6)

成都理l:人学硕+学位论文

人按严格意义来说不属于机器人,因为它们只能重复一种动作,以一种固定的 模式去作,这显然是很不够的,于是就出现了第二代机器人。

(2)第二代机器人:

这一代机器人是由电脑控制,可根据需要按不同的程序完成不同的工作,这就 使得机器人在很多人类所不能完成的工作上大展拳脚!解决了很多工业生产和 生活中的难题。

(3)智能机器人:

随着科技的不断进步,机器人逐渐向智能化发展。智能机器人也就应运而生。

智能机器人具有人的五官及大脑,可以认识周围的环境和自身的状态,并能进 行分析判断,然后采取相应的行动。第三代机器人通过各种传感器获取环境信 息,利用人工智能进行识别、理解、推理并做出判断和决策来完成一定的任务。

这就要求智能机器人除了具有感知环境和简单的适应环境能力外,还具有较强 的识别理解功能和决策规划功能。

1.1.2智能机器人的研究现状和发展

智能机器人按照智能化程度的高低,可以分为外部受控机器人,半自主机 器人和全自主机器人。从行业应用的角度来讲,机器人可分为工业机器人和服 务娱乐机器人。工业机器人包括工作在点焊、弧焊、喷漆、搬运、码垛等工业 现场中的机器人。在不同的应用场合下,又有水下机器人,空间机器人和农业、

林业、牧业,医用机器人等。3。按移动机器人的运动方式,机器人又可分为轮式 移动机器人、步行移动机器人、履带式机器人、爬行式机器人和空气推进、水 下推进等。

从总体的研究状况来看,同本在应用型的移动机器人研究方面走在了世界 的前列,而美国和欧洲的一些国家在有关移动机器人的智能问题方面处于领先 地位”1。国内全自主移动机器人方面的研究还刚刚起步,研究水平与国外相比还 有较大差距,具有一定影响力的有:清华大学的T哪R—V自动驾驶小车,已经 可以在一定的校园环境中自由行走;哈尔滨工业大学的迎宾机器人,实现了无 缆行走、自动避障、语音识别等功能;中科院自动化所模式识别实验室开发了 我国第一代智能轮椅平台,已经具备了超声、红外等多传感器融合的导航系统,

并可以实现简单的口令控制。

(7)

第1章引言

图卜2 ROBOCUP智能移动机器人

此外,中国科学院沈阳自动化研究所也研制成功了自动导引车和一种移动机器 人平台。上海交大近年来一直在进行全自主移动机器人关键技术的研究,并在尝试 利用所拥有的移动机器人平台参加中型组机器人足球比赛;而中科院自动化研究所 复杂系统实验室和高技术创新中心也利用自己已有的工作基础研制开发出了智能 轮椅、全自主机器人和中型组足球机器人。

目前国际机器人界都在加大科研力度,进行机器人共性技术的研究,并朝着智 能化和多样化方向发展“1。主要研究内容集中在以下几个方面:

1.工业机器人操作机结构的优化设计技术:探索新的高强度轻质材料,进 一步提高负载/自重比,同时机构向着模块化、可重构方向发展。

2.机器人控制技术:重点研究开放式,模块化控制系统,人机界面更加友好,

语言、图形编程界面正在研制之中。机器人控制器的标准化和网络化,以及基于 PC机网络式控制器已成为研究热点。编程技术除进一步提高在线编程的可操作性 之外,离线编程的实用化将成为研究重点。

3.多传感系统:为进一步提高机器人的智能和适应性,多种传感器的使用是 其问题解决的关键。其研究热点在于有效可行的多传感器融合算法,特别是在非线 性及非平稳、非正态分布的情形下的多传感器融合算法。另一问题就是传感系统的 实用化。

(8)

成都理I:人学硕十学位论文

图1-3 ROBOCUP机器人系统架构

4.机器人遥控及监控技术,机器人半自主和自主技术,多机器人和操作者之 间的协调控制,通过网络建立大范围内的机器人遥控系统,在有时延的情况下,建 立预先显示进行遥控等。

5.多智能体(multi-agent)调控制技术:这是目前机器人研究的一个崭新领 域。主要对多智能体的群体体系结构、相互间的通信与磋商机理,感知与学习方法,

建模和规划、群体行为控制等方面进行研究。

6.微型和微小机器人技术(micro/miniature robotics):这是机器人研究的一个 新的领域和重点发展方向。过去的研究在该领域几乎是空白,因此该领域研究的进 展将会引起机器人技术的一场革命,并且对社会进步和人类活动的各个方面产生不 可估量的影响,微小型机器人技术的研究主要集中在系统结构、运动方式、控制方 法、传感技术、通信技术以及行走技术等方面。

7.仿人和仿生技术:这是机器人技术发展的最高境界,目前仅在某些方面进 行一些基础研究。

机器人技术是与嵌入式系统的发展紧密联系在一起的。早期的机器人采用数 控技术,发展一直很缓慢,随着智能理论和微处理器的出现,机器人才逐渐成为 研究的热点。特别是近年来,由于嵌入式系统的高速发展,机器人技术获得了更 大的发展机遇。美国发射的火星车“勇气号”和“机遇号”就是典型的利用嵌入 式技术的智能移动机器人,采用的是嵌入式微处理器和VxWorks嵌入式操作系

lI£皇莹-l,曼Ⅺ哪宣三譬善差一

(9)

第1章引言

统,可以在不与地球联系的情况下长时间自主工作,充分显示了嵌入式系统和机 器人的紧密结合。

1.2嵌入式系统概述

以嵌入式计算机为技术核心的嵌入式系统是继网络技术之后,又一个IT领 域新的技术发展方向。由于嵌入式系统具有体积小、性能强、功耗低、可靠性高 以及面向行业具体应用等突出特征,目前已经广泛地应用于军事国防、消费电子、

信息家电、网络通信、工业控制等各个领域。嵌入式的广泛应用可以说是无所不 在。就我们周围的日常生活用品而言,各种电子手表、电话、手机、PDA、洗衣 机、电视机、电饭锅、微波炉、空调器都有嵌入式系统的存在,如果说我们生活 在一个充满嵌入式的世界,是毫不夸张的嘲。据统计,一般家用汽车的嵌入式计 算机在24个以上,豪华汽车的在60个以上。据推测人们在2005年每天接触的 嵌入式计算机有望达到600个以上。难怪美国汽车大亨福特公司的高级经理也曾 宣称,“福特出售的‘计算能力’已超过了IBM”,由此可见嵌入式计算机工业 的应用规模、应用深度和应用广度。嵌入式系统组成的核心部件是各种类型的嵌 入式处理器/DSP。随着嵌入式系统不断深入到人们生活中的各个领域,嵌入式处 理器也进而得到前所未有的飞速发展。目前据不完全统计,全世界嵌入式处理器

/DSP的品种总量已经超过1500多种,流行体系结构也有近百个系列,现在几 乎每个半导体制造商都生产嵌入式处理器/DSP,越来越多的公司有自己的处理器

/DSP设计部门…。

1.2.1嵌入式系统的定义和特点

嵌入式系统是以应用为中心、以计算机技术为基础、软硬件可裁减、适应于 应用系统、对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统,它 将操作系统和功能软件集成于计算机硬件系统之中,简单的说就是系统的应用软 件与系统的硬件一体化,类似于BIOS的工作方式,具有软件代码小,高度自动 化,响应速度快等特点。

根据国际电气和电子工程师协会(IEEE)的定义,嵌入式系统是“控制、监 视或者辅助设备、机器和车间运行的装置”(devices used tocontrol,monitor,

or assist the operation of equipment,machinery or plants)。一般而言,

整个嵌入式系统的体系结构可以分成四个部分:嵌入式处理器、嵌入式外围设备、

嵌入式操作系统和嵌入式应用软件,如图I-I所示。

(10)

成都理I:人学硕+学位论文

图卜1嵌入式系统的组成

嵌入式系统与通用计算机系统相比,具有以下特点:

(1)相对于通用计算机系统来说,嵌入式系统的软硬件资源非常的少。大部 分的嵌入式系统都是体积小,结构紧凑,而且存储空间也比较小。

(2)嵌入式系统的软件中存在实时约束,这个实时约束体现在必须在一定的 时间内完成一定的任务。

(3)嵌入式系统的开发需要特殊的方法和专用的工具,而且每一种嵌入式系 统之间又有着很大的区别。在嵌入式系统的开发、设计等各个阶段是与通用计 算机分不开的,实时在线仿真系统ICE、高级语言编译器、源程序模拟器等很 多嵌入式系统开发工具都要在通用计算机的支持下工作。

(4)嵌入式系统处理器的功耗都是非常低的,尤其是用于便携式的无线及移 动的计算机和通信设备中靠电池供电的嵌入式系统更是如此,需要功耗只mW甚

至1.1 W级。

(5)嵌入式系统的设计与开发在大多数情况下考虑的是系统的成本。嵌入式 系统设计初期的处理器选择要考虑到很多方面的因素,其中成本的大小占有很 大的比重。

(6)嵌入式系统通常会在极端的环境下工作,所以对它的技术指标是针对不 同的情况来定的…吲。

1.2.2国内外嵌入式系统的发展现状及趋势

近年来,嵌入式实时系统在个人数据处理、多媒体通信、在线事务处理、

生产过程控制、交通控制等各个领域内得到了广泛的应用,各种相关的嵌入式

(11)

第1章引言

产品纷纷涌现91。嵌入式系统越来越引起人们的重视。当前,嵌入式系统正处在 一个飞速发展和激烈竞争的时代,未来的几年里这种发展和竞争将达到白热化 的程度。就嵌入式系统的技术和市场来说,国外发展速度极快,技术同趋成熟,

市场格局基本形成。而国内发展也在快速增长,市场潜力很大。在国外,嵌入 式系统硬件,特别是嵌入式CPU的处理能力提升较快,由8位、16位升级到 32位与64位,掌上电脑、PDA、电脑手机、电脑汽车等新产品层出不穷,产 业规模日益壮大。在国内,嵌入式系统关键硬件主要靠国外引进,技术基础比 较薄弱。然而,国内的个人数字助理(PDA)市场火爆,联想掌上电脑、海信机 顶盒、数字机顶盒等产品进入市场后也获得用户好评、手机电脑市场前景看好。

作为嵌入式系统核心的嵌入式实时操作系统是开发嵌入式应用的关键环节。

在这个领域内,没有像通常操作系统市场中Windows系统那样一支独秀的 商品“”。因此,目前国内外相继推出了很多商业性嵌入式系统,都在努力地为 自己争取着嵌入式市场份额。国内比较成熟的实时系统Delta OS等都有成熟 的开发平台,已经在一些领域内取得了广泛的应用。同时,由于专用实时操作 系统价格昂贵及代码不公开,使Linux在嵌入式应用中占有一席之地。由于 Linux本身有诸多优势,吸引了许多开发商的目光,成为嵌入式操作系统的新 宠。它的出现无疑为国家发展嵌入式操作系统事业提供了一个极有吸引力的机 会。此外,嵌入式数据库(或称移动数据库)也是一个非常重要的研究方向。

一些商业数据库(如Sybase,Oracle)都已推出了移动数据库产品,以支持 嵌入式数据处理要求。国内有一些单位,如中科院、人民大学、浙江大学等正 在开展这方面的研究。在国内,大规模的嵌入式应用系统目前还非常少。预计 今后系统应用将重点转向基于Internet的各种嵌入式应用系统和信息家电领 域,包括浏览Internet、网上证券交易、IP Phone和VOD点播等。

1.3本论文的研究目的及意义

嵌入式智能机器人是目前机器人研究领域的研究热点之一,从嵌入式控制 器的应用到嵌入式操作系统的设计体现了智能机器人可发展的广阔空间。现有 机器人系统在硬件和软件开发方面虽然已经趋于成熟,但依然存在一些问题。它 们的硬件多是专用的,软件系统也多采用Windows系统。这种机器人系统主要存 在以下一些缺点:

(1)系统的实时性差。机器人控制系统是一个实时性要求非常高的控制系统,

作为一般桌面应用的和操作系统很难达到高实时性的要求。

(2)开放性以及扩展性差。常见的机器人控制系统存在的一个问题就是系统的 冗余大,开放性扩展性差,系统适用于特定的应用,不便于在硬件和软件上进行扩

(12)

成都理I:人学硕十学位论文

展和剪裁。

(3)软件的独立性差。软件结构及其逻辑结构依赖于处理器硬件,难以在不同的 系统间移植。

(4)缺少友好的人机交互界面。

再者,嵌入式系统设计的目的在于满足某种特殊的功能,通过对需求进 行分析,对软硬件进行裁剪,从而把所需的功能嵌入到各种应用系统中。所以,

如果能够建立对通用的软硬件基础,然后在其上开发出适应各种需要的系统,

将是一个比较有发展前景的开发模式。

通过长期的资料搜集和研究,发现目前需要开发这种具有开放式结构的,模 块化,标准化的嵌入式机器人平台。机器人平台具有硬件体积小,模块化,易 扩展,功耗低,软件实时性强,可定制,可靠性高等优点。通过本设计力求实现 这样一个交互式平台并且完成其驱动电路部分的设计,使其能为现有的嵌入式 机器人平台的设计提供一些参考价值。

(13)

第2章嵌入式系统麻Ⅲ分析

第2章嵌入式操作系统应用分析

2.1

嵌入式微处理器和嵌入式操作系统

伴随着个人计算机Pc(Personal Computer)的广泛应用,对于个人通用计算 机的理解也同益提高。但是对嵌入式系统和嵌入式微处理器则不然。与Pc制造 者不一样,嵌入式系统的工程师根据需求需要自己设计自己的系统。同时与全球 Pc市场不同,没有一种微处理器和微处理器公司可以主导嵌入式系统,仅以32位 的CPU而言,就有100种以上嵌入式微处理器。那么,在设计手持电话、传真机、

机器人、打印机和网络路由器等应用产品时,应如何选择嵌入式微处理器呢?仅 有一种答案,那就是选择是多样化的。因为嵌入式系统设计的差异性极大。这就是 有100种微处理器存在的原因。

微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下降、可 靠性提高。微控制器是目前嵌入式系统工业的主流。微控制器的片上外设资源一 般比较丰富,适合于控制,因此称为微控制器。

2.1.1嵌入式微处理器特点及分类

嵌入式微处理器与通用的微处理器最大的不同就是嵌入式微处理器多数工 作在用户自己设计的系统中。为了满足同益高速增长的各类嵌入式系统设计的 需求,CPU厂商设计了许多兼有16、32、64位微处理器并集成了许多外围功能 的CPU。如果以微处理器在单一指令内所能处理的位数来做嵌入式系统微处理器 的分类,如表2—1所示,位数是取决于处理资料的宽度。在嵌入式系统中,单 片机型嵌入式微处理器比较常见,不过一般性微处理器在嵌入式系统的应用中也 很广泛““。各种不同嵌入式微处理器的应用层面也有明显的区分,越高端的嵌入 式系统微处理器,主要资料处理的运算效率及其余附加值也就越高,目前32位 以上处理器的应用也越来越广泛,各种不同的微处理器应用分类详见下表。

表2—1嵌入式微处理器分类

微处理器 单片机类型 一般用途型 应用产品

8位 8048/49:8050/51:8052 8085:6809 空调;传真机;寻呼机

16位 8096/97:68200 8086:80286:80186 手机;摄像机

32位 ARM RISC:MIPS 32bits 80386:80486 掌上电脑;路由器

64位 MIPS 64bits:RISC core: Pentium 高级jI:作站

(14)

成都理I:人学硕十学伉论文

下面就对目前的嵌入式微处理器的类型和特点加以简单介绍。

●嵌入式微控制器的典型代表是单片机(Microcontr011erUnit),这种8位(8 根数据线,8位指令)的电子器件目前在嵌入式设备中仍然有着极其广泛的应 用。单片机芯片内部集成ROM(read—only memory只读存储器)/EPR伽(电 可编程只读存储器erasable—programmable read—only memory)、RAM

(random—access memory)、总线(bus)、总线逻辑(bus logic)、定时/计数 器(counter)、看门狗(watchdog)、I/O(input/output)、串行口(serial port)

脉宽调制输出(PwM(pulse-width modulation))、A/D(analog/Digital)、D/A、

Flash RAM、EEPROM(electrical)等各种必要功能和外设。8位的嵌入式微

处理器,首先推出的是1973年时Intel公司所发展的8080微处理器芯 片,随后各大厂商也陆续推出了8位的微处理器,如Zilog公司的Z80、

National半导体公司的NCS800及Intel的8085等。

16位以上的嵌入式系统微处理器

继8位的嵌入式系统微处理器后,许多厂商为适应更高产品的应用层面,陆 续推出了16位嵌入式微处理器,第一个商业化的16位嵌入式系统微处理 器是TI公司所推出的9940,它是延续9900的基本架构所发展的,但是真 正让16位系统产品发扬光大的是Intel公司所推出的8096及 Thompson/Mostek公司所发展的68200。16位微处理器包含了许多的新指令 集及硬件架构,并且拥有许多的寻址模式及数据类型的声明。德州仪器公司 推出的9600微处理器是第一个商用16位微处理器,因为它的功能和指令 集贫乏,所以并未造成很大的影响,反而大家比较熟悉的是Intel公司所发 展的8086微处理器及Motorola公司所发展的68000微处理器。Intel公 司所推出的8086微处理器是第一个被大家所重视及熟悉的16位微处理 器,因为它开创了IBMPC市场的一股旋风,当时IBM所推出的个人电脑也 是采用8086作为个人电脑的数据处理及控制核心,8086微处理器也沿用了 Intel公司之前的8080及8085微处理器的基本架构,加上了一些加强式 的硬件架构和指令集。8088基本上与8086微处理器的架构相同,不过有一 个地方不同的设计,比如数据总线部分,8088微处理器的数据总线是8位 的,因此必须要先执行两个总线周期时间才能完成一个16位字符传送,如 此设计可以使用8088微处理器应用在现有的8位的外围设备上,因此以往 的8位架构电子产品可以直接采用8088微处理器为控制核心,用于提供数 据处理的效率,却不需要大幅度修改原本电子设备的电路。Intel随后在 1992年又推出了第二代的8086产品,就是Intel80286微处理器,这个处

10

(15)

第2章嵌入式系统麻圳分析

理器包含了许多以往微处理器所需额外加上的外围装置组件,它已经将这些 组件整合进微处理器中,包含了一个时钟脉冲发生器、两个直接内存存取通 道、一个中断信号控制器、三个可程序化计时单元、可程序化芯片选择逻辑 单元及一个等待状态寄存器;除此之外,它很受市场欢迎,最主要的原因,

就是可以与8086及8088微处理器的软件兼容,如此可以套用原来在8086 微处理器上大量使用的程序代码及应用程序,而不需要另外去开发其特殊的 应用程序。80268微处理器还包含了虚拟内存所需要的内存管理单元和指令 重新执行的功能,它的工作频率可以为6叫z,10脚z及12姗z,相对工作效 率大约在0.9MIPS到2.66MIPS之间,内部的电晶体大约有134000个,可 以对16M字节的内存进行寻址存取,它的工作效率大约是8086的六倍,主 要使用以前很受欢迎的Pc/AT个人电脑及一些个人电脑的应用产品上。

●协处理器(Co--processor)

协处理器是一种辅助性的嵌入式系统微处理器,它并不是嵌入式系统的数据 处理核心部分。系统增加协处理器的原因是因为嵌入式系统微处理器大部分 都是针对整数运算设计的,在微处理器中的逻辑运算单元主要也是负责整数 运算的部分,对于浮点运算方面““。嵌入式系统微处理器会利用整数模拟浮 点数的运算形式,进行数据的运算,受于原来硬件架构设计的限制,在模拟 浮点运算的工作流程,往往运算所需要的指令周期是整数运算的十几到几百 倍,这样的运算能力对于嵌入式系统微处理器是一个很大的负担,所以在处 理大量的浮点数据时,则需要另外加上一颗特别的协处理器进行浮点数的数 据处理。协处理器是针对浮点运算的数据处理而设计,它拥有先天硬件架构 上的优势,在处理浮点运算时会大幅度缩减所需要的时间,也可以减轻嵌入 式微处理器的负担。

●CISC与RISC

在嵌入式系统微处理器的发展上,以微处理器的指令集部分的特性,可以将 嵌入式微处理器分为两种主要架构,一种是CISC(复杂指令集Complex

Instruction Set Computer架构,另一种则是RISC(精简指令集Reduced

Instruction SetComputer)架构。在二十世纪六十年代,CISC的架构是微 处理器的设计主流,经过了近二十年左右的时间,就所发展的产品和使用效 率来看,这种设计已经没有办法在一般固定的功能及用途上发挥最大的使用 效益,这时一项新的架构被提出来,那就是RISC架构,这种指令集架构的 出现,可以大幅度提高CISC架构所难以达到的指令执行及数据运算效率。

现代的嵌入式产品已经体会到RISC架构微处理器的硬件设计单纯、成本低

(16)

成都理I:人学硕七学位论文

廉、省电效益佳等特性,纷纷采用RISC架构的微处理器,例如ARM RISC Core

及MIPS RISC Core,都是目前相当热门,而且也相当受欢迎的RISC架构的 嵌入式微处理器。

●嵌入式DSP处理器(Digital Signal Processor)

DSP处理器是专门用于信号处理方面的处理器,其在系统结构和指令算法方 面进行了特殊设计,在数字滤波、FFT、谱分析等各种仪器上DSP获得了大 规模的应用。DSP的理论算法在70年代就已经出现,但是由于专门的DSP处 理器还未出现,所以这种理论算法只能通过MPU等由分立元件实现。1982年 世界上诞生了首枚DSP芯片。在语音合成和编码解码器中得到了广泛应用。

DSP的运算速度进一步提高,应用领域也从上述范围扩大到了通信和计算机 方面。目前最为广泛应用的嵌入式DSP处理器是TI的TMS320C2000/C5000 系列,另外如Intel的MCS-296和Siemens的TriCore也有各自的应用范围。

●MPU嵌入式微处理器是由通用计算机中的CPU演变而来的。

与计算机处理器不同的是,在实际嵌入式应用中,只保留和嵌入式应用紧密 相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实 现嵌入式应用的特殊要求。和工业控制计算机相比,嵌入式微处理器具有体 积小、重量轻、成本低、可靠性高的优点。目前主要的嵌入式处理器类型有

AIIll86/88、386EX、SC一400、Power PC、68000、WIPS、ARM/StrongARM系列 等。

●嵌入式片上系统(System On Chip)

SoC就是System on Chip,SoC嵌入式系统微处理器就是一种电路系统“”。

它结合了许多功能区块,将功能做在一个芯片上,像是ARM RISC、WIPS RISC、

DSP或是其他的微处理器核心,加上通信的接口单元,像是通用串行端口

(USB)、TCP/IP通信单元、GPRS通信接口、GSM通信接口、IEEEl394、蓝牙 模块接口等等,这些单元以往都是依照各单元的功能做成一个个独立的处理 芯片。

对于嵌入式系统的设计者,更多更好的嵌入式微处理器将不断出现。综合考 虑系统的性能、功耗、价格、供货保证、开发工具的配备以及工程师过去对这 种处理器的经验和软件的支持等因素,决定用户使用哪一种处理器。嵌入式处理 器的选择不是一成不变的,伴随着技术的发展,速度快、价格低、功能强的嵌入 式处理器才是合理的选择。

12

(17)

第2章嵌入式系统麻用分析

2.1.2嵌入式操作系统的研究内容和发展方向

嵌入式操作系统由一个体积很小的内核及一些可以根据需要进行定制的系 统模块组成。能够运行在各种不同的硬件平台上,提供最基本的程序运行环境和 接口,成为应用软件运行的基础。作为嵌入式系统灵魂的嵌入式操作系统是伴随 着嵌入式系统的发展而出现的,它是嵌入式系统发展到一定阶段的产物。嵌入式 操作系统的出现,将大大提高嵌入式系统开发的效率,改变以往嵌入式软件设计 只能针对具体的应用从头做起的历史。在嵌入式操作系统之上开发嵌入式系统将 减少系统开发的工作量,增强嵌入式应用系统软件的可移植性,使嵌入式系统的 开发更具有科学性。可以说嵌入式操作系统的出现为嵌入式系统的发展铺平了道 路“”。嵌入式操作系统并不是简单嵌入的操作系统,它与通常意义上的操作系统 有一定的区别。嵌入式操作系统负责嵌入式系统的全部软、硬件资源的分配、调 度工作,控制并协调并发活动,具有一般操作的基本功能,如任务调度、同步机 制、中断处理,同时它必须体现其所在系统的特征,能够通过装卸某些模块来达 到系统所要求的功能。嵌入式操作系统是以库的形式提供给用户,用户可以通过 操作系统的API(Application Progrannning Interface)使用嵌入式操作系统。几 种流行的嵌入式操作系统:

(1)WindRiver的VxWorks:VxWorks操作系统是美国WindRiver公司于 1983年设计开发的一种嵌入式实时操作系统(RT0s)。良好的可持续发展能力、

高性能的内核以及友好的用户开发环境使得VxWorks在嵌入式实时操作系统领 域占据一席之地。它以其良好的可靠性和卓越的实时性被广泛地应用在通信、军 事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫星通讯、军事演 习、弹道制导、飞机导航等。在美国的F一16、FA-18战斗机、B一2隐形轰炸机 和爱国者导弹上,甚至连1997年4月在火星表面登陆的火星探测器上也使用 到了VxWorks。

(2)Palm公司的Palm OS:

Palm是3tom公司的产品,其操作系统为Palm OS。PalmOS是一种32位的嵌 入式操作系统。Palm提供了串行通信接口和红外线传输接口,利用它可以方便 地与其它外部设备通信、传输数据;拥有开放的操作系统应用程序接口,开发商 可根据需要自行开发所需的应用程序。从程序内容上看,小到个人管理、游戏,

大到行业解决方案,Palm OS无所不包。在丰富的软件支持下,基于PalmOS的 掌上电脑功能得以不断扩展。

(3)Microsoft的WindowsCE:Microsoft WindowsCE是微软公司的产品,

(18)

成都理l:人学硕十学位论文

它是一种专为范围广泛的通讯、娱乐与移动计算设备所开发的操作系统平台。它 是一个完整的可携式操作系统,Microsoft打算以此为基础,发展广泛的商业与 消费设备,包括新的无线通讯设备、I)VD播放器、Internet TV、数字信息装置 盒及网络电话等。WindowsCE可与Windows平台Pc相互沟通、交换与分享信息,

以及和各种企业级系统通讯、从Internet存取电子邮件或存取Windows CE亦 是已微调至可在有限的内存配置下提供最高效能。它具有弹性,可支持非常多的 内嵌、移动或多媒体产品,同时又具有可移植性。

(4)嵌入式Linux:嵌入式Linux是从Linux发展过来的,伴随网络技术 进步而发展起来的Linux不仅能够运行于PC平台,还在嵌入式系统方面大放光 芒,各种嵌入式Linux迅速发展,逐渐形成了可与Windows CE等嵌入式操作系 统进行抗衡的局面。

(5)pC/OS:p C/OS是著名的、源码公开的实时内核。是专为嵌入式应用 设计的,可用于各类8位、16位、32位单片机或DSP。发展至今10余年应用史,

已经在世界范围内得到广泛使用,包括诸多领域,如手机、路由器、集线器、飞 行器、医疗设备及工业控制等。

2.2嵌入式系统的开发流程

嵌入式系统发展到今天,对应 于各种微处理器的硬件平台一般都 是通用的、固定的、成熟的,这就 大大减少了由硬件系统引入错误的 机会。此外,由于嵌入式操作系统 屏蔽了底层硬件的复杂性,使得开 发者通过操作系统提供的API函数 就可以完成大部分工作,因此大大 简化了开发过程,提高了系统的稳 定性。嵌入式系统的开发者现在已 经从反复进行硬件平台设计的过程 中解脱出来,从而可以将主要精力 放在满足特定的需求上。嵌入式系 统的开发,特别是嵌入式系统软件

图2-I嵌入式系统开发流程

的开发和我们通常意义上的软件开发不同,嵌入式系统对于OEM开发商来说,

可能是对于特定CPU和特定操作系统的系统引导程序的开发,对于应用开发商

14

(19)

第2章嵌入式系统应用分析

来说,要开发具有特定平台的嵌入式应用时,也和开发基于标准Pc平台的应用 程序有所不同,但它们本质上并无区别,唯一改变的是每个嵌入式系统的硬件平 台都是独立的,这就导致许多软件编写的复杂性。

2.2.1编译链接

首先选用目标平台,所谓目标平台可以理解为构成运行软件的基本运行环境 的硬件和操作系统的统一体,而对于那些没有操作系统的嵌入式系统来说,那么 目标平台就只是运行你的程序的处理器。当目标平台选定之后,软件开发工具可 以自动做很多的事情,这些工具可以发掘程序运行的硬件和操作系统平台的特 性,在把嵌入式软件的源代码文件转换为可执行的二进制映像文件的过程,包括 三个截然不同的步骤。

1)每一个源文件都必须编译或汇编到一个目标文件。

2)第一步所产生的目标文件要被连接成一个目标文件,它叫可重定位程序 3)在一个称为重定位的过程中,要把物理存储器地址指定给可重定位程序里的

每个相对偏移处。这一步的结果就是一个可以运行在嵌入式系统上的包含可 执行二进制映像的文件。

嵌入式软件开发编码完成以后,要进行编译和连接以生成可执行代码。但是,

在开发过程中设计人员普遍使用Intel的x86系列CPU的计算机进行开发,

而目标环境的处理器芯片却是多种多样的,如ARM,DSP,MIPS等,这就要求开发 机上的编译器能支持交叉编译。所谓交叉编译是指能在主机上运行并且产生目标 机的目标代码的编译器。使用交叉编译器是嵌入式软件开发的固定特征。链接,

在程序被执行之前,所有第一步产生的目标文件都要以一种特殊的方式结合起 来。目标文件分开来看还是不完整的,特别是那些未解决的内部变量和函数引用 的目标文件。链接器的工作就是把这些目标文件组合到一起,同时解决所有未解 决的符号问题。链接器的输出是同样格式的一个目标文件,其中包含了来自输入 目标文件的所有代码和数据。它通过合并输入文件星的Text、date和bbs段 来完成这一点。这样,当链接器运行结束以后,所有输入目标文件里的机器语言 代码将出现在新文件的text段里,所有初始化变量和未初始化变量分别在 data段和bbs段。定址,把可重定位程序转换到可执行二进制映像的工具叫定 址器。它负责三个步骤中最容易的部分。实际上,这一步将不得不做大部分工作 来为定址器提供关于目标电路板上的存储器的信息。定址器将用这个信息来为可 重定址程序里的每一个代码额数据段指定物理内存地址。然后它将产生一个包含

(20)

成都理I:大学硕十学位论文

二进制内存映象的输出文件,这个文件就可以被调入目标ROM中执行。

2.2.2映像下载和调试

当在主机上有了一个可执行二进制映像文件的时候,就需要有一种途径来把 这个二进制映像文件下载到嵌入式系统中来运行了。可执行二进制映像文件一般 是要下载到目标板的存储设备罩并在那罩执行。并且如果配备了适当工具的话,

还可以在程序旱设置断点或以一种不干扰它的全速方式来观察运行情况。

2.3实时多任务操作系统

实时系统主要通过三个性能指标来衡量系统的实时性,即响应时间

(ResponseTime)、生存时间(Survival Time)和吞吐量(Throughput):

◆响应时间是实时系统从识别出一个外部事件到做出响应的时间;

◆生存时间是数据的有效等待时间,数据只有在这段时间内才是有效的;

◆吞吐量 是在给定的时『自J内系统能够处理的事件总数,吞吐量通常比平均 响应时问的倒数要小一点。

实时系统根据响应时问可以分为弱实时系统、一般实时系统和强实时系统三 种。弱实时系统在设计时的宗旨是使各个任务运行得越快越好,但没有严格限定 某一任务必须在多长时『自J内完成,弱实时系统更多关注的是程序运行结果的正确 与否,以及系统安全性能等其他方面,对任务执行时间的要求相对来讲较为宽松,

一般响应时间可以是数十秒或者更长。一般实时系统是弱实时系统和强实时系统 的一种折衷,它的响应时『自J在秒的数量级上,广泛应用于消费电子设备中。强实 时系统则要求各个任务不仅要保证执行过程和结果的正确性,同时还要保证在限 定的时间内完成任务,响应时间通常要求在毫秒甚至微秒的数量级上,这对涉及 到医疗、安全、军事的软硬件系统来说是至关重要的。

时限(deadline)是实时系统中的一个重要概念,指的是对任务截止时间的 要求,根据时限对系统性能的影响程度,实时系统又可以分为软实时系统(soft real—time—system)和硬实时系统(hard real-time-system)。软实时指的是虽 然对系统响应时间有所限定,但如果系统响应时间不能满足要求,并不会导致系 统产生致命的错误或者崩溃;硬实时则指的是对系统响应时间有严格的限定,如 果系统响应时间不能满足要求,就会引起系统产生致命的错误或者崩溃。如果一 个任务在时限到达之时尚未完成,对软实时系统来说还是可以容忍的,最多只会 降低系统性能,但对硬实时系统来说则是无法接受的,因为这样带来的后果根本

16

(21)

第2章嵌入式系统应用分析

无法预测,甚至可能是灾难性的。在目前实际运用的实时系统中,通常允许软硬 两种实时性同时存在,其中一些事件没有时限要求,另外一些事件的时限要求是 软实时的,而对系统产生关键影响的那些事件的时限要求则是硬实时的。

2.3.1实时操作系统中的板级支持包

嵌入式操作系统根据应用场合可以分为两大类:一类是面向消费电子产品的 非实时系统,这类设备包括个人数字助理(PDA)、移动电话、机顶盒(STB)等;

另一类则是面向控制、通信、医疗等领域的实时操作系统,如WindRiver公司的 VxWorks、QNX系统软件公司的QNx等。实时系统(Real Time System)是一种 能够在指定或者确定时间内完成系统功能,并且对外部和内部事件在同步或者异 步时间内能做出及时响应的系统。在实时系统中,操作的正确性不仅依赖于逻辑 设计的J下确程度,而且与这些操作进行的时间有关,也就是说,实时系统对逻辑 和时序的要求非常严格,如果逻辑和时序控制出现偏差将会产生严重后果。

为了方便用户在自己定义的用户板上进行开发,RToS提供了板级支持包

(BSP),提供了支持标准硬件板和用户硬件板的机制。每个BSP提供了一种软 件模板,其中既包括设备驱动程序的抽象结构代码(AbstracterArchitecture code)

也包括为具体硬件设备所需的底层系统功能代码,不同外设的设备驱动程序代码 只与该设备有关,而与该设备所在的硬件板无关。RTOS以源代码形式提供了许 多板级支持包以及通用模板、板级支持包是进行开发设计的关键环节。

应用程序层(Application Layout)

保护子系统(Protected Subsystem)

设备驱动层(Drivers Manager)

微内核(Micro Kernel)

硬件抽象层(HAL)

硬件(裸机)

图2-2微内核结构

(22)

成都理I:人学硕+学位论文

2.3.2板级支持包BSP和PC的BIOS比较分析

BSP通常用于嵌入式领域,主要指在开发嵌入式应用时系统开发商提供的各 种驱动支持库。在嵌入式领域人们对BSP有各种不同的理解:

1)操作系统的驱动程序。嵌入式系统提供商的权威,Wind River公司对 BSP的理解偏向于是OS的驱动程序(从其BSP的文档中可以看出),因为嵌 入式系统中的各种设备的确名目繁多,因此将BSP定位于OS的驱动的确有一 定的道理。

2)驱动程序。对于认为BSP就是驱动程序的人来讲,通常接触的是嵌入式 系统提供商提供的某种应用解决方案的应用系统(TotalSolution)。在这种开发 系统中BSP完全有理由被认为是所有驱动程序,因为开发人员没有必要自己去 开发驱动程序,而只是验证驱动程序在自己的系统中是否正确了事。

3)HAL(HardwareAbstract Layer)对于开发嵌入式OS的人来讲,倾向于 将BSP看成是对硬件平台的抽象层(眦L)和处理器的驱动程序更恰当。 对于进 行硬件和软件开发的人员,第三种理解比较合适,后面的分析也是建立在这个基 础之上的。这里通过BSP(board support package)和BIOS(basic input and

output system)的对比来说明板级支持包的功能。BSP说的简单一点,就是一段 启动代码,和计算机主板的BIOS差不多,提供的功能却有较大差别,在通用51 等系列单片机开发的过程中,要有小段程序设置栈指针,软复位,中断屏蔽等等,

可以把这段程序称为它的BSP。

实时操作系统的BSP相对复杂一点,但通常也是设置堆栈指针、建立中断向 量表、初始化寄存器(控制外围器件如DRAM,EDORAM条,控制I/0口的寄存器,

片选信号等),配置地址空间以及系统启动方式。

RTOS driver OS driver

实时操作系统 通用操作系统

RTOS 0S

一巫吩坠№越…一——一一Q娥:燮i螋:塑i蜒)

BsP板级支持包 B10S(基本输入输出)

一…………一高品蒸主暑………

。…i竺竺型

目标硬件

L一一…J

丰板

图2-3 RIOS和Pc比较

18

(23)

第2章嵌入式系统应用分析

从图2—3可以看出实时操作系统的BSP就相当于Pc的BIOS。 一般来说,

对不同的微处理器板以及不同的RTOS时就应该配置相应的BSP,BSP可以是已 经做好了的,不需要开发人员去关心寄存器设置的细节。当然根据实际的要求也 可以改写BSP来加入自己的特定功能。BSP可针对不同的硬件做不同的调整,

相应于Pc的BIOS,它完成对硬件的初始化工作,执行完后再将执行权交给RTOS.

在BSP中,只需要对与硬件相关的寄存器(主要是DRAM,SDRAM,片选)及与中 断相关的寄存器进行正确配置即可。BSP程序越简单越好,能放在主程序中初始 化的功能尽量不要放在其中,BSP配置程序只要能够保证系统正常启动即可.大 部分RToS带有针对不同微处理器的BSP程序,用户只要稍做修改即可移植到自 己的开发应用中。

2.4嵌入式系统在M卜R型智能机器人的应用

MT—R作为研究型智能机器人平台可以应用在ROBOCUP机器人足球竞赛,立 足于提供更加稳定、敏捷、具有很强图像处理能力、运动控制能力、避障能力的 竞赛平台“”。系统采用三层模块结构,两层系统架构。采用24V,20AH动力锂电 池作为电源,可充电4.5个小时。电源控制板提供欠压保护、声光报警,反接保 护功能,能自动切换外接电源。运动特性作为下位机控制板的主要功能,采用的 是24V,70W MAXON电机(2个);电机驱动器供电电压:18~36V,提供过热、过 流保护,实现电流闭环控制。基于DSP+CPLD结构的运动控制卡可以完成3路以 上的电机伺服控制,与主机采用CAN总线、串口等通信方式。运动控制系统采用 的是轮式结构,两个主动轮一个方向轮。最大速度2.5m/s,推力达到lOKg。传感 器有六个声纳传感器和6个位置敏感器件PSD。

上位机采用嵌入式工业级控制主板P4 2.8/512M/80G;支持54M无线通讯,

可外接32路A/D(O一5V)(16路入/16路出)。云台系统中的摄像机具有130万 像素、30帧/秒,USB接口。上位机的开发系统为wIND0wS2000/XP,开发语言为 Vc++。该系统的软件开发环境为具有一定C语言以及c++语言基础的研发人员提

供了一个很好的开发平台。

该系统采用的是嵌入式工业级的主板,这样的设计可以缩减研发周期,同时 具备嵌入式的可裁剪性。具有稳定性高,操作系统通用性强等特点。其实,工业 主板与通用主板在对扩展插槽的支持,元器件的使用,生命周期,可靠性等等都 有较大的区别。下面本论文将详细介绍下两者之间的差距:

①扩展槽的支持:对于商业级主板,往往只能提供4根到最多5根的PCI插 槽,其中受制于PCI规范,同时只能使用4根,而且基本对于PCI 4的话,驱

19

(24)

成都理l:人学硕十学何论文

动能力有相当大的衰减,因此大多数通用主板仅提供3根PCI槽。而工业级主板,

由于其设计用料的工业性,其对PCI插槽的支持可以轻而易举的实现对5根PCI 的支持,同时不会造成PCI驱动能力的衰减。同时可以支持对高带宽的PCI—X设 备。带有ISA插槽,可以实现对工业ISA低速采集卡,数据卡的良好支持。嵌入 GPIO总线,可以实现GPI,GPO功能。

四路 USB2.O

USB2.0 4portHI

MIC输入l—一语音接

16路数字基输入OD

16路数字量输出if)O)

8路D/A输出(o^弓Ⅵ

CAN2,0接口

罩甲Ethernet埋

嵌入式工业级 主板 上位机

DSP运功控制卡

(下位机)

两轴位置、速度闭环 控制

电流环240W驱动器

70W MAXON直流电

・路 RS232/485

(町选)

串口

PCI接口

16路超声传感器控制

参数及用户算法程序存储器

3路PWM输出

叮扩展6路扦环控制

500线编码器

2-4系统结构框图

②使用的元器件:商业级主板由于追求的产品的时效性,以及本身产品的市 场定位,对元器件选择要求上一般只需满足的系统运行要求,和2到3年的使用

寿命即可。工业级主板会选用经过长时间,高要求验证元器件,用以保证产品在 恶劣条件下高可靠性要求。比如一些如在服务器,以及高端商业主板才出现的固

(25)

第2章嵌入式系统应_I{j分析

态电容,封闭电感等。

③生命周期:由于商业主板市场更新换代的速度相当之快,所以一般的通用 主板只有半年到一年的生命周期。而在工业市场,以研华主板为例,由于Intel 和研华是一个长期的战略伙伴关系,所以研华的工业级主板可以达到一个长达5 年的生命周期。

④产品的可靠性:由于普通通用主板的市场定位,其产品一般只会做电子产 品需要的CCC认证,长城认证,民用级的电磁兼容认证。工业级主板由于其针对 的是工业市场,所以出于可靠度的需求,在每一款主板在上市前都会做CE EMC,

FCC,QA realbility,CCC,震动,落下,等工业级要求测试认证。

⑤管理性:普通商业主板只是提供最简单的远程管理(通过连接网络,使用 第3方的软件,如REAL VNC,PC ANYWHARE等实现)。而工业级主板除了可以提 供类似的远程连接管理外,还可以实现远程无人值守的自动开关机功能。通过内 嵌的IPMB,SMNP-1000模块,可以实现系统实时运行信息的管理、记录、发送功 能。

⑥用户化:普通的商业主板一旦生产出来就无法再针对市场需求更改,完全 无用户化的设计。但在工业领域,许多工业级主板可以灵活的满足一些客户后续 的特殊需求。可以实现用户的定制化。更好,更完美配合客户的使用需求环境。

⑦存储界面:普通的商业主板提供常见的存储界面IDE,SATA。工业级主板 可以提供IDE,SATA,SCSI,CF Card等多存储截面要求。

⑧保护功能:此项功能,在普通的商业主板是没有提供的。工业级主板通过 特殊设计,可以实现看门狗WATCH DOG功能,防浪涌冲击的功能。全力的保证系 统在恶劣环境的高稳定性要求。

⑨工作温度:普通的商用主板基本只能使用在5度-38度之间的外环境之中,

是相当之娇气的。工业级主板可以在0度-60度之间稳定的工作。

从以上对比可以清晰了解到,在工业领域与人们生活越来越相关时,工业 PC也将越来越多代替通用PC的应用。作为智能机器人的上位机控制板,选用嵌 入式工业级主板能够基本满足实时操作系统的需求以及中型ROBOCUP比赛的环 境和任务的完成。

MT—R型智能移动机器人是一种通过各种传感器系统感知外界环境,实现在复 杂的未知环境中自主移动并完成一定任务的机器人系统。其实现需要有多个功能 特性各异的模块,如:感知、任务分析、规划、推理、决策和动作执行等,并且 各个功能模块以不同方式在不同层次协调工作。体系结构作为机器人的设计框 架,从整体上联系着智能机器人的各功能模块,并在软硬件的实现上起着统一调 配和决定性作用。因此智能移动机器人的体系结构决定了机器人本身的功能特

(26)

成都理I:人学硕十学位论文

点,也是首先要考虑的问题。该结构除了具有自主性、智能性等基本特点外,还 需要满足以下要求:1)整个结构既具有较强的应急反应能力,也具有远期规划 能力;2)具有较强的扩展性,可以不断增强完善自身的各项功能。

考虑到智能机器人体系结构的基本要求,软件设计采用了基于多智能体的结 构。多智能体系统(multi-agent system,MAS)是一种分布式智能系统,其结

构方式类似一种网络形式,其中基本结点为智能体。系统描述如图2—5所示。

依据上述需求,将机器入软件系统分解为若干智能体虚拟设备,大体上分为 硬件接口设备,处理设备、反应性设备和规划性设备。

一硬件接口设备主要是指各种传感器(包括PSD、超声、GPS、图像采集等)

和远端通信设备(无线通信)。传感器负责主动(被动)探测外界环境和 自身状态,通过简单数据处理将原始的传感器数据转化为相应的环境信 息,并通过设备间的消息传递送给反应性设备。

图2—5多智能体系统描述

一信息处理设备主要完成原始输入数据各种处理并获取有用信息的过程。

如图像处理设备完成从图像帧输入识别出有用目标信息,传感器处理设 备完成传感器信息的滤波和信息加权融合。

_反应性设备将传感器信息直接映射为动作,经由串口设备发送到下位机 执行。反应性设备除了输入输出外,主要有两部分构成:1)对应于不同

(27)

第2章嵌入式系统戍刚分析

输入的反应式动作规则库;2)对多个动作的融合器。这里主要考虑的是 动作融合的问题,可以采用模糊集合或其他的学习算法来解决动作融合 问题。考虑到反应性设备的实时性问题,软件里采用的是简单的模糊规 则匹配(IF—THEN规则)方法。规划性设备是指一般的任务规划、如机 器人系统的自定位、路径规划等。其结构是基于任务分解的多级结构,

随不同的任务和不同的抽象程度而不同。

(28)

成都理l:人学硕十学侥论文

第3章智能机器人运动控制系统的通讯接口

3.1

CAN总线通讯在机器人系统的应用

移动机器人包含众多模块,例如电机控制模块,速度反馈模块,超声波测距模 块,遥控器和上位机通信模块。图像采集模块,语音识别模块,人机接口(车灯显示,

液晶显示模块)。如此众多的模块之问数据传递是非常庞大和复杂的,CAN总线是 一种拥有很多优点,在机器人领域应用广泛的总线技术””。

本文中婀一R型智能机器人控制系统采用分布式控制方式,上位机选用的是 高性能的嵌入式工业级主板,下位机运动控制卡选用基于DSPTMS320LF2407A+

CPLD EPM7128S为控制芯片,上位机和下位机DSP运动控制卡之间扩充了有效地 支持分布式控制和实时控制的CAN(ControllerAxcaNetwork)总线通讯方式,既能 快速地实现机器人控制的复杂算法,又具有较高的控制实时性,是一个高性能的 机器人控制系统。cAN(ControllerAreaNetwork)总线是应用最为广泛的一种现 场总线,也是目前为止唯一有国际标准的现场总线。相对于一般通信总线,它的 数据通信具有突出的可靠性、实时性和灵活性““。其特点是:

a)CAN总线为多主方式,网络上任意节点均可在任意时刻向其它节点发送数据。

b)CAN总线上的节点可以通过标识符分成不同的优先级,满足不同的实时要求。

c)CAN总线采用非破坏的总线仲裁技术,低优先级节点不影响高优先级节点的 发送。

d)CAN总线节点在40m内通信速率最高可达1Mbps。

e)CAN总线上的节点数在标准帧格式下可达到1lO个,扩展帧格式下几乎不受 限制。

f)报文采用短帧格式,传输时间短,出错率极低。

g)CAN总线通信介质可选用双绞线,其结构灵活,连接方便。

CAN总线的以上特点使之十分适用于机器人控制,鉴于此,本章在第一节对 CAN总线作为机器人控制系统的通信方式工具加以讨论研究,给出了一种基于 CAN总线的通信方案。具体连接方式为:主控上位机通过CAN总线接口卡连接到 总线上,各运动控制器也都通过总线收发器挂接到总线上,而且可以根据实际情 况增减数目。由于CAN总线只用两根线进行通信,大大降低了系统连线的复杂程 度,同时增强了系统的可靠性能。如图3-I所示

24

參考文獻

相關文件

專案導向應用程式開發 階梯程式編輯畫面 狀態的監視與控制 階梯程式助憶碼輔助顯示 階梯程式註解功能

可程式控制器 (Programmable Logic Controller) 簡稱 PLC,是一種具有微處理機功能的數位電子 設備

數位計算機可用作回授控制系統中的補償器或控制

最後特別提出說明,本研究用戶端作業系統為 Win 2000 Professional,伺服 器端作業系統為 Windows 2000 Server 並啟動 Active Directory

Abstract:Aseries of tests about the content of heavy

本書立足中華文化大背景,較為深入系統地分析研究了回族傳統法文化的形成基礎、發展歷

註 若在 小貓咪 的程式中建立 蘋果 的分身,此時 小貓咪 的程式無 法控制 蘋果 分身的行為,只能在 蘋果

下圖為本研究的主架構設計。透過 Master MCU 控制裝置的按鍵選擇,選擇所需 要控制的 Slave ID 編號及欲控制的命令,透過 Master MCU 將命令送給