20、过程控制基础与西门子S7-1200 PLC模拟输入应用

过程控制基础与西门子S7-1200 PLC模拟输入应用

1. 信号处理与流量测量

1.1 信号转换

当信号要输入到PLC执行控制功能时,若PLC支持4 - 20 mA电流输入,可使用其模拟输入替代电流表。若PLC模拟输入仅支持0 - 10 V电压输入,则需通过在信号两端连接500欧姆电阻,将4 - 20 mA输入转换为电压。

1.2 流量测量仪器

流量测量是使用仪器测量管道中流体流量的操作,常见的流量测量仪器如下:
- 差压流量计 :利用传感元件(如孔板或文丘里管)产生的压差来确定流量。差压变送器有高压和低压端口,连接传感元件的高压和低压侧,产生与流量对应的4 - 20 mA标准信号。
- 速度流量计 :通过测量流速来确定流量,包括:
- 涡轮流量计 :通过测量内部旋转涡轮或齿轮的速度来测量流量。
- 涡街流量计 :通过测量流体元件内产生的漩涡频率来测量流量,适用于测量蒸汽、蒸汽或清洁液体。
- 质量流量计 :使用传感元件测量流体密度来测量流量,包括:
- 科里奥利质量流量计 :将质量流量与仪表管内振动感应到的流体惯性相关联,适用于测量液体,也可测量气体。
- 热质量流量计 :将质量流量与从加热探头传递到流动流体的能量相关联,适用于测量气体。

流量计类型 工作原理 适用流体
差压流量计 利用压差确定流量 通用
涡轮流量计 测量旋转部件速度 通用
涡街流量计 测量漩涡频率 蒸汽、蒸汽、清洁液体
科里奥利质量流量计 关联质量流量与流体惯性 液体、气体
热质量流量计 关联质量流量与能量传递 气体

2. 过程控制回路

2.1 控制回路概述

过程控制回路是一组用于维持过程变量所需输出的设备和工具。控制回路组件和仪器测量变量、响应变量并控制变量以维持设定点。控制回路系统可以是开环或闭环系统,通常由传感器或变送器、控制器和执行器组成。

2.2 液位控制实例

以液位控制为例,泵向水箱供水,控制阀(最终控制元件)根据从液位控制器接收到的信号,控制流量。液位变送器向液位控制器提供反馈信号,液位控制器将反馈信号与设定点进行比较,决定向控制阀发送的控制信号,以确保根据水箱内液位保持适当的流量。

2.3 温度控制实例

使用热电偶温度传感器(K型)、温度控制器(JTC903)、接触器和加热元件,可实现对加热器温度的控制,具体操作步骤如下:
1. 将温度控制器前面的拨盘设置为所需的设定点温度,如100摄氏度。
2. 打开断路器,为电路供电。
3. 当加热器温度低于设定点时,温度控制器的公共端(C,即端子7)将连接到常开触点(即端子6),使接触器通电。
4. 当加热器温度等于设定点时,温度控制器的公共端(C,端子7)将从端子6断开并连接到端子8,使接触器线圈断电,加热器逐渐冷却。当温度低于100摄氏度时,线圈再次通电,过程重复。

此简单控制存在超调问题,使用比例 - 积分 - 微分(PID)温度控制器可更好地维持所需温度。

3. 模拟信号处理基础

3.1 模拟信号特点

与只能处于两种状态(0或1)的数字信号不同,模拟信号具有从最小值到最大值的连续值范围。例如,电压从0 V到10 V变化,或电流从4 mA到20 mA变化时,称为模拟信号。温度变送器、压力变送器和流量变送器等传感器和变送器会产生模拟信号输出。

3.2 模拟信号转换

在PLC处理模拟值之前,必须先将其转换为数字信息,这由PLC模拟模块中的模数转换器(ADC)完成。模拟模块的一个重要特性是其分辨率(以位为单位)。不同分辨率的模拟模块表示的范围如下:
| 分辨率 | 表示范围(4 - 20 mA或0 - 10 V) |
| — | — |
| 8位 | 0 - 254 |
| 10位 | 0 - 1023 |
| 12位 | 0 - 4095 |

3.3 西门子S7 - 1200模拟输入

以S7 - 1200(CPU 1211C,AC/DC/RLY)PLC为例,它有两个内置模拟输入通道,模拟模块分辨率为10位,支持0 - 10 V模拟电压。若变送器输出为4 - 20 mA,需使用500欧姆电阻将其转换为2 - 10 V电压。

西门子PLC将电压或电流转换为字值(数字化值),额定最大值为27,648,数据类型为INT。不同模拟值对应的数字化值如下表所示:
| 模拟值(4 - 20 mA) | 模拟值(0 - 10 V) | 数字化值 |
| — | — | — |
| 4 mA | 0 V | 0 |
| 8 mA | 2.5 V | 6,912 |
| 12 mA | 5 V | 13,824 |
| 16 mA | 7.5 V | 20,736 |
| 20 mA | 10 V | 27,648 |

分辨率会影响读数的准确性,分辨率越高,读数越详细。例如:
- 8位分辨率:$2^8 = 256$,最小变化为$32,768 / 256 = 128$,可从0到27,648以128的增量变化。
- 12位分辨率:$2^{12} = 4,096$,最小变化为$32,768 / 4,096 = 8$,可从0到27,648以8的增量变化。
- 15位分辨率:$2^{15} = 32,768$,最小变化为$32,768 / 32,768 = 1$,可从0到27,648以1的增量变化。

3.4 归一化和缩放

  • 归一化(Normalize) :S7 - 1200中的内置函数,用于将任何给定数据从最小值到最大值转换为0到1的浮点值。需要输入最小值、最大值以及包含要转换数据的寄存器,如模拟信号连接到第一个模拟输入通道时为%IW64,最小值为0,最大值为27,648。
  • 缩放(Scale) :S7 - 1200中的内置函数,用于将归一化后的0到1的值转换为所需范围。

3.5 模拟输入信号处理模拟

3.5.1 模拟准备

需在笔记本电脑或PC上安装TIA Portal,可下载并使用21天。具体步骤如下:
1. 启动TIA Portal,为S7 - 1200(CPU 1211C AC/DC/RLY)创建新项目。
2. 展开程序块,双击Main [OB1]进入编程环境。
3. 展开屏幕右侧基本指令列表中的转换操作,将NORM_X命令拖到网络1。
4. 将NORM_X指令下方的???到???字段的数据类型设置为INT到REAL。
5. 输入MIN为0,MAX为27648。
6. 指定用于测试VALUE的寄存器,如MD0。若使用真实S7 - 1200 PLC,模拟信号连接到第一个模拟输入通道时指定%IW64,连接到第二个模拟输入通道时指定%IW66。
7. 指定用于保存归一化数据的寄存器,如MD4。
8. 展开转换操作,将SCALE_X命令拖到网络1。
9. 将SCALE_X指令下方的???到???字段的数据类型设置为REAL到REAL。
10. 输入MIN为0,MAX为300,因为使用的变送器输出为4 - 20 mA,范围为0到300摄氏度。
11. 指定归一化数据的寄存器,如MD4。
12. 指定用于保存缩放结果的寄存器,如MD8。
13. 点击编译,确保没有错误。

3.5.2 模拟运行
  1. 点击监控开/关,开始模拟。
  2. 右键单击MD0的标签,选择修改,然后选择显示格式,点击十进制。
  3. 对MD8的标签重复上述步骤,选择浮点数。
  4. 右键单击输入值的标签(tag_1),选择修改,点击修改操作数。
  5. 将格式从十六进制更改为十进制,输入修改值,如13824,点击确定。

模拟结果显示,当NORM_X中的数字化值(MD0处的值)为满值的一半(即13824)时,输出变为0.5,因为归一化(NORM_X)将输入转换为0到1的值;缩放(SCALE_X)将归一化后的0到1的值转换为0到300,如0.5对应150.0。

3.5.3 模拟控制数字输出
  1. 点击监控开/关,停止模拟,在出现的消息中点击是,离线。
  2. 展开基本指令列表中的比较器操作,将CMP>=指令拖到网络2。
  3. 双击比较器命令中间的???字段,选择Real作为数据类型。
  4. 在比较器指令顶部的???字段输入%MD8。
  5. 在比较器指令底部的???字段输入50。
  6. 展开基本指令列表中的位逻辑操作,将赋值(线圈)指令拖到网络2。
  7. 输入%Q0.0作为线圈的输出线圈地址。

再次模拟,当MD0处的数字化值为4608时,归一化后为0.1666667,缩放后为50.0,线圈(Q0.0)通电;输入5000时,归一化后为0.1808449,缩放后为54.25347,Q0.0仍通电;输入3000时,归一化后为0.1085069,缩放后为32.55209,Q0.0断电。

模拟结束后,停止模拟,保存项目更改,关闭虚拟PLC和主项目。

graph LR
    A[启动TIA Portal] --> B[创建新项目]
    B --> C[进入编程环境]
    C --> D[添加NORM_X命令]
    D --> E[设置数据类型]
    E --> F[输入MIN和MAX]
    F --> G[指定VALUE寄存器]
    G --> H[指定OUT寄存器]
    H --> I[添加SCALE_X命令]
    I --> J[设置数据类型]
    J --> K[输入MIN和MAX]
    K --> L[指定VALUE寄存器]
    L --> M[指定OUT寄存器]
    M --> N[编译]
    N --> O[模拟运行]
    O --> P[修改显示格式]
    P --> Q[修改操作数]
    Q --> R[模拟控制数字输出]
    R --> S[停止模拟]
    S --> T[保存项目]
    T --> U[关闭虚拟PLC]
    U --> V[关闭主项目]

4. 使用真实PLC进行模拟输入信号处理

4.1 所需设备

除了模拟中使用的TIA Portal,还需要以下设备来演示真实PLC的模拟输入信号处理:
- RTD温度传感器(Pt100)
- RTD温度变送器
- 电源(220 V AC转24 V DC)
- PLC(西门子S7 - 1200)
- 接触器
- 加热元件
- 以太网电缆
- 安装了TIA Portal的PC或笔记本电脑

4.2 接线步骤

  1. 使用断路器将电源连接到电源供应器的交流输入,同时通过断路器将电源连接到PLC的交流输入。此外,将交流电源连接到接触器的端子1(L1)和端子3(L2),如示意图所示。
  2. 将加热器的两个端子连接到接触器的端子2(T1)和4(T2),如示意图所示。
  3. 三线Pt100 RTD有三根线,其中两根线之间的电阻为100欧姆。这两根线应连接到带有电阻符号的两个端子之间,而最后一根(第三根线)应连接到没有电阻符号的另一个端子,如示意图所示。
  4. 将24 V DC的正极端子连接到变送器的正极端子。
  5. 将变送器的负极端子连接到第一个模拟输入通道(0)。
  6. 将电源供应单元的负极端子连接到PLC的24 V DC输出的负极端子(M),并将其连接到模拟输入通道的公共端子(2M),如示意图所示。
  7. 在第一个模拟输入(0)和2M之间连接一个500欧姆的电阻,如示意图所示。
  8. 将PLC上的Q0.0连接到接触器上的A1,并将PLC上的1L连接到断路器上的火线(L)。此外,将接触器上的A2连接到断路器上的零线(N),如示意图所示。

4.3 编程步骤

