我们根据公式得到以下4组有效数据,并将其保存在4个W32位寄存器里面:
①传感器量程差值:80kg-10kg=70kg,所以W0=70;
②采集值*大范围值:4000,所以W1=4000;
③4ma对应的传感器*小量程值:10kg,所以W2=10;
④*后运算得到的实时值保存在W3寄存器里面。
得到相关数据之后,我们再将数据套入公式,请注意,PLC运算只能单条指令执行,且不包含小数计算,所以我们需要对公式进行拆分,按照“先乘除后加减”的规则添加运算公式,对于每一步运算的结果值,我们用V中间变量寄存器来过渡(中间变量掉电不保存数据),如下操作:
V0=实时采集值Ai1×W0;(先乘,Ai1表示第一路模拟量输入通道)
V1=V0/W1;(后除)
W3=V1+W2。(再加减)
将得到的运算誊写到PLC编程软件,在组合帧编辑一组,取标志M0断为组长,可进行实时运算,得实时结果。
通过此运算得到的W3就是实时压力值,我们在实际的控制过程中,就是通过对压力W3进行比较控制的,比如压力低于20kg时,触发电磁阀动作,压力高于50kg时,触发电磁阀停止,类似这样比较控制就是在时序环编辑,如下所示:X00是启动信号,G10=20kg,G11=50kg,Y0是电磁阀。
【PLC扩展采集器增加模拟量输入单位换算方式】
PLC自身无模拟量入口或者模拟量入口过少需要外增,类似这样通过扩展采集的方式来增加模拟量通道的方式,我们都需要通过CAN扩展控制,在PLC软件中需要先写一条CAN扩展指令,一条扩展指令表示扩展一个采集器(4路),需要扩展几个采集器,就添加几条扩展指令(不同的采集器必须修改站号,站号要对应指令中的匹配ID)。
1-先设置扩展程序:在软件的通信配置-CAN总线扩展处,编辑一条扩展指令。
*使能标志:M79,启动扩展接收指令的一个标志(这个标志无特别说明,任选一个M,严禁与错误标志相同)。在时序环或组合帧的程序中触发M79通,此条通信指令将使能,只要M79不复位,此条指令一直有效。
*传送方向:接收。为PLC接收模拟量采集器的数据。
*扩展功能:扩展外部16位寄存器。模拟量采集器采集到的数值是保存在PLC的G_16位通用寄存器里面。
*扩展地址:扩展地址就是G的寄存器序号,如地址写:1,表示从G1寄存器开始,连续调用4个寄存器储存采集器的4路模拟量信号,那么按顺序Ai1-Ai4这四个入口采集的数据分别保存在G1,G2,G3,G4这四个寄存器中。也就是Ai1--G1,Ai2--G2,Ai3--G3,Ai4--G4。
*匹配STDID:表示扩展的采集器对应的站号,扩展1个采集器,第一个扩展指令ID就写1,那么这个采集器的站号就要对应1;扩展2个采集器,第2个扩展指令ID就写2,那么第二个采集器的站号就要对应2;只要ID跟采集器的站号对应上才能起作用。
*数据长度:每个寄存器要占用两位,一个采集器有4路模拟量入口,所以数据长度为8。
*错误标志:指令自带,默认。
2-再设置触发扩展标志程序:
任意一个时序环,或者组合帧里面设置一条触发标志M79通的指令,表示启动扩展指令,如下所示在组合帧编辑触发M79通。
3-设置模拟量换算程序:
PLC扩展的模拟量输入采集值用寄存器G表示,采集值范围是0-4000,直接套用公式进行计算,此处以温度传感器为例,温度传感器输出4-20ma信号到PLC
机身的模拟量输入端口,温度传感器量程范围:100℃-500℃。
我们根据以上公式得到以下4组有效数据,并将其保存在4个W32位寄存器里面,前面压力传感器案例调用的W0~W3寄存器,这里我们就调用W4~W7。
①传感器量程差值:500℃-100℃=400℃,所以W4=70;
②采集值*大范围值:4000,所以W5=4000;
③4ma对应的传感器*小量程值:100℃;也就是W2=100;
④*后运算得到的实时值保存在W7寄存器里面。
得到相关数据之后,我们再将数据套入公式,按照“先乘除后加减”的规则添加运算公式,对于每一步运算的结果值,我们用V中间变量寄存器来过渡(中间变量掉电不保存数据),如下操作:
V2=实时采集值G1×W4;(先乘,G1表示采集器第一路模拟量输入通道)
V3=V2/W5;(后除)
W7=V3+W6。(再加减)
将得到的运算誊写到PLC编程软件,在组合帧编辑一组,取标志M0断为组长,可进行实时运算,得实时结果。