基于labview的烤烟房远程温湿度测控系统
来源:网络 2012-07-08 关键词:labview 测控系统 控制方案 0 引言 烟叶的烘烤过程是生产优质烟叶的关键步骤,而烤烟的质量与烘烤过程中的温湿度环境有着密切联系。烟农使用酒精或煤油玻璃管温度计,采用人工启闭回风门(用于排湿)和鼓风机(控制火炉火势)的传统方法测出的温度不准确,控制方法被动,加之操作者连续5天以上的疲劳操作,使其成为制约烟叶烘烤质量提高的瓶径。 因此,采用电子设备来控制烤房温湿度的远程测控技术已成为烤烟技术发展的必然趋势。本文介绍了一种基于虚拟仪器的烤烟房远程智能测控系统来提高烤房内温湿度控制精度及烤炯质量的设计方法,该系统具有反应灵敏,抗干扰能力强等优点,可以大大减轻烟农的劳动强度。 1 系统设计 烤烟房内设有的鼓风机和排风扇可以分别调节室内的温度和湿度。系统采用计算机中分时系统来给多任务的各个任务分配时间片的方法,来实现用一台计算机和一个数据卡对多个烤烟房的温度和湿度进行检测与控制。利用数据采集卡中的模拟多路开关来实现各个硬件数据通道之间的切换,以达到各个通道分时间片采样和控制的目的。 该设计方法适用于对时间变化不太敏感的参量的控制(如温度和湿度等),可以减少监控系统的复杂程度。并且还可以利用Remote Panel技术来实现测控系统的远程通信,及网络上的网络上数据发布。该系统由硬件和软件两部分组成,其中硬件是基础,软件是核心。 2硬件设计 该系统的硬件部分先将温湿度信号转换成电信号,并将调理后的数据传人计算机,之后由采集卡输出控制信号来对温湿度控制器件进行控制。系统的硬件由温湿度传感器,DAO卡(数据采集卡)、控制电路、鼓风机及排风扇组成。图1所示为硬件结构框图。
2.1温湿度信号获取 系统采用硅单晶温度传感器和相应的电路来捕获温度信号,并将温度信号转换成电压信号。同时采用UD-08湿度传感器和相应的电路来捕获温度信号,并将其湿度转换成电压信号。其组成框图如图2所示。
2.2控制电路 控制电路的工作原理是传感器输出的电信号经放大、滤波后,再经过数据采集卡进入计算机,计算机根据实际温湿度和系统的给定温湿度求出偏差,利用PID控制算法求出系统的输出控制信号,然后通过数据采集卡输出控制信号,来控制继电器的动作.进而控制鼓风机和排风扇工作,来调整烤房的温度和湿度。 本系统使用NI公司的数据采集卡PCI-6024,此卡设计基于PCI总线,可支持单极性和双极性模拟信号输入,其信号输入范围分别为-5~+5 V和0~10 V。同时PCI-6024还可提供16路单端/8路差动模拟输入通道,2路独立的D/A输出通道,24线的TTL型数字I/O,3个16位定时计数器等多种功能模块。利用NI公司提供的Measurement Automation软件对其进行简单的设置便可实现系统软件与数据采集卡之间的通讯。 鼓风机工作在220VAC电压下,可用固态继电器对它进行控制。排风扇的工作电压是12VDC,用普通继电器即可实现对它的控制。 3软件设计 本测量系统采用labview7.0 Express作为控制软件。LabVIEW程序称为虚拟仪器程序,它是基于图形化编程语言G的开发环境,是仪器控制与数据采集的编程平台。 LabVIEW程序是通过对数据采集卡的控制来采集数据的。电压模拟信号被数据采集卡采集后输人计算机,用PID算法对采集到的数据进行分析处理,同时用所产生的控制信号将处理后的数据送人输出通道。系统的采集状态由前面板显示,所采集出的温湿度数据以文件形式保存。以模块化的编程思想将系统分成数据采集、系统控制、实时显示、数据存储4个模块,并把每个模块编写成一个子VI,让各模块分别完成确定的任务,然后通过主程序调用每个子VI。 3.1主控模块 主控模块可以使各模块之间按照系统的框架协议来协调动作和通信,以及实现人机交互功能,该主控模块提供有用户接口,主控模块可以通过调度各功能模块来响应用户指令。本系统提供了形象逼真的仪器软面板,以方便用户使用。 3.2数据采集模块 数据采集模块的功能就是将温度信号转化为数字量并传递到计算机。NI公司的数据采集卡的数据采集功能可以由LabVIEW提供的模入模块中的中级模入函数组合起来实现。 图 3是使用中级模入设计的数据采集程序框图。该程序先用Device Open.vi模块打开数据采集设备;然后用AI Config.vi模块来配置数据采集卡.选择模拟量输入通道,指定输入信号的范围(调节硬件增益),设置采集数据所占用计算机缓冲区的大小及设置扫描间隔:再通过AI Start.vi启动模入操作,其作用主要是控制数据采集速率和要获得的扫描数,这里将Number of scans to acquire(获得的扫描数)输入端口值设置为“0”即可选择连续采集模式,直到清除模入操作为止(如果设置为“-1”则只要缓冲区满就停止扫描);AI Read.vi的作用是从AI Config分配的缓冲中读取数据,它能控制每次读取的点数、读取数据在缓冲中的位置等,它的输出是一个二维数组,其中每一列数据对应于通道列表中的一个通道;最后,通过AI Clear.vi模块来清除模入操作和计算机中分配的缓冲,并释放所有数据采集的资源。
系统把采集到的数据送到PID控制器的输入端口,经过PID处理后,把控制输出量通过数据采集卡的输出通道输出。 3.3 系统控制模块 控制电路的工作原理是把传感器输出的电信号经放大、滤波后,再经过数据采集卡输入计算机,计算机根据实际温湿度和系统的给定温湿度度求出偏差,并利用PID 控制算法求出系统的输出控制信号,然后通过数据采集卡输出的控制信号来控制继电器的动作,进而控制鼓风机和排风扇的工作,最终达到调整烤烟房的温度和湿度之目的。 该模块的基本思路是:根据烤烟时的三阶段烘烤要求,在不同阶段,先由烟农在客户端VI的前面板上发出相应的控制命令来设定温湿度参数,然后系统对采集的数据利用PID控制算法进行处理,并通过数据采集卡产生相应的控制信号来控制相关继电器的工作。PID是当前工业控制中应用最广泛的算法。图4是一个典型的PID控制系统的基本结构。这里将被控制的系统参数叫做过程变量(PV-Process variable),将被控制的过程变量指定的理想值叫做设定点(SP-setpoint)。PID控制器先确定一个对被控系统的输出量(U— output),然后驱动过程变量使其逼近设定点。
以温控为例,当温度低于设定的阈值范围时,控制器向数字I/O通道相应位写入‘1’,控制继电器随既接通(鼓风机启动),温度升高;反之,控制器向数字 I/O通道相应位写入‘0’,继电器关闭(鼓风机停止),温度降低。如此反复,从而使温度值稳定在设定值的阈值范围内。经实践,温度的浮动范围定为±2℃,湿度的浮动范围定为±3.5%。 3.4状态显示模块 温湿度报警模块完成的主要工作是规定所采集的温湿度信号的范围及相对应的状态,以较为直观的方式从视觉或听觉上提示用户。系统二通道数据状态分析模块程序如图5所示。系统用InRange and Coerce.vi来判定所采集数据的范围,使用Select.vi对判定结果作出选择,如果采集数据在规定范围内则显示“正常”,否则为“报警”状态,采集数据与状态可同时显示到前面板上。首先烟农在烤烟的三个阶段的开始时预先设定温湿度参量,然后由程序自动运用加减图形代码的运算得到温湿度上下限,来随时查看最后通过前面板的显示数据和状况。
3.5数据存储模块 该模块调用LabV IEW中Write Characters ToFile。VI将经过处理的温湿度值存入指定的文件中,便于以后分析研究。 3.6网络传输模块 本系统采用labview的远程面板(RemotePanel)技术,不需要任何编程,只需要在Lab-VIEW中设置几个参数。该技术允许用户直接在本地 (Client端)计算机上打开并操作位于远程(Web Server)计算机上的VI的前面板,甚至可以将LabVIEW的前面板窗口嵌入到一个网页中并在网页中直接操作它,操作极为简单。 在LabVIEW中使用Remote Panel时需要完成在LabVIEW Web Server端的计算机上开启Lab-VIEW Web Server服务和在Client端计算机上连接并运行Remote Panel两个步骤。 目前,实现在Client端计算机进行RemotePanel操作的方式有两种:一种是在LabVIEW环境中直接操作Remote Panel;另一种是利用网页浏览器在网页中直接操作Remote Panel。本系统应用第一种技术,在Client端使用Remote Panel之前,首先要在Server计算机上运行LabVIEW,并配置Web Server,来完成文件路径和网络设置。客户机访问权限设置,VIs访问权限设置。之后就可以在Client端的IabVIEW环境中运行一个 Remote Panel了。具体步骤如下: (1)在Web Server端打开要进行远程运行的VI的前面板: (2)在Client端的LabVIEW环境中的菜单栏中选择Operate→Connect to Remote Panel,然后在弹出Connect to Remote Panel对话框一栏输入IP地址和所打开的VI的名字以及端口号。 (3)点击Connect按钮进行连接,Remote Panel就会出现在屏幕上,但是Client端的前面板和WebServer端的前面板是不同的,在Client端的前面板就可以进行操作控制了。 4结束语 本系统基于LabVIEW 7.0功能软件,实现了用一台计算机和一个数据采集卡对多个烤烟房的远程监测与控制,从而提高了烤房内温湿度测控精度及烤烟质量,减轻了烟农的劳动强度。故此,该系统的开发与应用将大大克服传统的基于单片机监控系统的硬件结构复杂、软件编程麻烦等缺点。
我要收藏
个赞
评论排行