讨论

安川码垛程序怎么写才稳?DX200老是撞限位

恭喜发财
恭喜发财
2026/03/17 21:46

手上有个活,纸箱码垛,一层四箱,堆八层高。用安川DX200配MH50,之前那哥们写的程序跑起来总撞机械限位,特别是回原点那块,一急停就过冲。梯形图加机器人程序那种结构,有人直接用M寄存器做码垛矩阵的也见过,但总觉得不够直观。

想问问各位码垛程序一般怎么组织?是用MOVEMASTER那种码垛指令配合位置寄存器P,还是干脆自己用数组算每层偏移?另外抓取点放件点坐标偏了有啥快速校准的办法没有,示教一遍太慢了。

15 4

全部回复 (4)

老曾
老曾#1

码垛用P寄存器数组最稳,每层一个PR[i],每列再嵌套一层循环。我们厂里六轴码垛机跑了三年没出过事,矩阵直接用FOR循环+PR[i]偏移算。DX200有个码垛宏包叫PALLET,你调出来看看,里面现成的栈板类型设置比自己写省事一半。

撞限位多半是回原点速度给太高,JOG速度设到5%以下慢慢回,急停减速时间在$SCR.$GRP[1].$DECELSTOP里改大一点,默认那个100ms太短了负载一重就刹不住。还有PR坐标偏的问题,让抓手抓个校准针,用视觉给偏差补偿,一次示教后面自动修正。

2026/03/18 12:41
老吴
老吴#2

自己用算的也行,但得注意姿态连续,过渡点一定要比堆的高度再高300mm以上,不然箱子摆过去的时候手腕会蹭到前面的箱子。另外你那MH50负载50公斤,纸箱如果超过30公斤,码到六七层INFORM里那个$PAYLOAD$SET就得重新校一遍重心,不然累计误差大得很。

2026/03/19 14:36
平常心
平常心#3

码垛指令PALLETINT里有个E1到E3对应堆型,我这边做的是1*2*4的化工桶码垛,直接用这个指令比手算坐标快,示教的时候只示教三个点就自动生成全部位置。

2026/03/21 00:54
老梁
老梁#4

你梯形图里是不是用了B标签控制时序?DX200和FS100不一样,DX200的B标签在码垛循环里偶尔会丢一帧,改成整数型D寄存器就好多了。之前我同事在FS100上能跑的码垛程序搬到DX200也是撞限位,后来查出来是梯形图时序的问题,不是机器人程序本身的事。

2026/03/26 08:28