李成笔记网

专注域名、站长SEO知识分享与实战技巧

西门子S7-1200PLC换热站供热工程程序之模拟量转工程量

1、工程量概述

我们常说的温度、速度、压力、电压、电流等用数学语言表述的物理量,在自控领域称为工程量。在继电控制时代,传统的检测仪器可以直接在就地显示被测量的物理量,但是无法将这些数值传输至中控操作台,只可以利用一些高低限值来进行逻辑控制,例如利用电接点压力表来进行恒压供水的控制(高于设定压力水泵停止运行,低于设定压力水泵开始运行)。

2、模拟量概述

在自动化的今天, 中央控制成为可能, 这就需要检测信号的远距离传送。但是纷繁复杂的工程量量信号直接传送会大大降低仪表的适用性也会增加PLC的复杂性。

并且像高电压、大电流、速度等工程量无法直接进行传输,必须转换成统一的模拟量来进行传输,因此就出现了变送器,变送器的的作用就是将传感器的信号放大成为符合工业传输标准的电信号,如0-5V /0-10V/0-20MA/4-20mA (其中用得最多的是 4- 20mA )。而变送器通过对放大器电路的零点迁移以及增益调整, 可以将标准信号准确的对应于工程量的被检测范围,如 0-100 ℃或-10-100 ℃等等。这是用硬件电路对工程量量进行模拟量的转换。

3、计算方法

假定工程量为 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转换后的数学方程 Z=f(X) 可以表示为Z=(Cm-C0)*(X-A0)/(Am-A0)+C0 。又由于是线性关系, 经过 A/D。那么就很容易得出逆变换的数学方程为 X=(Am-A0)*(Z-C0)/(Cm-C0)+A0的 X 就可以在显示器上直接表达为被检测的工程量。方程中计算出来PLC 中逆变换的计算方法以 S7-1200 和4-20mA 为例,经 A/D 转换后,我们得到的数值是5530 -27648,及C0=5530 , Cm=27648 。于是,X=(Am-A0)*(Z-5530)/(27648-5530)+A0 。

4、人工计算举例

例如某温度传感器和变送器检测的是 0-100 ℃,假设标准电信号为4-20MA,经测量电流是12mA,用上述的方程表达为 Y=(Bm-B0)*(X-A0)/(Am-A0)+B0 =(20-4)*(X-0)/(100-0)+4=12,经过计算所得温度为50℃

5、PLC内部计算举例

例如某温度传感器和变送器检测的是 0-100 ℃,那么PLC中的运算为X=(100-0)*(Z-5530)/(27648-5530)+0。切记此处0不可省略,因为有量程的会出现负数。

6、例程

经过上述枯燥的理论您是不是有些不好理解,那么直接上程序。程序描述如下:

1、模拟量转换工程量功能,该功能为自主开发并封装在FB,可以直接当成库来使用,再次使用时候直接调用即可。

2、可重复使用。

3、可适用于温度、压力、流量、张力等等任何模拟量计算。

4、可以兼容0-20MA、4-20ma、0-10v等等所有的模拟量类型。

5、可以兼容不同的量程。

6、程序不加密,任何人都可以打开查看源代码。

7.使用方法简介:

1、改程序为封装好的FB块儿,必须配合背景数据块,当调用程序时,背景数据块儿会自动提示你创建,例如本例程中的DB2。

2、0-20MA对应0-27648

4-20MA对应5530-27648,根据实际情况修改NORM_MIN和NORM_MAX即可,

3、IW_VALUE为模拟量输入端口,例如%IW100等IO地址。

4、SCALE_MIN/SCALE_MAX为量程的上下限。

5、H/L为报警上下限设置。

6、OUT为输出的工程量数值。

7、alm为报警输出点

8、alm_h/alm_l为高低报警输出点

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言