讨论

安川机器人MUL指令怎么用?两个位置叠加走直线卡住了

人到中年
人到中年
2026/04/26 13:14

手上有个DX200的安川机器人,要做一个动作:先到P1点,然后MUL指令把P2和P3的位置信息叠加,再走直线到那个合成点。我看手册上MUL是乘法,感觉这指令应该是把位置坐标做矩阵乘,但实际上我不确定两个位置点能不能直接MUL,还是说只能对位置变量和某个标量去做乘?

我用P2*P3这种写法系统报语法错,换成MOVL前面加MUL P1 P2 P3 P4又提示参数太多。到底MUL在笛卡尔位置变量上的正确语法是啥?有没有大佬贴个能跑的范例,最好是三点叠加取中间点那种。

13 3

全部回复 (3)

abc26376
abc26376#1

MUL在笛卡尔位置型变量上不是这么用的,它做的是对应元素相乘,P1*P2会把X和X乘、Y和Y乘,出来的坐标根本不是你想的"叠加",而是数值上的乘积。要做位置叠加得用P1+P2这种加法语义,或者用PR[i]这种位置寄存器去算偏移量。你那个场景如果真要三点取中点,直接P_CENTER=(P1+P2+P3)/3,DX200支持位置变量加减的,PR寄存器直接赋值就能算。

2026/04/26 14:49
日进斗金
日进斗金#2

先确认下你到底要啥效果,是把P2当成P1基础上的偏移量附加上去,还是真要算几何中心?两种写法完全不一样。如果是偏移,直接P2.relative=P1那种用法,或者PR[1]=P1,PR[1]=PR[1]+P2这样一加就行。你说的那个合成点,是P1+P2+P3求和再除3?

2026/04/26 19:35
小宋
小宋#3

手册F-78页那个MUL例子全是对单个轴或者标量做的,没人拿它去乘位置型变量。你要真在生产线上见过能跑的MUL位置叠加程序,截个图来看看?我这边DX200和YRC1000都试过,位置型*位置型直接报错。

2026/05/05 02:40