讨论

发那科机器人报警回不了原点,手动JOG能走,一跑程序就报SRVO-023

飞哥
飞哥
2026/05/17 19:15

现场一台R-30iB Plus带R-2000iC/210F,跑了两年多一直没事,昨天换完减速机润滑脂之后报警了,SRVO-023 SYNC-1(%1),编码器数据丢失。手动JOG X、Y、Z、U四个轴都能走,唯独W轴一动就报,位置还停在第二原点(位置寄存器PR[6]=0那种位置)。

我把电池换了、编码器也重新校过,$DMR_GRP[1].$SYNC_DONE已经置1,但$PARAM_GROUP[1].$SYNC_ID还是0,跑$MCR配置完了之后还是报。另外机器人控制柜里$MASTER_ENB好像也变成0了,示教器上原点位置跟机械零点对不上,差出来大概8度左右。

我搜了一圈资料说要清零再标定,问题是这台带的是绝对值编码器,拆编码器的话零点不就彻底没了?有没有兄弟碰到过类似情况,到底是直接做mastering还是得返厂重新写$SYNC_ID?

21 4

全部回复 (4)

xu_bin
xu_bin#1

W轴动不了就报SYNC-1,先别急着返厂。你$MASTER_ENB显示0肯定是问题,$PARAM_GROUP那个$SYNC_ID也得确认下值到底对不对,FANUC的同步ID是每台机器人出厂焊死在编码器上的,正常情况换完电池做个冷启动$SYNC_ID就会从0变成非零值,你这显示0说明编码器跟控制器通信可能没握手成功。

操作步骤给你:先把机器人切到MCR模式,在MENU里翻到SYSTEM→MASTERING/CAL,进入对应轴页面,先把当前位置记下来,然后选ZERO POSITION MASTERING,让机器人手动JOG回你记录的那个机械零位标记位置(一般凸轮上有个V型槽对齐标记),对齐之后按F5执行zeroing,这时候$PARAM_GROUP[1].$SYNC_ID应该会自己变成编码器烧录的那个值,$MASTER_ENB也会变1。做完再回示教器看位置寄存器PR[1]的脉冲数跟你之前备份的数值差多少,超过10个脉冲就重新做一遍精标定。减速机换润滑脂一般不会动编码器,但有可能动到制动器间隙,你先确认下W轴制动器有没有完全松开,用万用表量制动器线圈电压,24V正常说明没问题。

2026/05/17 23:22
小王
小王#2

不对啊,R-2000iC配的全是绝对值编码器,换完润滑脂就报SYNC丢失,多半是你拆装过程中把编码器线缆拉扯过了,或者制动器没完全松开硬拽过。这8度偏差不是小数,绝对值编码器对位置敏感得很,你$SYNC_ID还是0说明编码器跟控制器的同步信息根本没建立起来,这种情况下做zero position mastering也是白搭,值写不进去的。

我的经验是这种情况直接把控制柜断电5分钟再上电,让控制器重新读一次编码器SROM数据,然后进MCR做full mastering,别只做zeroing那种浅层标定。你手里要是有FANUC的校准工装最好上工装,没工装就按机械零位标记硬来,但做完之后必须用$DM_GROUP确认下每个轴的DMR状态全是1,不然跑程序还会跳出来。返厂重新写$SYNC_ID那是最后一步,你这步都没走到,先别吓自己。

2026/05/19 02:17
一路向北
一路向北#3

你确认下减速机换脂的时候,W轴的谐波减速器有没有装反或者偏位,这玩意儿偏了零点就全跑了。还有你做zero mastering之前,编码器单圈数据和多圈数据有没有清掉?$ENC_CNT[1]那个值打印出来看看。

2026/05/20 13:39
651128
651128#4

我们厂前年R-2000iA换腕部轴承也碰到过一样的情况,最后查出来是编码器线接头那根屏蔽线被油泡过接触不良,你把W轴编码器那根插头拔下来看看针脚有没有氧化或者弯针,这种问题肉眼能看出来。另外$SYNC_ID=0不是说你编码器坏了,是控制器这边没读到,去$DIAG菜单里看编码器通信状态码是多少。

2026/05/21 17:16