FANUC PMC 计数器CTR 指令详解:加计数与断电保持

在 FANUC PMC 梯形图里,CTR 计数器和 TMR 定时器是用得最多的两个功能指令。如果说 TMR 用得最多,那 FANUC PMC 计数器就是用得最多、却最容易被写错的一个。

很多工程师能熟练写定时器,一到计数器就犯迷糊:上升沿怎么触发?加了计数为什么一次加 2?断电重启后计数还在不在?想清零到底用 RESET 还是 SET?

这篇文章把 CTR 从头讲透,所有结论都按实测逻辑写,不绕弯子。

一、CTR 指令格式解析

FANUC PMC 计数器的书写格式是:

CTR  a(b) c(d)

看起来和 TMR 一模一样,但工作逻辑完全不同:

对比项TMR 定时器CTR 计数器
计数触发条件条件接通期间持续累加只认上升沿(微分瞬间)
累加上限到预置值停止累加到预设范围上限
数值单位b × 时基(时间)b 是纯数字(个数)
核心用途延时计数

一句话记住差别:TMR 看”持续了多久”,CTR 看”发生了几次”。

CTR 四个位置的含义:

位置名称作用
a计数器号占用一个计数器资源,严禁与定时器号重号
b预置值计数范围上限,决定溢出行为
c当前累计值地址存储当前计数值,可供显示与判断
d计数到输出地址计数值达到 b 值时输出 ON

工作逻辑:

左侧条件出现上升沿 → 累计值 c 加 1 → 达到预置值 b 时 d 输出 ON → 累计值归零,重新开始下一轮计数。

注意最后这半句:CTR 是循环计数的。到点后自动归零再数,这是它最容易被误解的地方——很多人以为到点是”停住”,实际上是”归零重数”。

安全警示:以下操作涉及 PMC 程序写入与参数修改,请在机床处于安全状态(各轴静止、急停生效)时进行,或确保有资深工程师在场指导。修改前务必备份原始梯形图与参数数据! CTR 的保持型设置涉及参数改动,错误配置会导致计数丢失或设备异常动作。

二、FANUC PMC 计数器怎么加计数:上升沿是唯一正确的触发方式

CTR 能不能加对,全看触发方式选对没有。

正确写法:串 DIF 上升沿微分

CTR 加计数:有无 DIF 的实测差异

在 CTR 前面串一个 DIF(上升沿微分),这是最标准、也是几乎唯一推荐的写法。

DIF 的作用是:把一个持续的电平信号,只在它从 OFF 变成 ON 的那一瞬间,输出一个单脉冲(一个扫描周期)。

CTR 靠这个单脉冲累加一次。所以:

  • X1.0 保持 ON 很久 → CTR 只加1
  • X1.0 保持 ON 一小时 → CTR 还是只加 1

这正是”计数”的语义:要数的是事件发生次数,不是”持续时间”。

错误写法一:用常开触点(不加 DIF)

如果直接用常开触点接 CTR:

  • X1.0 保持 ON → 条件持续满足 → CTR 持续累加
  • 实测表现:X1.0 按住 3 秒,可能加了 30 次

因为 PMC 每个扫描周期(典型 10ms 左右)都会扫一遍梯形图,条件一直满足就一直累加。

这就是”按一下加了十几个数”的根本原因。 有人以为是 CTR 坏了,其实是把”电平”当”事件”用了。

错误写法二:DIF 加在输出侧

还有人想当然,把 DIF 串在 d 输出之后。这完全无效——DIF 只对左侧输入条件有意义,串错位置等于没加。

三种触发方式实测对照

触发方式写法X 信号保持 ON 1 秒的结果是否正确
常开触点X1.0 ── CTR累加数十次❌ 把电平当事件
DIF 微分X1.0 ── DIF ── CTR只加 1 次✅ 正确写法
上升沿指令用专门的上升沿微分功能只加 1 次✅ 等效于 DIF

三、清零:三种方式,用途完全不同

计数清零是现场操作需求,比如换班归零、工件计数重新开始。

方式一:RESET 线圈(推荐,最常用)

RESET R 触发时,计数器 c 立即清零。

关键点:RESET 线圈必须放在和 CTR 同一支路、CTR 的前方(梯形图从左往右,RESET 在 CTR 左边)。

这样做的好处是:复位条件一出现,CTR 被清零且当次不计数,符合”归零后重新开始”的直觉。

方式二:SET 线圈(置位后需注意)

SET S 是置位,不是清零。如果错误地用 SET 去”清零”,结果是让计数器保持动作状态,而不是归零。

方式三:断电重启自然清零

断电保持(HOLD/KEEP)关闭时,控制器重新上电,计数值会恢复为初始值(通常为0)。

这是很多人忽略的一点:如果你发现每次重启后计数总是丢,先去查保持型设置,别急着怀疑程序写错。

四、断电保持:最容易踩坑的设置

生产计数场景最核心的需求就是——机床断电重启,产量计数不能丢。

FANUC 计数器是否断电保持,由 PMC 参数中的保持型设置决定(不同系统参数号与选项位置存在差异,请以本机 PMC 参数画面和官方手册为准)。

