说到基于西门子PLC1200的钢板恒张力放卷收卷系统,很多人第一反应是“不就是PID加变频器嘛”,但真正在现场调过这套系统的人都知道,坑远比想象中多。钢板放卷收卷在金属制品行业的酸洗、纵剪、彩涂、冷轧线里满地都是,搞定了它,等于把产线跑顺的一半问题解决了。这篇文章想把从硬件选型、控制原理到调试排障的经验尽量讲透,适合正在做或准备做这类设备的电气工程师、设备维护人员、自动化调试人员参考。
先说结论:恒张力控制不是接个张力传感器、写个PID就完事。背后牵扯到卷径计算、转动惯量补偿、锥度张力控制、加减速动态响应、换卷时序,任何一个环节疏忽,现场就是断带、堆料、卷形不良的连锁反应。这篇文章完全围绕西门子S7-1200平台展开,以钢板为对象,但控制逻辑同样适用于带钢、铜带、铝带等类似卷材。
1. 系统整体设计与方案选型
1.1 先把“恒张力”到底恒什么搞清楚
钢板放卷和收卷的本质是:材料从一个卷轴展开,经过一系列工艺段(矫平、剪切、清洗、涂覆等),再被另一个卷轴卷起来。张力,就是钢板在运行中受到的沿长度方向的拉应力。太松,钢板会下垂、跑偏,收出来的卷边不齐;太紧,轻则把表面拉出亮带、压痕,重则直接拉断。
从力学角度,收卷侧电机输出动力,相当于主动拖;放卷侧要么带阻尼被动放料,要么也接电机主动跟着走。两条轴的速度必须精确协调:收卷线速度大于放卷线速度的差值,就决定了张力的大小。这个道理有点像两个人拉一根绳子,前面跑得快一点,绳子就绷紧;跑得慢,绳子就弯了。所以恒张力控制的本质,就是让两个卷轴的速度关系在任何工况下都保持合适,让材料受到的拉力恒定。
钢板这个材料比较硬、比较重,惯性大,加上卷径从几百毫米到一千多毫米变化,系统的状态一直在变。很多没做过的人以为“恒定”就是给个固定值,实际上它是一个高速动态平衡过程,必须实时计算补偿才能压住张力波动。
1.2 为什么用S7-1200做这套控制
这套系统的控制点不算多,但计算要求不低。S7-1200正好卡在“够用”和“不浪费”的平衡点上,这也是现场最常见的选型逻辑。
- 性能层面:CPU 1214C/1215C的扫描周期足够支撑张力PID、卷径计算、锥度运算这些指令在循环中断里稳定跑,既不会因为资源不够拖慢扫描,也不用像S7-1500那样为了大项目多花钱。
- 通讯层面:S7-1200自带PROFINET接口,和G120变频器、KTP系列HMI直接走以太网通讯,省掉大量硬接线。比老一代S7-200 SMART的PPI/Profinet支持更全面,程序结构也更现代。
- 指令层面:PID_Compact工艺指令集成在TIA Portal里,参数化调用非常方便,比纯手写PID算法省事太多;而且支持多种PID结构,做张力环正反作用切换很灵活。
- 扩展层面:模拟量模块(如SM1231)、高速计数器、工艺对象都有现成支持,后续就算要加伺服轴或者更多张力检测点,也有升级余地。
如果只是做一台简单的分条机或小型放卷架,用S7-200 SMART也能凑合,但系统一旦上了两条轴联动、卷径计算、锥度控制、多配方切换,S7-1200的程序开发效率优势就非常明显。至于S7-1500,那更多是大型连续产线或者需要大量冗余、批量数据处理的场景才需要,放在单机放卷收卷设备上有点杀鸡用牛刀。
1.3 张力检测方案:浮辊和张力传感器怎么选
张力信号是整个闭环的“眼睛”,选错方案,后面调PID都是白搭。钢板线里常见两种检测方式:
- 浮辊(跳舞辊)方式:一个带气缸或弹簧的摆臂辊,压在钢板表面上,钢板张力变化时浮辊位置跟着上下浮动,通过位置传感器检测并闭环调节。它的好处是结构简单、对冲击能起到机械缓冲作用,常见于纸张、薄膜等轻材料。缺点也明显:浮辊本身有惯量、有摩擦,响应滞后明显,钢板这种硬材料稍微拉紧一点浮辊就会剧烈弹跳,张力动态特性差。
- 直接测力传感器方式:张力检测辊两端轴承座下方安装称重式传感器(或检测辊一端用悬臂式传感器),钢板包过检测辊时产生的径向力被传感器直接感知,换算成张力值。响应快、精度高,动态波动能真实反映到PID里,是钢板这类刚性材料场合的主流选择。
以我调试过的某条钢板线为例,张力设定范围在5到30kN之间,我就选了两个30kN量程的称重式传感器对称安装在检测辊两端,输出经过变送器统一转为4-20mA信号送到PLC模拟量模块。要注意检测辊的包角必须做记号,传感器标定后包角不能变,否则同样的钢带张力测出来的数值会不一样。
提示:张力传感器安装时一定要保证两个传感器受力均匀。如果现场只能用一个传感器,优先选检测辊中间悬臂支撑结构,避免因钢板跑偏造成测力偏载。
2. 核心控制原理与关键参数计算
2.1 吃透力矩平衡:张力控制的底层逻辑
所有恒张力控制的起点都是转矩和力的关系:
收卷张力F(单位N)乘以卷径D(单位m)的一半,就等于收卷轴需要克服的转矩T,即T = F × D / 2。
这意味着,卷径大时同样的张力需要的电机输出转矩也大。如果变频器工作在速度模式,电机转矩会自动跟随负载变化——张力大了,电机会自动感到阻力增大并保持速度;张力小了,电机感到轻松,但如果速度给定不变,张力会继续松下去。所以纯速度控制并不能恒张力,必须在速度给定的基础上叠加一个张力闭环的微调修正。
实际项目中我常用的控制结构是:收卷变频器工作在速度控制模式,主速度给定根据线速度和当前卷径算出卷轴转速基准;张力PID把实际张力和设定张力比较,输出一个速度修正量(通常限制在±5%以内)叠加到主给定上。这样做的稳健性在于,即使张力信号短暂异常,变频器也不会瞬间飞车,而是被主速度给定兜住。这个方案比直接转矩控制(转矩模式)容易调试得多,适合大多数需要频繁启停、加减速的钢板产线。
2.2 卷径计算:没有它,张力就是个空谈
恒张力控制里,卷径的准确性直接决定系统稳态精度。如果卷径算错了10%,在转矩控制方案里张力误差就有10%;在速度加张力闭环方案里,虽然PID能修,但动态性能和启停表现会很差。
常用三种卷径计算方法:
- 厚度累计法:D = D0 + 2 × h × n,其中D0为初始卷径(空筒或套筒外径),h为材料厚度,n为卷轴累计转动圈数。对单层厚度稳定的钢板很合适,但从公式就知道,如果材料厚度波动0.1mm,累计上千圈后误差会非常可观。
- 速度比例法:利用线速度和卷轴转速反算卷径,公式是D = 60 × v / (π × n),v是钢带线速度,n是卷轴转速rpm。线速度可以从从动检测辊编码器获得,卷轴转速可以从变频器实际输出频率或编码器获得。这个方法对厚度波动免疫,但要注意低速时(爬行状态)数值不稳定。
- 校正法:在卷径变化路径上安装接近开关或光电传感器,当卷轴转到固定位置时给出一个基准信号,PLC在信号到来时把卷径强制写回一个已知值,解决累计漂移问题。
我实际的工程做法是用“速度比例法为主,厚度累计法为辅”的融合算法。正常运行时用线速度与卷轴转速的比例计算卷径,同时用厚度累计法做校验:两者差值过大说明有打滑或测算异常,就报警提示。这样做现场用起来最稳,既不会在低速时被干扰干扰到卷径剧烈跳变,也不怕长时间运行累计误差。
2.3 锥度张力:收卷为什么不能恒定到底
很多第一次做收卷的人会有个困惑:不是说要恒张力吗?怎么收卷张力随着卷径增大反而要降?这就涉及卷形质量的问题。
收卷时,外层材料会向内层施加径向压力。如果张力全程恒定,卷径越大,内层承受的压力越大,到一定程度就会导致内圈“菊花芯”或整卷表面勒出印子。更危险的是,如果卸卷后内层应力释放,整个卷会鼓包变形。所以工业上普遍采用锥度张力控制:收卷张力随卷径增大按比例递减。
锥度计算公式我常用的是:
F_set = F_start - (F_start - F_end) × (D_current - D_min) / (D_max - D_min)
也就是从最小卷径的基准张力F_start,线性降到最大卷径时的F_end,一般F_end取F_start的60%到80%,具体看材料和工艺要求。比如某条钢板线,空筒150mm,最大卷径1200mm,收卷初始张力设定为15kN,锥度调到70%,也就是终张力10.5kN。
放卷侧的锥度则相反:为了防止大卷放料后期出现松卷和跑偏,放卷张力可以保持恒定或略微下降。对于带剁刀、矫平机的产线,放卷张力通常还要比收卷张力低一些,因为中间工艺段的延伸率和机械摩擦会吃一部分力。
2.4 动态补偿:加减速瞬间才是真正考验
这是整个系统最见功力、也是最容易翻车的地方。
钢板卷的转动惯量会随卷径剧烈变化——注意是四次方关系:直径增大一倍,卷的转动惯量增长到原来的十几倍都不夸张。因为质量随直径平方增加,质量分布半径又随直径平方变化,J与D的4次方成正比。加减速时,要额外所需的动态转矩是J × dω/dt,这个量在卷径大时可能远远超过正常张力需要的稳态转矩。
结果就是:加速瞬间,电机转矩一部分被拿去加速卷轴,张力环来不及响应,张力瞬间塌下去,钢板松一下;减速瞬间,机械系统的惯性反过来拖拽电机,张力冲击猛增,严重时直接把钢板拉断。如果卷径计算是准的,可以做前馈补偿——在张力PID输出的基础上,叠加一个“当前角加速度 × 当前总惯量”的转矩/速度补偿量,在加减速过程中提前把控制量顶上去,而不是等PID看到偏差再去修。
具体实现上,A轴的角加速度可以通过编码器或变频器频率的变化率计算,处理时必须要做平滑滤波,不然微分信号噪声很大,反而引出新振荡。这套前馈补偿,如果觉得计算复杂,至少要把加减速斜坡时间拉长,实测下来也能缓解不少。
3. 实操过程:程序框架与调试实录
3.1 硬件配置清单参考
下面是我在某条钢板收放卷线上实际用过的配置,给出一个大致的参考,真做项目时可根据现场条件调整。
| 部件 | 选型参考 | 说明 |
|---|---|---|
| PLC | S7-1200 CPU 1214C DC/DC/DC | 自带高速计数和以太网接口 |
| 模拟量模块 | SM1231 8×AI | 接两路张力信号、一路线速度编码器信号等 |
| 收卷变频器 | G120系列,功率根据产线速度选 | PROFINET通讯,带矢量控制 |
| 放卷变频器 | G120系列,功率一般小于收卷电机 | 可工作在制动/回馈状态 |
| 张力传感器 | 称重式,量程0-30kN,输出4-20mA | 安装在检测辊两端轴承座下 |
| HMI | KTP700 Basic PN | 做参数设定、张力曲线查看 |
| 编码器 | 增量式HTL,1000线或1024线 | 装在从动检测辊上测线速度 |
收卷电机功率通常比放卷大,因为收卷既要建立张力,又要克服系统摩擦和中间工艺段阻力;放卷电机在张力控制的某些阶段甚至处于发电制动状态,所以变频器最好配制动电阻。这个细节现场经常被忽略,小马拉大车的配置会让整条线一跑快就过载报警。
3.2 PLC程序框架设计要点
程序结构上,我习惯分三层:
第一层:OB1主循环,处理设备状态机(空闲、穿带、运行、换卷、停止、故障),以及手动操作逻辑、报警输出。这个循环里不做高频控制运算,避免被中断块抢时间。
第二层:循环中断OB30(周期设100ms),专门放张力PID、卷径计算、锥度计算、前馈补偿、速度给定合成。这些运算对时序敏感,必须固定周期执行,不能因为主程序逻辑复杂而抖动。
第三层:高速计数OB或者直接通过边沿中断处理编码器计圈、接近开关校正等信号。
关键的控制代码用SCL写比较清楚。比如速度给定合成:
#LineSpeed_Mps := #SpeedEncoder_HZ / #PulsesPerRev * #RollCircumference; // 线速度 m/s #ReelSpeed_Rpm := #LineSpeed_Mps * 60.0 / (3.1415926 * #ReelDiameter_M); #Speed_Setpoint := #ReelSpeed_Rpm + (#PID_Tension / 100.0 * #RatedSpeed_Rpm_Limit);这段代码的思路是先算基准转速,再把张力PID输出(归一化到百分比)乘以限幅值,叠加到基准转速上。这样做的好处是即使PID输出很大,叠加后的速度修正也不会超过限幅范围,比如运行速度的5%。初调阶段可以把这个限幅设小一点,比如3%,防止误动作。
3.3 PID参数整定的实操步骤
S7-1200的PID_Compact支持自整定,但钢板张力这种强干扰、时变负载的系统里,我一般不太全依赖自整定结果,更习惯按下面的流程手动做基础整定:
- 把所有前馈和卷径计算先停掉,只保留速度基准加张力PID,目的是先在纯闭环状态下观察系统的稳定性。
- 比例增益P从0.3开始试,如果张力曲线出现高频小幅振荡,继续降低;如果响应太肉(设定值变化后面张力很久跟不上),再一点点往上加。
- 积分时间I先给2到3秒,观察是否有缓慢漂移。如果张力在一段稳定运行后慢慢偏离目标,说明积分作用不足,逐步减小积分时间;如果出现周期较长的振荡,增大积分时间。
- 微分D在张力控制里要慎用。张力信号本身通过传感器检测,噪声不小,D太大会把噪声放大表现为变频器输出毛刺,实际稳态运行反而更差。我通常将D设为0,靠P+I加前馈已经足够。
真实调机时有一个顺手的判断方法:先看低速、无加减速的稳态张力曲线,调P和I达到“稳定、无振荡、无明显静差”;再跑加减速,看动态偏差,然后通过前馈补偿和斜坡时间优化动态响应,不再去动P/I。这个顺序基本不会把自己绕晕。
3.4 完整调试步骤与现场记录
下面这套流程我每次新项目都用,照着走能少走很多弯路:
- 查线校线:务必核对传感器信号极性、量程、PLC通道对应关系,以及编码器A/B相是否接反。这一步错了,后面所有数据都是垃圾。
- 单体调试:收卷变频器先脱开机械负载,手动给定频率,确认电机转向、转速反馈准确;再带负载点动,观察电流是否正常。
- 张力标定:在静止状态下,用标准测力计或挂标准重物在检测辊上施加已知力,核对PLC内对应工程量数值是否一致,并做空载清零。
- 穿带爬行:以10到20m/min的速度爬行,先不给张力,确认钢板走线顺畅、对中良好,没有擦碰。
- 逐步升速升张力:张力设定从30%往上升,每档跑稳了再提升,随时观察张力曲线和电机电流。
- 动态测试:做几次300到600m/min的加减速往复跑,观察张力在动态过程中的波动幅度,有需要就调前馈和斜坡。
- 连续试跑:至少连续跑几小时以上,用HMI趋势看张力全程曲线,排查偶发的周期性波动。
现场调试有个容易被忽视的环节:记录所有关键参数。手动整定PID、卷径滤波、锥度系数这些都值得登记在调试笔记里,尤其是多台同样设备时,参数拷贝能大大缩短调试时间。
4. 常见问题与排查技巧实录
4.1 启动瞬间张力冲高
现象:系统从静止启动时,张力瞬间超过设定值一大截,甚至出现“砰”的一声,钢板端部被拉长或拉裂。
原因:卷轴从静止到运动的瞬间,机械静摩擦阻力远大于动摩擦,而且穿带时张力已经有一定建立,启动时变频器速度给定阶跃,张力环没来得及把多余力矩吸收掉。
解决:把启动过程拆成“预张紧”和“启动”两步。先让设备在静止状态建立目标张力(变频器零速给定,张力环投入),等张力稳定后,再按斜坡升速起步。斜坡时间设定在5到8秒以上,并且让速度斜坡跑到接近目标后再把张力PID积分作用完全投入,这样启动冲击基本能压住。
4.2 运行中张力出现周期性波动
现象:张力曲线在稳态运行时出现正弦波或锯齿波,频率固定,看起来很规律。
排查思路:先看频率和转速的关系。如果波动频率正好等于收卷轴每转一圈的频率(可以用编码器脉宽换算),大概率是机械问题,比如卷筒偏心、卷轴弯曲、检测辊表面不均匀;如果波动频率和转速无关,优先怀疑电气干扰,例如模拟量屏蔽层接地不良、变送器供电纹波过大、编码器安装松动。
我遇到过最奇怪的一次,张力波动频率大概是转速的2倍,查来查去最后发现是检测辊两端轴承中一个磨损,导致辊子每半圈轻微跳动一次,传感信号上叠加了一个机械调制。所以张力异常波动时,别急着调PID参数,先花半天把机械侧确认干净。
4.3 加减速时张力尖峰导致断带
现象:加减速过程中,尤其是减速时,张力短时间冲得非常高,超出材料承受极限,钢板被拉断,断口处卷边。
原因:加减速动态转矩补偿不足,减速时机械惯量冲击全砸在钢带上。卷径大时特别明显,因为大卷惯量高、冲击力强。
解决:第一步,把变频器加减速时间(斜坡)加长,特别是减速斜坡,尽量让产线平缓减速;第二步,调惯量前馈,把前馈系数从0开始每次加3%到5%,观察动态尖峰逐步下降;第三步,检查速度环增益,如果变频器速度环本身太硬,也会放大动态冲击,适当降低速度环P增益能缓解。
调试中最终的目标是让减速过程中张力曲线的凹陷和尖峰都控制在设定值的±15%以内,能到这个水平,现场跑料就属于非常舒服的状态。
4.4 张力PID有振荡,自整定结果不好用
现象:PID_Compact运行自整定后,效果反而不如手动设置,甚至出现持续低频振荡。
原因:钢板张力系统属于非线性时变系统,自整定过程通常施加阶跃激励,卷径大的时候系统响应慢,卷径小的时候响应快,自整定结果只能匹配某一时刻,换个卷径就失效。
处理:建议放弃一次性自整定,改为分段整定:在最小卷径和最大卷径各做一次基础整定,取偏保守的一组参数;配合前馈补偿弥补动态差异。实际运行中如果卷径范围特别宽(比如300到1500mm),可以在程序中按卷径区间切换两组PID参数,或者做一个基于卷径的P、I参数线性插值。这个做法在多条线上实测过,比单组参数稳得多。
4.5 常见问题速查表
| 现象 | 首要排查项 | 次要排查项 |
|---|---|---|
| 张力一直偏高 | 变频器速度基准计算错误 | 张力传感器零漂 |
| 张力一直偏低不上去 | 卷径计算偏大 | 放卷电机反向阻尼不足 |
| 收卷外圈松散 | 锥度设置过小 | 收卷张力偏低 |
| 内圈压伤 | 锥度设置过大 | 收卷初始张力过大 |
| 一加速就松卷 | 惯量前馈不足 | 加速斜坡太陡 |
| 信号突变全量程 | 变送器接线松动 | 传感器过载或损坏 |
重点提醒:张力传感器是精密测量元件,检修或换卷时千万小心不要用撬棍直接敲击检测辊。现场有操作工随手敲一下,传感器零点永久偏移,整个闭环的张力示值都跟着错。
最后分享一点个人经验
这套系统调试得多了,我最深的体会是:先确认机械,再碰逻辑。曾经有一次张力波动问题困扰了我整整两天,波形上怎么看都像电气问题,结果到现场把检测辊轴承拆开一查,里面润滑脂已经干成渣了,换上轴承立刻恢复。所以我现在每到一个新项目,都会先手动盘一下卷轴和检测辊,感受有没有卡滞、有没有异响,这比任何仪表都直观。
另外,程序里给张力信号加一个“信号质量判断”非常值得做:传感器断线、数值超量程、张力突变率过大时,立即切换为开环速度控制并报警,同时保持当前运行状态而不是直接停机。直接停机在钢板线上往往会造成材料堆积或拉伤,很麻烦。
这套控制方案后面如果要扩展,方向其实很明确:一是上位机数据采集,把张力曲线、卷径曲线、电机电流曲线记录下来做质量追溯;二是用伺服驱动替代普通变频器,做高精度张力控制,适合对张力波动极其敏感的薄板材料;三是通过HMI配方管理,把不同材料的张力设定、锥度比例、PID参数都存成配方,换料时一键切换,调试效率能提升一大截。