前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【设计详解】PLC实现PWM电加热控制

【设计详解】PLC实现PWM电加热控制

作者头像
剑指工控
发布2021-11-09 11:14:51
3.8K0
发布2021-11-09 11:14:51
举报
文章被收录于专栏:剑指工控

JZGKCHINA

工控技术分享平台

尊重原创 勿抄袭

勿私放其他平台

写在前面

温度控制是自动控制领域中常见的应用之一,电加热方式因其设备简单,没有污染及噪音,在工业领域得到十分广泛地应用。

本文向大家介绍了如何使用西门子S7-1200标准PLC设计基于PWM电加热原理的电加热控制系统,包括电气硬件电路设计原理,软件PID工艺对象的组态及编程实现。

电加热温控系统主要元器件:

1

本例使用S7-1200 CPU1214C DC/DC/DC版本,或者扩展晶体管输出模块

2

单相或三相固态继电器

三相固态继电器的触发端串联,带冷却风扇控制,过热保护信号

3

测温元件

热电偶TC或热电阻RTD

4

主电源断路器

带2常开辅助触点

5

冷却风扇电源断路器

带1常开辅助触点

6

主接触器

220VAC线圈,带1常开辅助触点

7

中继或控制继电器

主接触器线圈控制或冷却风机的开关控制

8

单相或三相电加热器

加热管为220VAC Y形连接或380VAC Δ形连接

PLC IO点配置:

DI(直流晶体管输入):

1

加热主电源故障信号(低电平故障)

2

冷去风扇电源故障信号(低电平故障)

3

固态继电器超温报警(高电平报警)

4

电加热运行信号

DO(直流晶体管输出):

1

电加热运行输出控制

2

电加热温控PWM脉冲

AI(4-20ma/TC/RTD):

1

温度测量信号

图纸DI点部分

图纸DO点部分

图纸主电源控制回路

图纸冷却风扇控制回路

图纸主回路原理图

闭环温度控制原理

PWM电加热原理

通过调节单位时间内电加热器接通时间的比例,实现单位时间内电加热器平均输出功率的调节,从而达到温度控制的目的。

CYCLE_P:脉冲采样时间

PER_TM: 周期持续时间

脉宽 = PER_TM ⅹ LmnN/100

PWM电加热参数定义

CYCLE_P:脉冲采样时间

即定时中断的周期,一般采取10ms/20ms/40ms/100ms,除10ms是采用的是50hz周波的半波周期,其余均采用全波周期20ms的整数倍。与脉冲重复周期PER_TM 相比,脉冲发生器的采样时间CYCLE_P 越小,脉宽调制的精度就越高要保证加热控制精度,需满足

CYCLE_P ≤ PER_TM / 50

PER_TM: 脉冲重复周期

脉冲重复周期,为CYCLE_P脉冲采样周期的整数倍,一般应满足

PER_TM ≤ TI / 5

CYCLE:PID采样周期

温控PID的算法采样周期,亦为CYCLE_P脉冲采样周期的整数倍,须满足

CYCLE ≤ TI/10

PER_TM ≤ CYCLE ( 系统默认 PER_TM = CYCLE )

CYCLE_P = 100ms

CYCLE = 2000ms

PER_TM = 600ms

控制精度 = CYCLE_P / PER_TM × 100% = 16.667%

由于本例中CYCLE不能整除PER_TM,因此一个PID采样周期CYCLE中有3个脉冲重复周期,最后一个脉冲重复周期为800ms。

P_B_TM: 最短脉冲/中断持续时间

通过设定最短脉冲/中断持续时间,可避免执行器上的开或关时间过短。小于 P_B_TM 的脉冲将被抑制。最短的时间为1个CYCLE_P脉冲的时间,过短的通断时间容易造成电源冲击,影响电器的寿命及控制系统的稳定性,而对于保温性能较好但热容量较小的系统,该参数不利于温度的稳定,使用该参数须要慎重。博途下PID_TEMP的该参数具有累计功能,直至满足最短脉冲持续时间。

P_B_TM ≤ 0.1 × PER_TM

CONTROL_ZONE:控制区

控制区限制控制偏差的值范围。如果控制偏差超出此值范围,则使用调节值限制值。使用控制区时,微分作用会导致调节变量迅速减小。因此,控制区仅对启用的微分作用有意义。只有将“PID(温度)”选作制冷或加热过程的控制器结构时,才会在预调节过程中自动设置加热或制冷的控制区宽度。一般满足

CON_ZONE = 250 / GAIN

PID_TEMP指令(TIA PORTAL)

PID_TEMP 可用于加热或加热/制冷应用且始终使用常规控制逻辑。

PID 输出值 (PidOutputSum) 的增大用于增大过程值。在应用 PID 输出值后,相关输出上输出的加热或制冷值取决于输出标定的组态情况。

不支持反转控制逻辑或负比例增益。

硬件组态

PID_TEMP工艺对象组态

PID_TEMP功能块在OB30中调用

加热器逻辑控制

PID_TEMP启动特性(TIA PORTAL)

1、要在 CPU 重启后切换到“未激活”模式,请清除“CPU 重启后激活 Mode”(Activate Mode after CPU restart) 复选框。

要在 CPU 重启后切换到“模式”(Mode) 参数中保存的工作模式,请选中“CPU 重启后激活 Mode”(Activate Mode after CPU restart) 复选框。

2、在“将 Mode 设置为”(Set Mode to) 下拉列表中,选择在执行完整下载到设备后要启用的模式。

执行完整下载到设备后,PID_Temp 将以所选工作模式启动。以后每次重启时,PID_Temp 都以上次保存在“模式”(Mode) 中的模式启动。

选择预调节或精确调节时,还必须设置或复位 Heat.EnableTuning 与Cool.EnableTuning 变量,以便在加热调节和制冷调节之间选择。

