一、模拟量模块基础
-
模块类型
- AI模块(模拟量输入):SM 1231(如4AI×13位)、SM 1231 RTD(热电阻)、SM 1231 TC(热电偶)
- AQ模块(模拟量输出):SM 1232(如2AQ×14位)
- 混合模块:SM 1234(2AI+2AO)
-
核心参数
- 分辨率:12位/13位/16位(影响精度)
- 信号类型:电压(0-10V)、电流(4-20mA)、热电阻(PT100)、热电偶(K型)
- 通道数:单端/差分输入(抗干扰能力不同)
二、信号类型与处理
-
输入信号处理
- 二线制/四线制变送器:
- 二线制:模块供电+信号输出(如4-20mA传感器)
- 四线制:独立供电+信号输出(如电压型传感器)
- 冷端补偿:热电偶模块需配置环境温度补偿
- 二线制/四线制变送器:
-
输出信号配置
- 电压输出(0-10V):直接驱动比例阀、变频器模拟量输入
- 电流输出(4-20mA):长距离传输抗干扰能力强
三、模数转换(ADC)与数模转换(DAC)
-
转换原理
- ADC:模拟信号 → 数字值(如0-10V → 0-27648)
- DAC:数字值 → 模拟信号(如0-27648 → 4-20mA)
-
数值范围
- 标准范围:0-27648(对应0-10V/4-20mA)
- 超量程值:如±32767(溢出报警)
四、硬件组态与软件编程
-
TIA Portal配置
- 硬件组态:设置模块类型、信号类型、滤波时间
- 地址分配:模拟量输入地址(如IW64)、输出地址(如QW64)
-
编程要点
- 读取模拟量:
L PIW 64 // 读取AI通道1原始值 T MW 0 // 存储到中间变量
- 转换公式:
REAL_VALUE := (INT_TO_REAL(MW0) - 0) / (27648 - 0) * (10.0 - 0.0) + 0.0;
- 输出模拟量:
L REAL_TO_INT(SETPOINT) T PQW 64 // 写入AO通道1
- 读取模拟量:
五、校准与线性化
-
硬件校准
- 使用万用表测量模块输入/输出,通过TIA Portal进行零点/满度校准
-
非线性补偿
- 热电偶/热电阻需调用库函数(如"TC"或"RTD"块)
- 自定义曲线:通过多项式拟合(如y = ax² + bx + c)
六、信号处理技巧
-
抗干扰措施
- 使用屏蔽双绞线,屏蔽层单端接地
- 模拟量与动力电缆分开走线
-
数字滤波
- 软件滤波:平均值滤波(取N次采样平均值)
- 硬件滤波:配置模块滤波时间(如10ms/100ms)
七、典型应用场景
-
温度控制
- 热电偶输入 → 温度值转换 → PID控制 → 固态继电器输出
-
压力监控
- 4-20mA压力变送器 → 实时压力显示 → 上下限报警
-
流量调节
- 流量计脉冲信号(需转换为模拟量) → 调节阀开度控制
八、常见问题与排查
-
信号异常
- 检查接线是否松动,屏蔽层是否正确接地
- 确认模块组态与传感器类型一致
-
精度不足
- 检查供电电压稳定性(如24V波动是否超过±10%)
- 确认信号电缆长度是否超出模块推荐范围
学习建议
-
实践操作
- 用信号发生器模拟电压/电流输入,观察PLC数值变化
- 用模拟量输出驱动变频器,实现转速调节
-
参考文档
- 《S7-1200/1500模拟量模块手册》
- TIA Portal在线帮助中的"模拟量转换"示例代码
-
项目案例
- 设计一个温度控制系统,包含:
- PT100温度采集
- PID算法实现恒温控制
- 超温报警与自动切断加热
- 设计一个温度控制系统,包含: