毕业设计-基于C#的远程液位监控软件设计(2)

2019-02-14 22:51

湖南理工学院毕业设计(论文)

免了资源浪费和内存泄露等缺陷。

综上原因,本文提出并设计了一套基于C#远程液位监控软件。该软件不但依靠.NET类库中强大的类库资源实现了对液位过程的实时监测和远程控制,还利用内部的垃圾回收机制,有效的避免了资源浪费和内存泄露等缺陷。在满足企业个性化设计需求的同时还保证了测控平台的工作性能和测控质量,极大的提高了工业生产效率。

1.3 课题研究内容及结构安排

组态软件在工业控制中应用广泛,本文基于此研究设计了一套基于C#的远程液位监控软件,以弥补组态软件在远程监控领域的不足。论文结构安排如下:

第1章,描述了课题研究的背景和意义,阐述了基于C#远程液位监控软件的优点。

第2章,软件的总体设计,包括软件说明和功能介绍以及程序设计流程框图。

第3章,相关软件和技术的基本介绍。 第4章,软件各功能模块的具体设计与实现。 第5章,软件生成与测试结果展示。 第6章,结语与展望。

2

湖南理工学院毕业设计(论文)

第2章 系统整体结构

2.1 控制系统构成

为了实现对水箱液位参数的精确测控以及实时监视和记录。本文设计了一套水箱液位监控系统,此监控系统采用计算机(PC)作为控制器,变频器作为执行器进行构建。监控系统结构图如图2.1所示。

计算机 LIC 101 A/D L T 101 水箱

D/A 变频器 水槽 水 泵 图2.1 水箱液位监控系统结构图

在此系统中,液位变送器LT101使用测量范围为0~60cm的阻压式液位(压力)变送器,将检测出来的水箱液位信号转变为4~20mA标准电信号。控制器LIC101采用PC机,用组态王KingVIEW6.55开发监控软件,并用C#编写可供组态王KingVIEW6.55使用的远程监控控件。A/D与D/A分别选用ADAM5018模块和ADAM5060模块,可经过RS232总线与计算机进行通讯。变频器采用西门子G110变频器,用来获取计算机发送经ADAM5060转换后的4~20mA控制信号,并完成变频调速(频率范围为0~50Hz)进而驱动水泵改变管路中的水流量,达到调节水箱液位的目的

ADAM5018/5060控制模块体积较小,易于集成,且拥有一个独立的嵌入式的RS232传输卡, 可通过RS232与PC机进行通信。底板上有4个插槽,能够插接ADAM5018/5060的I/O 模块, 从而完成快速数据的收集与控制, 因而ADAM5018/5060模块很适宜该系统。

3

湖南理工学院毕业设计(论文)

2.2 测控软件构成

2.2.1 相关技术介绍 (1).NET框架

软件基于.NET框架的VS2010编程环境设计,.NET是一个由 Microsoft .NET Framework SDK中包括的类、值类型和接口构成的库。该库直接访问系统功能,是组成.NET Framework程序、组件及控件的基础。 (2)C/S结构

软件遵循C/S结构,设计了服务器和客户端两大块。该结构可以充分利用硬件的优点,将任务合理安排到客户端和服务器,大大减少了系统整体的通信成本。C/S 结构的根本原理是将大的任务分解为多个子任务,由多台计算机协作完成。其工作模式如图2.2所示:

图2.2 C/S结构工作模式

C/S构架的长处是能够充分利用客户端的应对能力,很多任务能够在客户端处理后再转交给服务器。这样可以大大提高客户端的响应速度。具体如下两点优势:

(1)服务器处理数据负担较轻。 (2)数据的储存管理能力较为透明。 (3)SOCEKT类

服务器和客户端依靠强大的SOCKET类建立连接。完成液位过程数据采集后的传输工作,将远端设备的数据实时可靠的传输到服务器端进行检测和纪录,同时服务器也可发送数据到客户端,对远程液位设备进行调控。Socket也称\套接字\,用来描绘IP地址和端口,是个通信链的句柄。在Internet上的主机通常都会运行多个应用软件,并且提供多种服务。而每个服务程序都会构建相应的SOCKET与端口一一对应,从而让不同端口拥有不同服务。Socket本质上供应了过程通信的端点。Socket连接过程能够分为三步:服务器侦听、确认连接和客户端申请。

4

湖南理工学院毕业设计(论文)

(1)服务器侦听:服务器端socket不是定位详细的客户端socket,而是处于等候连接的状况,实时监测网络状况。

(2)客户端申请:是指由客户端提出连接申请,要连接的目标是服务器端的套接字。因此,客户端的socket首先得描绘它所要连接的服务器,确认服务器端socket的IP地址和端口号,进而向服务器端提出连接申请。

(3)确认连接:指当服务器端socket监听到客户端socket的连接申请时,它会回应客户端socket的申请,创建一个新的线程,将服务器端socket的叙述发给客户端,当客户端确定了此叙述,就会成功握手建立连接。而服务器端socket还将处于监听状态,等待接收其他客户端socket的连接申请。 2.2.2 程序流程框图

系统根据C/S架构,分别创建服务器和客户端。服务器首先创建socket()套接字,利用bind()方法绑定本地IP和端口,用listen()方法监听端口请求,。侦听到端口有连接申请时,调用accept()方法接受请求,而后用receive()/send()方法对数据进行读/写操作,传输完成时使用close()函数关闭服务器。同样客户端也先创建socket()套接字,获取要连接服务器的IP和端口,使用connect()方法发送连接请求,而后使用receive()/send()函数进行数据的读/写,传输完成时使用close()函数关闭客户端。系统程序框图如图2.3所示:

5

湖南理工学院毕业设计(论文)

服务器socket()建立流式套接字,返回套接字sbind(),将套接字s与本地相连listen(),通知TCP,服务器准备好接受连接客户端accept(),接受连接,它等待客户的连接socket()建立流式套接字,返回套接字s连接建立,accept()返回,得到新的数据套接字,如nsconnect(),将套接字s与远地主机连接recv()/send(),在套接字ns上读/写数据,直到数据交换完send()/recv(),在套接字s上写/读数据,知道数据交换完closesocket(),关闭套接字nsclosesocket(),关闭套接字s,结束TCP对话closesocket(),关闭最初套接字s,服务结束 图2.3系统程序框图

2.3 本章小结

本章描述了远程液位监控系统的整体架构设计。包括液位监控系统的各部分

组成,监控软件设计所涉及的相关技术介绍,如:.NET框架、C/S结构和SOCKET编程等,以及系统设计的程序框图说明。

6


毕业设计-基于C#的远程液位监控软件设计(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《推进生态文明__建设美丽中国》教案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: