论文摘要
随着web技术的发展,嵌入式web技术在工业远程监控和过程控制系统得到广泛的应用。由于工业嵌入式系统是实时系统,要求EWS(Embedded Web Server,嵌入式web服务器)也具备实时性。在单片机上设计的EWS,通常不使用嵌入式实时操作系统,采用的是完全使用服务器硬件资源运行的CGI(Common Gateway Interface,公共网关接口)应用程序接口模块实现动态数据交互,只能实现一些简单界面的远程网络监控。但随着智能仪表监控和组态功能的丰富,EWS还需要在绘制动态曲线图形等复杂图形以及传输庞大数据的网页,这类设计方案难以达到工业仪表对实时性的要求。针对上述问题,本文深刻分析影响实时性的各种因素,以C3000控制器为研究对象,提出了实时EWS设计方案:在32位高性价比微处理器AT9140008硬件开发平台上,采用了μC/OS-Ⅱ实时操作系统和LwIP协议栈设计了嵌入式web服务器,使用多任务编程来提高系统的实时性。客户端程序利用ActiveX技术,使用B/S(Brower/Server)和C/S(Client/Server)混合监控模式,针对C3000的特性设计远程监控界面。控件可下载到客户机上,利用客户端资源绘制图形并动态刷新界面。在工业局域网内,可以通过EPA现场总线技术解决工业以太网网络不确定性传输问题。工业仪表的实时响应速度要求为4~10ms,C3000最小的数据发送间隔为0.125s;通过系统测试,ping包的响应时间为0.4ms、HTTP建立连接的时间为4ms、数据包发送时间间隔为0.025s;客户端的动态网页刷新速度也保持和仪表界面的速度几乎一致。通过上述实验结果,可以证实本设计完全满足工业仪表对实时性要求。在本文中,首先研究影响EWS的实时性的三个关键因素:硬件、软件和网络通讯。接着本文描述通过软件设计提高系统的实时性。在服务器端,介绍了μC/OS-Ⅱ实时操作系统和精简TCP/IP协议栈LwIP的移植,以及HTTP服务器和Flash文件系统的设计;为了提高数据交互速度,本文设计了实时性很高的快速数据交互任务。在客户端,本文采用面向构件思想设计一个监控界面,并尽量模拟真实仪表的功能和界面,设计了存储模块、网络通讯模块、实时监控模块、历史监控模块等。最后,本文对课题的工作进行了总结和展望。