一个中等规模的水厂拟配置一套中央控制室用大屏幕模拟显示屏。需要显示的模拟量有各配电设备、 回路的工作参数(三相电压、电流、功率、累积电量)、各水泵的工作电流、水位、原水流量、清水 池水位、送水泵工作电流、送水压力和流量、加药、加氯量和余氯质、PH值等相关参数大约32个参数。
过去,一般采用PLC模拟量输出模块驱动普通模拟显示表。这样,需要几十个模拟量通道和几十块 普通数码表。我们知道,PLC模拟量每通道大约需要700~900元,加上普通模拟量数码显示表近千元。
而且,由于工程量参数太多,需要PLC将各参数先转换为适合电压显示的物理量,然后在普通模拟显示 表上进行量程设定或者通过电阻调整比例满足显示,十分麻烦。而且需要定期计量。更换普通模拟量 显示表后必须进行调整到合适的工程量显示范围内。普通模拟显示表为0~200mV对应0~1999显示范围。
例如,采用PLC模拟量输出模块驱动普通模拟显示表显示余氯值,其范围一般为0.05~0.30ppm。
我们无法在普通模拟量数码显示表上直接显示该范围的值,必须将其转换为0.05~0.30V的电压值。对 应PLC输出电压范围则为5~30mV,然后再将小数点设置位第二位点亮。由于PLC模拟量输出本身就存在 一定的转换误差,加上模拟量表本身存在误差、且小信号极易受干扰,最后一位数字本身就不准确,因 此误差较大,可信度差。
再例如,显示转速3000 rpm,则必须必须选择4位半普通模拟量显示表,先计算模拟量输出对应转速 范围为0~2V,然后,通过电阻网络衰减至0~300mV,这样才能将0~1999mV电压信号转换为0~3000rpm 显示,衰减比为2000/300,调试、使用相当麻烦,误差也较大。
采用DDM4A系列数码显示表,就不存在这种问题。
我们假如选择多台日本三菱FX2N系列PLC作为该工程的主要控制设备,见下图的网络控制结构图
img]2004123110342779420.gif[/img]
而其中一台PLC5作为模拟显示屏控制设备,见下图模拟显示屏示意图。
[img]2004123110344834250.jpg[/img]
们预定PLC 显示缓冲数据区为D100,小数点显示缓冲数据区为D101。D100使用D0、D1、D2、D3 四个数据构成,表示个、十、百、千位显示数据,见下图通讯格式。PLC中驱动DDM系列数码显示子程 序可以定时调用,也可以当显示数据发生变化后再调用显示子程序。
[img]200412311036117052.jpg[/img]
l 显示总管压力值:FX2N -4AD模块采集到当前压力为0.346Mpa,将采集的当前压力数据转换为 34,D3D2D1D0分别存储为D3=0,D2=3,D1=4,D0=6,合并到PLC中的D100=0346,由于小数点显 示格式为0.000,因此,D101中应该设置为4。显示表将自动显示为0.346。如果需要显示特殊符号,
可以按下述方式处理:
D3D2D1D0分别存储为D3=11,D2=0,D1=3,D0=4,合并到PLC中的D100=B346(BCD码),由于小 数点显示格式为0.00,因此,D101中应该设置为3。显示表将自动显示为P0.34。
2 显示送水泵转速值:FX2N-4AD获取水泵电机转速值为1040rpm。将该值直接存储在D3=1, D2=0,D1=4,D0=0,由于无须显示小数点,故D101=0。显示表将自动显示为1040。
3 显示清水池水位值:FX2N-4AD获得一清水池水位值为4.03M。将该值直接存储在D3=0, D2=4,D1=0,D0=3,由于小数点显示格式为0.00,因此,D101中应该设置为3。显示表将自动显示 为4.03。
4 显示余氯值:PLC-4AD获取余氯分析仪表的输出值(4~20mA)对应0~0.30ppm,然后将对应的数 据值例如检测12mA,即(12/16)×0.3=0.225。将D100=225,即D3D2D1D0分别存储为D3=0,D2=2,
D1=2,D0=5,D101置4,故显示表直接显示0.225。
5 显示年、月、日及时间:例如显示2002年,可将PLC时钟数据直接存储在D100中,对应D3=2, D2=0,D1=0,D0=2,由于无须显示小数点,故D101=0。显示表将自动显示为2002。
总之,采用DDM系列显示表+PLC构成的工程量显示系统十分方便、灵活。可真实显示数据,与你计算出的数据分毫不差,无需要价格昂贵的模拟量模块,大大的节约显示系统成本。
6 PLC及DDM4A硬件设计:根据显示的需要,在模拟显示屏上需要显示共计32个数据,配置如下:
a. 配置DDM4A数码显示表共计32块;
b. 由于需要选择PLC晶体管输出驱动模块。由于FX0N价格低于FX2N模块且完全兼容,故我们一方面可采用FX0N-8EYT模块,每个模块上有8个输出点,以进一步降低成本。
根据每四个输出点可驱动一块DDM4A表,可根据该显示表刷新速度要求,安排每4个输出点为1组串行BCD码驱动线,每组8块DDM4A显示表,每块表配一个PLC输出点作为仪表选通端,故可直接驱动码显示表。以后每增加8块数1组(四个输出点)就可以驱动8块表,按此方式,我们可配置4组串行BCD码
驱动线,共可以驱动8×4=32块数码显示表。故可以选择3块FX0N-8EYT模块计24点输出。分配每4点为1组串行BCD码控制线共4组,占用16点输出。余下8点作为8个仪表选通点。平均每块表占用仅24/32
=0.75个输出点,非常经济。
分析晶体管输出驱动能力。我们知道,FX0N-8EYT晶体管每点可直接驱动24V/500mA以下无感负载。
而DDM4A每点所需的驱动为24V/5~6mA。4组同时驱动电流为4×6=24mA,远小于模块驱动24V/500mA
能力。故完全满足负载能力。
再分析显示刷新速度。由于采用14个脉冲为1块表需要的脉冲数。而串接8块表共需要8×14=112个脉冲。按3ms输出一个脉冲计算。
故完成一个循环显示刷新周期需要112×3=336mS,即0.336秒即可完成数据显示更新。根据该规律,只要保持8个显示表选同控制而不再增多选通点。今后需要增加显示表时只增加串行BCD码驱动线,则显示刷新速度基本保持不变。
我们简单计算一下该种方式最多可驱动多少块DDM4A数码显示表。
设PLC晶体管模块最大驱动能力为500mA,8点作为8个仪表选通点,每点选通可驱动500/6=83块表。如果允许增加串行BCD码驱动线,则,可配置83组串行BCD码驱动控制线。共需要83×4=332个点。包括显示表选通8点共计340点,可驱动显示表83×8=664块而刷新显示速度基本不变,仍然为0.34秒左右。平均每块表占用仅340/664=0.51个输出点,十分经济。如果允许刷新速度慢1倍即0.7秒以内,显示表数量为656块就只需要180点开关量输出点,平均每块表占用仅180/656=0.27个输出点。
当然,实际晶体管输出能力不能一直工作于500mA下,所以驱动显示表数量及输出点需要量还要下降 20%左右。
7 PLC软件设计:根据模拟显示任务需要,PLC模块仅配置晶体管输出模块,开关量输入模块、所有模拟量模块不要。划分PLC工作任务为:用与显示设备状态的开关量输出,它们纯属极普通的逻辑处理任务,工作量不大。另外编制驱动DDM4A显示表的显示子程序。主要是划分所有显示表的显示缓冲数据区。利用定时器驱动脉冲产生器和移位寄存器等。
该类程序在http://www.jtplc.com/ddmxx/plc_DRV.asp上有相应的例子可供编程参考,十分方便、简单。另外就是通讯任务。由于采用FX2N485BD通讯模块,无需编程,直接可从计算机中(或者该PLC中)获取各站的相关数据。并经简单的工程量处理就可以直接显示在模拟屏上的各对应表中。
采用西门子S7-300 PLC构成的模拟显示屏数码显示部分的电原理见下图所示:
[img]2004123110374345650.jpg[/img]