FANUC标准PMC程序中刀库程序的修改

FANUC标准PMC程序中刀库程序的修改


    相信接触FANUC的同行都看过或保存有FANUC标准PMC程序》的电子档,这是FANUC工程师提供给大家的一个各类型机床的标准化参考程序,国内许多机床厂家都是参考这个编制的程序,这个程序的方便之处就是:只把相对应的输入、输出地址中间地址替换掉即可。

我在带斗笠式刀库的立加上也套用了这个程序的刀库部分。调试时,把例程中O9001换刀宏程序传入,设好第一(P1240)、第二(P1241)参考点等相应参数;MDI方式输入换刀指令T1M6,抓刀正常,再输入T2~T9,抓刀、还刀动作均正常,当输入T10M6时,问题出来了,当还刀完成后,找10号刀时,刀盘转到10号时,又反转回到9号,之后就在10、9之间一直左右摆动,停不下来了;最初怀疑是不是没设定就近(最短路径)换刀?查程序是对的,又输入T10以上的大刀号(最大16把刀),同样不行。

问题出在哪里呢?为啥小号刀(10号以下)换刀动作正常呢?先看看PMC程序吧:

【经验】FANUC标准PMC程序中刀库程序的修改

【经验】FANUC标准PMC程序中刀库程序的修改

【经验】FANUC标准PMC程序中刀库程序的修改

例程中写到 (比较T代码和刀库容量的大小:当T代码小于等于刀库容量时,输出R1473.6=1,T代码完成

注:由于F26和C8为二进制形式,而COMP功能代码比较的数据是BCD码,在进行比较之前,需要将F26和C8用DCNV功能指令转换为BCD码格式),看程序这部分没有错误。

大家知道,只有格式相同的数据才能比较,刀号T代码和C8已经由二进制转换为BCD码。计数器是啥格式?打开计数器页面,一眼看到是二进制格式,查资料,PMC计数器内部的数据形式分成二进制和BCD两种,可在PMC系统参数的设定画面下进行选择,标准设定为二进制形式。

【经验】FANUC标准PMC程序中刀库程序的修改

接着看程序,发现了问题:

【经验】FANUC标准PMC程序中刀库程序的修改

【经验】FANUC标准PMC程序中刀库程序的修改

【经验】FANUC标准PMC程序中刀库程序的修改

以上梯图中的C10(即当前导套号)没有进行转换,还是二进制格式,在进行一致性比较时,和主轴刀号D0,T代码D28这些BCD格式数据比较时,超过10就会出现错误。

分析:二进制码和BCD码的真值在0-9是一样的,当大于等于10以后,两者就会不同,这也就是为啥选刀号大于10后,刀盘一直在左右转动的原因。

原因找到,就好解决了,程序上把C10也进行BCD码转换换,转换到D50,然后把C10换成D50,上传,重新运行T10M6,一切正常。

【经验】FANUC标准PMC程序中刀库程序的修改

【经验】FANUC标准PMC程序中刀库程序的修改

【经验】FANUC标准PMC程序中刀库程序的修改

之后我又看了《FANUC系统刀库典型PMC程序》,这个网上广为转发的文档,和上述的程序几乎一样,不同的是它没有把计数器C0做BCD码的转换,我想应该在PMC系统参数的设定画面下把计数器数据格式选择为BCD码格式才行

经验和教训:拿来的东西,要充分去理解和分析编者的思路,看懂以后再实施,不假思索的盲目套用,可能会给你带来麻烦或不可挽回的损失。

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

请登录后发表评论

    暂无评论内容