WinCC+Flexible在數(shù)控機(jī)床界面開(kāi)發(fā)中的應(yīng)用
0 前言
目前,西門(mén)子數(shù)控系統(tǒng)在我國(guó)機(jī)床行業(yè)中的應(yīng)用日益廣泛。西門(mén)子840D數(shù)控系統(tǒng)標(biāo)準(zhǔn)人機(jī)交互界面對(duì)于通用型數(shù)控機(jī)床是適用的,但對(duì)于一些特殊、專用的機(jī)床,則需要有自己專用的界面。當(dāng)前,OEM(Original Equipment Manufacturer)軟件設(shè)計(jì)方法成為機(jī)床界面開(kāi)發(fā)的主流方法,主要通過(guò)VB(Visual Basic)開(kāi)發(fā)人機(jī)界面,利用VC(Microsoft Visual C++)編寫(xiě)出與西門(mén)子數(shù)控系統(tǒng)相聯(lián)系的語(yǔ)言動(dòng)態(tài)鏈接庫(kù),通過(guò)西門(mén)子數(shù)控系統(tǒng)提供的VB、VC接口實(shí)現(xiàn)界面開(kāi)發(fā),并將其嵌入到西門(mén)子數(shù)控系統(tǒng)。但該方法要求開(kāi)發(fā)人員熟悉數(shù)控系統(tǒng)及VB、VC編程。OEM軟件的價(jià)格較為昂貴,且OEM界面開(kāi)發(fā)周期較長(zhǎng)。在實(shí)際應(yīng)用中,要求機(jī)床操作人員具有一定的專業(yè)知識(shí)。因此,開(kāi)發(fā)操作方便、柔性化、智能化的人機(jī)界面,就顯得非常有必要。
1 西門(mén)子數(shù)控系統(tǒng)界面開(kāi)發(fā)方法簡(jiǎn)述
西門(mén)子數(shù)控系統(tǒng)主要界面的開(kāi)發(fā)方式有以下幾種:
(1)使用擴(kuò)展接口編寫(xiě)畫(huà)面
利用并定義標(biāo)準(zhǔn)界面上的空白軟鍵激活存放在標(biāo)準(zhǔn)循環(huán)目錄下的畫(huà)面配置文件(corn文件)。
(2)使用Configuring Package配置畫(huà)面
(3)使用Programming Package創(chuàng)建畫(huà)面(OEM)允許用戶將使用VB和VC編寫(xiě)的應(yīng)用程序加入HMIA dvanced,并可通過(guò)Programmming Package提供的接口訪問(wèn)NC(Numerical Contr01)/PLC(Programmable Logic Controller)變量,實(shí)現(xiàn)多幅畫(huà)面的調(diào)用,管理NC數(shù)據(jù),實(shí)現(xiàn)復(fù)雜的計(jì)算、復(fù)雜的畫(huà)面,利用PCU50上的接口(RS232、打印口和以太網(wǎng)口等)輸出加工數(shù)據(jù)和充分利用Windows資源等等功能。通過(guò)在計(jì)算機(jī)上編寫(xiě)程序,將結(jié)果(包括可執(zhí)行程序、配置文件等)拷貝到MMC/PCU。
在以上3種方法中,方法(1)易于實(shí)現(xiàn),但其功能簡(jiǎn)單,用于高檔機(jī)床人機(jī)界面的開(kāi)發(fā)手段是遠(yuǎn)遠(yuǎn)不夠的。方法(3)為OEM方法,功能非常強(qiáng)大,借助VB、VC++等軟件,在理論上可以開(kāi)發(fā)任何所需界面,但需額外購(gòu)買HMI編程包,價(jià)格較為昂貴,此外還需要VB、VC++等軟件的支持,專業(yè)性要求較高。方法(2)則是利用wjnCC Flexible配置的人機(jī)界面,采用圖形化編輯且內(nèi)部帶有功能強(qiáng)大的系統(tǒng)函數(shù),可以快速地配置畫(huà)面,縮短了開(kāi)發(fā)周期,雖然也需要購(gòu)買WinCCFlexible軟件,但價(jià)格較OEM便宜。
2 WinCC FlexibIe簡(jiǎn)述
2.1 WinCC Flexible簡(jiǎn)介
WinCC Flexible系列軟件是德國(guó)西門(mén)子公司工業(yè)全集成自動(dòng)化(T隊(duì))的子產(chǎn)品,是一款面向機(jī)器的自動(dòng)化概念的HMI軟件,它具有舒適而高效的設(shè)計(jì)功能。winCC Flexible系列軟件具有開(kāi)放、簡(jiǎn)易的擴(kuò)展功能,帶有豐富的系統(tǒng)函數(shù)及強(qiáng)大的Vissual Basic腳本功能,為人機(jī)界面的功能實(shí)現(xiàn)提供有力的手段。WinCC Flexible功能強(qiáng)大并且簡(jiǎn)單、高效,易于上手并提供智能化的工具,例如圖形導(dǎo)航和移動(dòng)圖形化組態(tài)。在創(chuàng)建工程時(shí),通過(guò)點(diǎn)擊鼠標(biāo)便可以生成HMI項(xiàng)目的基本結(jié)構(gòu),節(jié)省了界面框架設(shè)計(jì)的時(shí)間。WinCC Flexible帶有豐富的圖庫(kù),提供大量的對(duì)象供用戶使用。WillCC Flexible運(yùn)行系統(tǒng)是用于過(guò)程可視化的軟件,運(yùn)行系統(tǒng)在過(guò)程模式下執(zhí)行項(xiàng)目來(lái)實(shí)現(xiàn)與自動(dòng)化系統(tǒng)之間的通信、圖像在屏幕上的可視化及各種過(guò)程的操作、過(guò)程值的記錄和報(bào)警事件等。
2.2 WinCe Flexible主要功能
在人機(jī)界面開(kāi)發(fā)中,winCC Flexible的主要功能有:人機(jī)界面上各種軟件的定義、NCU(Numerical Control Unit)中各種變量和參數(shù)的訪問(wèn)、R參數(shù)的訪問(wèn)及存儲(chǔ)和PLC中各種變量的訪問(wèn),如I/O口、數(shù)據(jù)塊DB等以及NCU中文件的管理、MMC中文件的管理。
3專用數(shù)控磨床人機(jī)界面設(shè)計(jì)
現(xiàn)以某企業(yè)的專用磨床為例,介紹利用WinCC Flexible開(kāi)發(fā)人機(jī)界面的過(guò)程。根據(jù)機(jī)床實(shí)際需求,開(kāi)發(fā)面向工藝的引導(dǎo)式中文人機(jī)界面。將winCC Flexible開(kāi)發(fā)軟件安裝在個(gè)人計(jì)算機(jī)上,在WINDOWS操作系統(tǒng)下,通過(guò)winCC Flexible提供的Configuration Package接口,即可訪問(wèn)NCK(Numerical Control Kemel)、PLC、MMCl03變量及文件。
3.1 總體設(shè)計(jì)思路
WinCC Flexible開(kāi)發(fā)的用戶界面設(shè)計(jì)不僅僅是窗體本身的畫(huà)面外觀設(shè)計(jì),重要的是底層內(nèi)部腳本的編輯和整體的構(gòu)架,通過(guò)合理的人性化構(gòu)架來(lái)引導(dǎo)機(jī)床操作人員進(jìn)行操作。怎樣通過(guò)腳本實(shí)現(xiàn)數(shù)據(jù)的處理、存儲(chǔ)及如何實(shí)現(xiàn)文件的管理?利用WinCC Flexible提供的VBS(Visual Basic Script)腳本開(kāi)發(fā)的工藝數(shù)據(jù)庫(kù)管理軟件可對(duì)車軸磨削的工件數(shù)據(jù)、砂輪數(shù)據(jù)、修整數(shù)據(jù)等磨削工藝參數(shù)進(jìn)行存儲(chǔ)和管理,加工數(shù)據(jù)最終以CVS(數(shù)據(jù)文件格式)數(shù)據(jù)流文件形式進(jìn)行存儲(chǔ)。總體設(shè)計(jì)思路如圖1。
在機(jī)床運(yùn)行開(kāi)發(fā)好的人機(jī)界面程序之前,需要在西門(mén)子840D數(shù)控系統(tǒng)上安裝西門(mén)子WinCC Flexible runtime的運(yùn)行環(huán)境,此外還需要配置regie.ini文件,配置說(shuō)明如下:
3.3 引導(dǎo)式結(jié)構(gòu)設(shè)計(jì)
如何在人機(jī)界面中體現(xiàn)出加工工藝順序,使得機(jī)床操作變得簡(jiǎn)單易懂并容易上手,是引導(dǎo)式界面設(shè)計(jì)的核心問(wèn)題。以加工工件為主線,按照磨削工藝順序,進(jìn)行人機(jī)界面畫(huà)面配置。將界面劃分為工件設(shè)置、設(shè)備管理、砂輪修整、文件管理等幾大模塊,如圖2所示。
以多臺(tái)階零件加工為例,根據(jù)多臺(tái)加工工藝流程如圖3所示,首先進(jìn)入加工參數(shù)預(yù)設(shè)界面,如圖4所示,輸入工件名稱后按照排序依次設(shè)定工件基本信息、工步選擇及左側(cè)磨削參數(shù),如圖5、圖6、圖7所示。完成一個(gè)界面參數(shù)輸入后,點(diǎn)擊保存按鈕,初始界面上該界面的顯示狀態(tài)將由待設(shè)定變?yōu)樵O(shè)定完成,提示操作人員設(shè)定已完成。
系統(tǒng)采用模塊化程序設(shè)計(jì)方法,既便于系統(tǒng)功能的各種組合和修改,又便于未參與開(kāi)發(fā)的技術(shù)維護(hù)人員補(bǔ)充、維護(hù)。在系統(tǒng)功能分析的基礎(chǔ)上,根據(jù)西門(mén)子840D數(shù)控系統(tǒng)及WinCC Flexible組態(tài)軟件程序編制的特點(diǎn),建立系統(tǒng)功能模塊結(jié)構(gòu),如圖8所示。分別采用工件名、砂輪號(hào)、修整器號(hào)作為各子數(shù)據(jù)庫(kù)的索引標(biāo)志。
數(shù)據(jù)管理以工件名為索引,采用VBSript編程實(shí)現(xiàn)對(duì)文件的新建、刪除、重命名及加工數(shù)據(jù)的讀取、存儲(chǔ)等管理操作,如圖9所示。
4 結(jié)語(yǔ)
將利用WinCC Flexible系列軟件開(kāi)發(fā)出的人機(jī)界面應(yīng)用于某專用磨床,并進(jìn)行了工件磨削測(cè)試。引導(dǎo)式的操作界面、人性化的界面設(shè)計(jì)及方便高效的數(shù)據(jù)管理,實(shí)現(xiàn)了設(shè)計(jì)的預(yù)期目標(biāo)。今后,隨著對(duì)數(shù)控系統(tǒng)結(jié)構(gòu)和硬件的深入研究,機(jī)床制造企業(yè)需要通過(guò)對(duì)HMI界面的二次開(kāi)發(fā)來(lái)實(shí)現(xiàn)為數(shù)控機(jī)床添加可靠性更高、專業(yè)性更強(qiáng)的功能,開(kāi)發(fā)出功能更加全面、操作更加靈活方便的人機(jī)界面。
[HSoftkeyTexts]HSK6=“WmCC Flexible”(配置水平6號(hào)軟件改名為WmCCFlexible,按此鍵進(jìn)入開(kāi)發(fā)好的人機(jī)界面);
Task6---name:=OEMframe,Cmdline:=”E:\\LProgram
Files\\Siemens\\SIMATICWinCCFlexible\\WinCCFlexible
2008Runtime\\I-ImiRtm.exef:\kAdd_On\\CZ.fwx”。(配置人機(jī)界面的路徑)
其中工件設(shè)置包含工件基本信息、磨削方式選擇及磨削參數(shù)等預(yù)加工參數(shù)的設(shè)置;砂輪修整模塊則包含修整相關(guān)參數(shù)。操作人員按照界面下表提示,按照順序完成相關(guān)參數(shù)的設(shè)置即可開(kāi)始加工,操作簡(jiǎn)單、快捷、高效。
DoWhilek
k=SmartTags(“sortA)osti”)(i)
Ifk=0Then
SmartTags(“sort_numb”=i
SmartTags(“sort_posti”)(i)=1
EndIf
i=i+l
Loop
SelectCaseSmartTags(“sort_numb”)
CaselSmartTags(“FileNamel”)=
SmartTags(“NEw—FileName”)
Case2SmartTags(“FileName2”)=
SmartTags(“NEW_FileName”)
......
EndSelect