待解决

发那科机器人TP程序里这个寄存器到底咋用?翻了手册越看越懵

zhiqiangl98
zhiqiangl98
2026/03/25 23:57

刚干这行不到半年,现在在做汽车零部件的搬运项目,用的FANUC R-30iB Plus,手上有个活儿需要把抓料点位置存下来下次直接调用,师傅让我用寄存器,可我翻了半天TP编程手册,R[i]那种用法看懂了,但是PR[i]那个位置寄存器跟R到底差在哪儿我一直没整明白。

比如我要存一个点位下次直接用,是该用PR[10]还是R[10]?PR里面那个X、Y、Z、ZPR那几个数字是啥意思?我看示教器里P[1]直接点也能存啊,跟用PR存有啥区别?有没有人能给掰扯清楚点,别整那些手册上的官方话,看不太懂。

10 3

全部回复 (3)

平平淡淡
平平淡淡#1

P[1] P[2]这种是直接示教出来的位置点,存的是机器人当前位姿的六组数据,你改了关节角度它自己跟着变;PR[10]属于位置寄存器,是变量,能在程序里通过赋值来改,比如 PR[10]=P[1] 这种写法。

实际项目里P点用来存固定的示教位置最方便,PR用来做偏移或者通过计算赋值更灵活。寄存器R[10]存的是单个数值,不是位姿,你那个点位需求用PR才对。另外你写的R[10]跟PR[10]是两类东西,一个数值型一个位置型,别混着存,手册第二部分看那个Variable那一章,里面有详细对比表,比看指令说明清楚。

2026/03/27 22:36
鸿运当头
鸿运当头#2

你是R-30iB Plus的话 PR里面那五组数 前面四组是X Y Z W P是直角坐标和方位 第五组是构型角度 写程序的时候L PR[10] 100mm/sec FINE就能走过去 非要追问的话你那个搬运项目 抓料点如果固定就用P点 频繁换型的用PR更省事

2026/03/28 15:20
a268807
a268807#3

用错了吧 R[10]存的是单精度实数 一共就一个数 PR[10]才是位置寄存器 里面有五个分量 你看手册看到哪儿去了 师傅让你存点位 你给存了个R进去 程序跑起来肯定报错 重新翻一下TP编程第二章 变量与寄存器那节 上面写得清清楚楚

2026/04/17 21:19