1 引言
能源问题是现在社会所面临的重大问题。过去,小区供热普遍是采用供热公司的锅炉把水加热然后送到小区的用户家中,而小区的用户有时会私自放走热水,从而导至锅炉内的水量不足,这样会带来一定的危险。面对此种情况,就出现了换热器,由于换热器在运行过程中要对各个节点的温度与压力进行监测。从而来控制执行机构,如果全部采用人工值守的方式,会带来人力物力的巨大浪费。为了减少换热站的人员值守,提高工作效率,从而开发了此监测软件。
近此年来上位机开发平台出现了很多,而美国NI公司的labview开发平台更为出色,它主要是应用在虚拟仪器以及测试监测行业,它最大的优点在于,它集成了多种仪器的驱动,以及市场上绝大多数PLC的通信协议,开发效率快,程序模块化,运行稳定,因而被广泛的应用于测控领域。
2 系统概述
美国NI公司的labview主要是一款基于图形化编程语言的开发工具,由于它采用的是图形化编程语言,与传统的Visual C++、Visual Basic等编程工具不同,labview更易于开发维护。对于硬件部分主要采用西门子PLC,西门子PLC的优点在于支持多种通信协议,系统稳定,性能质量好,市场占有率最高。
此软件采用多线程技术,将软件的显示存储设置等部分与硬件设备的通信驱动部分分线程执行。这样将会大大的提高通信效率与存储效率。
在硬件设备的通信方面,NI公司提供了NI OPC SERVERS服务器,通过对此服务器的配置,从而实现与PLC的通信,此系统的通信协议采用了modbus通信协议,目前,支持modbus的厂家超过400家,支持modbus的产品超过600种,这样大大的提高了软件的通用性,而且modbus是标准、开放、免费、可靠性强的,不会出现侵犯知识产权问题,并支持多种电气接口,如RS232、RS485等。
在软件存储显示设置部分,其中存储部分采用的是ACCESS数据库存储监测的数据,它可以提高数据的存储量,而且快速的进行数据检索分析。而labview中提供了Database tools工具包,可以有效的将软件与数据进行接口连接。设置部份的参数存储采用ini格式文件存储。
3 实现方法
3.1 系统结构
换热器采集监控系统主要由PPC-179T型研华工业平板计算机、西门子S7-200PLC、EM231温度模块、EM235模拟量采集模块、西门子变频器、PT100型热电阻、西门子压力传感器与变送器构成,此系统采用闭环控制,通过变频器对水泵进行转速的调节,有效的达到了节能的效果。采用LabVIEW 2009开发系统监控软件,在Windows XP操作系统下运行。上位机与PLC通信采用modbus-RTU通信方式。
3.2 软件框架
此软件主要采用多线程方式,在程序中采用了两个while循环,其中一个while循环用于数据采集通信使用,另一个while循环用于数据的存储与参数设置,这样可有避免数据采集过快,而通信过慢导致的数据丢失问题。同时在编程中使用到了事件结构,这样可有效的节省系统资源。
程序中采用了子VI调用的方式,主程序框图与子vi如图2所示。这样使主程序看起来更加层次化,洁简化,其中主要包括以下子VI :参数设置.vi、GetDBpath.vi、save.vi、Search VI.vi、流量界面.vi;主界面vi为主程序,通过它来调用所有子vi;其中GetDBpath.vi主要用于自动获取当前文件路径,save.vi用于数据库的存储功能,Search VI.vi主要用于数据库查询功能。
3.3 数据通信
系统通信物理接口采用RS485接口,软件通信协议采用modbus-RTU通信协议,将labview做为主站,PLC做为从站,从站地址设为3;在labview通信应用上,它所自有的NI OPC SERVERS集成了标准modbus通信协议。
其中对于NI OPC SERVERS的设置方法:跟据实际情况将COM口设置为当前使用的口,波特率采用9600Kbs,数据位为8位,停止位为1,校验设置为None,模式为Modbus,ID号为1,十进制位。
在变量设置方面,主要采用的是字的形式,跟据PLC所提供的modbus地址进行设置,PLC Modbus从站指令支持以下地址:00001至00128对应输出点Q0.0—Q15.7,10001至10128对应输入点I0.0—I15.7,30001至30032对应模拟输入寄存器AIW0至AIW62,40001至04XXXX对应保持寄存器V区。
当设置好OPC服务器后,将服务器中的IO与程序建立链接,方法如下:首先在项目中新建选择I/O Server,进入创建I/O服务器后,选择OPC Client选项,入进到I/O服务器参数设置对话框,将变量刷新时间改为100ms,此时完成I/O Server的创建。其次进行约束变量的创建,创建时依次将项目展开,将V03与发V05添加到已添加变量当中。此时,完成通信部分的设置并可以使用所创建的共享变量。经过实际现场测试,采用这种通信方式,每读写一次操作平均控制在300ms,大大的提高了通信响应时间,足够满足现场监视的的要求。
3.4 数据存储与查询
在数据存储本软件采用的是ACCESS数据库,编程过程中主要应用到Database tools工具包,其中包括以下模块:
在原程序中,为了使软件具有良好的可移植性,所以制做了自动控制获取文件路径子VI,并同时可以自动对数据库进行链接,主要实现方法如图5所示。
3.5 信号采集与控制
在信号采集使用PT100型热电阻,连接到EM231温度模块上,由于温度的变化,从而导致电阻值的变化,温度采集模块通过阻值的变化计算出温度值,压力采集模块,实际就是将压力传感器经变送器后得到的0-5V模拟信号送入EM235模拟量采集模块,通过编写内部标定程序,从而得出系统中各测量点的压力[4]。在程序中,通过对这些信号量的比较,从而对变频器输出频进行调节,从而有效的调节水泵的转速。本系统在信号采集方面,采用了多点采集的方法,这样更有利于根据实际工况来调整信号采集位置,分别在一次入水口,一次回水口,二次入水口,二次回水口等位置分别进行温度与压力的采集。
当系统压力低于设定值时,系统会自动调整水泵转速,加快系统的补水,反之当系统力力高于设定值时,系统会停止水泵,将泄压阀开启,排水减小系统水压。
3.6 实际应用
在实际应用中,本监控软件主要分为:流量查看界面,参数设定界面,数据查询界面,在实际项目中安些功能都是最为实际的应用功能,很多情况下巡检人员与设备管理人员都用到这些功能。
4 结束语
NI公司的LabVIEW开发平台使用的是图形化编辑语言G编写程序,产生的程序是框图的形式。它可以更直观的体现出程序的设计结构,而且较传统代码形式的编程,更容易学习,更具有高效性,它是今后测控行业的方向。它简化了与各种仪器控制器设备的通信方法,省去了很多的底层驱动编写。LabVIEW程序更加模块化与层次化,它可以独立运行或作为SubVI子程序,用户可以根据需求来进行扩展,实现程序模块化。在界面方面,LabVIEW控制选板中内置数百个用户界面对象,可方便的让开发者设计出更专业的用户界面。通过整个设备在现场的运行情况来看,采用LabVIEW开发的上位机监控软件,运行可靠,现场维护简洁等好处。
全部0条评论
快来发表一下你的评论吧 !