1. 首页
  2. 技术文章

西门子 | CNC系统数据输出指令简介及应用实例(二)

本期以西门子828D系统为例,为大家介绍如何将存储变量写入到CF卡,系统面板前的U盘和外部的网盘上。此文承接上文,链接如下:

CNC系统数据输出指令简介及应用实例(一)

实验样机:828D PPU281.3

软件版本:4.7SP2

 

1. 将数据写入并存到CF卡上文件中

对于828D上的用户CF卡,不需要更改extdev.ini文件,直接可以在系统上执行程序即可在CF上生成记录文件。

 

输出示例程序如下:

N10 DEF INT ERR1,ERR2,ERR3 ;定义变量

N20 DEF BOOL EXTDEVICE

N30 DEF STRING[80] PHASE

N50 EXTOPEN(ERR1,”LOCAL_DRIVE/my_file.txt”,”SYN”,”SHARED”);打开外部设备

;EXTOPEN(返回值变量名,“LOCAL_DRIVE/写入数据文件名”,“是否同步写入”,“是否可共享”)

N60 IF ERR1 > 0

N70 MSG(“Error on open device, Error code:”<< ERR1)

N80 M0

N90 ELSE

N100 EXTDEVICE=TRUE

N110 ENDIF

N120 PHASE=”hello world”

N130 IF EXTDEVICE ;如果开打设备,准备写入数据

N150 WRITE(ERR2,” LOCAL_DRIVE/my_file.txt”,PHASE);写入数据

;WRITE(返回值变量名,“LOCAL_DRIVE写入数据文件名”,写入数据字符串变量)

N160 ENDIF

N170 IF ERR2>0

N180 MSG(“Error on write operation, Errorcode:”<<ERR2)

N190 M0 

N200 ENDIF

N210 EXTCLOSE(ERR3,”LOCAL_DRIVE/my_file.txt”)

N220 IF ERR3>0

N230 MSG(“Error on close device, Errorcode:”<<ERR3)

N240 M0

N250 ENDIF

N260 M30

 

执行一次程序后,在系统前端用户CF卡上会自动生成文件my_file.txt,并记录“helloworld”一次。

 

CNC系统数据输出指令简介及应用实例(二)

CNC系统数据输出指令简介及应用实例(二)

 

2. 将数据写入并保存到系统前面板的U盘上

对于828D的USB接口,需要按外部设备设置,就需要设置extdev.ini文件,把系统CF中的“…/siemens/sinumerik/nck/extdev.ini”拷入“…/oem/sinumerik/nck/”,如下图:

CNC系统数据输出指令简介及应用实例(二)

并修改如下:

CNC系统数据输出指令简介及应用实例(二)

注意格式更改完成后,828D断电重新启动。

 

输出示例程序如下:

N10 DEF INT ERR1,ERR2,ERR3 ;定义变量

N20 DEF BOOL EXTDEVICE

N30 DEF STRING[80] PHASE

N50EXTOPEN(ERR1,”/dev/ext/2/my_file.txt”,”SYN”,”SHARED”);打开外部设备

;EXTOPEN(返回值变量名,“USB:/写入数据文件名”,“是否同步写入”,“是否可共享”)

N60 IF ERR1 > 0

N70 MSG(“Error on open device, Error code:”<< ERR1)

N80 M0

N90 ELSE

N100 EXTDEVICE=TRUE

N110 ENDIF

N120 PHASE=”hello world”

N130 IF EXTDEVICE ;如果开打设备,准备写入数据

N150 WRITE(ERR2,”/dev/ext/2/my_file.txt”,PHASE) ;写入数据

;WRITE(返回值变量名,“USB:/写入数据文件名”,写入数据字符串变量)

N160 ENDIF

N170 IF ERR2>0

N180 MSG(“Error on write operation, Errorcode:”<<ERR2)

N190 M0 

N200 ENDIF

N210 EXTCLOSE(ERR3,”/dev/ext/2/my_file.txt”)

N220 IF ERR3>0

N230 MSG(“Error on close device, Errorcode:”<<ERR3)

N240 M0

N250 ENDIF

N260 M30

 

然后可以得到:

CNC系统数据输出指令简介及应用实例(二)

CNC系统数据输出指令简介及应用实例(二)

 

3. 将数据写入并存到网盘上的文件中

此方法的前提是设置好828D的网盘,这里不再赘述,可参阅828D简明调试手册。接下来,方法同USB类似,首先设置extdev.ini文件,如下图:

CNC系统数据输出指令简介及应用实例(二)

注意格式更改完成后,828D断电重新启动。

含义如下:

/dev/ext/1=“//+PC机的用户名+%+PC机密码+@+PC机IP地址+/+共享文件夹名称+,/+要写入数据的文件名称+,A”

 

输出示例程序如下:

N10 DEF INT ERR1,ERR2,ERR3 ;定义变量

N20 DEF BOOL EXTDEVICE

N30 DEF STRING[80] PHASE

N50EXTOPEN(ERR1,”/dev/ext/1/my_file.txt”,”SYN”,”SHARED”);打开外部设备

;EXTOPEN(返回值变量名,“NETWORK写入数据文件名”,“是否同步写入”,“是否可共享”)

N60 IF ERR1 > 0

N70 MSG(“Error on open device, Error code:”<< ERR1)

N80 M0

N90 ELSE

N100 EXTDEVICE=TRUE

N110 ENDIF

N120 PHASE=”hello world”

N130 IF EXTDEVICE ;如果开打设备,准备写入数据

N150 WRITE(ERR2,”/dev/ext/1/my_file.txt”,PHASE) ;写入数据

;WRITE(返回值变量名,“NETWORK写入数据文件名”,写入数据字符串变量)

N160 ENDIF

N170 IF ERR2>0

N180 MSG(“Error on write operation, Errorcode:”<<ERR2)

N190 M0 

N200 ENDIF

N210 EXTCLOSE(ERR3,”/dev/ext/1/my_file.txt”)

N220 IF ERR3>0

N230 MSG(“Error on close device, Error code:”<<ERR3)

N240 M0

N250 ENDIF

N260 M30

 

然后可以得到:

CNC系统数据输出指令简介及应用实例(二)

 

CNC系统数据输出指令简介及应用实例(二)

 
问答社区  发起问答  报警查询  技术文章  维修服务  资料下载  加交流群  申请 VIP   

本文转载来自【公众号:Siemens数控技术应用】,仅供大家学习交流,如侵权请联系站长删文。

发表评论

登录后才能评论

联系我们

在线咨询:点击这里给我发消息

联系微信:QQ594673193

工作时间:08:00~20:00

QR code