第一章 绪论
1.1 嵌入式系统概述
对于大多数人来说,谈起现代化电子产品的时候都会第一时间想到计算机,或者更确切地说是想到PC,因为对他们来说PC机已经是和他们形影不离了。但是他们都忽略了比PC更广泛应用的一种现代化电子产品,那就是嵌入式系统。各种微处理器应用的数量远远地超过了PC上应用的X86处理器,而微处理器绝大部分是用在嵌入式系统中的,因此可以说嵌入式系统已经成为了人们生活中不可或缺的一分子了。在现代社会生活中,我们不仅仅需要那种放在桌上处理文档、进行工作管理的计算“机器”,我们还可能拥有大小不一、形状各异的嵌入式电子产品,小到手机、MP3、PDA等微型数字产品,大到网络家电、车载电子设备等。目前,各种各样的新型嵌入式系统设备在应用数量上已经远远超过了通用计算机。在工业和服务领域,使用嵌入式技术的数字机床、工业机器人、服务机器人等正在逐渐改变着传统的工业生产和服务方式。嵌入式系统可以这样定义:嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。一般来说,嵌入式系统由处理器、存储器、输入/输出设备和软件(包括操作系统和应用程序)4部分组成,如图1-1所示。
应用程序 操作系统 OUTPUT 处理器 INPUT 硬件结构 软件结构
存储器 图 1-1:嵌入式系统的组成
1
嵌入式系统与PC比较如下表1-1与表1-2 :
设备说明 CPU 内存 内存设备 输入设备 输出设备 声音设备 接口 其它设备 嵌入式系统 表1-1:嵌入式系统与PC硬件上的比较 PC 嵌入式系统(ARM,68K等) CPU(INTEL的Pentium, AMD的Athion等) SDRAM芯片 Flash 按键、触摸屏 LCD 音频芯片 MAX232等芯片 USB芯片、网卡芯片 SDRAM或DDR内存条 硬盘 鼠标、键盘、麦克风 显示器 声卡 主板集成 主板集成或外接卡 表1-2:嵌入式系统与PC软件发及开发平台上的比较 引导代码 嵌入式系统 Boot loader引导,针对不同电路进行移植 操作系统 LINUX,WINCE,UCOS等,需要移植 驱动程序 每个设备驱动都必须针对电路板进行重新开发或移植,一般不能直接下载使用 协议栈 开发环境 需要移植 借助服务器或PC进行交差编译 仿真器 需要 不需要 操作系统由第三方供应商提供 在本机就可以开发调试 WINDOWS,LINUX等,不需要移植 操作系统含有大多数驱动程序,或从网上直接下载使用 PC 主板的BIOS引导,无须改动
从上面两个表格可以很容易看出嵌入式操作系统与PC之间存在着很大的差
2
异,两者的最大区别在于嵌入式系统性具有“软硬件可裁剪性”的灵活性,可以根据各种具体的现场实现千差万别的特定功能。嵌入式系统同PC系统相比有以下特点:
1. 功耗低、体积小、专用性强。嵌入式本身就是为特定的用户或特定的功能量
身定做的,所以它能把PC中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统设计趋于小型化。
2. 为了提高执行速度和系统可靠性,嵌入式系统的软件一般都固化在存储器芯
片中,而不是存储于磁盘等载体中。
3. 可靠性高。嵌入式系统对软件代码的要求很高,应尽最大可能避免“死机”
的发生,因为“死机”很可能导致系统的崩溃或造成严重后果。 4. 嵌入式系统的开发需要专门的开发工具和开发环境[1]。
1.2 嵌入式INTERNET
介绍了嵌入式系统与PC既有共性也有个性,具体的应用可以根据实际工作而选择使用嵌入式系统还是普通的PC机。或者还有一种方法就是把两者结合起来,各取所长,从而合成一个更完美的系统,那就是基于Internet的嵌入式系统,而如今世界上无所不在的Internet则是把二者结合起来的重要桥梁。下面将要介绍的是Internet在嵌入式系统中的应用。
网络在人们生活中的作用是不容置疑的。随着网络的发展,网络已经深入到人类生活的各个方面,网络就像覆盖在地球表面的电子皮肤,它大大的改变了我们的工作方式和生活方式。21世纪是一个网络化的世界,这不仅是指通过计算机网络形成了全球化的Internet,而且还包括我们身边的楼宇自动化系统、家庭电器产品、智能仪表及工业过程控制等通信网络。若能将Internet网络技术延伸到电子设备或控制网络并使之互连,将Internet的应用范围扩大到任何需要网络的地方,使之增加许多新的、有价值的、超越局域网的服务功能,必然会让我们的世界变得更加自动化和智能化。
家庭电器产品和工业设备绝大部分都采用单片机或微控制器MCU来进行数据处理,使用嵌入式系统来实现控制功能。智能楼宇、工业过程等在这些芯片的基础上,使用特定的协议如Lon Works、CAN等组成独立的、自成一体的控制网
3
络。如果能将嵌入式系统连接到Internet上,则可以方便、价格低廉地将信息传送到几乎世界上的任何一个角落,进而进行远程监控。
嵌入式Internet就是在这种背景下产生的,它依托于工业以太网技术而构建,是Internet技术、Web技术和嵌入式技术的有机融合。嵌入式Internet技术是指电子设备通过嵌入式模块接入Internet,以Internet为介质实现信息交互的技术。嵌入式Internet不仅是一种设备接入技术,而且是一种异构网络互连技术。通过Web技术和嵌入式技术可将设备接入到Internet以实现远程的监控、诊断、测试、管理及维护等功能[2]。
当前,为了满足世界上越来越多的Internet用户,Internet的IP协议正处于在IPv4协议到IPv6协议的过渡时期。随着嵌入式Internet的发展,越来越多的嵌入式设备都将需要接入Internet进行信息交互。因此,现有的IP地址资源将受到严重挑战,IP地址资源的短缺将成为嵌入式Internet发展的瓶颈。IPv6主要用于解决IPv4地址资源短缺的问题,IPv4的地址域长度是32位,而IPv6的地址长度为128位,因此,IPv6能够提供足够多的IP地址,当然可以为每个嵌入式系统设备提供接入Internet的IP地址。随着IPv6协议的逐渐应用,IP地址资源的缺乏将得到彻底的改善,嵌入式Internet也将得到更进一步的发展[3]。
不久的将来,各种嵌入式系统与PC机的关系也会因为有Internet这座桥梁而越来越密不可分,彼此取长补短,从而构成一个更全面的嵌入式系统。
1.3 远程监控系统发展现状与趋势
远程监控系统的发展很大程度上依赖于网络的发展。目前,接入Internet的方式有很多,有以太网、ISDN、ADSL、电话接入等方式。其中以太网协议已经非常广泛地应用于各种计算机网络,包括办公室局域网、工业控制网络、因特网、智能家居等场合。以太网作为一种廉价、高效的Internet接入方式已经得到广泛的应用,并且还在不断地发展。所以通过以太网接入方式实现嵌入式Internet具有现实意义。嵌入式系统通过以太网接入Internet主要有如下三种解决方案: 1. 32/64位高端嵌入式系统+RTOS(实时操作系统)的实现方式。该方案采用
高端的32/64位微控制器上运行实时多任务操作系统,以实时操作系统作为软件平台,在实时多任务操作系统上直接实现TCP/IP协议,从而实现嵌入
4
式Internet。目前常见的此类实时操作系统有NUCLEUS、LINUX等等,由于系统自带TCP/IP协议,因此实现起来比较容易。
2. PC网关+专用网的实现方式。采用专用的网络把若干个嵌入式仪器连接在一
起,然后再把该网络与PC机连接起来,将PC作为网关,由PC机把网络上的信息转化为TCP/IP协议数据包,发送到Internet上实现信息的共享[11]。 3. 8位单片机+网络接口控制器直接接入Internet的实现方式。由网络控制器实
现网络接口,由主控制器执行存储在系统ROM中的协议代码来提供所需的通信协议。该方案最突出的特点就是成本较低廉,但是软件设计复杂,需要对TCP/IP协议有深入的了解和研究。
基于Web方式是实现远程监控的一个趋势。随着信息技术和网络技术的发展,Internet在过去得到了飞速地发展,并围绕着Internet出现了许多新的技术和新的应用。WWW系统就是在这种形势下,作为网络化信息服务的基础迅速地发展起来的。WWW是一个基于Internet的全球连接的、分布的、动态的、多平台的交互式超媒体信息系统。它利用多种协议传输,能检索分布在世界各地WWW服务器的信息资源。在基于Web的远程监控系统中,客户端使用通用的Web浏览器,通过Internet对生产现场进行监控。这种方案具有显着的优点: 1) Internet技术发展至今,在开放性、通用性、易用性和安全性方面都具备了
成熟可靠的技术。
2) 不需要开发专门的客户端软件,将应用程序集中在服务器上,大大减少了客
户端开发的工作量,而且易于扩充和修改。
3) 系统具有统一的用户界面,用户不再需要为不同的控制系统安装不同的客户
软件,也不再需要针对不同的客户软件进行不同的培训,任何得到授权的用户都可以使用Web浏览器来对现场进行实时监控。 4) 控制网络和数据网络的信息得以集成,有利于信息管理[4]。
1.4 论文研究意义
目前主流的嵌入式远程监控系统一般都需要专门的嵌入式处理器与嵌入式实时操作系统的支持下完成的,要求的处理器也较高端如常见的ARM微处理器以及LINUX实时操作系统。而本文实现的嵌入式远程监控系统则不需要另外的
5