梁 媛 孫建業 祝 輝
(沈陽理工大學遼寧省高速切削工程技術研究中心,遼寧沈陽 110159)
組合機床一般都是采用多軸、多刀、多工序、多面或多工位同時加工的方式,如回轉式多工位組合機床是把工件的多道加工工序分配到各個加工工位上,并且同時從各個方向對工件進行加工,因此組合機床控制系統必須具有多軸組以滿足多軸同時運動的需要,傳統的數控系統采用的都是一種專用的、互不兼容、封閉的體系結構,很難滿足組合機的控制需要。IPC機+PMAC(Programmable Multi-Axis Controller)是一種便于開發的全方位開放式體系結構,PMAC可以通過硬件選擇,參數設置,運動及PLC程序的編寫,實現對組合機床運動的控制。每個PMAC固件可以控制8個軸,這8個軸可以互相聯動完成在一個坐標系中的運動,也可以在各自的坐標系內完成獨立運動,或者選擇多種運動的組合形式。組合機床控制系統使用VB工具在Windows平臺上定制用戶專用界面,通過PMAC提供的動態鏈接庫與上位機之間建立實時、可靠的通訊,以協調整個系統共同完成加工任務。
組合機床控制系統上位機采用工控機(IPC),下位機采用PMAC可編程控制器,PMAC通過標準總線與上位機相連,PMAC的CPU與軸的通訊是通過兩個特殊設計的門陣列IC(集成電路)來實現的。每個IC能夠控制4個模擬輸出通道、4個作為輸入的編碼器反饋通道及4個通道的正負限位及回零信號。該組合機床各個工位采用安川伺服驅動系統及交流伺服電動機作為執行元件進行控制,伺服放大器接收來自PMAC控制器的模擬電壓輸出,通過模數(A/D)轉換器將其轉換為數字信號,經MPU處理,同時通過數模(D/A)轉換器將MPU輸出的數字信號轉換成模擬信號控制電動機轉動,伺服電動機內的光電編碼器作為閉環系統的反饋元件,伺服放大器從編碼器獲取位置反饋信號,并將信號傳送給PMAC卡,實現組合機床的半閉環控制[1]。組合機床控制系統的硬件構建如圖1。
組合機床控制系統的軟件采用模塊化設計,軟件包括上位機的人機界面程序、與下位機的通訊程序、下位機的運動程序及PLC程序。作為控制器,在配置好系統變量的前提下,PMAC通過運動程序、PLC程序等對具體對象施加控制,同時,這些程序還要負責向上位機報告工作狀態[2]。

上位機人機界面為操作者提供了一個直觀的操作環境,在此界面下,系統各功能模塊以菜單和對話框的形式被調用,主要包括系統參數配置、加工參數設置、運動狀態顯示等。PMAC提供了Windows平臺下的驅動程序Pcomm32,可以在 VB編程環境下調用其動態鏈接庫,實現上位機軟件與PMAC之間的通訊,在工程文件下創建一個標準模塊,聲明導入如下函數:
(1)Declare Function OpenPmac Lib“Pcomm32.dll”(Byval Pmac As Long)As Long,該函數指定 DLL(動態鏈接庫)文件的路徑,能夠有效尋址,過程有返回值。
(2)Declare Function ClosePmac Lib“Pcomm32.dll”(Byval Pmac As Long)As Long,此函數與 Open-Pmac配對使用,當程序運行完畢后,關閉打開的通道。
(3)Declare Function PmacGetResponsA Lib“Pcomm32.dll”(Byval As Long,Byval response$ ,Byval dummy As integer,Byval commond$)As Long,發送命令字符串給PMAC,并從緩沖區得到PMAC的反饋。它能處理大多數與PMAC通訊的要求,并總能保證命令字符串與反應字符串相匹配。參數response是指向存儲PMAC反應代碼的字符串緩沖區指針,command是指向所傳送字符串的指針[3-4]。

圖2為組合機床Ⅰ工位加工參數設置界面,以過程1距離設置對話框為例程序代碼如下:

同樣可以定義各加工過程的參數所對應的變量如表1。

表1 參數變量對應表
組合機控制系統每個工位的運動過程編寫在一個運動程序中,每個工位的進給運動定義在一個坐標系內,通過變量設置可完成快進、暫停、工進、暫停、工退、暫停、快退的運動過程,這4個過程的移動距離、速度及暫停時間是由操作者通過圖2的人機界面設置。以下為Ⅰ工位運動程序:



可以通過PLC程序同時或選擇性地啟動各個工位的運動程序,各工位的進給運動在各自的坐標系內同時進行。
PMAC內含了可編程邏輯控制器(PLC)功能,可編寫64個非同步執行的PLC程序(32個已編譯PLC程序和32個未編譯PLC程序),只要被設置為允許運行,PLC程序會一直運行,直至PMAC本身停止。所有的I/O點都以軟件來控制,通過類似匯編語言的指針變量,可以讓用戶按位、字節進行控制。PLC具有強大的邏輯功能判斷能力,執行速度遠超過普通PLC,可編制復雜的邏輯關系[[5]。以下是Ⅰ工位自動狀態下運行的PLC程序:


以上程序執行的運動為:當機床沒有報警、卡盤閉、轉臺落下、各個伺服軸均在回零位置時,按“循環啟動”按鈕,執行自動循環,所選Ⅰ工位主軸電動機轉,伺服電動機執行所選Ⅰ工位運動程序,按照在人機界面中輸入的各個過程的加工參數,完成快進、暫停、工進、暫停、工退、暫停、快退的運動過程,如不需暫停時間設為0,當執行完各個過程運動伺服軸再次回到原位時,循環結束,主軸停止。
開放式數控系統是數控技術發展的必然趨勢,IPC機與嵌入式控制器PMAC組合的數控系統模式,以通用PC機為平臺,以PC機標準插件形式的可編程控制器為核心,雙CPU并行通訊,是一種便于開發的全方位開放式體系結構。本設計依據組合機床的運動特點,利用PMAC強大的運算和處理能力進行數控系統的實時控制,利用PC機實現后臺管理及人機界面編寫等任務完成了控制系統的開發。通過試驗研究表明系統開放程度高、運動軌跡控制精確、通用性好、操作簡單,具有很好的應用效果。
[1]王仁德.機床數控技術[M].沈陽:東北大學出版社,2007.
[2]陳光勝,陶濤,梅雪松.Windows平臺下的軟件化系統研究[J].制造技術與機床,2010(1):74-78.
[3]蘭光明.VC環境下的PMAC數據實時采集與顯示[J].北京機械工業學院學報,2004,19(1):61 -65.
[4]劉彬彬.Visual Basic從入門到精通[M].北京:清華大學出版社,2010.
[5]劉恒娟.基于PMAC的開放式數控系統的研制[J].組合機床與自動化加工技術,2004(10):84-86.