張紹軍
(西門子工廠自動(dòng)化工程有限公司 西安分公司 西安 710065)
隨著專業(yè)化,數(shù)字化的要求,越來越多的機(jī)床需要在數(shù)控系統(tǒng)標(biāo)準(zhǔn)人機(jī)界面(以下簡(jiǎn)稱HMI)之外再開發(fā)出針對(duì)本類型機(jī)床專用的HMI,以方便編程、操作和維護(hù)診斷。SINUMERIK828D是當(dāng)前西門子中端數(shù)控系統(tǒng)的主流產(chǎn)品,其 HMI軟件為SINUMERIK Operate(以下簡(jiǎn)稱Operate)。Operate具有良好的二次開發(fā)能力,開發(fā)工具包含 Easy Screen,Easy XML,WinCC V12,Visual Studio等。
芬蘭DIGIA公司的Qt是基于C++的一個(gè)跨操作系統(tǒng)平臺(tái)的圖形用戶界面(GUI)應(yīng)用程序開發(fā)框架,Easy Screen是基于Qt的一種純文本編程的開發(fā)工具,其編譯器被內(nèi)嵌于 Operate軟件之中。創(chuàng)建設(shè)計(jì)文件時(shí)使用PC中的ASCII編輯器編寫所需的文本文件,然后將這些文件復(fù)制進(jìn)入NC系統(tǒng)的規(guī)定文件目錄中,內(nèi)置于Operate軟件內(nèi)的Easy Screen編譯器即可以生成用戶自定義界面。這種工具方法無需具有專業(yè)的 IT高級(jí)語言基礎(chǔ)即可由機(jī)床電氣設(shè)計(jì)工程師迅速掌握,實(shí)現(xiàn)機(jī)床的個(gè)性創(chuàng)新?;竟δ苤С稚?個(gè)專用界面,購(gòu)買選項(xiàng)后專用界面數(shù)量不限。
Easy Screen使用操作樹原理,即:使用數(shù)控系統(tǒng)操作面板預(yù)留的“CUSTOM”按鍵、現(xiàn)成的8個(gè)水平軟按鍵和8個(gè)垂直軟按鍵、以及返回按鍵,逐個(gè)逐級(jí)進(jìn)入和退出若干個(gè)專用自定義界面。專用界面內(nèi)可以包含:軟鍵、系統(tǒng)變量、文本和幫助文本、圖形和幫助畫面。多個(gè)相連的自定義界面構(gòu)成了一個(gè)操作樹,通過水平或者垂直軟鍵可以返回上級(jí)界面或者進(jìn)入其它任意一個(gè)界面。
Easy Screen項(xiàng)目文件主要包含4個(gè)部分:后綴為“.com”的源文件、后綴為“ini”的配置文件、后綴為“txt”的語言文件和后綴為“png”的圖片文件。
這些文件分別位于828D系統(tǒng)軟件CF卡目錄:“cardoemsinumerikhmi”中的“proj”、“cfg”、“l(fā)ng”和“ico”目錄中,如圖1所示。
后綴為“.com”的源文件是核心文件,源文件具體描述了Easy Screen 用戶界面的所有內(nèi)容以及實(shí)現(xiàn)的具體功能?!癷ni”配置文件用來描述 Easy Screen 專用界面如何嵌入828D的HMI中、嵌入的方式以及一些相關(guān)的功能定義,配置文件一般會(huì)有若干個(gè),包含“easyscreen.ini”,“slamconfig.ini”,“custom.ini”等?!皌xt”語言文件包含各種與語言顯示文字相關(guān)的文件,如 “aluc_chs.txt、aluc_eng.txt”等,當(dāng)專用界面需要切換到不同語言環(huán)境時(shí)需要這些文件。“png” 圖片文件是顯示在專用界面中所使用到的png格式圖片,當(dāng)界面里配置有圖片說明時(shí),界面會(huì)更為形象豐富和對(duì)話友好。
以上源文件、配置文件、語言文件和圖片文件一般在PC上進(jìn)行創(chuàng)建和編輯,基本滿足要求后被復(fù)制進(jìn)入NC系統(tǒng)文件對(duì)應(yīng)目錄,HMI重啟即可生成專用界面。此時(shí)如需少量修改即可以在828D的HMI上直接進(jìn)行編輯,如圖2所示,而無需再使用PC,經(jīng)過編輯修改后的文件在HMI重啟后生效。
圖2 HMI編輯界面
為了迅速對(duì) Easy Screen項(xiàng)目開發(fā)有一個(gè)整體全面的理解,在這里以某型專用齒輪磨床的一個(gè)在線測(cè)量專用界面開發(fā)例子進(jìn)行解讀。在理解了項(xiàng)目的整體結(jié)構(gòu)和設(shè)計(jì)方法后,在實(shí)際使用開發(fā)時(shí)可再查閱相關(guān)資料了解詳細(xì)語法。
專用界面要求為:在線測(cè)量子程序?qū)ⅰ褒X輪分度圓標(biāo)準(zhǔn)值”、“分度圓測(cè)量值”和“測(cè)量齒輪個(gè)數(shù)”寫在3個(gè)R參數(shù)中。按下面板上的“CUSTOM”按鍵,進(jìn)入用戶界面的第一級(jí),左下第一軟鍵為“在線測(cè)量”軟鍵,再按下此軟鍵,進(jìn)入在線測(cè)量專用界面。此界面將“分度圓標(biāo)準(zhǔn)值”,“分度圓測(cè)量值”和“測(cè)量齒輪個(gè)數(shù)”顯示出來,操作者可以直接觀察并判斷加工結(jié)果是否在公差帶范圍之內(nèi)。專用界面左下第一軟鍵為“退出”,按此軟鍵退出此界面。最終顯示效果如圖3~圖5所示。
圖3 操作界面
圖4 測(cè)量觀察界面
圖5 測(cè)量結(jié)果界面
此 Easy Screen開發(fā)的專用界面項(xiàng)目整體至少包含5個(gè)文件和一個(gè)圖片,分別為:“cfg”目錄下的“custom.ini”,“easyscreen.ini”和“slamconfig.ini”文件,“proj”目錄下的“custom.com”和“custom_celing.com”文件,以及“ico”的 640×480目錄下的“828D.png”圖片(此機(jī)床加工區(qū)域的圖片)。
專用界面加載方式為:“easyscreen.ini”作為初始化配置文件第一個(gè)被使用,用于指定啟動(dòng)文件名字,啟動(dòng)文件內(nèi)規(guī)定了專用界面的啟動(dòng)方式和描述專用對(duì)話框的源文件。因此指定啟動(dòng)文件名是加載專用界面的第一步。本例的“easyscreen.ini”內(nèi)容如下:
文件含義為客戶界面文字標(biāo)題為“Custom”,同時(shí)裝入“ico”目錄中的640x480目錄下的名字為“828D.png”的圖片,即界面中間的本機(jī)床加工區(qū)域的圖片。
文件含義是激活 CUSTOM 操作區(qū),一般為固定格式寫法??梢暭せ詈螅僮鲄^(qū) Custom顯示為帶有可設(shè)置標(biāo)題的空窗口,所有的水平和垂直軟鍵都是可設(shè)置的。
含義是:左下角第一個(gè)軟鍵即為軟鍵 1,其標(biāo)題是“在線測(cè)量”,在NC的鑰匙開關(guān)0級(jí)別即可使用,按下該軟鍵后裝入“custom_celiang.com”文件所定義的專用界面。到此,主要文件之間的關(guān)系就比較清楚了:“easyscreen.ini”配置文件指定“custom.com”為啟動(dòng)源文件,啟動(dòng)文件里又調(diào)用了“custom_celiang.com”專用界面源文件,通過幾個(gè)文件的依次調(diào)用,最終完成專用界面的生成。
“.com”源文件直接生成專用界面本身,文件內(nèi)可以包含定義變量,定義功能函數(shù),定義軟鍵,定義動(dòng)作相應(yīng)方式,數(shù)學(xué)運(yùn)算和邏輯運(yùn)算等。源文件內(nèi)容相對(duì)復(fù)雜,需要按照一定的語法格式進(jìn)行編寫,由于篇幅所限,在此不詳細(xì)展開。
“custom_celiang.com”源文件所生成的界面即為齒輪分度圓測(cè)量界面。本例中僅為讀取R參數(shù)顯示出來,因此文件內(nèi)容比較簡(jiǎn)單。內(nèi)容如下:
;******************Mask1: 參數(shù)界面*******************
//M(Mask1/"在線測(cè)量參數(shù)"/)
DEF TXT1={st="齒輪分度圓測(cè)量",FS=2,txt_x="30",txt_y="10",wr=1},
DEF VAR1=(R3///,"分度圓標(biāo)準(zhǔn)值",,"mm"/wr1//"/Channel/Parameter/rpa[u1,0]"/30,55,1 00/200,55,100,//),
DEF VAR2=(R3///,"分度圓測(cè)量值",,"mm"/wr1//"/Channel/Parameter/rpa[u1,1]"/30,80,1 00/200,80,100,//),
DEF VAR3=(R3///,"測(cè)量齒輪個(gè)數(shù)",,""/wr1//"/Channel/Parameter/rpa[u1,11]"/30,105,10 0/145,105,100,//),
HS1=("退出")
PRESS(HS1) ;Main
EXIT
END_PRESS
此文件的核心語句是讀取NC數(shù)據(jù)中的變量R0、R1和R11共3個(gè)R參數(shù)。讀取語句含義舉例如:
DEF VAR1=(R3///,"分度圓標(biāo)準(zhǔn)值",,"mm"/wr1//"/Channel/Parameter/rpa[u1,0]"/30,55,1 00/200,55,100,//),
DEF VAR1:定義變量1
R3:變量1為實(shí)數(shù),精度為小數(shù)點(diǎn)后3位
分度圓標(biāo)準(zhǔn)值:是要顯示的文本
mm:變量1的單位為mm
wr1:變量1為只讀屬性
Channel/Parameter/rpa[u1,0]:NC通道數(shù)據(jù)中的R0參數(shù)作為變量的固定寫法,與此類似 rpa[u1,1]和rpa[u1,11]為R1和R11參數(shù)
30,55,100:文本在屏幕的位置(橫向,高度,寬度)
200,55,100:變量輸入欄目在屏幕的位置(橫向,高度,寬度)
綜上可見本句含義為:定義變量1顯示文字為“分度圓標(biāo)準(zhǔn)值”,變量的單位為mm,精確到小數(shù)點(diǎn)后3位,變量?jī)?nèi)容來自于NC數(shù)據(jù)中的R0參數(shù),并將以上內(nèi)容顯示在屏幕規(guī)定的位置。
文件開頭的文本定義語句如下:
DEF TXT1={st="齒輪分度圓測(cè)量",FS=2,txt_x="30",txt_y="10",wr=1},
本句含義為,定義文本1為“齒輪分度圓測(cè)量”,字體為2號(hào),文本為只讀,文本在屏幕的(30,10)位置。
文件的最后4句表示左下角第一軟鍵為“退出”,按下此軟鍵后退出當(dāng)前界面。
在此,一個(gè)小而完整的使用Easy Screen開發(fā)的項(xiàng)目被完整展示出來??梢娛褂么斯ぞ邿o需 IT專業(yè)高級(jí)語言編程背景,機(jī)床電氣設(shè)計(jì)工程師專注于工藝本身和對(duì)機(jī)床數(shù)據(jù)變量的操作即可,不用考慮底層操作系統(tǒng),制作的都是文本文件,文件占用空間小。生成的專用界面嵌入標(biāo)準(zhǔn)界面中互相補(bǔ)充,切換迅速操作方便,滿足機(jī)床專業(yè)化個(gè)性化的要求。