中国机器人网 App
手机扫码下载 · 或点击查看
现场一台R-30iB Mate Plus,系统是V9.40的,用示教器手动编一个简单的码垛程序,想用FOR循环里套IF/SELECT判断来跳过空托盘位,结果一运行就报MOTN-023或者语法错误,换了几种写法都不行。是不是发那科这玩意对循环嵌套有啥限制?我以前用库卡和ABB好像没这么别扭过,有经验的帮忙说说咋整。
发那科的TP程序里FOR循环嵌套层数是有上限的,老版本限制3层,V9.40好像是4层还是5层来着,具体记不清了。另外IF/SELECT里如果用了寄存器或者位置寄存器做判断条件,注意一下变量类型匹配,R[i]和PR[i]别混着赋值,它比库卡严谨多了容易报语法错。把你的程序贴出来看看到底卡哪行,光说报错信息不太好判断。
直接用LBL+JMP LBL跳着走,别死磕FOR了,我们厂里12台发那科码垛全是这种写法,稳得一批。判断空托盘用DI[ ]通断配合LBL跳转,比你套IF省事还不出错。
报MOTN-023一般不是语法问题,是运动指令位置数据有问题,循环里调用位置寄存器PR没赋值或者超出组数了吧?