技术干货

ABB机器人Ncount信号到底咋用?我看手册越看越懵

吕彬
吕彬
2026/04/18 20:14

刚接触ABB项目不久,现在手头一台IRB1200要做个抓取工位,上家程序里留了个Ncount信号,我对着RAPID手册翻了半天,感觉讲得挺玄乎的。简单说我就是想搞明白:Ncount这个信号是不是就是计数用的?每次触发就+1?我需要在每个工件抓完之后清零重新计,是不是直接赋个0就行?有没有啥坑是新手容易踩的,比如中断里用和主程序里用有没有区别?

项目里是配合视觉用的,相机每出一个OK信号机器人就抓一个,我想用Ncount记一共抓了多少个,到设定值就报警让操作工换料。有做过类似方案的老哥给讲讲,平时你们厂里这种计数逻辑一般怎么写最稳?

13 3

全部回复 (3)

知足
知足#1

Ncount就是软PLC里的一个通用计数器,地址你得看你那边的组态定义,一般在IO信号表里能找到对应的输入/输出位。每来一个上升沿触发就加1,你描述的场景用这个没毛病。置位清零用SetDO/ResetDO直接控制对应的物理输出就行,前提是那个Ncount真的映射到了物理IO上。要是程序里只声明了变量没映射,那就是个软计数器,跟你在程序里自己定义num变量没区别,手册说的玄乎是因为它本身就是个标准功能块。

你这种视觉触发抓取的计数场景,建议别用Ncount,自己在程序里定义一个num型变量做累加更直观,调试时也能直接在示教器上看实时值。每个OK信号进来就 numpart:=numpart+1,到达设定值置个报警标志让程序停一下。Ncount的坑在于不同项目模板里定义可能不一样,调试时容易绕进去。

2026/04/19 20:54
小军
小军#2

打断一下,你确定上一家留的Ncount是你以为的那个计数器?我之前接过一个项目也是IRB系列,前任工程师在程序注释里写的Ncount,结果翻到后面一看是个布尔信号,用来标记有没有计数完成这种状态的,不是真的在计数。你先打开示教器把那个信号的实时值盯一下,跑两个周期看它到底是数值变化还是就0和1切换,再决定怎么用。

2026/04/19 22:38
童叟无欺
童叟无欺#3

说个不一样的,我这边视觉抓取计数从来不用任何IO信号,直接在中断里写 num_count:=num_count+1,换料时在HMI上点个按钮发个数字信号过来赋零。五年了跑了七八个项目,没出过一次乱子。Ncount那玩意儿还得看IO表看映射,新手搞这个纯属给自己找活干。

2026/04/20 15:13