(齊重?cái)?shù)控裝備股份有限公司 科研試驗(yàn)室,黑龍江 齊齊哈爾 161005)
西門子840D系統(tǒng)JOG模式下PLC調(diào)用并執(zhí)行NC程序
楊偉光
(齊重?cái)?shù)控裝備股份有限公司 科研試驗(yàn)室,黑龍江 齊齊哈爾 161005)
設(shè)置選項(xiàng)選Multiple mode actions后,在PLC程序中用PI服務(wù)FB4,設(shè)為中斷子程序ASUB;PLC通過(guò)FC 9∶ASUB觸發(fā)異步子程序,設(shè)置相關(guān)參數(shù)可使NC程序在JOG模式下由PLC觸發(fā)執(zhí)行。
NC程序;PLC;觸發(fā)
能夠由PLC觸發(fā)且在JOG模式下執(zhí)行的NC程序只有異步子程序ASUB。異步子程序叫中斷子程序,為以異步方式運(yùn)行的子程序,特點(diǎn)在于運(yùn)行方式而不是程序本身;任何子程序都可以以異步方式運(yùn)行。子程序正常運(yùn)行:上級(jí)程序在代碼中調(diào)用子程序,當(dāng)上級(jí)程序運(yùn)行到調(diào)用處時(shí)運(yùn)行子程序;或直接選擇子程序,按NC啟動(dòng)鍵運(yùn)行。子程序異步運(yùn)行:首先使用設(shè)置中斷指令將子程序與某一中斷事件相關(guān)聯(lián),然后子程序進(jìn)入等待狀態(tài);一旦出現(xiàn)相關(guān)中斷事件,則子程序運(yùn)行。因其調(diào)用有不確定性所以稱為異步。選擇使用異步子程序的原因在于,PLC可以制造一些中斷事件,因而可觸發(fā)異步子程序的運(yùn)行。要在JOG模式下運(yùn)行ASUB,須保證所設(shè)置子程序與中斷的關(guān)聯(lián)在JOG模式下仍然有效,需要以下選項(xiàng):
840D需要設(shè)置參數(shù)19340 $ON_ PROG_MASK bit 1=1。要在JOG模式下運(yùn)行ASUB,須保證所設(shè)置子程序與中斷關(guān)聯(lián)在JOG模式下有效,需要以下選項(xiàng):
840D需要設(shè)置參數(shù)19340$ON_ PROG_MASK bit 1=1。
840DSL需 要 選 項(xiàng) Multiple mode actions
PIService∶ 指定服務(wù)項(xiàng)目,"PI".ASUP表示服務(wù)為ASUB
Unit∶指定通道號(hào)
Addr1∶指定中斷子程序所在目錄
Addr2∶指定中斷子程序名稱
Vwar1∶指定中斷號(hào);PLC以中斷號(hào)為觸發(fā)基準(zhǔn)
Vwar2∶指定中斷優(yōu)先級(jí)
本 例 中Addr1 指 向’/_N_CUS_ DIR/’Addr2指 向 ’_N_MOVEAXIS_ SPF’;即用戶循環(huán)目錄下子程序MOVEAXIS.SPF在系統(tǒng)中登記為中斷子程序1
ChanNo∶指定通道
IntNo∶中斷程序號(hào),即FB4的Vwar1
Active∶等于1時(shí) 表示異步子程序正在運(yùn)行
Done∶異步子程序運(yùn)行完成時(shí)等于1
Error∶出錯(cuò)時(shí)為1
Ref∶運(yùn)行所需要的存儲(chǔ)空間,不可指定為L(zhǎng)變量。
FC9通過(guò)指定的中斷程序號(hào)觸發(fā)異步子程序,因此FC9的IntNo必須與即FB4的Vwar1一致。
在JOG模式運(yùn)行還需設(shè)定以下機(jī)床參數(shù):
MD11600 $MN_BAG_MASK=3
MD11602 $MN_ASUP_START_ MASK=7
MD11604 $MN_ASUP_START_ PRIO_LEVEL=7
FB4可設(shè)置的中斷號(hào)范圍是從1到8,如果每個(gè)異步子程序執(zhí)行一個(gè)功能,則最多只有8個(gè)。經(jīng)試驗(yàn),通過(guò)以下方法可以在同一程序中包含多個(gè)任務(wù)。
在FC 9觸發(fā)異步子程序同時(shí),通過(guò)FC21向NC系統(tǒng)變量$A_DBB[ ]傳送任務(wù)信息。異步子程序內(nèi)部根據(jù)$A_DBB[ ]取值不同劃分為不同區(qū)域;或異步子程序根據(jù)$A_DBB[ ]的取值調(diào)用不同的子程序。這樣不同任務(wù)所可根據(jù)PLC任務(wù)信息進(jìn)行選擇。以下是示例程序。
FB4可設(shè)置中斷號(hào)范圍是從1到8,如果每個(gè)異步子程序執(zhí)行一個(gè)功能,則最多有8個(gè)。經(jīng)試驗(yàn),通過(guò)以下方法可在同一程序中包含多個(gè)任務(wù)。
在FC 9觸發(fā)異步子程序同時(shí),通過(guò)FC21向NC 系統(tǒng)變量$A_DBB[ ]傳送附加信息。異步子程序內(nèi)部根據(jù)$A_DBB[ ]取值不同劃分為不同區(qū)域;或異步子程序根據(jù)$A_DBB[ ]取值調(diào)用不同子程序。這樣不同任務(wù)所可根據(jù)PLC附加信息進(jìn)行區(qū)分。
一個(gè)中斷事件可能有多個(gè)觸發(fā)源,用PLC觸發(fā)時(shí)要保證排除其他觸發(fā)源,以免程序意外運(yùn)行。通過(guò)$A_DBB[ ]傳送附加信息保證正確觸發(fā)。
(2)中斷子程序具有較高優(yōu)先級(jí),可打斷正常NC加工程序運(yùn)行。應(yīng)檢查中斷子程序與NC加工程序是否存在潛在沖突,或?qū)⒂|發(fā)限制在JOG模式內(nèi)。
在JOG模式下使用PLC調(diào)用并執(zhí)行NC程序:(1)通過(guò)PLC程序FB4指定的NC程序選擇為中斷子程序(2)通過(guò)PLC程序FC9觸發(fā)執(zhí)中斷子程序(3)設(shè)置選項(xiàng)19340第1位即Multiple mode actions使步驟(2)在JOG模式下繼續(xù)有效。
在整個(gè)過(guò)程中PLC所做的只是選擇和觸發(fā),具體功能取決于NC程序編制,程序編制完成后功能固定下來(lái)。機(jī)床手動(dòng)操作過(guò)程中可能要NC程序執(zhí)行輔助動(dòng)作,如:銑主軸更換銑頭時(shí)所需的主軸定位、回轉(zhuǎn)環(huán)閉合后鎖緊電機(jī)的鎖緊力矩控制、使刀架運(yùn)行到某固定位置及運(yùn)行固定軌跡等,要在自動(dòng)方式與手動(dòng)方式間來(lái)回切換,操作繁瑣,如果操作者對(duì)NC指令不了解還可能出現(xiàn)誤操作。在JOG模式下PLC觸發(fā)NC程序時(shí),使用按鈕作為觸發(fā)源,并把不同按鈕與以上輔助動(dòng)作聯(lián)系起來(lái),效果上相當(dāng)于把這些輔助動(dòng)作變?yōu)槭謩?dòng)操作,可增強(qiáng)機(jī)床的易用性。
可將一些較固定且必須由NC啟動(dòng)的任務(wù)改由PLC觸發(fā)執(zhí)行。這樣原來(lái)需要頻繁編寫或選擇程序然后按NC啟動(dòng)才能執(zhí)行的任務(wù),只需按一個(gè)按鍵就可以執(zhí)行。增加機(jī)床易用性。
[1]SINUMERIK 840D Basic Functions SIMENS[Z].
TG35 < class="emphasis_bold"> 文獻(xiàn)標(biāo)識(shí)碼:A
A