劉開娣
?
828D數(shù)控系統(tǒng)二次開發(fā)在內(nèi)外圓磨床中的應(yīng)用
劉開娣
(上海機(jī)床廠有限公司 上海200093)
隨著數(shù)控內(nèi)外圓磨床專用程度的提高,零件的加工工藝也得到了升級(jí)。數(shù)控機(jī)床使用效率要求、操作免培訓(xùn)要求、安全性能要求、維修和自檢要求等都得到了很大提高,數(shù)控系統(tǒng)自帶的通用界面已經(jīng)不能很好的滿足用戶需求,需要對(duì)用戶的操作界面進(jìn)行二次開發(fā),開發(fā)通用界面的方法有很多,常用的ASCII字符編寫用戶界面文件,特點(diǎn)是簡(jiǎn)單、直觀;XML(Extensible Markup Language )可擴(kuò)展標(biāo)記語(yǔ)言是其中較為方便快捷的方法,是一種元標(biāo)記語(yǔ)言,用戶可以定義自己需要的標(biāo)記。XML語(yǔ)言的結(jié)構(gòu)化使開發(fā)更加有序、簡(jiǎn)單、直觀?;谖鏖T子828D數(shù)控系統(tǒng)通用界面二次開發(fā)為實(shí)例,詳細(xì)闡述了二次開發(fā)的過程,并且將開發(fā)的用戶界面應(yīng)用到實(shí)際。
西門子828D數(shù)控系統(tǒng) ASCII字符 XML語(yǔ)言 界面開發(fā)
西門子828D數(shù)控系統(tǒng)在機(jī)床行業(yè)中應(yīng)用日益廣泛,這個(gè)系統(tǒng)是一種緊湊型數(shù)控系統(tǒng),集CNC、PLC操作界面以及軸控制功能于一體,通過Drive-CLIQ總線與全數(shù)字驅(qū)動(dòng)S120實(shí)現(xiàn)高速通信,PLC I/O模塊通過PROFINET連接,可自動(dòng)識(shí)別,不需額外配置,Operate集成操作界面只能夠?qū)崿F(xiàn)一般操作的需求。
Easy screen是用ASCII字符編寫用戶界面文件,控制器自動(dòng)解釋執(zhí)行ASCII文件,828D控制器包含Paint Shop Pro和Paint ,支持用戶界面文件圖像顯示和繪畫功能,Easy screen能夠?qū)崿F(xiàn)的基本功能如下:
(1)對(duì)話和標(biāo)簽顯示:軟鍵功能、變量(表格)功能、文本和幫助文本功能、圖像和幫助顯示功能;
(2)激活對(duì)話方式:軟鍵、PLC地址激活;
(3)動(dòng)態(tài)再編輯功能:改變和再刪除軟鍵、定義和設(shè)計(jì)變量區(qū)域、顯示、更改和刪除顯示文本;
(4)初始化:顯示對(duì)話框、變量輸入值、軟鍵狀態(tài)、關(guān)閉對(duì)話。
(5)對(duì)話框之間交換數(shù)據(jù);
(6)變量:讀變量(NC、PLC、用戶數(shù)據(jù))、寫變量(NC、PLC、用戶數(shù)據(jù))、數(shù)學(xué)計(jì)算、比較、或邏輯操作;
(7)執(zhí)行功能:子程序、文件、PI services ;
(8)分級(jí)保護(hù)功能。
用戶界面配置文件為“easyscreen.ini”,在“System CF card oem sinumerik hmi cfg”路徑下新建用戶界面配置文件名“easyscreen.ini”,編輯配置文件產(chǎn)生需要的用戶界面。
打開控制器,在文件“System CF card oem sinumerik hmi cfg”路徑下新建配置文件名“easyscreen.ini”。在電腦上編輯文件,在parameter的第七軟鍵顯示“New screen”。
主要文件編輯及部分指令解釋如下:
//S(START) 打開電話框軟鍵菜單
HS7=("New %nScreen") 第七鍵鍵名"NewScreen"
PRESS(HS7) 按第七鍵動(dòng)作
LM("mask1") 激活"mask1"子菜單
END_PRESS
//END
//M(Mask1/"Workpiece Dimensions")
(定義"mask1"對(duì)話框)
Def Var1=(R2///"Length of component","R10 X Length"http:///"$R[10]")
(定義浮點(diǎn)變量名"R10 X Length"精確到小數(shù)點(diǎn)后2位)
Def Var2=(R2///"Width of component","R11 Y Width"http:///"$R[11]")
(定義浮點(diǎn)變量名" R11 Y Width "精確到小數(shù)點(diǎn)后2位)
Def Var3=(R3///"Height of component","R12 Z Height"http:///"$R[12]")
(定義浮點(diǎn)變量名" R12 Z Height "精確到小數(shù)點(diǎn)后3位)
Def Var4=(I///"Main spindle speed","R13 Spindle speed"http:///"$R[13]")
(定義浮點(diǎn)變量名" R13 Spindle speed "精確到小數(shù)點(diǎn)后0位)
VS8=("EXIT") (定義第六鍵鍵名" EXIT ")
PRESS(VS6)
EXIT
END_PRESS
//END
文件編輯完成后保存,用CF卡,或U盤,或RCS軟鍵傳入控制器目錄“System CF card oem sinumerik hmi cfg”下,重啟控制器,欲查看界面效果,按鍵MENU SELECT按鍵PARAMETER 按軟鍵第七鍵”New Screen”顯示用戶界面效果。
828D控制器二次開發(fā)界面支持Easy Extend,用XML語(yǔ)言開發(fā),xmldial.xml是主要的程序和用戶界面的入口,數(shù)據(jù)塊DB9905為激活和去活選項(xiàng)功能的數(shù)據(jù)塊,并用DB9905數(shù)據(jù)塊用作PLC和HMI數(shù)據(jù)交換。
下面用外圓磨床二次開發(fā)的例子說明用戶界面的開發(fā)過程,其中外圓磨床的界面流程框圖1所示:
程序編制過程及主要的程序如下:
(1)程序編寫過程是,打開控制器按鍵MENU SELECT,按鍵START-UP,按鍵SYSTEM DATA 在文件“System CF card oem sinumerik hmi appl”路徑下新建入口文件“xmldial.xml”,編輯文件。
(2)主要編程指令及指令解釋:主程序入口有固定的格式,就是必須在以結(jié)束的范圍內(nèi)編寫主程序體,任何以外的字符都不能被視為主程序有效的字符,主程序是在運(yùn)行用戶界面時(shí)首先運(yùn)行的程序,主要包括了開始的畫面定義,開始的菜單定義,及包含的子程序名稱等主要部分。
主程序菜單名稱規(guī)定為”main”,運(yùn)行主程序后程序自動(dòng)搜索名為”main”的主菜單,將作為首次菜單運(yùn)行,主菜單是以結(jié)束,在這個(gè)范圍內(nèi)的為主菜單程序。
主程序入口主要編程及指令解釋如下:
(主程序入口結(jié)束)
圖1 外圓磨床的界面流程框圖
(3)縱磨加工程序是以子菜單和子程序的結(jié)構(gòu)形式存在的,用戶界面開始時(shí)不能立即被執(zhí)行,需要在主程序運(yùn)行完成后,由主程序根據(jù)需要選擇調(diào)用運(yùn)行,子程序在激活狀態(tài)下也可以調(diào)用其他子菜單調(diào)用其他子程序子菜單總是以結(jié)束,調(diào)用其他子菜單命令以結(jié)束,在這個(gè)范圍內(nèi)編寫被調(diào)用的子菜單名稱。
在子程序體編寫前常常先定義變量,各種使用到的變量都要遵守先定義后使用的原則,即在使用變量名稱前先必須運(yùn)行定義變量的程序,如果沒有定義就使用就會(huì)出現(xiàn)錯(cuò)誤,控制器就認(rèn)為是非法的語(yǔ)句而不能執(zhí)行。
編輯文件名為“travel_menu.xml”縱磨加工子程序:
(字符串變量名" toggle10")
(整數(shù)型變量名" toggle10re")
(整數(shù)型變量名" time")
(字符串變量名" findworkpiece")
(字符串變量名" findwpbuffer ")
(字符串變量名" findwp1")
(字符串變量名" findwp2")
子菜單定義在該菜單運(yùn)行時(shí),次級(jí)子菜單的調(diào)用關(guān)系,對(duì)應(yīng)的按鍵執(zhí)行相應(yīng)的命令或調(diào)用相應(yīng)的子菜單,在子菜單里定義按鍵的位置,按鍵執(zhí)行動(dòng)作等。窗體編寫主要的指令如下:
子窗體規(guī)定以結(jié)束,子窗體里包含窗體里需要顯示的各種控件,定義各種控件的位置,各種命令的執(zhí)行,變量運(yùn)算,條件調(diào)用等元素。
(窗體結(jié)束)以同樣的方式編寫外圓加工子程序、內(nèi)圓加工子程序、測(cè)量子程序、對(duì)刀子程序、砂輪修磨子程序、直徑補(bǔ)償子程序、錐度補(bǔ)償子程序、切入磨加工子程序等。
對(duì)應(yīng)XML文件名“xmldial.xml”、“plunge_menu.xml“、“travel_menu.xml”等,編輯完成后保存,或者用SIEMENS軟件RCS802傳入控制器“System CF card oem sinumerik hmi appl”,重啟控制器,查看用戶界面效果,如果編輯的程序有問題可以用控制器自帶的調(diào)試軟件進(jìn)行調(diào)試,然后修改,再試運(yùn)行,再修改直到程序全部正確。外圓縱磨加工用戶界面效果,如圖2所示。
圖2 外圓縱磨加工用戶界面效果
界面二次開發(fā)方便了用戶使用數(shù)控機(jī)床,幫助用戶管理系統(tǒng),提高了機(jī)床的安全性。編程界面使用圖形化編程,將操作員需要編寫或修改的程序簡(jiǎn)單化;參數(shù)界面將要修改的參數(shù)形象化、增加注釋,減少了操作員對(duì)參數(shù)的記憶,減少了出錯(cuò),減少了操作員的勞動(dòng)強(qiáng)度,提高了機(jī)床的使用效率;維修界面能夠幫助顯示機(jī)床的狀態(tài),方便機(jī)床的維修,減少機(jī)床因維修而停機(jī)的時(shí)間;操作界面更加友好、更加專業(yè),將復(fù)雜的操作簡(jiǎn)單化,使數(shù)控機(jī)床更加人性化,對(duì)操作員簡(jiǎn)單培訓(xùn)就能熟練掌握,減少了培訓(xùn)時(shí)間。將Easy screen和Easy Extend結(jié)合使用,能使開發(fā)更加方便、更加簡(jiǎn)單。
[1] 西門子SINUMERIK 828D TURNING AND MILLING 說明書[M].2010.
[2] 西門子SINUMERIK 828D HARDWARE AND SOFTWARE說明書[M].2011.
[3] 西門子SINUMERIK 828D PARAMETER MANUAL說明書[M].2010.
[4] 西門子EASY EXTEND說明書[M].2011.
[5] 西門子EASY SCREEN說明書[M].2011.