1、概述
作為基于PC機(jī)的上位控制單元,運(yùn)動控制卡在專機(jī)系統(tǒng)的開發(fā)過程中,具有更大的靈活性和開放性。使得用戶能在短期內(nèi)開發(fā)出功能強(qiáng)大的運(yùn)動控制系統(tǒng)。正因?yàn)橐陨系奶攸c(diǎn),專業(yè)運(yùn)動控制卡不僅在機(jī)床行業(yè)得到大量推廣使用,而且在在許多小型專機(jī)系統(tǒng)中也得到廣泛地應(yīng)用。本文將以步進(jìn)機(jī)電公司MPC01系列運(yùn)動控制卡為例,介紹單軸運(yùn)動控制卡在數(shù)控沖床進(jìn)給系統(tǒng)中應(yīng)用。
2、數(shù)控沖床運(yùn)動控制系統(tǒng)
(1) 系統(tǒng)執(zhí)行機(jī)構(gòu)及上位控制器: 在數(shù)控沖床的單軸送料系統(tǒng)中,要求執(zhí)行電機(jī)的空載響應(yīng)時(shí)間在40—60ms以內(nèi)。而步進(jìn)電機(jī)的響應(yīng)時(shí)間(一般在200ms左右)不能滿足該系統(tǒng)快速響應(yīng)的要求,故本系統(tǒng)選用松下公司交流伺服電機(jī)MSMA750W和DMC301A分別作為執(zhí)行電機(jī)和上位控制器。 下面為該運(yùn)動控制系統(tǒng)電路接線圖: DMC301A與MINASA系列的接線圖
(2) 系統(tǒng)軟件控制部分 該系統(tǒng)軟件采用VB來進(jìn)行編程。由于MPC01運(yùn)動控制卡配備了功能強(qiáng)大的動態(tài)鏈接庫(DLL),用戶可以很快在Windows系統(tǒng)環(huán)境下開發(fā)出自己的運(yùn)動控制系統(tǒng)。而且針對Win的多任務(wù)機(jī)制,MPC01運(yùn)動控制卡采用了虛擬設(shè)備驅(qū)動(VXD)技術(shù),很好地解決了Win環(huán)境下的控制系統(tǒng)的實(shí)時(shí)性問題。在程序進(jìn)行初始化時(shí),利用聲明模塊(MPC01。BAS),以頭文件的形式將動態(tài)鏈接庫進(jìn)行鏈接后,用戶就可以象調(diào)用Windows內(nèi)部函數(shù)一樣來調(diào)用板卡的運(yùn)動控制函數(shù)。 在沖床的工作過程中,要求機(jī)床滑塊升起后,伺服送料機(jī)構(gòu)才能開始進(jìn)行送料,而在滑塊落下前,送料機(jī)構(gòu)必須完成定位過程。所以要求該系統(tǒng)的軟件部分必須使機(jī)床的滑塊與送料機(jī)構(gòu)之間的動作協(xié)調(diào)一致。該系統(tǒng)利用MPC01卡的狀態(tài)查詢函數(shù)來判斷沖床滑塊的位置,來決定是否發(fā)命令給伺服電機(jī)進(jìn)行進(jìn)給運(yùn)動。從而達(dá)到使滑塊和送料機(jī)構(gòu)之間的動作協(xié)調(diào)一致。 流程圖 以下為進(jìn)給系統(tǒng)的運(yùn)動控制程序。 Private Sub Timer2_Timer() Dim ch_status As Long Dim a, b As Long ch_status = check_status(1) /利用check_status函數(shù)讀取沖床原點(diǎn)開關(guān)的狀態(tài)/ a = 4 b = a And ch_status /判斷原點(diǎn)開關(guān)是否閉合/ If b = 4 Then /如果原點(diǎn)開關(guān)閉合/ set_conspeed 1, 100000 /調(diào)用速度設(shè)置函數(shù)set_conspeed來設(shè)置伺服電機(jī)的運(yùn)行速度/ con_pmove 1,Mdis* 835.8978246155 /調(diào)用點(diǎn)位運(yùn)動函數(shù)con_pmove來設(shè)置伺服電機(jī)的運(yùn)轉(zhuǎn)方向和運(yùn)行距離/ End If End Sub
3、結(jié)束語 本系統(tǒng)在采用了運(yùn)動控制卡和伺服進(jìn)給系統(tǒng)后,有效地解決數(shù)控沖床進(jìn)給系統(tǒng)高精度定位要求和高速啟動的要求,在非常短的時(shí)間內(nèi)開發(fā)出了功能完善的用戶程序,滿足了沖床應(yīng)用的需要。
|