西门子的开放性让使用者可以根据实际需求“为所欲为”,很多功能既可通过操作面板或ISO程序代码实现,也可以通过变量编程实现;但是西门子变量相对比较复杂,很多网友常常为之不知所措,借助于SinuTrain能帮助迅速搞清楚变量的物理含义:
西门子变量在系统中一般“结构”数据类型,以矩阵形式保存,即每个单元为一个“结构”数据,每一类数据为一个矩阵(数据块),内容太多,这里就不赘述。
借助于SinuTrain,可以测试各种变量,简单数据类型(字节、十进制、字、双字等)可以在“NC/PLC变量”中显示,复杂数据类型可以借助于各个功能区。
简单数据类型,例如:
$AA_IM[x]:当前机床坐标系坐标,x:轴符
$AA_IW[x]:当前工件坐标系坐标,x:轴符
$AA_MM[x]:锁存的探头触发信号位置机床坐标,x:轴符
当前工件坐标

当前机床坐标

“NC/PLC变量”中显示

执行一个工件测量

测量后触发点的坐标显示:

复杂数据类型
这里以框架为例,西门子用框架表示坐标系,框架变量为复杂数据类型

在“NC/PLC变量”中无法显示,可以借助于工件偏置表显示,例如,可编程框架保存在系统变量$P_PFRAME中,在工件偏置表中没有显示,可以通过将可编程框架赋值给通道基本框架来显示,例如:
在MDA执行

在Channel Basic WO中显示为:

另外,对于“字符串”型变量,可以借助于GUD中的“字符串”型变量显示,例如:
$TC_TP2[y]中为刀具识别符,y:刀具号,在此以刀具表中1号刀为例

在MDA执行

借助于SGUD中的“字符串”类型变量‘_SC_CONT_NAME[2]’显示为例

一家之言,仅供参考!