拟量的处理。以及模拟量的稳定和抗干扰问题。 关键词:可编程控制器;给粉机;模拟量处理 一、引言
给粉机是一种机、电、水、气一体化粉(粒)料定量分切式全自动加药装置,它是现代科技发展新兴的一种技术产 品。为达到全自动运转,采用了PLC控制,通过检测稀释罐中的液位高低来控制给粉机的工作,还控制计量泵将稀释罐中的液体药液送到凝集罐中,凝集罐中已有液体是来自高速过滤器的反冲洗水,药液使该反冲洗水的悬浮物凝集成大块 状絮凝物以便进行下一步的水处理工作。 二、控制内容和要求
控制内容和要求取决于工艺要求、资源、及可操作性等。给粉机涉及到的工艺流程如图1所示,首先将粉状凝集助剂倒入料斗,给粉机工作时,通过粉位计检测料斗中是否有料,如果有料,先将干燥空气经气源三联件和气阀吹入出料 口,延迟一段时间后,打开淋水器侧的水电磁阀,为送料作好准备,再延迟一段时间,启动给粉机运行。此时,给粉机 将药液定量的连续的注进稀释罐,在稀释罐中,有搅拌机不停的搅拌,搅拌均匀后待用。使用药液时,用计量泵来运送 ,从稀释罐中注入到凝集罐一类的设备中。
给粉机、水阀、气阀、搅拌机、计量泵的工作状况都与稀释罐中的液位密切相关,一般讲,液位控制采用电极式的 开关量信号,将有关的4个位置的液位信号送到PLC中参与控制。但当用户的液位检测装置是液位变送器时,就需采用模 拟量模块,稀释罐中的液位是通过液位变送器来检测的,对应一定的液位,送出4-20mA电流信号(4-20mA对应着液位高度0-1M)。 液位距池底为120mm时,为L2液位,低于L2液位时,报警,不能
启动计量泵。 液位距池底为120mm时,为L1液位,液位低于L1时要启动气阀、
水阀、给粉机,当给粉机运行时,搅拌机也要运行。给粉机停止时,搅拌机也停止。 液位距池底为750mm时,为H1液位,高于H1液位,给粉机停。 液位距池底为850mm时,为H2液位,高于H2液位时,报警。
三、PLC选用和硬件配置
综合上述情况考虑开关量输入输出的数量,模拟量输入,定时及连锁等各方面情况,选用西门子S7-200系列可编程控制器,型号为CPU-212。这种PLC小型、紧凑,在CPU中配有1K的EEPROM,可永久性的存储用户程序和其他重要的系统参数;它还装有大容量的电容器,供长时间存储所有的数据,而不需要另外安装后备电池;外形尺寸小巧,塑料外壳紧凑坚固,可以直接装在电气控制常用的35mm标准导轨上;本机带有8个输入点和6个输出点,还可扩展2个模块,包括模拟量模块;机内有128个内部存储位,64个定时器,64个计数器,足够编程人员使用;内置24V直流电源,可供本机数字量、模拟量的输入使用,不必另设直流电源;指令执行速度快,每条指令执行时间为1.3us;编程可用小型手持式编程器,方便现场调试,也可用个人PC,方便在研制场所编制程序及归档文件和打印输出。 PLC配置见表1:
表1 PLC配 置 主 机 6ES7212 1BA01-0XB0 数字量输出扩6ES7222 展模块 1HF00-0XA0 模拟量输入扩6ES7231 展模块 0HC00-0XA0 输入输出分配见表2。 输入点地址 I0.0 I0.1 I0.2 I0.3 I0.4 AIW0 内 容 给粉机自动 搅拌机自动 故障报警 粉位计下限 计量泵自动 稀释罐液位 输出点地址 Q0.0 Q0.1 Q0.2 Q0.3 Q0.4 Q1.0 Q1.1 Q1.2 内 容 报警 气阀控制 水阀控制 给粉机控制 搅拌机控制 稀释罐液位H2 稀释罐液位H1 稀释罐液位L2 计量泵控制 Q1.3 四、软件编程和模拟量处理 各个开关量控制、定时、计数、连锁等常规控制用顺序控制方式编在主程序中,这里不赘述。下面重点描述模拟量的处理问题。
作为一个主要控制条件,稀释罐液位,是通过液位传感器送出4-20mA模拟信号进到控制系统中,CPU通过模拟量扩展模块EM232读取该值,并分析、处理该值,在几个指定的液位高度时,输出信号去控制相应设备或发出报警信号。和该模拟量有关的几个基本数据:
对于EM231和CPU212的规定,输入0-20mA对应数据为0-32000, 每
1mA增量,数据为1600。
稀释罐液位0-1000mm对应着液位传感器输出4-20mA。液位增量62.5mm,输出为1mA。
考虑到液位的波动情况,设定最大波动在5mm(即增128个数),上升时取上限值,下降时取下限值。 编好软件后,输入到PLC中,接上仿真开关、信号发生器等,开始调试程序。在调试中发现,模拟量的输入值变化太大,观察AIW0,随着信号源从4-20mA变化,应该从0-32000变化,观察时看到,AIW0的后三位数字都在跳动,这种情况无法参与控制。经分析和试验,从硬件和软件两方面着手解决。 1、硬件接线
从S7-200的安装手册中可以看出,模拟量模块A/D转换间无隔离,这样模块本身抗干扰能力弱。但没有该模块的详细电路,考虑从信号输入端着手,如果输入以参考端接到适当位置,可以减小干扰。最后作了3种接法实验: (1)A_端独立。
(2)A_接到M,而M又接地。 (3)A_接到M,而M不接地。
实验比较以上3种情况后,发现第3种情况结果最好,如图2所示。第1种情况,A独立,因EM231是单端输入,所以A如果悬空,信号没有基准,可能干扰大;第2种情况,A接M而又同时接地,但在这种水处理现场一般不设为仪表专做的地线,因而接地后,各种强电杂波信号都可以通过地线串进来,使干扰增强;第3种情况,A接M又不接地,形成了浮地输入,这种接地常被称为模拟地或小信号地,在一定情况下可以抑制某些干扰,实验证明使用这种处理方法有一定效果。从编程器读取AIW0值,基本上是后两位数字在跳。由于EM231的数据位是12位,而AIW0取值范围是0-32000,是16位,因此,在12位的8421码中,最后一位的一次跳变就是8,这样,后两位在跳变也属正常。
图2 EM231接线的改变
2、软件编程
针对上述情况,从软件入手,进一步调整了模拟量输入的稳定状况。方法是从AIW0取输入值,求多次采样的平均值 依据计算出的平均值输出,去控制给粉机的运行。即:由于S7-200的指令处理较快,模数转换时间也短,在几十us,且模拟量读数灵敏度较高,而在本控制系统中,对转换时间要求不高,所以可以采用多次采样的平均值方法,来处理输入值。例如10次采样值如下: 16848、16832、16808、16840、16864、16856、16872、16880、16824、16848,这些值最大为16800,最小为16808,差为72,如果10次采样为128次,求平均值后放到VW20中,这样VW20的每次读取时间还在ms级,完全满足实际
要求。(实际观察结果为AIW0的变化:164616-14672;VW20的变化:
14647-14651)。经过上述软件的处理后,当AIW0中的值在后两位跳变时,经处理后的模拟量VW20中的值只是个位在跳变,且是一个一个跳变,通过调试证明,采集数据又提高了一个数量级。 五、结束语
在实际使用中发现,这种机型的模拟量模块的抗干扰性能还不尽人意,但最近,西门子公司又推出了S7-22X系列的小型机,据说模拟量的隔离性能好于S7-21X系列,待下次选用时在作了解。但软件的这种处理模拟量输入的方法完全可以采用。
1、将模拟量通道AIW0的数据通过I_DI指令转换为DINT数据类型,并存放入AC0中
2、将AC0中的数据使用DI_R转换为浮点数,目的是为了提升计算精度,因为西门子不允许整型数据直接转换为浮点数,因此必须通过1,2步骤转换。
3、将AC0-6400,因为4-20mA的采集在西门子200系列中是通过坐标移动进行的,也就是因为对于0-20mA来说,西门子S7-200的采集数据在0-32000,也就是说每mA对应的数值为32000/20=1600,那么4-20mA就是6400-32000,因此要将输入值-6400来完
成坐标的移动。
4、然后除以(DIV_R)25600来得到输入值占用整个输入范围的百分比,32000-6400=25600,25600就是4-20mA对应的输入范围。
5、然后通过乘以(MUL_R)100,就得到了0-100的数据。
通过上述程序,将输入的模拟量信号对应的6400-32000之间的数据转换为0-100之间的数据,这样做也称为线性转换。
工程量转换的方法
经常在论坛上看到网友提出工程量显示的问题,想在此做个专题,供各位网友参考。 1、基本概念
我们生活在一个物质的世界中。世间所有的物质都包含了化学和物理特性,我们是通过对物质的表观性质来了解和表述物质的自有特性和运动特性。这些表观性质就是我们常说的质量、温度、速度、压力、电压、电流等用数学语言表述的物理量,在自控领域称为工程量。这种表述的优点是直观、容易理解。在电动传感技术出现之前,传统的检测仪器可以直接显示被测量的物理量,其中也包括机械式的电动仪表。 2、标准信号
在电动传感器时代,中央控制成为可能,这就需要检测信号的远距离传送。但是纷繁复杂的物理量信号直接传送会大大降低仪表的适用性。而且大多传感器属于弱信号型,远距离传送很容易出现衰减、干扰的问题。因此才出现了二次变送器和标准的电传送信号。二次变送器的作用就是将传感器的信号放大成为符合工业传输标准的电信号,如0-5V、0-10V或4-20mA(其中用得最多的是4-20mA)。而变送器通过对放大器电路的零点迁移以及增益调整,可以将标准信号准确的对应于物理量的被检测范围,如0-100℃或-10-100℃等等。这是用硬件电路对物理量进行数学变换。中央控制室的仪表将这些电信号驱动机械式的电压表、电流表就能显示被测的物理量。对于不同的量程范围,只要更换指针后面的刻度盘就可以了。更换刻度盘不会影响仪表的根本性质,这就给仪表的标准化、通用性和规模化生产带来的无可限量的好处。 3、数字化仪表
到了数字化时代,指针式显示表变成了更直观、更精确的数字显示方式。在数字化仪表中,这种显示方式实际上是用纯数学的方式对标准信号进行逆变换,成为大家习惯的物理量表达方式。这种变换就是依靠软件做数学运算。这些运算可能是线性方程,也可能是非线性方程,现在的电脑对这些运算是易如反掌。 4、信号变换中的数学问题
信号的变换需要经过以下过程:物理量-传感器信号-标准电信号-A/D转换-数值显示。
声明:为简单起见,我们在此讨论的是线性的信号变换。同时略过传感器的信号变换过程。
假定物理量为A,范围即为A0-Am,实时物理量为X;标准电信号是B0-Bm,实时电信号为Y;A/D转换数值为C0-Cm,实时数值为Z。
如此,B0对应于A0,Bm对应于Am,Y对应于X,及Y=f(X)。由于是线性关系,得出方程式为Y=(Bm-B0)*(X-A0)/(Am-A0)+B0。又由于是线性关系,经过A/D转换后的数学方程Z=f(X)可以表示为Z=(Cm-C0)*(X-A0)/(Am-A0)+C0。那么就很容易得出逆变换的数学方程为X=(Am-A0)*(Z-C0)/(Cm-C0)+A0。方程中计算出来的X就可以在显示器上直接表达为被检测的物理量。 5、PLC中逆变换的计算方法
以S7-200和4-20mA为例,经A/D转换后,我们得到的数值是6400-32000,及C0=6400,Cm=32000。于是,X=(Am-A0)*(Z-6400)/(32000-6400)+A0。
例如某温度传感器和变送器检测的是-10-60℃,用上述的方程表达为X=70*(Z-6400)/25600-10。经过PLC的数学运算指令计算后,HMI可以从结果寄存器中读取并直接显示为工程量。
用同样的原理,我们可以在HMI上输入工程量,然后由软件转换成控制系统使用的标准化数值。
在S7-200中,(Z-6400)/25600的计算结果是非常重要的数值。这是一个0-1.0(100%)的实数,可以直接送到PID指令(不是指令向导)的检测值输入端。PID指令输出的也是0-1.0的实数,通过前面的计算式的反计算,可以转换成6400-32000,送到D/A端口变成4-20mA输出。
因篇幅问题不能全部显示,请点此查看更多更全内容