3、PID_TEMP V1.1版本,添加了新选项 IntegralResetMode = 4,并将其定义为默认设置。如果IntegralResetMode = 4,从“未激活”工作模式切换到“自动模式”时会自动预分配积分作用,以便控制偏差导致带有相同符号的 PID 输出值发生跳变。

示例:

您已选中“CPU 重启后激活 Mode”(Activate Mode after CPU restart) 复选框以及“将 Mode设置为”(Set Mode to) 列表中的“预调节” (Pretuning) 条目。在执行了完整“下载到设备”后,PID_Temp 将以“预调节”模式启动。如果预调节仍处于激活状态,则 PID_Temp 在CPU 重启后再次以“预调节”模式启动(加热/制冷取决于变量 Heat.EnableTuning 和Cool.EnableCooling)。如果预调节已成功完成并且自动模式处于激活状态,则PID_Temp 在 CPU 重启后将以“自动模式”启动。

自动模式下积分作用的初始化

自版本 V1.1 起,PID_Temp 通过提供一个用于更新未激活控制器的简单过程,支持超驰控制:通过使用变量 OverwriteInitialOutputValue 和 PIDCtrl.PIDInit,可以预分配自动模式下控制器的积分作用,好像在上一周期中 PID 算法已为 PID 输出值计算

PidOutputSum = OverwriteInititalOutputValue。

为此,OverwriteInitialOutputValue 与当前可以访问执行器的控制器的输出值互连。通过设置位 PIDCtrl.PIDInit,触发积分作用的预分配以及控制器循环和 PWM 周期的重启。根据预分配的(并针对所有控制器同步的)积分作用,以及当前控制偏差的比例作用与积分作用,在当前循环中进行输出值的后续计算。通过 PIDCtrl.PIDInit = TRUE 调用期间,微分作用未激活,因此对输出值不起作用。

此过程可以确保仅根据当前的过程状态和 PI 参数对当前输出值进行计算,并从而决定可以访问执行器的控制器。可防止未激活控制器的饱和效应,并因此防止切换逻辑的错误决定。

  • 只有在激活了积分作用时(变量 Retain.CtrlParams.Heat.Ti 和Retain.CtrlParams.Cool.Ti > 0.0),PIDCtrl.PIDInit 才有效。
  • 您必须在用户程序中自行分配 PIDCtrl.PIDInit 和 OverwriteInitialOutputValue(请参见下面的示例)。PID_Temp 不会自动更改这些变量。
  • 仅当 PID_Temp 处于自动模式(参数 State = 3)时,PIDCtrl.PIDInit 才有效。
  • 如果可能,请选择 PID 算法的采样时间( Retain.CtrlParams.Heat.Cycle 和Retain.CtrlParams.Cool.Cycle 变量)以使所有控制器的采样时 间均相同,并在同一个循环中断 OB 中调用所有控制器。这样,可以确保在一个控制器循环或 PWM 周期内不发生切换。

使用 PLCSIM 仿真 PID_TEMP (TIA PORTAL)

不支持通过 PLCSIM 针对 CPU S7-1200 仿真 PID_Temp。

只能通过 PLCSIM 针对 CPU S7-1500 仿真 PID_TEMP。

对于使用 PLCSIM 进行的仿真,仿真 PLC 的时间特性与 “真实” PLC 并不完全相同。仿真PLC 循环中断 OB 的实际周期时钟波动比 “真实” PLC 的波动大。

在标准组态中,PID_Temp 会自动确定调用之间的时间,并监视波动情况。因此,使用 PLCSIM 仿真 PID_Temp 时,可能检测到采样时间错误 (ErrorBits =DW#16#00000800)。

这会导致进行中的调节中止。

自动模式下的响应取决于 ActivateRecoverMode 变量的值。

为防止此类情况发生,应按下列方式为使用 PLCSIM 进行的仿真组态 PID_Temp:

  • CycleTime.EnEstimation = FALSE
  • CycleTime.EnMonitoring = FALSE
  • CycleTime.Value:以秒为单位为此变量分配调用循环中断 OB 的周期时钟。

与CPU和FW的兼容性

PID_Temp V1 的 CPU 处理时间和 存储器要求

作者简介

黄 岑(Zane)

西门子技术支持论坛

S7-1200/S7-1500/S7-300/400 版区版主

工作职务:上海大华总线电气技术有限公司,技术总监

个人简介:北京理工大学自动控制系工业自动化专业本科毕业,高级工程师,注册自动化系统工程师,中国自动化协会会员。从事自动化一线技术工作20多年;主要从事自动化产品应用的技术支持工作及自动化控制系统的设计与开发工作;擅长用于中大型装备的分布式系统、多轴传动系统及伺服系统的控制与系统集成;擅长现场总线,网络通讯;擅长电气系统的成套设计,制造,安装,调试的全过程;擅长EMC电磁兼容性问题的诊断与解决;擅长软硬件的标准化与模块化设计;对系统开发的管理及系统的持续改进有比较丰富的经验。

从业经验:所参与或主持设计开发的控制系统涉及国民经济许多行业的应用领域,如核电,纺织,线缆,造纸,食品医药,石化,印刷,包装;船舶,冶金,工程机械,测试仪器等等;有不少重大项目及装备均为当时国内首次研发;多个项目和设备成功替代进口装备,在成功占据国内应用市场的同时又实现出口欧美等发达国家;拥有多次与外方进行项目谈判及项目合作的经历与经验;多次参加西门子专家会议获优秀论文及最佳论文奖,曾获省部级技术进步三等奖,曾获省级高新技术成果转化项目认定,并获得过多项技术发明或实用新型专利。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2020-04-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 剑指工控 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档