简介这份PDF面向锂电分切机及类似卷绕设备的PLC编程人员与自动化学习者围绕三菱FX3U平台梳理分切机控制中的通用程序模板重点解决伺服速度与力矩模式切换、收料锥度计算及恒张力稳定控制等问题。文件包共1个PDF大小约55KB属于轻量文档便于在电脑或移动端随时查阅。内容以程序片段配合说明展开覆盖伺服速度指令与力矩模式应用、收料锥度张力的线性计算、模拟量输入输出、张力传感器信号采集以及PID调节等环节并提示PID参数调整与执行机构输出等实践要点可帮助读者理解放卷、收料与张力闭环之间的控制关系对照整理自己的编程思路。已有39人学习适合具备一定三菱PLC基础、希望参考分切机案例查漏补缺的工程人员与自学者。1. 一卷收不齐的膜这套三菱 FX3U 分切机程序管的是什么夜班收卷直径刚到 400 mm外圈就开始松端面叠成一圈菊花操作工只能降速勉强把它收完。很多人第一反应是伺服响应跟不上真到现场查往往是张力给定根本没跟着卷径走卷径是人工敲进寄存器的锥度补偿也停在固定值上。这份基于三菱 FX3U 的分切机通用程序模板把伺服速度/力矩模式切换、收料锥度控制、恒张力 PID、模拟量张力检测、报警与手动调试组织成一套可复用骨架。适合手上已经有 FX3U、正在改分切机或分条机张力段的电气与自控开发者没碰过完整项目、想照着学张力回路怎么落地的也能从软元件分配一路看到 PID 参数区。2. 程序骨架FX3U 软元件分配与四段式扫描结构拿到这类模板先别急着看梯形图逻辑按这个顺序找文件里的对应位置先找 I/O 点表和软元件分配说明再看主程序四段初始化、手动、自动、报警怎么划分最后确认参数寄存器和运算寄存器是怎么分开的。顺序反了后面看自动段就会被一堆 D 区地址绕晕改参数时也容易把设定值写到运算区里成了“改完没反应”的玄学现场。这一章按这个阅读顺序往下拆。2.1 输入输出点表与软元件分区模板里的 X/Y 点表基本是围绕“一条收卷轴 一条放卷轴 一个牵引变频器”设计的下面这份是它的典型分配具体点位在你自己机器上可以挪但分组逻辑建议保留地址类型用途X0输入自动启动X1输入自动停止X2输入急停常闭X3 / X4输入张力投入 / 张力解除X5输入换卷信号X6 / X7输入收卷手动正转 / 反转点动X10输入计米到位X11输入断料检测X12输入张力传感器断线X13 / X14输入锥度模式 / 恒张力模式选择Y0 / Y1输出收卷伺服脉冲 / 方向Y2输出放卷使能Y3输出牵引变频器运行Y4输出总报警Y10输出换卷指示点表之后是软元件分区这一步很关键。模板里 M0 到 M99 给系统状态和模式标志M100 到 M199 给报警保持位D0 到 D99 是参数设定区现场调、要能断电保持D100 到 D199 是实时运算区每个扫描周期刷新D200 之后留给 PID 参数区和模拟量缓冲。这么划分的直接好处是给客户改机器时只需要交代“D0 到 D99 你能动后面的别碰”排查问题时也能一眼看出某个值到底是人设的还是算出来的。提示参数区在 PLC 参数里要勾上断电保持范围。FX3U 默认的保持区是 D200 到 D511如果直接把参数放在 D0 到 D99 却不改保持设置断电重启后锥度系数、PID 参数全归零第二天开机第一件事就是张力失控。2.2 四段式扫描初始化、手动、自动、报警模板的主程序是按四段顺序排的段与段之间用 M 位做门控而不是靠一堆跳转指令硬跳。最前面是初始化段只在首次扫描运行; 段一上电初始化只在首次扫描执行一个周期 LD M8002 ; FX3U 上电初始化脉冲 PLS M1 ; 转成一次性脉冲供后续使用 LD M1 MOV K0 D10 ; 当前卷径清零 MOV K1000 D20 ; 收卷线速度默认 1000脉冲/秒 MOV K100 D30 ; 初始张力设定 100单位 0.1N MOV K80 D60 ; 锥度初始张力 T0 MOV K50 D62 ; 锥度终止张力 T1 RST M100 ; 清总报警M8002只在 RUN 后的第一个扫描周期为 ONPLS M1把它变成一个宽度一个周期的脉冲后面所有初始化动作都挂在这个脉冲下面。这段代码最容易翻车的地方是把它写在公共执行段里现场手动改完张力设定下一个扫描周期又被初始化指令刷回默认值操作工以为按钮坏了。判断方法很简单在线监控 D30改值后观察它是变成你设的数还是立刻跳回 100。第二段是手动优先级高于自动方便调试和穿料; 段二手动点动串入手动条件自动运行时屏蔽 LD X6 AND M20 ; 手动允许设备在手动状态且无报警 ANI M0 ; 自动运行中不允许手动 OUT M21 ; 收卷点动正转 LD X7 AND M20 ANI M0 OUT M22 ; 收卷点动反转第三段是自动流程按“启动 → 牵引升速 → 张力投入 → 计米到位 → 换卷”的顺序做成步进每一步用一个 M 位表示。这种写法比一大串自锁回路好维护缺点是步数多了以后要配一张状态表否则过两个月自己也看不懂 M31 到底代表什么。第四段是报警汇总所有故障点并起来置位一个保持型位; 段四报警汇总任意故障成立即置位保持 LD X2 ; 急停 OR X11 ; 断料 OR X12 ; 传感器断线 OR M8067 ; 运算错误除零等 SET M100 ; 总报警保持 LD M100 OUT Y4报警用SET而不用OUT线圈是为了故障一闪而过时也能留下痕迹。分切机断料往往只有几十毫秒用线圈输出等你去看了Y4 早就灭了现场只能靠猜。保留位相当于一个最小的“黑匣子”复位放在手动复位按钮里别放进自动流程。2.3 上机前的最小动作集参数设置、下载与在线监控程序灌进 PLC 之前有两件事必须先做对否则后面所有调试都是白费。第一是确认机型输出类型FX3U 只有晶体管输出型才能发高速脉冲继电器输出型带不动 Y0 的脉冲输出接上去伺服要么不动要么丢步。第二是在编程软件的 PLC 参数里把 Y0 对应的脉冲输出功能打开并设好最高频率。这两步没做程序写得再对伺服也不转。下载顺序建议是先写 PLC 参数含断电保持范围和脉冲输出设置再下载程序最后下载参数然后 RUN。上电后先看 M8002 是否正常触发、D 区初值有没有写进去再切手动点动收卷轴确认方向和脉冲频率都正常最后才进自动。很多人反过来先跑自动再查点动结果一个方向接反料直接被拉断白费一卷料。在线监控阶段重点盯三个数D10当前卷径、D74锥度张力输出、D150PID 输出。这三个数能覆盖收卷张力回路的绝大部分问题。卷径不动说明推算环节没跑锥度输出不动说明锥度使能位没置起来PID 输出顶在上限或下限说明参数或反馈有问题。把它们做成监控表存下来下次换机型时可以当对照。3. 伺服执行层速度模式与力矩模式怎么切、怎么给量分切机的收卷伺服在两种工况下工作正常收卷时按线速度同步走速度模式需要补偿张力或做锥度收卷时切到力矩限制。模板把这两套动作分开写用一个模式字统一调度好处是切换逻辑集中在一处不会出现两个段同时往模拟量输出通道写值的情况。这一章把两种模式的给量换算和切换时序拆开讲。3.1 速度模式DRVI 和 PLSY 用哪个收卷是连续转动轴没有“目标位置”这个概念所以模板选的是相对定位指令加周期累加而不是绝对定位; 收卷伺服速度给定D20 为频率(Hz)D24 为本周期脉冲数 LD M30 ; 收卷运行中 MOV D20 D24 ; 频率值送脉冲数寄存器模板里两者同源 DRVI D24 D20 Y0 Y1 ; 脉冲数 D24频率 D20脉冲口 Y0方向 Y1DRVI的操作数顺序是“脉冲数、频率、脉冲输出口、方向输出口”跟很多人凭印象写的顺序不一样顺序写反了不报错但伺服会以一个诡异的速度走一段距离属于典型的翻车点。D20 是频率单位是 Hz也就是每秒脉冲数它和线速度的换算是线速度米/分× 每米脉冲数 ÷ 60。这个换算系数建议放在 D22 里做成参数换机型时只改一个数。那为什么不直接用PLSYPLSY没有加减速过程频率一给就是阶跃收卷轴在低速段会明显一顿。DRVI配合指令表里的加减速时间设定或者更稳妥地用PLSR带加减速的版本能做到软启动。模板里手动点动段用的是PLSY因为点动要求响应快、行程短不需要斜坡两者分工是清楚的。3.2 力矩模式模拟量给定与转矩限制的换算三菱伺服的转矩限制可以通过参数固定也可以走外部模拟量实时给。分切机要跟着卷径变化实时调张力所以模板走的是模拟量通道由 FX3U 的 DA 模块输出 0 到 10 V 给伺服电压高低对应转矩限制的百分比。; 张力百分比 0~100 映射为 DA 数字量 0~4000 ; 4000/100 40即 1% 张力对应 40 个数字量 LD M40 ; 力矩模式使能 MUL D30 K40 D32 ; D30 张力百分比 × 40 → D32 TO K1 K0 D32 K1 ; 写入 1 号特殊模块 0 号通道1 个通道TO的四个操作数分别是模块起始 I/O 号、模块内缓冲存储器地址BFM、源数据寄存器、写入点数。K1 是特殊模块的起始 I/O 编号具体值取决于模块装在哪个槽位从模块正面标签能读到K0 是 BFM 地址DA 模块的 0 号通道一般是 16 号 BFM不同型号有差异接线前先翻模块手册核对别照抄。4000 这个满量程对应的是 12 位分辨率的 0 到 10 V 输出如果你的模块是 0 到 20 mA 或者 -10 到 10 V满量程和零点都要重算。3.3 模式切换时序先降张力、再切、再缓升两种模式直接硬切最典型的后果是切换瞬间张力突跳薄料直接断。模板里的处理是“降 → 切 → 升”三步中间用定时器留出缓冲; 切换到锥度模式先把力矩给定拉到 0延时再置模式位 LD X13 ; 锥度模式选择 ANI M10 ; 当前不在锥度模式 SET M50 ; 切换请求 LD M50 RST M51 ; 清恒张力运行位 MOV K0 D32 ; 模拟量给定回零 OUT T10 K2 ; 100ms 时基定时器K2 200ms LD T10 SET M10 ; 置锥度模式标志 RST M50 ; 清切换请求这里的 T10 属于 100 ms 时基的定时器K2 就是 200 ms不是 2 ms这个时基搞错的人不少尤其是从别的系列转过来的时候。切换完成后张力给定不是一步跳到目标值而是在自动段里每个扫描周期对 D32 做一次小步累加直到等于 D74 计算出的目标值。这个斜坡的步长放在 D34 里做成参数薄料调小厚料调大比在代码里写死一个数实用得多。4. 收卷张力算法锥度曲线、卷径推算与恒张力 PID张力这一段是整个模板的核心也是二次开发改动最多的地方。它由三块拼起来锥度公式决定“随着卷径变大张力该降到多少”卷径推算决定“现在到底卷到多大了”PID 回路决定“实测张力和目标差多少输出该怎么补”。三块任何一块出问题表现都是收卷不齐但排查方向完全不同所以要分开看。4.1 锥度张力公式的 32 位整数化实现锥度控制的目标是让外圈比内圈松一点避免内圈被越勒越紧导致抽芯或者端面挤出。线性锥度的关系是T T0 - (T0 - T1) × (R - R0) / (R1 - R0)T0 是起始张力T1 是终止张力R0 是起始卷径R1 是终止卷径R 是当前卷径。公式本身不复杂但直接拿 16 位指令算会溢出因为 (T0 - T1) × (R - R0) 很容易超过 32767所以模板统一用 32 位指令; 锥度张力计算全部走 32 位防止中间结果溢出 LD M60 ; 锥度计算使能 DSUB D60 D62 D70 ; D70 T0 - T1 DSUB D10 D12 D72 ; D72 R - R0D10 当前卷径D12 起始卷径 DMUL D70 D72 D74 ; D74/D75 (T0-T1) × (R-R0) DSUB D14 D12 D76 ; D76 R1 - R0 DDIV D74 D76 D78 ; D78 商 DSUB D60 D78 D80 ; D80 T0 - 商 当前锥度张力参数对应关系是D60 起始张力、D62 终止张力、D10 当前卷径、D12 起始卷径、D14 终止卷径、D80 输出张力。按模板的默认值D6080、D6250卷径从 100 走到 500 时张力从 80 线性降到 50中间每 100 mm 卷径降 7.5 个单位。有一点要提前防DDIV的分母如果为 0会触发运算错误 M8067程序不会停但结果乱掉。所以除法之前要加一道判断D76 小于等于 0 时直接跳过本次计算、保持上一次输出这个判断在模板里放在 M60 前面属于必备的保险。注意现场用纯线性锥度的情况其实不多多数材料要求前段降得快、后段降得慢或者反过来。模板在 D82 里留了一个“锥度曲线系数”把它乘进商里就能在 1.0 附近微调曲线弯曲方向比直接改公式省事。4.2 卷径推算线速度除以角速度抖动怎么压卷径不能靠人工输得实时算。原理很朴素收卷轴转一圈卷进去的料长等于 π 乘以直径所以直径 每转进料长度 ÷ π。进料长度由牵引线速度提供转数由收卷轴编码器或者伺服累计脉冲提供; 每 100ms 采一次D90 为牵引线速度脉冲D92 为收卷轴脉冲 LD M70 ; 卷径推算使能 DDIV D90 D92 D96 ; D96 线速 / 轴速 ≈ 每转进料长度脉冲单位 DMUL D96 K318 D98 ; × 3181000/π 取整做定点放大 DDIV D98 K1000 D94 ; D94 卷径 × 1000两个采样值都按固定周期刷新周期和主程序里的定时中断或者 100 ms 时钟脉冲 M8012 对齐。这套算法的软肋在低速段收卷刚启动时100 ms 内收卷轴可能只走了几个脉冲商值会跳得厉害。模板的处理是设一个转速门限D92 低于门限时不更新卷径沿用上一次的值同时给 D94 加一个一阶滤波新值占 30%、旧值占 70%; 卷径一阶滤波D94 为新算值D95 为滤波后卷径 LD M71 SUB D94 D95 D97 ; 差值 MUL D97 K3 D97 ; 差值 × 0.3 DIV D97 K10 D97 ADD D95 D97 D95 ; 旧值 0.3×差值滤波系数选 0.3 是折中太大会跟不上卷径变化锥度补偿滞后太小又压不住抖动。薄料建议 0.2 到 0.3厚料可以放到 0.5。4.3 恒张力 PID参数区初始化与整定顺序锥度模式是开环给张力恒张力模式要闭环。模板用 FX3U 内置的PID指令把张力传感器测到的实际张力当反馈把锥度算出来的目标张力当设定; 恒张力闭环D80 设定值锥度输出D110 实测张力D150 输出 LD M0 AND M80 ; 恒张力投入 PID D80 D110 D200 D150PID的四个操作数依次是设定值、实测值、参数区起始地址、输出地址。参数区是连续的一段寄存器依次存放采样时间、动作方向、输入滤波常数、比例增益、积分时间、微分时间、输出上下限这些内容具体偏移以编程软件帮助里那张表为准不同版本的顺序略有差异照着填之前先对一遍。模板里的初值是采样时间 100 ms、正动作、P 30%、I 200对应 20 秒量级、D 50这套值在 100 米/分左右的收卷上能跑但换材料必须重调。整定顺序建议按这个走先把 I 和 D 置 0只留 P从小到大加加到张力开始等幅振荡然后退回到振荡值的 60%接着加 I从大到小试直到稳态误差在一个卷径周期内被吃掉最后加一点 D 压超调。全程让机器空跑、用模拟张力源给反馈最安全实料调试至少准备两卷废料。还要注意一点恒张力和锥度不是二选一的关系。模板里恒张力模式的目标值取自锥度计算的结果也就是“闭环跟踪一条会变的曲线”这样外圈既不会勒太紧张力波动也能被 PID 吃掉。把锥度关掉直接给固定值做闭环外圈照样会出问题只是出得慢一点。5. 避坑排查这套程序在现场最容易翻车的 5 个点5.1 外圈越收越松锥度像没生效现象是收卷到后半段明显松端面出现层间滑移但监控里 D80 确实在降。原因多数出在卷径上D10 停在一个值不动锥度公式算出来的商自然也是常数。往回查会发现卷径推算段的使能位 M70 没置起来或者收卷轴脉冲采样用的是低速计数器在 100 ms 窗口里根本没累加到数。解决分两步。先在监控表里盯住 D90 和 D92 两个采样值确认它们在变再看 D94 是否跟着变。如果 D92 一直是 0检查编码器接线和高速计数器的分配如果 D92 有值但 D94 不动多半是除法分母为 0 被跳过把门限值往下调一点再试。5.2 张力一投入就报运算错误现象是刚按张力投入Y4 报警亮M8067 置位。原因是DDIV遇到分母为 0。最常见的触发场景是换卷完成后卷径寄存器被清零而锥度计算段还在跑此时 R1 - R0 或者 R - R0 结果为 0除法直接出错。处理方式是所有除法指令前面都加比较判断分母小于等于 0 时跳过本次运算并保持上一次输出。模板里用DCMP做这个判断判断结果为“小于等于”时置一个跳过位锥度段和卷径段都用它做门控。这道保险加上去以后M8067 基本不会再因为除零亮起来。5.3 伺服不转或者一转就丢步现象是手动点动时伺服完全没反应或者走一段距离后位置对不上。原因通常不在程序而在硬件和参数PLC 是继电器输出型Y0 根本发不出高速脉冲或者编程软件里 Y0 的脉冲输出功能没使能再或者脉冲接线用了集电极开路接法却按差分接法接的线。排查顺序是先用万用表量 Y0 在点动时有没有电压跳变没有就回去查 PLC 参数和机型有跳变但伺服不动查伺服的脉冲输入模式和电子齿轮比。电子齿轮比设错的表现很有迷惑性伺服会转但转速和 PLC 给的频率完全对不上看着像程序算错了实际是齿轮比没配。5.4 张力值一直在抖现象是实测张力在小范围内高频跳动PID 输出跟着抖收卷端面出现周期性松紧。原因一般有三个模拟量输入没做滤波工频干扰直接进 PLCPID 采样时间和模拟量采样周期不一致传感器和变频器的地线接在一起。处理是先给模拟量输入加平均滤波模板里用连续 8 次采样求平均放在 D120 到 D127 的缓冲区里轮转再把 PID 的采样时间调到和模拟量刷新周期一致比如都是 100 ms最后单独检查接地传感器屏蔽层单端接地别和变频器共地。这三步做完还抖才考虑去动 PID 参数。5.5 换卷后第一圈就断料现象是换卷动作完成、新卷刚起来就断断口在卷芯附近。原因是模式切换或者换卷时没有把 PID 的积分项清掉上一卷积累的积分值让输出直接顶到上限新卷芯径小、线速度低一下子就拉断了。解决办法是在换卷完成信号里加一段复位清 PID 输出、清积分累积、把张力给定斜坡的起点重新置 0然后按斜坡升上去。模板里这段逻辑挂在换卷步的结束沿上用PLS取一个脉冲触发避免每个扫描周期都清一次。6. 二次开发把线性锥度换成三段折线顺带把验证做扎实这套模板最值得改的地方是锥度曲线。线性公式在多数常规材料上够用但遇到前段要收得紧、后段要放得快的料一条直线怎么调系数都不对。改法不复杂把 4.1 里的单段计算换成三段折线用卷径区间做比较查不同的斜率和截距。卷径区间起始张力终止张力斜率R0 ~ R1T0T1(T1-T0)/(R1-R0)R1 ~ R2T1T2(T2-T1)/(R2-R1)R2 ~ R3T2T3(T3-T2)/(R3-R2)实现上用DCMP比较当前卷径落在哪一段置对应的段标志然后各段复用同一套 32 位乘除逻辑只是把端点参数换成该段的寄存器。这样改的好处是现场调机时不再改程序只改 D 区参数操作工培训一遍就能自己调。改完必须验证而且要空载验证。我的做法是手动把 D10 强制写成 100、300、500 三个值看 D80 的输出是不是正好落在三段折线的端点上误差超过 1 个单位就说明哪一段的斜率参数填反了。然后把三个区间的过渡点各跑一遍连续变化用在线监控把 D80 的曲线录下来看拐点处有没有跳变。有一次我图省事跳过了这一步结果第二段斜率填成了负数机器一进二段张力直接冲到上限一卷料报废从那以后我每次改完锥度参数都强制让机器空跑三个卷径区间、把 D80 录下来对着看一遍再上料。希望这些能帮你少走一遍我踩过的路。本文还有配套的精品资源点击获取