东风汽车有限公司客户购买了一台808D ADVANCED车床,在实际使用过程中,由于PPU150.3T的零点偏置只有6个,实际客户需要使用将近20个,PPU150.3无法扩展零偏,为了满足客户的编程使用,通过调用框架(英文FRAME,含义为坐标系)指定系统变量 $P_UIFRNUM 可以直接访问使用 $P_UIFR或者 G54, G55, 最新设置的零点位移($P_UIFRNUM 含有最新设置的框架的编号)

1.    数据调用$P_UIFRNUM

$P_UIFRNUM 使用该变量可以自动建立与当前可设定零点偏移坐标系的联系。例如:G500则对应$P_UIFRNUM = 0   G54对应$P_UIFRNUM = 1

$P_UIFR[n, , ] 通过给出框架号n,从而使用可设定框架n,然后再通过其他变量向其中赋值。例如G500中对应的偏移量的数值存储与变量$P_UIFR[0]中,G54中对应的偏移量的数值存储与变量$P_UIFR[1]中.

需要读出或者修改的变量细分说明如下

TR ------ TR 平移  

FI ----- FI 精细平移

RT ----- RT旋转

SC ----- SC Scale 改变比例尺

MI ----- MI 镜像

X Y Z-----此外还指定相应的轴XYZ

在方括号中的是要访问或者修改的轴名称和值的框架组件,例如 [X, RT] 或者 [Z, MI].

2.    预定义可设定框架$P_UIFR[n]

通过预定义框架变量 $P_UIFR[n] 可以从零件程序出发读取或者写入可设置的零点位移 G54 G599 这些变量所表示的是名称为$P_UIFR[n] FRAME类型的一维数组结构。

例如:用户循环程序L5401.SPF: $P_UIFR[1,X,TR]=R210  $P_UIFR[1,Z,TR]=R211 $P_UIFR[1,SP,TR]=R212 (含义为G54-$P_UIFR[1]对应的X,Y,和主轴SP的偏移量来自于R210,R211,R212三个R变量) G54M17

image.png

HMI界面需要单独开发如下:

image.png

3.    G指令的分配

按照标准有5个可调节框架 $P_UIFR[0]... $P_UIFR[4] 或者5个同样意义的G-指令– G500 G54 G57 , 在这些地址下可以保存值。

$P_IFRAME=$P_UIFR[0] 相当于 G500 

$P_IFRAME=$P_UIFR[1] 相当于 G54 

$P_IFRAME=$P_UIFR[2] 相当于 G55 

$P_IFRAME=$P_UIFR[3] 相当于 G56 

$P_IFRAME=$P_UIFR[4] 相当于 G57 

通过机床数据可以改变框架的个数:

$P_IFRAME=$P_UIFR[5] 相当于 G505 

... ... ... 

$P_IFRAME=$P_UIFR[99] 相当于 G599 

注意

这样可以生成总计100个坐标系,例如可以超越程序范围将这些坐标系作为各种装置的零点来调用。