CTR 断电保持:保持型关 / 开 实测对照

保持型关vs 开,实测表现对照

保持设置断电重启后计数适用场景
关闭(默认)清零单次循环计数、调试阶段
开启保留断电前的值生产产量、模具寿命、累计运行时间

三类计数场景该怎么选

1. 生产计数(产量统计)→ 必须开保持

断电、换电、偶发停电都不能丢数。这是保持型最典型的用途。

2. 模具/刀具寿命计数 → 必须开保持

换了模具归零,但机床断电不能归零,否则寿命数据全丢,刀具会超期服役伤刀伤工件。

3. 单次循环计数(如一次装夹 3 个)→ 不需要保持

每次开机就该从0 开始,反而要确认保持型是关闭的,否则越用越乱。

实测验证方法(建议每次改设置后都做一遍)

  1. 让计数器走几个数,比如当前 c = 25
  2. 正常断电(不要直接拔电,走正常关机流程)
  3. 重新上电,进 PMC 画面查看 c 地址
  4. 保持型开启 → c 仍为 25;关闭 → c 归 0

注意:直接拔电源和正常关机的结果可能不同,因为部分系统在电压跌落瞬间就写入保持了。验证务必走正常关机流程,否则测出来的结论不可靠。

五、FANUC PMC 计数器生产计数场景的完整写法

把上面几点串起来,一个可直接用的生产计数梯形图:

行1: X10.0(工件检测信号)── DIF ── CTR 1(9999) D100 D101
行2: R100.0(换班清零按钮)── RESET ──(接在 CTR 前)
行3: D101(计数到信号)── OUT Y0.0(计数到亮灯)
行4: D100(当前值)── 送显示/ 上传

三个要点:

  • DIF 必须有,否则按住工件检测信号会连加
  • RESET 必须在 CTR 前面同一支路,且优先于计数
  • 保持型必须开,否则停电丢产量

计数上限 b 建议按实际需求留余量,比如日产量上限 9999 就填 9999。上限设小了会导致频繁归零重数,统计数据失真。

六、FANUC PMC 计数器常见故障速查表

现象可能原因排查方向
按一次加了好几个数没加 DIF,用了常开触点串入 DIF 上升沿微分
计数完全不动触发信号一直是 ON(无上升沿)确认信号有 OFF→ON 的跳变
断电后计数丢失保持型设置未开启查PMC 参数保持型设置
换班无法归零RESET 线圈位置错误RESET 移到 CTR 之前同一支路
计数到点不停留、直接归零重数对 CTR 循环特性理解不足用 D101 输出做锁存或一次性提示
计数时快时慢、偶尔跳号计数器号重号,或信号有毛刺核对 a 参数号;输入信号加滤波
数到上限后行为异常b 预置值设置过小按实际需求放大上限

关于”到点直接归零”这一条值得多说:如果你需要”到点后保持提示直到人工确认”,标准 CTR 输出是做不到持续保持的,需要用 D101 驱动一个 SET 锁存,或者用比较指令(CMP)配合中间继电器来实现。

七、FANUC PMC 计数器与定时器的参数号冲突问题

写梯形图时,定时器和计数器共用一套参数号空间。

很多人 TMR 用 K1、K2,CTR 也随手写 K1,结果:

  • 两个功能抢同一个号
  • 现象是”延时偶尔不准””计数偶尔跳号”,且时好时坏
  • 最难查,因为不是每次都发生

解决办法:

  1. 手动规划时,定时器和计数器分开编号,如定时器用 K1-K50,计数器用 K51-K100
  2. 用 LADDER-III 自动分配参数号功能,它会自动找未占用号
  3. 大型程序务必做参数号清单备份,这是维护的基本功

小结

把这篇和FANUC PMC 定时器 TMR 指令详解放在一起看,会更清楚两者的分工:TMR 管时间,CTR 管次数。FANUC PMC 计数器与定时器共用同一套参数号空间,编号时务必分开规划。

CTR 写对,只记三句话:

  1. 必须加 DIF,不然按住就是连续加
  2. RESET 放CTR 前面同支路,归零才干净
  3. 生产计数必须开保持型,否则停电丢数

再说一句常被忽略的:CTR 到点是归零重数,不是停住。需要”到点保持提示”的场合,要自己加锁存逻辑。

如果你刚接触 FANUC PMC 梯形图,建议先把 零基础学习发那科PMC 梯形图教程 这篇过一遍,把信号流和基本指令搞熟,再上手 CTR、TMR 这类功能指令会顺很多。遇到具体报警或现象,也可以翻翻 FANUC PMC 故障排查实战 里的实例。


标签: FANUC系统 · 机床梯形图 · 学习内容 · 基础知识 · 维修案例

免责声明:本文内容基于 CNCShare 团队实战经验整理,仅供参考。不同机床配置、系统版本可能存在差异,实际操作请以设备官方手册为准。因据此操作导致的损失,CNCShare 不承担责任。文中保持型设置、参数号与指令接法仅用于说明通用逻辑,具体配置需现场验证。

© 版权声明
THE END
喜欢就支持一下吧
点赞7赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容