孟 威
[摘要]以远程监控应用为背景,构建一个基于Client/Server结构的远程监控系统,实现终端和监控主机的数据通信。完成客户端和服务器端通信软件的设计并进行性能进行测试,测试结果表明服务器端和客户端之间的数据通信实现设计目标并具有较高的性能。
[关键词]嵌入式 监控系统 网络通信
中图分类号:TP3文献标识码:A文章编号:1671-7597(2009)0120017-01
随着Internet的发展与普及,终端采集到的各种参数传输的高速稳定性能已成为一个重要的问题。尽管目前市场上已经有许多功能强大的网络通信软件,但是由于数据传输系统自身的复杂性,通用的软件有时并不能解决特定的问题。出于一些特殊性的考虑,很多时候网络用户需要自己开发软件,以实现对监控领域的特殊实现。本文设计一个工业控制领域的嵌入式网络通信系统,以实现远程数据文件上传到服务器端,方便工作人员对远程现场的控制操作,控制命令的上传下达,检测参数的及时传输。
一、嵌入式监控系统的软件设计概述
监控系统接入Internet是网络监控系统的发展方向。而监控主机和客户端之间的通信是基于TCP/IP的技术之上。TCP/IP技术的核心部分是传输层、网络层和物理接口层。但作为TCP/IP核心的TCP/UDP和IP等中下层协议向外提供的只是原始的编程界面,而不是直接的用户服务,用户服务要靠核心外的应用程序实现,在进行TCP/IP网络通信应用程序设计时,当前最为流行的是Socket编程界面。Socket编程接口目的是解决网间网进程通信问题(Unix系统提供的Socket编程界面除外)。在网络中,每一个Socket用一个三元组描述:协议,本地地址,本地端口;一个完整的Socket连接则用一个五元组描述:协议,本地地址,本地端口,远程地址,远程端口。每个Socket有一个本地惟一的Socket号,由操作系统分配。Socket编程接口是应用层协议的实现基础。开发Socket的目的是隐蔽网络底Socket是网络通信的基本操作单元,它提供不同主机间进程双向通信的端点层复杂的结构与协议,使编程人员能够简单、抽象地对网络进行操作。利用它可以构造任意的跨操作系统和跨网络协议的分布式处理系统。
二、系统总体方案
如图2.1监控管理主机是运行linux操作系统的下位机(服务器端),现地工作站是嵌入式系统即上位机(客户端)。上位机将采集的数据即时发送给服务器,同时将数据放入一个固定文件夹下,客户端以一定的周期轮询各个下位机,服务器用FTP协议将上位机的文件取走,以实现对现场的控制。图2.2是对上图网络数据传输环节的抽象图。
上位机作为客户端,下位机作为服务器端,客户端以一定的周期轮询各个下位机。服务器端和客户端在发送指令和对指令作出响应时通过TCP协议的套接字来传输。客户端主动转发数据包则用UDP协议的套接字来传输。在网络异常时,通过FTP来使服务器端能获取客户端存储在FLASH上的文件。
三、网络编程及实现
在Linux中,使用最普遍的地址族是AF_INET.AF_INET是具有IPV4套接口地址的套接口,它可以与TCP/IP上的其它主机进行通信。每个套接口有对应的网络地址,通过在程序中指定远程套接口的地址,就可以建立本地套接口到远程套接口的通信.在建立Socket端口时经常用到的结构是Sockaddr,该结构是用来保存Socket信息的:
struct sockaddr{
unsignedshortsa_ family ;/* 地址族,AFxxx*/
char sa_data[14]; /*14字节的协议地址 */
};
sa_ family一般为AF_INET; sa_data 则包含socket的IP地址和端口号。
四、功能测试及结论
首先测试客户端是否能正常的处理所支持的协议和方法,是否能正常的转发数据,服务器端是否能正常的接收数据。然后测试动态域名以及移植的FTP服务器的功能是否得到了实现。测试结果如下:客户端以一定的周期轮询各个下位机,并将每个不同采集文件传输到服务器。并且其他要求功能都能正确执行。
系统的服务器端和客户端实现了设计的预定功能,并具有较高的性能。用socket来实现客户机和服务器的连接,客户机将通过串口采集的数据即时发送到服务器,在解决客户端同服务器端最基本的发送数据和接收数据功能之外,在客户端加一个判断本地IP功能,在服务器端申请一个动态域名,实现客户端根据域名来发送数据的功能,最后通过现有的FTP软件,在得到客户端的确认后,监控主机可以在客户端进行文件操作,客户端以一定的周期轮询各个下位机,并将每个不同采集文件传输给服务器。以实现远程数据文件上传到服务器端,方便工作人员对远程现场的控制操作,控制命令的上传下达,检测参数的及时传输。嵌入式监控系统可以使信息实现本地化处理,改善服务器性能,可以使每一个设备具备上网与服务功能,即每一个设备都可以独立进行服务,从而大大提高监控的质量和范围。因此,嵌入式系统是监控系统未来发展方向之一。
参考文献:
[1]W.Richard Stevens著,TCP/IP详解卷1[M].协议机械工业出版社,2000.
[2]Eric A.Hall著,Internet核心协议权威指南[M].中国电力出版社,2002.
作者简介:
孟威,女,汉族,浙江省杭州市,中国计量学院信息工程学院2005级通信专业。