NC程序:
g0 x0 y0 z0 a0 c0
FGROUP(X,Y,Z,A)
$an_sltrace=1
g01 x10 y15 A20 f100
m02

第一个变量是X轴的速度
第二个变量是Y轴的速度
第三个变量是A轴的速度
第四个变量是路径速度
伺服跟踪得到的各轴速度:
X=37.2mm/min Y=55.8mm/min A=0.207rpm F=100mm/min
现在我们引入另外一个NC指令FGREF
FGREF是FGROUP指令中旋转轴的参考半径
依然先实验,程序改为:
g0 x0 y0 z0 a0 c0
fgref[a]=100 (新加的)
FGROUP(X,Y,Z,A)
$an_sltrace=1
g01 x10 y15 A20 f100
m02
伺服跟踪得到的结果:

首先我们看到,程序的运行时间明显延长了,再看看伺服跟踪得到的各轴速度:
X=25.2mm/min Y=38.4mm/min A=0.1417rpm F=100mm/min
下面是计算结果:
如果不写FGREF=100,那FGREF是多少呢?
按前面讲的1度对应1mm
FGREF=360mm/(2*pi)=57.296mm
你自己可以试试,把程序修改为:
g0 x0 y0 z0 a0 c0
fgref[a]=57.296
FGROUP(X,Y,Z,A)
$an_sltrace=1
g01 x10 y15 A20 f100
m02
然后伺服跟踪看看各轴速度是不是和不写FGREF的一样。