組合機(jī)床專用數(shù)控系統(tǒng)的開(kāi)發(fā)(上)
點(diǎn)擊:1330
A+ A-
所屬頻道:新聞中心
目前數(shù)控系統(tǒng)國(guó)外己占主導(dǎo)地位,主要有德國(guó)的西門子和法國(guó)的NUM公司以及日本法那克公司的系統(tǒng),但開(kāi)放式數(shù)控系統(tǒng)還很少,仍然采用普通數(shù)控機(jī)床的G代碼編程,沒(méi)有適合數(shù)控組合機(jī)加工特點(diǎn)的參數(shù)化自動(dòng)編程功能,而國(guó)內(nèi)大部分為經(jīng)濟(jì)型數(shù)控系統(tǒng),功能簡(jiǎn)單,不能用于數(shù)控組合機(jī)床上。總的說(shuō)來(lái),國(guó)產(chǎn)高檔數(shù)控系統(tǒng)的發(fā)展尚處于起步階段,而數(shù)控組合機(jī)的專用數(shù)控系統(tǒng)目前國(guó)內(nèi)研發(fā)方面還沒(méi)有形成成熟的產(chǎn)品。所以開(kāi)發(fā)一種高柔性、高效率、高可靠性的數(shù)控組合機(jī)的專用數(shù)控系統(tǒng)非常必要。本文所研究的基于PMAC多軸組數(shù)控系統(tǒng)適用于各類加工機(jī)床的數(shù)控系統(tǒng)配套和普通組合機(jī)的數(shù)控改造。
1 組合機(jī)數(shù)控系統(tǒng)的硬件結(jié)構(gòu)
可編程多軸控制器(PMAC)擁有高性能伺服運(yùn)動(dòng)控制器,可通過(guò)靈活的高級(jí)語(yǔ)言控制多軸同時(shí)運(yùn)動(dòng),每一個(gè)軸可放入它自己的坐標(biāo)系從而得到多個(gè)完全獨(dú)立的運(yùn)動(dòng)。結(jié)合多通道組合機(jī)床的特點(diǎn),搭建IPC為上位機(jī)、PMAC運(yùn)動(dòng)控制卡為核心的下位機(jī)的硬件結(jié)構(gòu),將PC機(jī)與PMAC相結(jié)合形成并行雙CPU開(kāi)放式數(shù)控系統(tǒng)的硬件結(jié)構(gòu)。建立一個(gè)基于開(kāi)放式的模塊化、可重構(gòu)、可擴(kuò)充的控制系統(tǒng)結(jié)構(gòu),以增強(qiáng)數(shù)控系統(tǒng)的柔性功能,快速有效地響應(yīng)新的加工需求。組合機(jī)專用數(shù)控系統(tǒng)的硬件結(jié)構(gòu)采用主從結(jié)構(gòu),工控機(jī)的CPU作為主CPU,運(yùn)動(dòng)控制卡上的DSP作為從CPU。工控機(jī)的主CPU作為上位機(jī)對(duì)用戶輸入的參數(shù)進(jìn)行響應(yīng)與處理,多軸運(yùn)動(dòng)控制卡上的DSP作為下位機(jī)的CPU進(jìn)行底層的速度與軌跡控制。組合機(jī)數(shù)控系統(tǒng)的硬件結(jié)構(gòu)如圖所示1。
圖1 組合機(jī)數(shù)控系統(tǒng)的硬件結(jié)構(gòu)
2 組合機(jī)數(shù)控系統(tǒng)軟件結(jié)構(gòu)
2.1系統(tǒng)軟件結(jié)構(gòu)
組合機(jī)數(shù)控系統(tǒng)軟件以Windows為系統(tǒng)平臺(tái),通過(guò)線程調(diào)度機(jī)制可方便地實(shí)現(xiàn)多任務(wù)。在線程調(diào)度中,每一個(gè)線程的優(yōu)先級(jí)不同,優(yōu)先級(jí)高的線程優(yōu)先運(yùn)行。急停、機(jī)械限位、硬件故障等線程優(yōu)先級(jí)最高,它們首先取得CPU的運(yùn)行時(shí)間。坐標(biāo)運(yùn)動(dòng)、CRT顯示、加工狀態(tài)的動(dòng)態(tài)顯示、加工軌跡模擬仿真等線程優(yōu)先級(jí)依次降低。但另一方面,Windows是基于消息機(jī)制的,其實(shí)時(shí)性較差,不能滿足一些故障中斷、插補(bǔ)運(yùn)算等實(shí)時(shí)性任務(wù),為此組合機(jī)數(shù)控系統(tǒng)采用可編程多軸運(yùn)動(dòng)控制卡實(shí)現(xiàn)各種實(shí)時(shí)陛控制。基于PMAC的組合機(jī)專用數(shù)控系統(tǒng)的軟件體系結(jié)構(gòu)采用圖2所示的體系結(jié)構(gòu)。
2.2人機(jī)界面及其通信協(xié)議
PMAC軟件的開(kāi)放性,支持各種高級(jí)語(yǔ)言,用戶可使用VB、VC、Delphi等在Windows軟件平臺(tái)上定制用戶專用界面,在數(shù)控語(yǔ)言上對(duì)用戶開(kāi)放,不僅支持用戶直接調(diào)用現(xiàn)有的直線、圓弧、樣條曲線的插補(bǔ)指令,而且還允許用戶自定義G代碼、M代碼、T代碼、D代碼,實(shí)現(xiàn)以往數(shù)控語(yǔ)言所不能完成的功能。
圖2 組合機(jī)專用數(shù)控系統(tǒng)的軟件結(jié)構(gòu)
PMAC有4種變量,變量由一個(gè)字母(I,M,P或Q)后面接數(shù)字0~1023(Non Turbo)組成,不同類型的變量占用各自的地址。I變量決定某個(gè)給定功能的控制特性,被預(yù)先定義并放在內(nèi)存固定的位置上,有固定的含義。M變量可直接存取一些重要的內(nèi)存和I/O。P、Q都是通用用戶變量,區(qū)別是P變量為全局變量,Q變量為坐標(biāo)系變量。表1為常用的一些變量。
表1 PMAC的一些常用變量
該系統(tǒng)采用PMAC—PCI八軸運(yùn)動(dòng)控制卡,工控機(jī)為上位機(jī),采用總線方式通訊,以Windows xP操作系統(tǒng)為軟件開(kāi)發(fā)平臺(tái),采用Visual Basic6.0可視化編程語(yǔ)言和模塊化的編程方法為開(kāi)發(fā)工具,建立便于用戶操作的友好的人機(jī)交互接口界面。在由Delta Tau公司提供的Pcomm32通信函數(shù)庫(kù)及其相應(yīng)的驅(qū)動(dòng)程序、Pewin32調(diào)試程序支持下,調(diào)用PMAC的動(dòng)態(tài)鏈接庫(kù)Pcomm32.dll,實(shí)現(xiàn)對(duì)PMAC硬件操作。
在VB中調(diào)用Pcommon32通訊函數(shù)首先必須在VB中聲明函數(shù),如:
Declare Function PmacSelect Lib”Pcomm32.dll”(ByVal hWnd As Long)As Long
Declare Function 0penPmacDevice Lib”Pcomm32.dll”(ByVal pmac As Long)As Long
Declare Function PmacGetResponseA Lib”Peomm32.dll”(ByVal pmae As Long,ByVal response$,ByVal dummy As Integer,ByVal con—string S)As Long
Declare Function ClosePmacDevice Lib”Pcomm32 dll”(ByVal pmac As Long)As Long
利用VB建立的組合機(jī)數(shù)控系統(tǒng)的主界面如圖3。主要顯示運(yùn)行模式、回零狀態(tài)、報(bào)警、命令速度、實(shí)際速度、跟隨誤差,進(jìn)行機(jī)床參數(shù)、各工位參數(shù)設(shè)置,并顯示當(dāng)前加工對(duì)應(yīng)的程序段等。該系統(tǒng)有八個(gè)工位,其中有七個(gè)工位加工,一個(gè)工位用來(lái)裝卸工件。
圖3 組合機(jī)數(shù)控系統(tǒng)的主界面
(審核編輯: 智匯小新)
分享