关键词:液位测控,PLC,VB
Abstract: Measurement and Control of Liquid Level is an important link on controlling of pharmaceutical tank. This paper introduces an implement method of developing a PLC‘s Liquid Level measuring and controlling system, expatiates a method of developing a software interface between this system and the other control links.
Key words: Measurement Control Liquid Level,PLC,VB
1. 概述
为了满足药品制药生产工艺过程的要求,工厂需要大容量的密封拱顶塔罐混合并存储药物原液。根据整个生产工艺的要求,需要能够实时测量密封拱顶塔罐内的药液的高度,从而准确了解罐内药液的体积,并可以通过现场或远程操作控制液位的高度。同时,远程计算机的监控管理软件联系现场控制过程,并与工厂中其他过程控制系统交换数据来实现整个药品生产过程的统一控制。
由于原先是人员职守的方式,该方式不仅费人力,而且不能与整个生产过程形成有机整体,安全性和可靠性低。所以,为了达到系统控制任务书的要求,本文电气控制系统的方案为:采用远程PC机作为系统主机,与现场的PLC(从机)通讯,PLC实现通讯、现场显示界面的显示、液位模拟量数据的采集、逻辑控制以及声光报警。
本文介绍的电气控制系统的设计主要包括以下几个方面:
(1)PLC、显示面板、连续液位采集传感器的选型。
(2)系统控制功能的实现。
(3)上位机与下位机的软件编制。
2.控制的内容和要求
如图1所示,本控制设计任务需要实现以下目标:
(1)可以实时监测记录液位的变化,可以人工设定并自动控制液位的高度值。
(2)可以通过自动方式和手动方式控制该系统。
(3)现场显示界面显示的内容主要包括:当前液位值、当前罐内容量值、设定液位高度、进液口与出液口电磁阀状态、实时故障报警和历史故障报警等。
(4)通讯采用RS-485总线通讯方式,使PLC与远程PC机联系,实现通过PC机控制液位高度,监测液位变化的目的。PC机同时与其他系统发生联系,进而使工厂整个药品生产过程构成了一个有机的整体。
图1 液位自动控制系统
3. 硬件配置及实现方法
为了提高控制系统的可靠性与灵活性,系统采用PLC可编程逻辑控制器。PLC选型为SIEMENS公司的S7-200系列PLC,中央处理单元为西门子公司新推出的CPU 224XP AC/DC/Relay ,该CPU在本机体中集成了2个RS-485通讯口,2个模拟量输入口,1个模拟量输出口,14个数字输入和10个继电器输出,其性价比高,满足本系统的所有要求。
为了连续测量塔罐内的液位,液位传感器选用卫生型雷达液位计,其测量量程范围为20米,其输出为标准的二线制4-20mA电流输出。传感器输出电流信号通过电流/电压变送器将4-20mA电流信号变换成0-10V电压信号接到CPU本体的模拟量输入口。
现场显示界面选择西门子的文本显示界面:TD200,它可以方便地显示和设定参数,并可以显示当前报警信息或者查询历史报警信息。TD200与PLC 连接只需要通过TD/CPU电缆连接至PLC的通讯口PORT0。使用485总线的一端连接PLC的通讯口PORT1,另一端通过RS-485/232电平转换器连接至PC机的RS-232串口,实现PC机向PLC发送命令帧、并接收PLC响应帧。
4. 系统的软件编程及实现方法
由于现场PLC需要与远程PC机监控管理软件传递控制参数和实时信息。所以,本系统软件包括了PLC程序和PC机的监控管理软件。
4.1 PLC的程序编写
编写224XP CPU的程序,支持的编程环境为STEP 7-Micro/WIN V4.0版。
传感器采集的液位模拟量信号送入PLC模拟量输入口,经A/D转换送入CPU,从AIW0 中取输入值,为了增加稳定性,而取一定范围内采样值,并求多次采样值的平均值,再依据计算出的某时间段液位平均值,求当前实际容量,用于生产过程控制,现场显示和上位机记录分析。
PLC根据现场或远程PC机命令,通过一系列逻辑操作,控制塔罐输入/输出电磁阀、出料泵等,完成系统预定的命令,实现控制要求。
TD200文本显示器组态也在STEP 7-Micro/WIN V4.0软件环境中进行,编程环境提供了易于使用的组态向导,使文本显示界面组态和使用非常方便。
4.2 PC机的监控管理软件的编制
微软的 Visual Basic 6.0 提供了高效的可视化编程环境,具有良好的图形用户接口,少量的界面控制代码即可设计出本系统的标准Windows风格的图形窗口用户界面,支持面向对象的程序设计,可以方便快速地编制出系统的分析和控制程序。为了使用户能方便快捷地创建串口通信程序和数据库系统管理,Visual Basic 6.0 为用户提供了MSComm 通信控件和数据库访问对象库ADO技术。
4.2.1 PC机串口与PLC 自由口的通讯实现
本系统的监控管理软件(上位机)和S7-200 PLC (下位机)的连接采用RS-485总线半双工通讯方式,在MSComm事件的中断程序中接收数据,在时间定时器控件(Timer)中断程序中发送控制命令。本文介绍的系统上位机和下位机之间的的通信是互发报文的形式来实现的,下位机PLC只有在接收到上位机查询命令时才上送数据,下位机PLC在接收到上位机修改控制参数命令时,必须上送确认报文后方才执行命令。
(1) OnComm 事件中断服务程序
……
Private Sub MSComm1_OnComm()
Dim GetByte() As Byte
Select Case MSComm1.CommEvent
Case comEvReceive ‘收到1个字符数据
GetByte = MSComm1.Input
Receive_Data = Receive_Data & GetByte(0)
……
End Select
End Sub
……
(2) Timer 事件中断服务程序
……
Private Sub Timer1_Timer()
Dim SendByte() As Byte
Send_Data = SendByte()
MSComm1.Output = Send_Data
……
End Sub
……
4.2.2 数据库管理程序的编制
本系统的PC机监控管理软件的数据库格式采用本地的Microsoft Access数据库,它记录当前液位值和保存历史液位值,同时它还记录所有的控制参数,该数据库也可以让其它程序共享,以改变控制参数,实现整个药品生产过程控制与本子控制系统的接口。所以,本文介绍的系统不仅可以作为一个独立的系统,也可以作为工厂自动化有机整体的一个环节。
ADO(ActiveX Data Object)技术是如今应用最广泛的数据访问技术之一。系统的监测管理软件运用VB中的ADO对象,引用ADO组件开发出操作数据库记录的应用程序,只需在窗体上添加部件“Microsoft ADO Data Control 6.0”,并编写连接和操作数据库的VB程序代码。
下面为连接本地数据库的程序代码:
On Error GoTo LoginError
Dim strConnection As String
Set ConnData = New ADODB.Connection
With ConnData
.CommandTimeout = 15
.CommandTimeout = 30
End With
strConnection = "UID=Admin;PWD=;" & _
"Driver={Microsoft Access Driver (*.mdb)};" & _
"DBQ=" & App.Path & "\db1.Mdb;"
ConnData.Open strConnection
ConnData.CursorLocation = adUseClient
Adodc1.ConnectionString = ConnData.ConnectionString
Adodc1.RecordSource = "select * from tbl1"
Adodc1.Refresh
Set AdoRs = New ADODB.Recordset
AdoRs.Open "select * from tbl1", _
ConnData, adOpenForwardOnly, adLockReadOnly
Exit Sub
LoginError:
MsgBox "无法与数据库建立连接!"
4.2.3 数据库浏览器的开发
不仅仅是友好美观的图形窗口用户界面和可靠的数据库记录存取过程代码。还需要方便的数据库记录浏览、分析的方法和接口界面。为此,需要使用一些数据库绑定的控件等来实现数据库浏览器的功能,利用画图命令line实现简单的当前、历史原液容量变化趋势图。使操作变得更简单、更方便,日常维护更加人性化。
5. 结束语
本文介绍的液位监控系统电气设计方案和PC机监控管理软件,经过实践证明是可行的,不仅解决了改造之前的缺陷,而且性能稳定可靠。
实现了:
(1)即使在没有PC(上位机)的情况下,PLC系统仍可以独立可靠地运行。
(2)PC机监控管理软件通过共享数据库与药品整个生产过程其它环节协调。
该控制方案采用PLC作为现场控制核心,保证了控制的高可靠性;采用PC机管理该系统或融合其它子系统,减少了成本,方便了集中管理,提高了自动化程度。作者认为本方案不仅适用于工业生产老设备改造升级,对于中小型过程控制集中管理也具有参考价值。
参考文献:
[1] SIMATIC.S7-200 Programmable Controller System Manual.6ES7298-8FA22-8BH0
[2] 郝成.基于PC的DCS研究与应用.微计算机信息.2005.5
[3] 郭琦.Visual Basic 数据库系统开发技术.人民邮电出版社,2003
[4] 范逸之,陈立元.Visual Basic与RS-232串行通信控制.清华大学出版社,2002