FANUC LADDER-III 编程必踩的5 个坑|梯形图编译与在线写入故障排查
写了很多年 FANUC LADDER-III,最怕的不是不会写,而是明明逻辑写对了,机床却不动作。或者更糟——编译器直接报错,排查半天发现是某个不起眼的细节。
这篇把现场最常撞的 5 个坑按”症状 → 原因 → 处理”整理出来,每一条都是真正会浪费半天时间的。
坑一:CALL 指令调用了不存在的子程序
症状:编译无报错,但机床一执行到该段就报警,或者程序直接跳过不执行。
原因:CALL 指令的目标子程序名拼写错误,或者子程序名超出了允许长度。FANUC 的子程序名有字符数限制,超出部分会被截断,导致 CALL 找不到目标。
处理:在 LADDER-III 里用”符号表”逐一核对子程序名。不要靠肉眼比对梯形图里的文字——大小写、全半角、前后空格肉眼极难分辨,但软件是按字符严格匹配的。
这个坑在我们团队出现过一次极具迷惑性的情况:子程序名末尾多了一个空格,肉眼完全看不出来,编译器也不报错,但程序就是不执行。养成用符号表核对的习惯,能省掉几小时的无效排查。
坑二:定时器 / 计数器编号重复占用
症状:某个定时器该动作时不动作,或者两个不同位置的定时器”联动”了——改一个另一个也跟着变。
原因:手动分配参数号时,两个定时器用了同一个号码。FANUC 的定时器(TMR)和计数器(CTR)编号空间是独立的,但同一类型内绝对不能重号。
处理:使用软件自带的参数号自动输入功能,而不是手动填号。原理是系统会自动寻找”大于当前已用号码的最小未使用号码”,具体原理可参考另一篇:定时器/计数器参数号自动分配的逻辑。
坑三:在线写入时忘记关掉”运行中禁止写入”
症状:在线编辑时提示无法写入,或者写入中途报警导致 PMC 部分内容丢失。
原因:机床处于运行状态,或 PMC 处于”禁止写入”状态。FANUC 通常会要求把CNC 切换到特定模式(比如 PMC 写入模式)后才允许在线修改。
处理:按顺序确认三件事——① 机床不在运行中(各轴停止);② CNC 已切入允许 PMC 写入的模式;③ 梯形图本身没有处于”在线监控”锁定状态。
重要提醒:在线写入前,务必先做一次 PMC 备份。写入过程中若断电或报警,未保存的部分会丢失且不可恢复。
坑四:梯形图”看起来对”但逻辑顺序错了
症状:无任何报错,但动作时序不对——比如本该先夹紧再加工,实际却是先加工再夹紧。急停一下就好。
原因:梯形图的执行顺序是自上而下的,线圈的输出会立即生效。同一扫描周期内,如果后级梯级修改了前级用到的状态信号,就会出现”竞态”。
处理:排查时把关键信号的执行顺序画成时序图,标出每个信号在哪一级梯级被写入、哪一级被读取。发现”先读后写”的位置,就是需要调整顺序的地方。
这一条没有软件能帮你查,只能靠人工分析。这也是为什么建议复杂逻辑在修改前先画时序图——改之前理不清顺序,改完更理不清。
坑五:梯形图能编译,但和 NC 程序的动作对不上
症状:PMC 侧信号都正常,但机床实际动作不对——比如M08 开了,主轴不转。
原因:PMC 与 NC 程序之间的信号交换(X / Y 地址)配置不一致。常见情况是 PMC 侧输出的 Y 地址,与 NC 程序里 M 指令对应的地址对不上。
处理:核对两侧的地址映射关系。不要假设它们天然对应——不同机床的厂家对地址的分配习惯不同,图纸和实际配置未必一致。这是现场调试中最耗时的一类问题,因为表面上一切正常。
写在最后
上面5 个坑里,坑一、坑二可以靠软件功能规避,坑三靠流程规范规避,坑四和坑五只能靠人工分析——这也是 PMC 调试真正的门槛所在。
如果你正在系统学习 PMC 梯形图,可以先看子程序复制的6 个限制和参数号自动分配这两篇,把基础操作摸熟,再来啃排查类的内容会顺很多。
欢迎在评论区补充你遇到过的其他坑,我会整理进后续文章。
























暂无评论内容