設(shè)計(jì)開發(fā)上位機(jī)軟件的目的是方便用戶管理、操作和觀察界面,實(shí)現(xiàn)對(duì)數(shù)控加工中心 機(jī)床的管理與安全操作[3()]。上位機(jī)系統(tǒng)軟件基于Windows操作系統(tǒng)平臺(tái),采用Microsoft Visual Basic 6.0開發(fā)15。機(jī)床動(dòng)作命令必須通過調(diào)用動(dòng)態(tài)鏈接庫中的庫函數(shù)來實(shí)現(xiàn)對(duì)PMAC 卡的控制,此功能主要由PCOMM32.DLL完成,它是標(biāo)準(zhǔn)的Windows動(dòng)態(tài)鏈接庫[29]。 PCOMM32PRO在VB6.0中的加載步驟如下:
1.創(chuàng)建一個(gè)通用模塊。
2.聲明導(dǎo)入函數(shù):
Declare Function OpenPmacDevice Lib “Pcomm32.dll”(ByVal pmac As Long) As Long。
函數(shù)原型:
BOOL OpenPmacDevice(DWORD dwDevice) 〇
調(diào)用方式:
Dim Tmp_Val As Long
Tmp_Val=OpenPmacDevice (0)
通過如下代碼可以實(shí)現(xiàn)運(yùn)動(dòng)鏈接庫的定義:
Type PmacMsg
newline As Boolean Msg As String End Type
’PMAC.DLL Functions
Declare Function PmacSelect Lib nPcomm32.dlln (ByVal hwnd As Long) As Long
Declare Function OpenPmacDevice Lib nPcomm32.dir (ByVal pmac As Long) As Long
Declare Function PmacConfisure Lib nPcomm32.dlln (BvVal hwnd As Lons. BvVal pmac As Long) As Long
Declare Function PmacGetResponseA Lib nPcomm32.dlln (ByVal pmac As Long, ByVal responses, ByVal dummy As Integer, ByVal com_string$) As Long
Declare Function PmacFlush Lib "Pcomm32.dHn (ByVal pmac As Long) As Integer
Declare Function PmacGetPmacType Lib nPcomm32.dlln (ByVal pmac As Long) As Integer
Declare Function ClosePmacDevice Lib nPcomm32.dir (ByVal pmac As Long) As Long
Declare Function PmacDownloadA Lib nPcomm32.dlln (ByVal pmac As Long, ByVal dummy As Long, ByVal dummy As Long, ByVal dummy As Long, ByVal fname$, ByVal macro%, ByVal map%, ByVal log%, ByVal do_pmacDownloada%) As Integer
DeviceNumber = Pmac Select (hWnd)
OpenPmacDevice (DeviceNumber) ClosePmacDevice (DeviceNumber)
PmacGetResponseA (DeviceNumber, response, 255, n%100n)
為了使PMAC卡可以響應(yīng)上位機(jī)軟件的命令,還需要對(duì)PMAC卡進(jìn)行初始化,以確 定硬件地址、線程的開啟和將站號(hào)、通訊方式等信息在通訊測(cè)試成功后寫入window的注 冊(cè)表,完成PMAC在上位機(jī)上注冊(cè)的功能,以便我們換了通訊方式類型的話,下次開啟 PEWIN32PRO時(shí)自動(dòng)的與卡進(jìn)行通訊[29]。初始化通常有以下兩種類型:
1.通過PEWIN32PRO軟件來注冊(cè)。
2•使用PCOMM32PRO中的函數(shù)。
函數(shù)原型:Long Pmac Select (HWND hwnd)
在調(diào)用完成時(shí)會(huì)彈出一個(gè)初始化對(duì)話框如圖3-2所示。
初始化函數(shù)調(diào)用過程代碼如下:
OpenRuntimeLink() ; // 調(diào)用 OpenPmacDevice〇
dwDevice = PmacSelect(NULL); // 調(diào)用 PmacSelect〇
if (dwDevice >= 0 && dwDevice <= 7)
{ if (OpenPmacDevice(dwDevice))
{ m_bDriverOpen = 1;
return true; // return TRUE unless you set the focus to a control
} }
Close〇; //關(guān)閉
PmacGetResponse(dwDevice,buf,255,n#lpn);
AfxMessageBox(buf);
由于PComm32PRO的設(shè)計(jì)理念是基于線程安全的,所以對(duì)數(shù)控加工中心機(jī)床的命令 在與PMAC卡通訊時(shí)要求進(jìn)行線程保護(hù)操作,例如一個(gè)應(yīng)用程序讀取I變量的操作進(jìn)行時(shí), 就不可以同時(shí)允許另外一個(gè)應(yīng)用程序也讀取相同的變量。PComm32PRO是通過LockPmac ()和ReleasePmac()兩個(gè)函數(shù)來實(shí)現(xiàn)線程的保護(hù)工作的。當(dāng)進(jìn)行某一操作時(shí)開啟LockPmac ()以保護(hù)線程不被其它程序打擾,當(dāng)操作結(jié)束時(shí)調(diào)用RdeasePmac ()關(guān)閉保護(hù)。
本文采摘自“基于PMAC的加工中心開放式數(shù)控系統(tǒng)研究”,因?yàn)榫庉嬂щy導(dǎo)致有些函數(shù)、表格、圖片、內(nèi)容無法顯示,有需要者可以在網(wǎng)絡(luò)中查找相關(guān)文章!
本文由伯特利數(shù)控整理發(fā)表文章均來自網(wǎng)絡(luò)僅供學(xué)習(xí)參考,轉(zhuǎn)載請(qǐng)注明!
2024-11
本文以組合式六角亭模型為實(shí)例,分析工藝難點(diǎn)與加工可行性,指出該模型的加工難點(diǎn)是模型形狀不規(guī)則和整體剛性差,并通過設(shè)計(jì)新的工藝方案解決加工難點(diǎn),完成了模型整體的加工。新的加工工藝有助于提高加工效率和精度,為五軸數(shù)控加工提供了一個(gè)典型案例,對(duì)于五軸加工中心數(shù)控加工也具有指導(dǎo)作用和重要… [了解更多]
2024-11
宇匠數(shù)控 備注:為保證文章的完整度,本文核心內(nèi)容由PDF格式顯示,如未有顯示請(qǐng)刷新或轉(zhuǎn)換瀏覽器嘗試,手機(jī)瀏覽可能無法正常使用!本文摘要:通過對(duì)混聯(lián)五軸加工中心自適應(yīng)深度學(xué)習(xí)控制方法的 研 究,可 知 此 方 法 的 創(chuàng) 新 之 處 在 于:1)建 立 了 機(jī) 床 的 運(yùn) 動(dòng) 學(xué) … [了解更多]
2024-11
在機(jī)測(cè)量技術(shù)由于其成本低、檢測(cè)效率高、無需二次裝夾等優(yōu)勢(shì)被廣泛用于零件加工測(cè)量當(dāng)中,使得五軸加工中心和五軸鉆攻中心,同時(shí)又兼具測(cè)量功能。在機(jī)測(cè)量系統(tǒng)的構(gòu)成如圖1所示,硬件部分主要是由高精度探頭、信號(hào)接收器、機(jī)床整個(gè)本體,軟件部分由機(jī)床控制系統(tǒng)、測(cè)量軟件等組成[8]。待零件加工完成… [了解更多]
2024-11
?加工精度是影響機(jī)床性能和產(chǎn)品質(zhì)量的主要難題,也是制約國(guó)家精密制造能力的重要因素。本文以五軸加工中心為對(duì)象,針對(duì)提升機(jī)床精度進(jìn)行了研究。并且隨著科技的發(fā)展,精密的儀器和零件在生產(chǎn)實(shí)踐中占據(jù)的分量逐漸增加,在數(shù)控機(jī)床這種精密機(jī)器精度不斷提高的同時(shí),必須控制內(nèi)外界環(huán)境的隨機(jī)影響因素在… [了解更多]