针对目前工业现场大量8位普通微处理器尚未接入Internet的现状,本文详细介绍了基于51单片机的嵌入式Web服务器,并由此构建了基于二维精密工作平台的远程测控系统。经实践检验,此方案切实可行。
1、引 言 2.2 软件设计
目前远程测控系统一般都采用以太网和现场总线混合控制网络。由于现场总线多种标准共存局面的存在,严重地影响了自身追求的开放性、分散性和完全互操作性的特点。随着Internet技术的迅速发展,以太网和TCP/IP协议已成为世界范围内的事实标准。基于TCP/IP的以太网可满足控制系统的各个层次的需求,并具有实现现场设备层和企业管理层的无缝连接、低成本等现场总线技术无法比拟的优点。专家预言,基于以太网传输的嵌入式Internet网络将会成为下一代工业控制网络的重要选择,并将带来工业控制网络新的变革。
8位普通微处理器(尤其是51
系列单片机)因其体积小、可靠性高、控制功能强、性能价格比高、易于推广应用等显著优点,广泛应用于国民经济的各个领域(国际上自70年代开始,国内自80年代以来),尤其是测控领域。然而以8位普通处理器为核心的嵌入式系统因系统资源、处理速度有限等因素仍排斥在Internet之外CONTROL ENGINEERING China版权所有,这势必将会影响基于Internet工业控制网络的发展。因此解决如何利用现有嵌入式系统接人Internet有很大的研究价值及市场前景。
2、嵌入式Web服务器
为使51单片机接人Internet,就必须在51单片机系统内建立一个可供远程主机能够访问的Web服务器。主要的困难在于,Internet上面的各种通信协议对于存储器、运算速度等的要求比较高,支持TCP/IP等Internet协议将占用大量系统资源,这就要求我们建立一个嵌入式瘦web服务器。
2.1 硬件设计
笔者在实验中开发了一个简洁的硬件平台,命名为51板,其硬件原理图如图1所示。其中51单片机选用的是8位微处理器AT89C58,指令集和MS.5l系列兼容www.cechina.cn,因其片内带有32K闪存,因此可不扩展外部程序存储器,简化硬件电路。另外扩展了一片外部 的62256,用来处理网络传输的II)包、任务切换和应用程序的数据缓存。利用AT89C58单片机内部有一个全双工的串行接口,组成RS232串口,作为与其它串口设备通讯用。RTL8019AS是由台湾Realtek公司生产的高度集成的以太网控制器www.cechina.cn,它负责实现以太网媒介访问层(MAC)和物理层(PHY)的所有功能,经隔离后与RJ.45相连。
图1 51板的硬件原理框图
由于51单片机程序空间及内存RAM的限制CONTROL ENGINEERING China版权所有,这决定了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协议只是此协议族中的两个成员,