0 引言
在機械制造行業日趨發展的今天,各種規模的數控加工廠越來越多。對于一個負載沉重的數控加工廠來說,數控設備的完好率已經成為影響生產的重要因素。而影響數控設備完好率的主要因素出現在一些外圍設備上,如液壓機構,氣壓機構,刀庫機構等,通過這些外圍設備的控制環節PLC為入口來分析和處理這些故障問題,是保證整個數控設備精確高效加工的重要手段。
PLC控制是數控系統控制中的重要環節。做為設備保障的技術人員,要清楚了解PLC所控制的外圍設備的工作流程,以及外圍設備之間的關系等,就必須對機床PLC的邏輯有個清楚的認識,本文以外設計的手動換刀為例,介紹了PLC在FIDIA系統數控加工中心刀庫中的一些應用。
1 PLC 概述
可編程控制器(PLC)是伴隨計算機技術而迅速發展、廣泛普及和應用的新型工業自動控制裝置。它以微型計算機為基礎,綜合了計算機技術、自動控制技術和通信技術,在現代工業生產中具有極大的重要性,是當今工業自動控制的標準設備。PLC采用可編程序的存儲器,用來在其內部存儲執行邏輯運算、順序控制、定時和算術運算等操作的指令,并通過數字式、模擬式的輸入和輸出,控制各種類型的機械或生產過程。PLC的邏輯控制已經逐步取代了傳統的繼電器邏輯控制裝置,應用于單機或者多機控制系統以及自動化生產線上。PLC的種類很多,根據數控設備PLC的運用情況,大致可以將其分為兩類:
整體式PLC,如OMRON公司的CPM2A,CPM1A,C40P等,其特點是結構簡單、體積小,實現功能和控制規模較為固定(主要用在立體庫,回轉庫等);
組合式,采用總線結構,即在一塊總線底板上有若干個總線槽、每個總線槽上可安裝一個PLC模塊,不同模塊實現不同功能。PLC的CPU和存儲器模塊在總線上的安裝位置一般是固定的。其他模塊可根據PLC的控制規模、實現的功能等選擇安裝在總線線路上的其他地方,這種結構的PLC特點是系統構成的靈活性比較高。大量的數控機床就是這種。
2 PLC 在數控機床中的作用
數控系統是現代數字控制技術的典型產品,是現代機械制造系統的重要基礎設備。隨著生產的發展,數控技術已不僅用于切削機床,同時還用于其他機械設備,如三坐標測量機、立體庫、工業機器人等。
數控機床除了要控制機床實現表面加工外,還要對機床實施如主軸起停、刀具更換、冷卻液開關等控制功能,這類控制都應該遵循一定的邏輯和順序關系,通常稱為順序控制。由早期的數控機床大多采用繼電器控制線路來實現到現在的PLC控制,順序控制方法逐漸走向成熟。PLC的順序控制和NC控制構成了現代大多數高檔數控機床的主要控制方式(如圖1),在控制的過程中,兩者之間既有聯系又有區別:
(1)NC實現坐標軸幾何運動控制;包括全閉環,半閉環系統控制,坐標軸僅給控制等;
(2)操作面板的控制。操作面板分為系統操作面板和機床操作面板。系統操作面板的控制信號先是進入NC,然后由NC送到PLC,控制數控機床的運行,如機床人機界面。機床操作面板控制信號,直接進入PLC,控制機床的運行,如排屑槽上的正反轉控制。
(3)機床外圍設備開關量輸入輸出信號控制。將機床的開關信號輸入到PLC,進行邏輯運算。這些開關信號,包括很多檢測元件信號(如:行程開關、接近開關、模式選擇開關等等),輸入信號經過邏輯轉換后, 輸出PLC輸出信號,這些信號經外圍控制電路中的繼電器、接觸器、電磁閥等輸出給要控制的外圍設備。
(4)換刀功能實現。系統送出T指令(換刀指令)給PLC,經過轉換后,在PLC程序中找到T代碼所指定的刀號,并與主軸刀號進行比較。如果不符,發出換刀指令,刀具換刀。
(5)M功能實現。NC系統送出M指令給PLC,經過轉換后,輸出控制信號,控制主軸松拉刀,正反轉等等。
由此可見,在數控機床中的兩種控制:NC控制和PLC順序控制,兩者相輔相成,不可或缺。
3 PLC 在FIDIA系統中的應用特點
FIDIA系統,以較好的穩定性和較優的性價比,在我國的數控機床行業廣泛應用。FIDIA系統所使用的編程語言AUCOL,作為意大利FIDIA公司的PLC內置語言,編程靈活,語句量大。同時它是一種操作二進制變量的FIDIA專門產品。相對于西門子,法拉克等系統的PLC程序編制方法的種類多樣,FIDIA系統只有語句表方式的編程方法(梯形圖方法廠家正在開發中),因此AUCOL語言分析研究具有一定的獨特性。
3.1 FIDIA 系統PLC 程序的結構
對于FIDIA系統機床,一般而言,主要的PLC程序有:
(1)自動換刀程序;
(2)機床輔助設備控制,如潤滑、刀庫等;
(3)電主軸的控制程序,如電主軸的油霧潤滑,制冷等(機械主軸無此程序)。
每個PLC程序都是由進程單元組成(急停檢測,液壓系統管理,刀具搜索的管理等),所謂進程,是指由PLC程序員編寫的不同時單獨運行而又相互關聯的程序。各個進程是按順序從進程1到進程2依序執行下去,如果某一個進程無效,這個進程會被跳過直接執行它后面的進程。
進程由變操作碼和指操作數組成。操作碼表示的是指令要完成的操作功能,操作數指變量和常量,AUCOL中的變量,以不同類型存在:
(1)只有CNC 用到的輸入輸出位(定義在PLCXXX.DEF中);
(2)只有AUCOL用到的輸入輸出位(定義在PLCXXX.AUC中,格式:.OBIT BIT_NAME;.IBIT BIT_NAME);
(3)AUCOL用到的CNC輸入輸出位;
(4)標準內存位(CNC 和AUCOL 公用的,定義在PLCXXX.DEF,格式:.CNCBIT中);
(5)AUCOL內部的局部變量(格式:.MBIT BIT_NAME),AU?COL 用到的全局變量(定義在PLCXXX.GBL 中,格式:.GMBITBIT_NAME)。
其中輸入信號做為反饋信息回CNC和PLC,而輸出信號被CNC和PLC用來管理特定的操作。
3.2 AUCOL 語言的應用
這里以北京第一機床廠的XHAD7310機床外圍輔助設備程序為例,其中包含了24個進程塊,各個進程實現的功能如下表;
3.2.1 進程的運行和調用
在整個程序中,每個進程都可以單獨運行和結束,但是P0(急停檢測進程)做為整個程序的入口初始化進程,具有重要的地位,因此最好不要停止。當所有的軟件都進行加載后開電運行,CNC會將標簽PINI做為初始標簽分配到P0中,然后AUCOL程序以轉換初始標簽的方式依次往后運行。例如:XHAD7310機床輔助設備控制程序中,先運行急停檢測主進程P0的初始加載標簽PINI,然后初始化各個AUCOL和CNC位,接著,此進程塊結束加載MAN.WT標簽進入手動程序塊,依次調入并檢查累加器電源模塊充電啟動控制位DUSMO,電源模塊驅動使能控制位DUPCE,電源模塊脈沖使能控制位DUPPE,DRTXW2,3,4使能位DUENT等AUCOL內存位是否為1,若為1則將其置0,然后檢查機床手動狀態監控位,若ID24C為1(即手動監控)則繼續檢查限位開關監控,并在限位開關監控為1 時調用自動程序塊標簽AUT.WT,依次調用并運行P2,P3等除了P1外的所有進程,最后檢查CNC內存位。P1進程不參與調用,其內容為編程人員編寫的M指令,如M08,M09等。
由此可見,P0進程調用了此程序中幾乎所有的子進程和子程序,在它之后,依次是各個被調用子程序以及的進程。
3.2.2 手動換刀子進程分析研究
XHAD7310機床由于刀庫設計上的缺陷如:刀臂過廠且底部過重,容易產生刀臂變形;刀庫為獨立刀庫且地基不牢,使刀臂或者倒刀缸到主軸端的位置容易變化等等情況,在自動換刀的時候經常由于位置不對出現卡死,撞頭的現象。對機床的損害很大,維修極不方便。因此,手動換刀成為了機床維護中的重點。
通過形成變量表,不僅能夠減少出錯,而且能夠利用注釋快速理順邏輯關系,還能夠迅速找到端口地址,幫助我們進行回路檢查。
要清楚手動換刀的具體過程,以便對程序進行完善和發展,對程序的仔細分析必不可少:
程序1: P15 刀臂和倒刀缸運動塊
P15INI: ACL MANATC ;初始加載標簽(MANATC變量位在PLC**.DEF中定義。為CNC和AUCOL公用內部變量)
IFEQ PEND ; MANATC位等于1時,執行以下的手動操作 ACL DISA7 ; 將DISA7調入累加器即旋開手動允許開關 IFEQ PEND ;若手動開關等于0 則結束 ACL DIPCS8 ;若手動開關為1,將按鍵輸入信號ATC OUT(DIPCS8見圖4)調入累加器 IFNE LOAD P15,P15.A05 ;若按鍵DIPCS8=1(ATC OUT)時候,加載P15.A05段 ACL DIPCS7 ;若按鍵DIPCS8 等0 時候,按鍵輸入信號 ATC IN(DIPCS7見圖4)加載 IFNE LOAD P15,P15.A06 PEND P15.A05:ACL DIPCS8 ;ATC OUT IFNE PEND ;若DIPCS8按鍵等于1(ATC OUT),結束 ACL DIQ102 ;否則將定位缸縮回開關量DIQ102 調入累加器 IFEQ JUMP P15.A10 ;若DIQ102等于0,執行跳轉指令 ACL DIQ104 ;若DIQ102等于1,DIQ104(倒刀缸上位)與 DIQ105非(倒刀缸下位)相與加載進累加器 AND DIQ105 NG IFEQ JUMP P15.A15 ;若相與結果為0,執行跳轉指令 BCLR DUYV10 ;若結果為1,輸出信號倒刀缸上位ATC縮回置0 BSET DUYV09 ; 輸出信號倒刀缸下位ATC伸出=1 JUMP P15END ;執行完后跳到P15END塊中 PEND P15.A06:ACL DIPCS7 ;ATC IN 段 IFNE PEND ;若DIPCS7按鍵輸入信號為1,則結束 ACL DIQ102 IFEQ JUMP P15.A10 ;若定位缸DIQ102 位為0,則跳到 P15.A10塊 ACL DIQ105 AND DIQ104 NG IFEQ JUMP P15.A15 ;若DIQ105 和DIQ104 非相與結果為0則跳到P15.A15塊 BCLR DUYV09 BSET DUYV10 JUMP P15END PEND P15.A10:DMSG 25 ; 顯示第25 號PLC 類報警信息即“SQ103 OFF” JUMP P15END PEND P15.A15:DMSG 26 ;顯示26 號信息即“SQ104 OR SQ105 ERROR” JUMP P15END PEND P15END: LOAD P15,P15INI ;返回P15加載初始點 PEND 程序2: P16 換刀動作塊 P16INI: ACL MANATC DISA7 ;MANATC等于1時候將(刀庫手動允許開關)調入累加器 IFEQ PEND ACL DIPCS6 ;旋轉按鈕按鍵位(DIPCS6見圖4)加載進累加器 IFNE JUMP P16.A05 ;轉到P16.A05程序塊中 ACL DUATC ;若按鍵為0時候,將電機控制位DUATC裝進累加器,若此控制位仍為1,馬上置0,若其為1則結束。 IFNE BCLR DUATC PEND P16.A05:ACL DUATC IFNE PEND ;若電機控制信號為1 那么此塊結束, PAUSE 5 ;否則等待5秒后將控制電機的輸出信號置1 BSET DUATC PEND
注:DI代表外圍數字輸入,DU代表外圍數字輸出,這里,DIP代表面板上按鍵數字輸入,DUL為面板上按鍵數字輸出。
圖4 人機界面上對應按的相關鍵輸入點
先將每一步的邏輯關系依次反映在結構圖上,再分析整塊進程要實現的內容。分析中形成如上圖的流程結構,有助于對冗長的進程塊進行快速的理解。
根據以上分析,換刀過程的步驟就明確了。結合機床在實際換刀中所處的位置,會發現,在現場操作中,容易出現這樣的問題:
(1)當DUYV9(倒刀缸下位刀臂伸出信號)為1時候,應該禁止X,Y,Z軸移動,因為當機床在伸出刀臂后和Y向機床運動方向的間隙就很小了,若此時Y向移動,會和整個刀臂發生接觸,甚至將安裝刀臂的刀庫位置抵變形,如何解決這個問題,這里,有三種可行方法:
①當DUYV9 為1 時,將AUCOL 輸出位DUSAZ,DUSAY,DUSAX(Z、Y、X控制位)置1以禁止其移動;
②當DUYV9為1時,調用CNC位MDPBL使其置1使坐標及主軸保持;
③定義一個信息變量MSG31,在DUYV9位以及坐標移動監控位同時為1的時候將MSG31置1,并將MSG31寫入到P37(見表1)中將其做為產生急停報警的條件,便可以解決手動操作中的這種安全隱患。
(2)另外,在進行手動操作前,主軸位置應該具備什么條件,程序里面并沒有給出,只是要求內部變量MANATC賦值為1就行,這里也出現了問題。因為主軸側有兩個定位鍵,如果主軸未能定位,刀臂在旋轉到主軸側裝刀的時候會和鍵發生碰撞,這是我們非常不想看到的現象,因此在這個操作的時候一定要先執行主軸定位指令,如果不熟悉這段程序和實際動作,后果不堪設想。
總之,PLC控制是站在用戶立場,以用戶需要為出發點,以直接應用于各種工業環境為目標的一種邏輯控制,是一種理論與實際結合的產品。由于PLC出廠程序是依照理論上輸入輸出間的邏輯關系編寫而成,而實際上的機床所處的安裝條件,現場環境,以及操作者的操作方法等有所不同,或者是PLC本身不夠完善,都有可能造成機床故障或是機床安全隱患,對機床PLC有比較深入的研究是解決這些問題的重要條件。
4 結束語
目前,對可編程控制器我國正處于引進、消化、研制的階段,普及可編程控制器技術,大力推廣其應用是當務之急。PLC的發展,在數控技術中的發展中發揮著越來越重要的作用。通過對PLC程序的理解,運用邏輯思維能力逐步診斷是我們很多時候設備故障排除的基礎。在當前工作中,PLC的分析研究是一個薄弱環節。不斷完善對機床的PLC的熟練程度,能有效提高設備維修人員發現并解決故障、了解并優化參數等的能力,促使設備維修工作向前發展。
(審核編輯: 智匯胡妮)
分享