




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
煤矿安全生产监测系统的研究作者简介: 赵晓(1978),女,陕西西安人,讲师,工学硕士,主要研究方向:软件工程。赵 晓(陕西科技大学电气与信息工程学院,陕西咸阳,712081)摘 要: 本文提出了煤矿安全生产监测系统的总体结构图和实现方法,重点讨论了系统开发中涉及到的数据传输技术、链表的使用等主要技术。本系统的开发和使用将大大改善煤矿安全生产中的不安全因素。关键词: 煤矿安全生产,监测,数据传输,链表Investigation about the Safety Productions of Coal Mine Monitor System(Shaan Xi university of Science & Technology Xian Yang 712081)Abstract: This paper put forward a total structure diagram and a method about safety productions of coal mine monitor system, and then, we discussed some important technology that involved in the development of system, such as data transmission, the usage of chain form technique and so on. The development and usage of this system will improve the insecurity factor of safety productions of coal mine.Key words: the safety productions of coal mine, monitor, data transmission, chain form中图分类号:TP391引言 煤矿安全生产是指通过改善劳动环境,减少生产中的不安全因素,防止伤亡事故的发生,从而确保煤矿生产的顺利进行。在安全生产中,安全是前提;生产是目的,是维系安全的物质基础。但是二者之间仍存在一定的矛盾,从某种意义上讲,在投入资源一定的情况下,投入安全中的资源增加,意味着投入生产中的资源减少;另外,许多企业由于缺乏长远的战略目标。为了追求短期的高效益,往往会以牺牲人员或设备的安全为代价来换取暂时的利润。而且,煤矿生产本身具有特殊的作业环境,加上地质和环境的复杂性,致使煤矿生产具有更多的潜在的不安全因素。在日常的生产过程中,由于安全管理不善而引发各类安全事故层出不穷。从而影响了煤矿的生产经营秩序,企业总体经济效益不断下降。由此可见,煤矿安全管理己成为煤矿生产经营的“瓶颈”,煤矿安全生产监控系统正是基于上述背景条件下产生的。该系统是以煤矿企业预警管理理论为指导,针对煤矿企业生产中的不安全因素提出的,是一种新型的、具有创造意义的研究课题。它通过及时反馈安全事故信息,提出一种能够监测、预控安全事故的煤矿安全生产监控系统。旨在为煤矿安全生产管理提供一种具有实际运用价值的安全管理新模式。2系统的总体设计21 系统结构概述煤矿安全监控系统采用以B/S(Browse/Server)与C/S(Client/Server)相结合的方式来架构整个系统。B/S方式用于查询实时数据和历史数据,C/S方式用于实现各矿动态图形的上传和维护管理。在设计上,本系统采用三层结构。三层结构的特点是在传统两层结构的基础上加入一个业务逻辑层。它将C/S体系结构中原本运行于客户端的应用程序移到了中间件层,客户端只负责显示与用户交互的界面及少量的数据处理(如数据合法性检验)工作。客户端将收集到的信息(请求)提交给中间层服务器,中间层服务器进行相应的业务处理(包括对数据库的操作),再将处理结果反馈给客户机。这样减轻了中心服务器的负担,提高了整个系统的安全性。因为B/S结构的无连接性,实时数据以及曲线无法及时更新到监控客户端,所以本系统采用了C/S结构来解决这个问题。同时为了兼容B/S结构的安装部署方便、客户端零维护的优点,系统采用了Web部署来解决这个问题。首先监控客户端程序部署在中心服务器上,当客户端通过权限验证后,就可以请求执行客户端监控程序(一个可执行应用程序文件)。Web服务器收到请求后,首先检查服务器中的客户端监控程序有无更新,然后将该应用程序发送至客户端进行执行。此种方案所具有的优点:(a)客户端部署方便:客户端无需安装,只需通过Web页面请求执行监控程序即可,Web服务器会自动将客户端监控程序运行所需的运行库发送至客户端进行执行,高效而且方便。(b)客户端零维护:客户端的应用程序是通过请求Web服务器来执行,服务端在得到请求后首先进行版本的更新检查以及各种运行时更新检查,然后发送至客户端进行执行。客户端无需进行维护。(c)安全性高:客户端应用程序与服务端程序通信的协议是自行设计且进行了信道加密,确保通信安全,数据不被窃取、篡改。保证整个系统的安全性不受威胁。(d)与B/S架构整合统一:客户端应用程序是通过Web浏览器来请求执行的,可与B/S架构做到完美的结合。整体的操作风格趋于一致。22 系统总体设计结构图煤矿安全监控系统的总体结构图如下图2-1所示:图2-1系统总体结构图(a)服务端程序:整个软件的核心,是一个服务端上的应用程序,由系统管理员进行管理。(b)浏览器:主要是指IE浏览器,它能通过Internet浏览ASP.NET页面进行一些基本的历史数据的查询。(c)安全监控客户端:它是一个智能客户端,使用了.NET非接触式(no-touch deployment)部署的特性。它就如同是部署在网站上的inForms的应用程序。用户可以直接通过网络见到各矿点的数据的动态变化。(d)监控程序1,监控程序2,:是各个矿点发送数据的应用程序,我们用一个模拟程序来表示它们。(e)数据库服务器:SQL Server2000数据库服务器是保存了各矿点的数据。23 服务器程序的详细介绍在图2-1中,体现出服务程序是整个系统的核心,各矿点的数据是通过它来中转的。各个矿点通过TCP传送数据时,服务程序为各矿点开辟了一个实时连接线程,进行实时数据的传输。然后将数据排入缓冲池,缓冲池的设计防止了数据因为同时的发送,而造成数据接收时的冲突,解决数据收发的速率匹配问题,防止从监控程序接收的数据直接发送至客户端而带来的延时及数据丢失。数据通过两路前行,一路是数据存入数据库,这是一个后台的操作。另一路是数据流向安全客户端,同样安全监控客户端也与服务程序的客户端连接及管理开辟连接线程,通过TCP接收数据。从总体上来说,安全监控客户端和各矿点的监控程序与服务程序采用了C/S的结构,这种结构不但能够保证数据传输的安全性,而且能够保证数据的实时性。3 功能实现中的主要技术31 数据传输代码的实现服务端的监控部分和客户端的访问部分都用到了数据的传输,有两个关于数据传输的基类,分别是连接类和连接管理类,这两个基类分别用了Microsoft的Socket类和TcpListener 类。(1)Socket类Socket类为网络通信提供了一套丰富的方法和属性。Socket类允许您使用ProtocolType枚举中所列出的任何一种协议执行异步和同步数据传输。Socket类遵循异步方法的.NET Framework命名模式;例如,同步Receive方法对应于异步BeginReceive和EndReceive方法。如果当前使用的是面向连接的协议(如TCP),则服务器可以使用Listen方法侦听连接。Accept方法处理任何传入的连接请求,并返回可用于与远程主机进行数据通信的Socket。可以使用此返回的Socket来调用Send或Receive方法。如果要指定本地IP地址和端口号,在调用Listen方法之前先调用Bind方法。如果不调用Bind,基础服务提供程序将为您分配这些值。此后,可以使用LocalEndPoint属性来标识分配给Socket的IP地址和端口号。如果想连接到侦听主机,调用Connect方法。若要进行数据通信,调用Send或Receive 方法。当数据发送和数据接收完成之后,可使用Shutdown方法来禁用Socket。在调用Shutdown之后,可调用Close方法来释放与Socket关联的所有资源。如果编写较简单的应用程序,而且只需同步数据传输,则可以考虑使用TcpClient、TcpListener和UdpClient。这些类为Socket通信提供了更简单、对用户更友好的接口。代码举例:public WinSocket(ConnManage inManage,Socket inSocket)/连接类构造函数Manage=inManage;conn=inSocket;ThreadStart ts=new ThreadStart(ReadData);clientThread=new Thread(ts);clientThread.Name=Connected;clientThread.Start();(2)TcpListener类TcpListener类提供一些简单方法,用于在阻塞同步模式下侦听和接受传入连接请求。使用TcpClient或Socket来连接TcpListener,使用IPEndPoint、本地IP地址及端口号或者仅使用端口号,来创建TcpListener。可以将本地IP地址指定为Any,将本地端口号指定为0(希望基础服务提供程序分配这些值)。如果选择这样做,使用LocalEndpoint来标识已指定的信息。Start方法用来开始侦听传入的连接请求。Start将对传入连接进行排队,直至您调用Stop方法或它已经完成MaxConnections排队为止。可使用AcceptSocket或AcceptTcpClient从传入连接请求队列提取连接。这两种方法将阻塞。如果要避免阻塞,可首先使用Pending方法来确定队列中是否有可用的连接请求。调用Stop方法来关闭TcpListener。Stop方法不会关闭任何已接受的连接。需要用户负责分别关闭这些连接。代码举例:public ConnManage(int port)/连接管理类构造函数this.port=port;tryacceptsocket=new TcpListener(port);acceptsocket.Start();/监听ThreadStart serverThreadStart=new ThreadStart(Listening);/建立线程serverthread=new Thread(serverThreadStart);serverthread.Name=Manager;serverthread.Start();catch(SocketException)throw;32 程序所用链表的代码实现在程序中我们经常会用到链表这样一种数据结构。很幸运Microsoft为用户提供了很好的数组类ArrayLIst,用起来很方便,如同在用一个链表。ArrayList类提供在大多数Collections类中提供但不在Array类中提供的一些功能。例如:Array的容量是固定的,而ArrayList的容量是根据需要自动扩展的。如果更改了ArrayList.Capacity属性的值,则自动进行内存重新分配和元素复制。ArrayList提供添加、插入或移除某一范围元素的方法。在Array中,您只能一次获取或设置一个元素的值。ArrayList提供将只读和固定大小包装返回到集合的方法。而Array不提供。另一方面,Array提供ArrayList所不具有的某些灵活性。例如:可以设置Array的下限,但ArrayList的下限始终为零。Array可以具有多个维度,而ArrayList始终只是一维的。特定类型(不包括Object)的Array的性能比ArrayList好,这是因为ArrayList的元素属于Object类型,所以在存储或检索值类型时通常发生装箱和取消装箱。要求一个数组的大多数情况也可以代之以使用ArrayList。它更易于使用,并且通常具有与Object类型的数组类似的性能。代码举例:protected ArrayList conlink=ArrayList.Synchronized(new ArrayList();/成员“连接类链表”是一个链表对象public int GetCount()/返回连接对象的个数 return conlink.Count; public virtual void OnCloseConn(WinSocket inConn)/断开连接DelConn(inConn);protected void AddConn(WinSocket inConn)/加入一个连接对象conlink.Add(inConn);protected void DelConn(WinSocket inConn)/删除一个连接对象Monitor.Enter(conlink);/同步锁 conlink.Remove(inConn);/移除连接对象 Monitor.Exit(conlink);33 煤矿安全监测系统的主界面煤矿安全监测系统的主界面如图3-1所示。图3-1 主界面设计a) 菜单栏:菜单栏拥有系统、查询、视图、帮助四个大栏目。在系统栏中包括了一些系统级的操作,包括:矿场帐号管理、超级管理员密码修改、报表打印等操作。查询栏中主要是历史纪录的查询。视图的作用是当矿场属性、历史报警记录关闭时,可以在里面选择重新打开。b) 显示框:显示框的根代表的是矿务总局,也就是系统管理员所在的单位。当矿场连上矿务局这个服务端后,就会在显示框中显示出矿场的名字,以及这个矿厂所拥有的测点。c) 显示测点信息栏:在显示框中当有矿场登陆时,系统管理员可以在显示框中单击那个矿场,在显示测点信息栏中就可以看到矿场测点的动态变动值和相关的测点信息。d) 历史报警记录栏:在历史报警记录栏中记录了最近所有矿场的超限记录,方便了系统管理员对各矿场的超限值的及时掌控。e) 矿场属性栏:在显示框中当有矿场登陆时,系统管理员可以在显示框中单击那个矿场,就可以在矿场属性
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025至2030中国环保卫生巾市场销售规模及未来需求量预测报告
- 2025至2030中国氧化球团行业发展研究与产业战略规划分析评估报告
- 家用电器定期维护保养服务协议
- 专业物流配送服务合作协议书
- 可持续绿色交通信号系统智能化改造项目规模及运营模式可行性研究报告
- 可持续2000平方米太阳能光伏屋顶发电可行性研究报告
- 绿色交通系统50km智慧公交停车场建设与智能化改造可行性研究报告
- 可持续绿色1000吨年生物质能源利用项目可行性研究报告
- 绿色低碳1000亩生态旅游区可持续发展规划可行性研究报告
- 跨境电商海外仓环保责任与成本控制研究报告
- 高考历史一轮复习 第5讲 两宋的政治和军事及辽夏金元的统治
- 肿瘤患者中医食疗课件
- 金属非金属地下矿山六大系统建设规范
- 医院节前安全检查记录表范本
- 中科大现代环境生物技术课件第2章 酶工程
- catia考试题及答案
- 耳聋健康教育讲课件
- 新生儿常见症状评估及护理
- 学校反恐各种管理制度
- 聘请总裁协议书
- 管道监检协议书
评论
0/150
提交评论