打开之前的程序(PLC - TEMPERATURE CONTROL)并进行修改,当寄存器MD8中的值大于或等于100时打开加热器:
1. 打开保存的项目(PLC - TEMPERATURE CONTROL)。
2. 选择MD0的标签名称并按键盘上的删除键,删除标签名称(Tag_1)和寄存器(MD0)。同样,选择Q0.0的标签名称并按删除键,删除标签名称(Tag_4)和寄存器Q0.0。
3. 在网络1中,输入第一个模拟输入通道的地址(即%IW64)作为NORM_X的值。在网络2中,输入一个内存位地址(即M0.0)作为输出地址。
4. 双击比较指令底部的50.0值,输入100,将设定点更改为100。
5. 展开基本指令列表右侧的位逻辑操作,将常闭指令拖到网络3。
6. 在常闭触点的???字段中输入%M0.0。
7. 展开位逻辑操作,将赋值(线圈)指令拖到网络3。
8. 在赋值(线圈)的???字段中输入%Q0.0。

4.4 配置IP地址并下载程序

  1. 确保接线图(图12.45)中的所有连接都已正确设置。打开断路器,为设备供电。同时,确保PLCSIM(模拟器)未运行。
  2. 将通信电缆(以太网电缆)的一端连接到笔记本电脑或PC,另一端连接到PLC。
  3. 双击设备配置。
  4. 导航到属性 | 常规选项卡,然后点击PROFINET接口[X1]。
  5. 向下滚动到IP协议,输入选择的IP地址(例如,192.168.0.6)和子网掩码(例如,255.255.255.0)。
  6. 点击保存项目,点击PLC进行选择,PLC将被高亮显示。编译和下载到设备命令将变为可用。
  7. 点击编译,编译程序并确保没有错误。
  8. 点击下载到设备,从PG/PC接口列表中选择PC或笔记本电脑的以太网控制器卡。
  9. 点击开始搜索。
  10. 点击加载。
  11. 点击是。
  12. 点击确定。
  13. 选择停止所有。
  14. 点击加载。
  15. 勾选启动所有,点击完成。

4.5 在线监控PLC程序

  1. 双击程序块 | 主程序[OB1]。
  2. 点击监控开/关。

4.6 程序观察与解释

  • 当加热器开启时,%IW64处的值会发生变化,这是连接到模拟输入模块第一个通道的模拟信号的数字化值。随着温度升高,模拟信号增大,数字化值也随之增大。MD4处的值是归一化后的值,MD8处的值是缩放后的值。
  • 当%IW64处的数字化值为9215时,MD4处的归一化值为0.3332972,MD8处的缩放值为99.98915。此时,在网络2中,比较器没有输出使M0.0赋值(线圈)通电,因为MD8处的99.98915小于100。在网络3中,常闭触点(M0.0)保持闭合,因为M0.0处于关闭状态,这允许信号流向Q0.0,使连接到它的接触器通电,加热器开启。
  • 当%IW64处的数字化值为9692时,MD4处的归一化值为0.3505498,MD8处的缩放值为105.1649。此时,在网络2中,比较器有输出使M0.0赋值(线圈)通电,因为条件满足,即MD8处的值大于100。在网络3中,常闭触点(M0.0)打开,因为M0.0处于开启状态,这阻止信号流向Q0.0,使接触器断电,加热器关闭。
graph LR
    A[接线准备] --> B[连接电源和设备]
    B --> C[连接传感器和变送器]
    C --> D[连接模拟输入和电阻]
    D --> E[连接输出和控制线路]
    E --> F[打开保存项目]
    F --> G[删除旧标签和寄存器]
    G --> H[修改程序参数]
    H --> I[添加常闭和赋值指令]
    I --> J[配置IP地址]
    J --> K[下载程序到PLC]
    K --> L[在线监控程序]
    L --> M[观察程序运行情况]

5. 总结

通过以上内容,我们了解了信号处理、流量测量、过程控制回路等过程控制的基础知识,以及西门子S7 - 1200 PLC模拟输入信号处理的详细内容,包括模拟信号的特点、转换、归一化和缩放,还通过模拟和实际操作演示了如何使用PLC处理模拟信号并控制数字输出。掌握这些知识和技能,能够帮助我们更好地进行工业自动化控制,实现对过程变量的精确控制。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值