资源描述:
《嵌入式监控系统的网络通信》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、嵌入式监控系统的网络通信随着Inter的发展与普及,终端采集到的各种参数传输的高速稳定性能已成为一个重要的问题。尽管目前市场上已经有许多功能强大的X络通信软件,但是由于数据传输系统自身的复杂性,通用的软件有时并不能解决特定的问题。出于一些特殊性的考虑,很多时候X络用户需要自己开发软件,以实现对监控领域的特殊实现。本文设计一个工业控制领域的嵌入式X络通信系统,以实现远程数据文件上传到服务器端,方便工作人员对远程现场的控制操作,控制命令的上传下达,检测参数的及时传输。 一、嵌入式监控系统的软件设计概述 监控系统接入Inter是X络监控系统的发展方向。而监控主机和客户端之间的通信是基于T
2、CP/IP的技术之上。TCP/IP技术的核心部分是传输层、X络层和物理接口层。但作为TCP/IP核心的TCP/UDP和IP等中下层协议向外提供的只是原始的编程界面,而不是直接的用户服务,用户服务要靠核心外的应用程序实现,在进行TCP/IPX络通信应用程序设计时,当前最为流行的是Socket编程界面。Socket编程接口目的是解决X间X进程通信问题(Unix系统提供的Socket编程界面除外)。在X络中,每一个Socket用一个三元组描述:协议,本地地址,本地端口;一个完整的Socket连接则用一个五元组描述:协议,本地地址,本地端口,远程地址,远程端口。每个Socket有一个本地惟一的Sock
3、et号,由操作系统分配。Socket编程接口是应用层协议的实现基础。开发Socket的目的是隐蔽X络底Socket是X络通信的基本操作单元,它提供不同主机间进程双向通信的端点层复杂的结构与协议,使编程人员能够简单、抽象地对X络进行操作。利用它可以构造任意的跨操作系统和跨X络协议的分布式处理系统。 二、系统总体方案 如图2.1监控管理主机是运行linux操作系统的下位机(服务器端),现地工作站是嵌入式系统即上位机(客户端)。上位机将采集的数据即时发送给服务器,同时将数据放入一个固定文件夹下,客户端以一定的周期轮询各个下位机,服务器用FTP协议将上位机的文件取走,以实现对现场的控制。图
4、2.2是对上图X络数据传输环节的抽象图。 上位机作为客户端,下位机作为服务器端,客户端以一定的周期轮询各个下位机。服务器端和客户端在发送指令和对指令作出响应时通过TCP协议的套接字来传输。客户端主动转发数据包则用UDP协议的套接字来传输。在X络异常时,通过FTP来使服务器端能获取客户端存储在FLASH上的文件。 三、X络编程及实现 在Linux中,使用最普遍的地址族是AF_I.AF_I是具有IPV4套接口地址的套接口,它可以与TCP/IP上的其它主机进行通信。每个套接口有对应的X络地址,通过在程序中指定远程套接口的地址,就可以建立本地套接口到远程套接口的通信.在建立Socke
5、t端口时经常用到的结构是Sockaddr,该结构是用来保存Socket信息的: structsockaddr{ unsignedshortsa_family;/*地址族,AFxxx*/ charsa_data[14];/*14字节的协议地址*/ }; sa_family一般为AF_I;sa_data则包含socket的IP地址和端口号。 四、功能测试及结论 首先测试客户端是否能正常的处理所支持的协议和方法,是否能正常的转发数据,服务器端是否能正常的接收数据。然后测试动态域名以及移植的FTP服务器的功能是否得到了实现。测试结果如下:客户端以一定的周期轮询各个下位机,并将每个
6、不同采集文件传输到服务器。并且其他要求功能都能正确执行。 系统的服务器端和客户端实现了设计的预定功能,并具有较高的性能。用socket来实现客户机和服务器的连接,客户机将通过串口采集的数据即时发送到服务器,在解决客户端同服务器端最基本的发送数据和接收数据功能之外,在客户端加一个判断本地IP功能,在服务器端申请一个动态域名,实现客户端根据域名来发送数据的功能,最后通过现有的FTP软件,在得到客户端的确认后,监控主机可以在客户端进行文件操作,客户端以一定的周期轮询各个下位机,并将每个不同采集文件传输给服务器。以实现远程数据文件上传到服务器端,方便工作人员对远程现场的控制操作,控制命令的上传下达,
7、检测参数的及时传输。嵌入式监控系统可以使信息实现本地化处理,改善服务器性能,可以使每一个设备具备上X与服务功能,即每一个设备都可以独立进行服务,从而大大提高监控的质量和范围。因此,嵌入式系统是监控系统未来发展方向之一。