技术中心
 
 

一种嵌入式Web服务器的远程测控系统

   日期:2006-09-15     作者:管理员    

  针对目前工业现场大量8位普通微处理器尚未接入Internet的现状,本文详细介绍了基于51单片机的嵌入式Web服务器,并由此构建了基于二维精密工作平台的远程测控系统。经实践检验,此方案切实可行。

    1、引 言
   
       目前远程测控系统一般都采用以太网和现场总线混合控制网络。由于现场总线多种标准共存局面的存在,严重地影响了自身追求的开放性、分散性和完全互操作性的特点。随着Internet技术的迅速发展,以太网和TCP/IP协议已成为世界范围内的事实标准。基于TCP/IP的以太网可满足控制系统的各个层次的需求,并具有实现现场设备层和企业管理层的无缝连接、低成本等现场总线技术无法比拟的优点。专家预言,基于以太网传输的嵌入式Internet网络将会成为下一代工业控制网络的重要选择,并将带来工业控制网络新的变革。
   
       8位普通微处理器(尤其是51

系列单片机)因其体积小、可靠性高、控制功能强、性能价格比高、易于推广应用等显著优点,广泛应用于国民经济的各个领域(国际上自70年代开始,国内自80年代以来),尤其是测控领域。然而以8位普通处理器为核心的嵌入式系统因系统资源、处理速度有限等因素仍排斥在Internet之外,这势必将会影响基于Internet工业控制网络的发展。因此解决如何利用现有嵌入式系统接人Internet有很大的研究价值及市场前景。
   
    2、嵌入式Web服务器
   
       为使51单片机接人Internet,就必须在51单片机系统内建立一个可供远程主机能够访问的Web服务器。主要的困难在于,Internet上面的各种通信协议对于存储器、运算速度等的要求比较高,支持TCP/IP等Internet协议将占用大量系统资源,这就要求我们建立一个嵌入式瘦web服务器。
   
    2.1 硬件设计
   
       笔者在实验中开发了一个简洁的硬件平台,命名为51板,其硬件原理图如图1所示。其中51单片机选用的是8位微处理器AT89C58,指令集和MS.5l系列兼容,因其片内带有32K闪存,因此可不扩展外部程序存储器,简化硬件电路。另外扩展了一片外部 的62256,用来处理网络传输的II)包、任务切换和应用程序的数据缓存。利用AT89C58单片机内部有一个全双工的串行接口,组成RS232串口,作为与其它串口设备通讯用。RTL8019AS是由台湾Realtek公司生产的高度集成的以太网控制器,它负责实现以太网媒介访问层(MAC)和物理层(PHY)的所有功能,经隔离后与RJ.45相连。

51板的硬件原理框图


图1 51板的硬件原理框图

    2.2 软件设计
   
       由于51单片机程序空间及内存RAM的限制,这决定了51单片机与电脑在实现Web服务器时存在诸多差别,诸如:在51单片机里不能使用WINDOWS、UNIX、LINUX等多任务操作系统,更不能支持比较完整的TCP/IP协议,存放收到的以太网数据包的RAM是固定的,而不是动态分配的。所以尽管UNIX、LINUX 的源代码公开,但在其上实现的Web服务器的源代码并不能够直接移植到51单片机上。另外采用实时操作系统RTOS,价格昂贵,不利于低成本开发。为此我们为51板开发了整个软件包,主要包括如下四个方面的内容:
   
       网卡的驱动程序:其中包括RTLS019初始化、读取和设置 19的MAC地址及RTLS019发送和处理以太网程序等。需要注意的是有关芯片的地址定义及访问方式要与硬件电路相符。
   
    (1) TCP/IP 协议族的实现
   
       TCP/IP是一个协议族,它由几百种网络通信协议组成,TCP协议和IP协议只是此协议族中的两个成员,




















但由于其地位重要,因此通常使用TCP/IP来代表整个协议族。嵌入式Internet作为一种TCP/IP协议的嵌入式应用,其功能是特定的,而且一般来说嵌入式系统资源也非常有限,所以它不要求或不可能实现所有的TCP/IP协议,因此有必要对TCP/IP协议精简。
   
       通过对TCP/II)四层协议和系统需求的分析,我们选择并实现了以下协议:超文本传输协议HTTP(定义了一种请求/应答机制来从Web服务器获取文档)、传输控制协议TCP(为在服务器和客户端之间传递HTIP请求/应答提供一个可靠的通信信道)、网际协议II)(它使异构网络之间的通信成为可能)、Internet互联网控制报文协议ICMP(实现诊断ping,检查低层协议层)、地址解析协议ARP(用来把高层II)地址与低层物理硬件地址动态捆绑起来)。
   
    (2) Web服务器的实现
   
    
   Web服务器用来监听用户端的服务请求,根据用户请求的类型提供相应的服务。用户端使用Web浏览器和web服务器进行通信。Web服务器在接收到用户端的请求后,处理用户请求并返回需要的数据。
   
       网页采用HTMI 格式,存贮在程序存储器中,通过普通的线性查询技术寻找客户端请求的文件。传统服务器只提供固定的网页,实质上是一个文件服务器。但这样的服务器不适合应用于测控系统,没多大实用价值。为使Web服务器变得实用,则要求Web服务器与浏览器之间具有交互能力,网页中含有动态内容,允许在已存在的页中插入动态数据,我们采取了变量替换的方法。









 
  
  
  
  
 
更多>同类技术
 
全年征稿 / 资讯合作
 
推荐图文
推荐技术
可能喜欢