武漢中控南方科技有限公司 胡國清
內(nèi)容提要:文章針對多軸多通道數(shù)控機(jī)床,以1臺16軸五面體龍門加工中心的改造為例,敘述了同類機(jī)床應(yīng)用SINUMERIK 840D系統(tǒng)常用功能的應(yīng)用開發(fā)技術(shù),包括多通道設(shè)置、9軸以上的FC19修改、HHU應(yīng)用、MMC自定義畫面制作以及刀庫程序的開發(fā)等。
關(guān)鍵詞: 840D 多軸 多通道 MCP程序修改 HHU應(yīng)用 MMC畫面制作 刀庫程序設(shè)計(jì)
Function development & application in SIEMENS 840D
on Multi-axis & Multi-channel NC machine
HU Guoqing
(Wuhan ZoControl South Science & Technology Co.,Ltd.,Wuhan 430070,CHN)
Abstract:In allusion to multi-axis & multi-channel NC machine,starting from an example of one 16-axis CNC maching centre,normal function devolopment and application in SIEMENS SINUMERIK 840D on the congener machine are described. Such as multi-channel setting,modification of FC19 more than nine axis,application of HHU,user-defined HMI exploitation,application program devolopment of tool magazine,etc..
Keywords:840D;Multi-axis;Multi-channel;Modification of MCP program;Application of HHU;User-defined HMI exploitation;Application program devolopment of tool magazine.
對于數(shù)控軸較多的機(jī)床,在設(shè)計(jì)與開發(fā)中需充分考慮系統(tǒng)軟硬件特性,避免設(shè)計(jì)與調(diào)試過程的反復(fù),從而給項(xiàng)目的實(shí)施帶來影響。筆者以1臺KOLB 16軸CNC五面體龍門加工中心應(yīng)用SIEMENS SINUMERIK 840D和SIMODRIVE 611D改造實(shí)施過程中常用功能的應(yīng)用開發(fā)與應(yīng)用為例,同行交流,不對之處敬請指正。
本文所述的內(nèi)容包括:硬件組態(tài)、多通道及雙方式組參數(shù)設(shè)置、多軸MCP功能塊程序的修改、多軸HHU操作功能的實(shí)現(xiàn)、MMC自定義功能畫面制作、刀庫程序的編制。
1 硬件組態(tài)
1.1 NCU及其啟動軟件
SIEMENS 840D的NCU包括有561.2、571. 2/3、572. 3/4和573. 3/4,由其硬件特性可知分別支持2軸、6軸、31軸和31軸,對于16軸系統(tǒng)來說應(yīng)選572.3以上的NCU。
NCU啟動軟件常用的有4類,分別支持2/6/12/31軸,所以選型型號應(yīng)為6FC5250-*AX(或Y)30-*AA*。由于SIEMENS的NCU啟動軟件5.X及以前版本的啟動軟件是與硬件有關(guān)的,注意軟件與PC卡及NCU的配套,自6.0以后版本的啟動軟件可靈活運(yùn)用。
1.2 PLC硬件組態(tài)
由于I/O點(diǎn)較多,又因?yàn)镹CU內(nèi)置的IM360最多只能擴(kuò)展3個(gè)S7-300機(jī)架,有可能不夠用,此時(shí)可以設(shè)計(jì)1個(gè)或幾個(gè)(最多31個(gè))ET200遠(yuǎn)程站,應(yīng)用PROFIBUS DP總線連接至NCU的X102接口。
1.3 數(shù)控系統(tǒng)組態(tài)
仔細(xì)計(jì)算每個(gè)機(jī)架的功率分配,選擇合適的電源模塊;對于功率較小的軸應(yīng)選用雙軸模塊以節(jié)約空間,連接雙軸模塊時(shí)應(yīng)注意信號線與電源線的位置匹配;如果一個(gè)機(jī)架中模塊數(shù)量太多應(yīng)增加監(jiān)控模塊,另外需注意驅(qū)動總線與數(shù)據(jù)總線的連接。
因驅(qū)動模塊較多,應(yīng)仔細(xì)計(jì)算電源模塊與驅(qū)動功率模塊以及電抗器等的散熱,從而選擇相應(yīng)容量的空調(diào)設(shè)備。
2 多通道及雙方式組參數(shù)設(shè)置
2.1 特殊功能的激活
SIEMENS 840D的一些非標(biāo)準(zhǔn)配置功能均需要激活,否則就不能使用,通用MD19000以后的參數(shù)分別對應(yīng)于它的一些特殊功能。
2.2 通道軸的設(shè)置
多通道功能激活后,首先設(shè)置1通道的軸,然后可以通過切換通道設(shè)置2通道的軸,通常將加工軸放在1通道,刀庫軸放在2通道。
取軸名時(shí)應(yīng)注意SIEMENS的相關(guān)規(guī)定,否則會造成報(bào)警和參數(shù)配置失敗。
配置軸驅(qū)動參數(shù)時(shí),應(yīng)注意軸的物理順序和軟件順序的協(xié)調(diào)一致,若有雙軸模塊只用一個(gè)通道時(shí)應(yīng)設(shè)置另一個(gè)通道為非活動軸。
2.3 雙方式組的設(shè)置
當(dāng)機(jī)床具有兩個(gè)MCP,且使用要求需要設(shè)置兩個(gè)方式組時(shí),可以將不同的通道定義到不同的方式組。
除設(shè)置功能激活參數(shù)外,還應(yīng)對機(jī)床通用參數(shù)相應(yīng)的數(shù)值進(jìn)行設(shè)置。
設(shè)置成雙方式組后,在主程序中DB19/DB21/DB22的接口信號處理和調(diào)用FC19時(shí)相應(yīng)的參數(shù)設(shè)置要一致。
3 MCP功能塊程序的修改
SIEMENS 8x0D Toolbox 為制造商提供了較好的開發(fā)工具,其中包括MCP應(yīng)用功能塊程序FC19,使用STL編制,通常直接在OB1中調(diào)用即可。
但FC19標(biāo)準(zhǔn)程序只支持9個(gè)軸的操作,如果機(jī)床的軸多于9個(gè),而且你希望直接通過MCP選軸進(jìn)行JOG等模式下操作,則需要對FC19進(jìn)行修改。
SIEMENS特意沒有對FC19進(jìn)行加密保護(hù),這也為制造商提供了修改FC19來適應(yīng)設(shè)計(jì)與應(yīng)用需要的可能性。
3.1 FC19結(jié)構(gòu)說明
FC19的關(guān)系數(shù)據(jù)塊是DB7,程序首先將調(diào)用參數(shù)傳遞到內(nèi)存中,傳送保存MCP輸入輸出地址到五個(gè)數(shù)組,處理INC值和倍率、取當(dāng)前軸號,處理選軸輸入輸出及其鏈接信號,然后處理方式組信號。
3.2 程序修改方法
從選軸程序段著手,修改原來只讀9個(gè)軸的輸入輸出狀態(tài)為16個(gè)軸,對隨后的軸信號處理分支程序進(jìn)行修改,增加10-16軸信號狀態(tài)的處理即可。
修改程序前應(yīng)確定使用哪幾個(gè)自定義鍵來作為10-16軸的操作鍵,并查出對應(yīng)的I/O的數(shù)組地址,修改時(shí)應(yīng)注意對上一次被選軸號的保存和上下程序段的銜接。
相應(yīng)的DB塊也需要作一些修改,以適應(yīng)數(shù)據(jù)的一致性。
3.3 多通道多方式組機(jī)床FC19的調(diào)用
對于雙通道系統(tǒng),應(yīng)調(diào)用FC19兩次,并分別給以調(diào)用條件。下面就是一個(gè)雙通道單方式組的FC19調(diào)用程序(程序中FC118即是修改后的FC19,調(diào)用參數(shù)不變)
L DB19.DBB 22
T MW 90
SET
SAVE
CLR
A BR
= L 20.0
A L 20.0
A(
L MW 90
L 1
<=I
)
JNB _001
CALL FC 118
BAGNo :=B#16#1
ChanNo :=B#16#1
SpindleIFNo:=B#16#6
FeedHold :=DB21.DBX6.0
SpindleHold:=DB36.DBX4.3
_001: A L 20.0
A(
L MW 90
L 2
==I
)
JNB _002
CALL FC 118
BAGNo :=B#16#1
ChanNo :=B#16#2
SpindleIFNo:=B#16#0
FeedHold :=DB22.DBX6.0
SpindleHold:=M92.0
_002: NOP 0
有一點(diǎn)需要說明,從上面的程序可看出通道1調(diào)用時(shí)采用比較指令為<=I,也就是說當(dāng)MW90=0時(shí)也調(diào)用通道1,這是因?yàn)檎{(diào)試中發(fā)現(xiàn)840D系統(tǒng)剛啟動且未操作過通道切換鍵時(shí)DB19.DBB22=0,此時(shí)若按常規(guī)使用==I指令則會造成開機(jī)無通道激活的問題。
3.4 相關(guān)問題
如果你對FC19現(xiàn)有程序控制的操作方法不滿意,或者有一個(gè)自制MCP需與原裝MCP之間進(jìn)行操作方式切換、點(diǎn)動功能鍵的互相屏蔽等,也可以通過對FC19的相關(guān)部分進(jìn)行修改來達(dá)到目的。
4 多軸HHU操作功能的實(shí)現(xiàn)
HHU是數(shù)控機(jī)床的常用操作設(shè)備,掌握它的應(yīng)用是制造商的基本要求,SIEMENS為此在Toolbox中提供了相應(yīng)的文檔。下面就以Ver6.3版為例說明如何實(shí)現(xiàn)HHU操作多軸機(jī)床。
4.1 FC68&DB68的生成
(1) 打開toolbox6.3中Handheldunit.zip釋放到一個(gè)目錄中(如\HHU)
(2) 在Step 7中建立一個(gè)新Project,打開GP8x0d63庫,將所有文件Copy到新Project中。
(3) 在新Project中Source夾下,用insert external source打開\HHU目錄下所有.AWL文件。
(4) 由于該源文件是德文版的,所有應(yīng)在項(xiàng)目管理器的Option-Customize-Language下將當(dāng)前語言改為德文,并重新啟動。
(5) 在新建項(xiàng)目Symbol Editor中增加“—DB” DB68 DB68條目。
(6) 先編譯HHU2_db68,生成DB68文件。
(7) 再編譯HHU2_fc68,生成FC68文件。
(8) 若有兩個(gè)MCP,則用同樣方法生成FC119或FC124即可。
(9) 在新建項(xiàng)目Symbol Editor中增加“BHG_stv” FC68 FC68條目。
4.2 FC68的調(diào)用
一個(gè)典型的FC68調(diào)用程序:
L DB19.DBB 8
OW W#16#0
JN M002
L 1
T DB19.DBB 8
M002: CALL "BHG_stv"
BHG_on_condition:=M50.2
BHG_stop :=M50.1
HW_to_mmc :=TRUE
inch :=DB10.DBX107.7
BHG_activ :=DB2.DBX187.7
chan_nr :=DB19.DBB8
BAG_nr :=MB181
下面對其調(diào)用參數(shù)進(jìn)行說明:
BHG_ON_condition——它可以使HHU處于不可激活狀態(tài)。
BHG_stop——若為“1”,則HHU被停止激活并可以拔下來。
HW_to_mmc——相當(dāng)于FB1中的HWheelMMC參數(shù)。若為“1”,則第一個(gè)手輪可以通過MMC來激活。
Inch——對應(yīng)DB10.DBX107.7,若為“1”,則實(shí)際位置顯示為英制。
Chan_nr——選擇的通道號。
BAG_nr——方式組號(在DB68中設(shè)定的)
4.3 操作方法及相關(guān)說明
使用DB68&FC68激活HHU后,就可以通過其鑰匙開關(guān)來開啟/關(guān)閉HHU了。
操作說明:
(1) 方式選擇:使用INC/handw.按鈕可以切換到INC模式,使用JOG和AUTO可以切換到點(diǎn)動與自動模式
(2) 幾何軸的選擇:直接使用X/Y/Z按鈕即可。
(3) 其它軸的選擇:使用“4”鍵可以激活選軸的子菜單,然后通過“JOG”、“KT1”、“KT2”和“FeedStop”、“+”、“KT3”鍵選擇上下兩行相應(yīng)的軸。如果軸數(shù)超過6個(gè),則使用“~”鍵進(jìn)入下面6軸的選擇子菜單,以此例推。
(4) 通道切換:使用“+”、“-”鍵直接切換。相應(yīng)的通道名和方式組就隨著改變。
(5) 報(bào)警復(fù)位:當(dāng)報(bào)警出現(xiàn)時(shí),“~”鍵就相當(dāng)于Reset按鈕。
可以通過對DB68的修改來制定HHU開機(jī)狀態(tài)的顯示文本,文本長度不超過32;也可以修改軸操作狀態(tài)及位置顯示格式,文本長度不超過16。這樣可以使用戶界面更加友好。
5 MMC自定義功能畫面的實(shí)現(xiàn)
隨著MMC的不斷升級,其性能在處理速度、數(shù)據(jù)存儲、顯示、通訊、接口等方面不斷增強(qiáng),常規(guī)的操作系統(tǒng)從Windows 95/NT 4.0到Windows XP,并開始支持以太網(wǎng)和USB,為使用和開發(fā)帶來了很大的方便。
制作動態(tài)友好實(shí)用的HMI畫面可以使用戶更好地掌握機(jī)床的狀態(tài),并可以通過制作系統(tǒng)故障監(jiān)控畫面來縮短故障排除時(shí)間,提高機(jī)床運(yùn)行效率。
下面就以PCU50為例說明其自定義功能畫面的實(shí)現(xiàn)。
由于文件數(shù)據(jù)交換量較大,可以使用交叉電纜將PCU50與編程器連成一個(gè)網(wǎng)絡(luò),速度可達(dá)到100Mbps。
5.1 開關(guān)機(jī)畫面
根據(jù)顯示器的分辨率和顏色位數(shù)使用圖像處理軟件制作好開關(guān)機(jī)畫面文件,然后使用工具軟件轉(zhuǎn)換圖像格式為BMP。
送PCU50電源,選擇菜單進(jìn)入操作系統(tǒng)平臺,拷貝做好的文件至一個(gè)自定義目錄中,然后修改開關(guān)機(jī)畫面文件名為自定義文件名即可。
5.2 EasyMask Ver6.30功能
EasyMask是一種可以嵌入到MMC軟件系統(tǒng)的用戶界面開發(fā)軟件,使用方法簡單,但因?yàn)椴皇强梢暬鎸γ骈_發(fā),制作界面時(shí)往往費(fèi)時(shí)較多。
(1) 通用功能:激活PLC信號、設(shè)定給定值,同一臺MMC中可以最多安裝3套EasyMask,每套可制定最多24個(gè)人機(jī)對話界面,支持MS Windows NT/XP操作系統(tǒng)。
(2) 靜態(tài)元素:直線、文本、靜態(tài)圖像(支持BMP、WMF、ICO格式)、支持靜態(tài)圖標(biāo)按鈕、對應(yīng)PLC相應(yīng)位的軟按鈕。
(3) 動態(tài)元素:棒圖(3種動態(tài)顏色)、動態(tài)圖像(根據(jù)相應(yīng)值改變的圖像)、輸入輸出域、背景色動態(tài)顯示、動態(tài)文本。
5.3 使用EasyMask制作畫面
將EasyMask安裝到C:\ADD_ON目錄下,在提示輸入軟按鈕位置時(shí)可以修改默認(rèn)值7為9、10或其它空余的位置,提示按鈕提示文本時(shí)根據(jù)需要修改,對于界面已經(jīng)漢化的MMC來說,如果希望顯示中文提示文本,則此項(xiàng)修改無效,需到相應(yīng)的INI文件中手工寫入相應(yīng)的命令。
在做好了所有準(zhǔn)備工作后,就可以開始制作畫面了:
(1) 先在EM.INI文件中確定AUTO_MOVE變量的值(TRUE表示輸入框之間通過回車鍵來移動),增加[TEXT_CH]子項(xiàng),對應(yīng)于漢化版界面變量,在相應(yīng)的位置輸入軟按鈕的中文名稱
(2) 然后打開相應(yīng)的.TXT和.INI文件,使用各種繪圖指令布置靜態(tài)與動態(tài)元素,對于背景較復(fù)雜的畫面,建議使用專業(yè)的繪圖軟件和圖像處理軟件事先制作好指定格式的圖像文件,然后嵌入到畫面的相應(yīng)位置。對于關(guān)聯(lián)PLC或NCU變量的動態(tài)元素,應(yīng)注意其格式與PLC和NCU內(nèi)部定義類型的一致性。
6 刀庫程序的編制
對于數(shù)控機(jī)床來說,刀庫的動作控制可以使用PLC程序編寫,也可以使用NC子程序與PLC相結(jié)合來實(shí)現(xiàn)。對于鏈?zhǔn)降稁旌娃D(zhuǎn)塔刀庫來說,使用第一種方法較為方便,對于刀庫軸較多的機(jī)床來說,使用第二種方法往往達(dá)到事半功倍的效果。
6.1 用PLC程序?qū)崿F(xiàn)隨機(jī)存取刀具
下面將隨機(jī)存取刀具的編程思路簡述如下:
(1) 先建立一個(gè)DB塊,在DB中定義一個(gè)結(jié)構(gòu),其數(shù)據(jù)類型均為INT,數(shù)據(jù)數(shù)量為刀庫中刀座數(shù)量+1(即將主軸刀座作為刀庫的一部分),根據(jù)用戶刀具編號和預(yù)擺放順序?qū)⒌毒咛柗謩e輸入到各數(shù)據(jù)單元作為其數(shù)據(jù)值。
(2) 在DB塊定義的刀座結(jié)構(gòu)后定義3個(gè)數(shù)據(jù)類型INT的單元,分別存放刀具總數(shù)量、當(dāng)前需更換的目標(biāo)刀具號、當(dāng)前刀庫定位處的刀具號。
(3) 程序控制:若當(dāng)前刀庫定位處的刀具號=目標(biāo)刀具號,則刀庫停止運(yùn)動;若主軸刀座中的刀具號=目標(biāo)刀具號,則換刀結(jié)束。
(4) 采集一個(gè)刀座移動的上升沿信號,每走一步即根據(jù)刀庫刀具號順序刷新當(dāng)前刀庫定位處的刀具號,然后將定位處的刀具號與目標(biāo)刀具號比較,直到二者相等。
(5) M06對應(yīng)的PLC換刀動作完成后,在DB塊中將剛找到的目標(biāo)刀具的刀座數(shù)據(jù)值與主軸刀座刀具號值相交換,使DB中的刀座結(jié)構(gòu)的數(shù)據(jù)值始終跟蹤當(dāng)前刀庫中的刀具擺放順序。
(6) 在MMC中用EasyMask作一個(gè)監(jiān)控畫面,實(shí)時(shí)顯示DB中刀座結(jié)構(gòu)的各數(shù)據(jù)值,以便于用戶隨時(shí)查詢刀具擺放狀況以及在必要時(shí)調(diào)整擺放順序。
2.6.2 用NC程序與PLC相結(jié)合存取刀具
如果刀庫軸較多,則使用上述的方法編程換刀程序,會造成PLC與NC之間的數(shù)據(jù)交換很多,程序繁瑣且可讀性不好,此時(shí)可考慮將刀庫定位及機(jī)械手的動作過程用NC子程序編寫,將動作連鎖程序用PLC編寫,二者通過M06指令連接。
(1) 先定義一個(gè)二維數(shù)組,數(shù)組的行數(shù)等于刀庫刀具的數(shù)量,列數(shù)等于相關(guān)動作的數(shù)控軸的數(shù)量。將測量好的各定位數(shù)據(jù)分別賦值到各數(shù)組單元。
(2) 編寫一個(gè)帶參數(shù)傳遞的子程序,INT參數(shù)就是要換的刀具號。根據(jù)調(diào)用的參數(shù)值動態(tài)定位各相應(yīng)軸的位置。
(3) 機(jī)械手抓取刀具停止在等待換刀位,然后根據(jù)主軸原刀具號對應(yīng)數(shù)組的各軸位置值重新定位各相應(yīng)刀庫軸的位置,等待舊刀還原。
(4) 當(dāng)換刀的準(zhǔn)備工作完成后,即可停止主軸,定位滑枕到換刀位。
(5) 待機(jī)械手將新刀與主軸原刀具交換后,繼續(xù)完成舊刀還原動作。最終機(jī)械手停止在等待換刀位。一個(gè)換刀動作過程完成。
對于這類機(jī)床,通常刀庫軸在第二通道,主加工軸在第一通道,關(guān)于NC程序編寫有兩點(diǎn)需要說明:
(1) 常規(guī)時(shí)第一通道的NC程序只能使用第一通道的數(shù)控軸,第二通道的NC程序只能使用第二通道的數(shù)控軸,要想將所有的數(shù)控軸結(jié)合在一個(gè)程序中編程,則需要使用一些通道程序運(yùn)行協(xié)調(diào)指令。
(2) 子程序若直接存放在子程序庫中,則用戶程序中的首行必須對需調(diào)用的子程序進(jìn)行類型聲明。
7 結(jié)語
多軸多通道數(shù)控機(jī)床設(shè)計(jì)與調(diào)試過程中遇到的工作還很多,常見的有手輪操作權(quán)限的轉(zhuǎn)移與相互屏蔽、同步軸功能實(shí)現(xiàn)及其精度調(diào)整、自行編寫MCP程序、附件頭自動識別技術(shù)等。限于篇幅,文中所述未能詳盡之處歡迎同行聯(lián)系以進(jìn)一步相互溝通。