基于Modbus協(xié)議的數(shù)控排鉆伺服定位系統(tǒng)
點擊:1443
A+ A-
所屬頻道:新聞中心
0 引言
數(shù)控鉆床是實現(xiàn)工件上各種類型孔自動定位和鉆削的高精度機床,廣泛應(yīng)用于工業(yè)和電子行業(yè)的零件加工,其數(shù)控系統(tǒng)是機床的核心,一般多采用伺服系統(tǒng)來實現(xiàn)精確定位。伺服系統(tǒng)融合了電機、計算機、電力電子、自動控制、精密機械和新材料等多種高新技術(shù),是裝備制造、工業(yè)自動化、辦公自動化和家庭生活自動化等不可缺少的重要技術(shù)。目前,國內(nèi)的計算機數(shù)字控制(computer numerical control,CNC)數(shù)控鉆床大多為進(jìn)口設(shè)備,每次定位只能鉆單個孔,而木工機械行業(yè)中經(jīng)常需要鉆大量的排孔,致使CNC數(shù)控鉆床定位次數(shù)大大增加,無法體現(xiàn)效率,而且其價格昂貴,無法普及。
基于此問題,筆者采用現(xiàn)代伺服系統(tǒng)設(shè)計了新型數(shù)控排鉆。采用交流伺服驅(qū)動器與可編程邏輯控制器(programmable logic controller,PLC)作為控制系統(tǒng)的核心,結(jié)合VB編程的上位機人機界面,同時使用4臺伺服電機,依次分布于數(shù)控排鉆的運動導(dǎo)軌(即x軸)上,每臺伺服電機分別拖動1臺鉆孔定位器來實現(xiàn)定位。這樣的設(shè)計每次最多可實現(xiàn)4個孔的同時定位,效率較高。
1 系統(tǒng)設(shè)計
該系統(tǒng)采用1臺觸摸屏電腦作為上位機,上位機提供VB程序操作界面,并發(fā)送定位目標(biāo)數(shù)據(jù)到下位機PLC中;PLC根據(jù)當(dāng)前位置與目標(biāo)位置的關(guān)系再經(jīng)過一系列計算,把定位距離轉(zhuǎn)換為精確脈沖數(shù)發(fā)送給伺服驅(qū)動器;伺服驅(qū)動器實時響應(yīng)PLC所發(fā)脈沖,配合自增益調(diào)整采用SVPWM 控制方式驅(qū)動伺服電機;伺服電機通過蝸輪蝸桿減速器帶動鉆孔定位器做直線運動,實現(xiàn)x軸準(zhǔn)確定位。該定位方式具有響應(yīng)速度快、定位精度高、動態(tài)特性好等優(yōu)點。伺服驅(qū)動器提供位置、速度、扭矩3種基本控制模式,本設(shè)計采用位置模式,脈沖列+方向控制方式。另外x軸運動方向上還安裝了4個光電傳感器供伺服電機做原點回歸使用。PLC一方面發(fā)送脈沖控制x軸定位;另一方面根據(jù)數(shù)控鉆床控制要求,控制各執(zhí)行繼電器動作。上位機與PLC之間使用RS232接口進(jìn)行通信,采用Modbus通信協(xié)議。
1.1 硬件設(shè)計
1)上位機。上位機采用宇聯(lián)公司QC-156工業(yè)級觸摸屏電腦,操作界面采用VB編程語言編寫。VB是一種結(jié)構(gòu)化面向?qū)ο蟮某绦蛟O(shè)計語言,采用事件驅(qū)動的程序機制,可高效、快速地開發(fā)Windows環(huán)境下功能強大、圖形界面豐富的應(yīng)用軟件系統(tǒng)。上位機主要為用戶提供人性化操作界面,設(shè)定各種運行參數(shù),實時顯示鉆孔定位器的位置與運行速度,接收定位目標(biāo)位置并發(fā)送給PLC。
2)下位機。下位機采用臺達(dá)DVP-40EH型PLC,可同時支持2組AB相200 kHz脈沖輸出(Y0,Y1)(Y2,Y3),與2點200kHz脈沖輸出(Y4,Y6)。內(nèi)置RS-232與RS-485通訊端口,兼容Modbus ASCII/RTU通訊協(xié)議,且內(nèi)置4組硬件高速計數(shù)器,可同時控制4臺伺服電機實現(xiàn)定位。
3)伺服驅(qū)動器。采用臺達(dá)ASDA-B2型伺服驅(qū)動器,內(nèi)置高性能32位DSP芯片,配合增益自動調(diào)整技術(shù),對伺服電機進(jìn)行閉環(huán)控制,對其各種信息做出快速、準(zhǔn)確反應(yīng),處理隨時變化的信號。
4)臺達(dá)伺服電機。本設(shè)計要求快速、準(zhǔn)確地實現(xiàn)控制目標(biāo),決定配套采用臺達(dá)ECMA C20807系列交流伺服系統(tǒng)。此系列伺服電機配合臺達(dá)B2型伺服驅(qū)動器組成的伺服系統(tǒng),已廣泛應(yīng)用于數(shù)控機床、機器人、自動化生產(chǎn)線等各種有精確調(diào)速、定位要求的場合。
1.2 伺服系統(tǒng)接線
伺服驅(qū)動器的位置控制指令脈沖有3 種類型,分別是:正向脈沖+反向脈沖,脈沖+方向,相位相差90°的AB兩相脈沖 。本文選用脈沖+方向方式,伺服驅(qū)動器的CN1接口中的Pulse 41號引腳接收PLC的脈沖信號,Sign 37號引腳接收方向信號。PLC的輸出端口Y0,Y1構(gòu)成一組脈沖控制信號,總共4組,分別控制4臺伺服電機運行。伺服電機的轉(zhuǎn)速南Y0口脈沖發(fā)送頻率決定,移動距離由Y0口發(fā)送脈沖的個數(shù)決定。
2 上位機與PLC之間的通信實現(xiàn)
上位機與臺達(dá)PLC之間采用Modbus通信協(xié)議。Modbus協(xié)議具有以下優(yōu)點:開放性好、易實現(xiàn)、擴(kuò)展性好、幀格式簡單、可靠性高,可支持多種電氣接口,可在各種介質(zhì)上傳送,如雙絞線、光纖、無線等 ,因而具有廣闊的應(yīng)用前景,被越來越多的設(shè)備廠商所支持。不同廠商生產(chǎn)的控制設(shè)備可以連成Modbus工業(yè)網(wǎng)絡(luò)。
Modbus的實質(zhì)是一種主從應(yīng)答的通訊協(xié)議,其通訊遵循以下過程:主機準(zhǔn)備請求并向從機發(fā)送請求;從機接收主機請求后進(jìn)行校驗,然后處理,并向主機發(fā)送回復(fù);如果出現(xiàn)差錯,從機將返回一個異常的功能碼。
在Modbus系統(tǒng)中有2種傳輸模式可選擇,一種是美國信息交換碼(ASCII),另一種是遠(yuǎn)程終端單元(remote terminal unit,RTU)。ASCII采用的格式和校驗相對簡單,本設(shè)計采用ASCII格式,LRC校驗。
VB與臺達(dá)PLC通訊的基本流程。上位機讀PLC中相應(yīng)數(shù)據(jù)寄存器的數(shù)值時,應(yīng)輸入正確的寄存器號,并按照通訊協(xié)議生成正確的發(fā)送字符串,觸發(fā)MSComm控件,在其OnComm事件中調(diào)用公用模塊中的Public Sub MSComml_OnComm10過程,對所獲取字符串進(jìn)行處理及顯示。向PLC中的數(shù)據(jù)寄存器寫人數(shù)值操作時,應(yīng)輸入正確的寄存器號與數(shù)值,生成發(fā)送字符串后觸發(fā)MSComm控件的OnComm事件,向PLC中寫入數(shù)值。
3 防碰撞算法
由于4個伺服定位器在數(shù)控鉆床X軸方向上依次分布,運動過程中要防止它們相互間的碰撞。所以在設(shè)計過程中采取了防碰撞保護(hù)措施。首先,在 軸導(dǎo)軌的下方依次安裝4個光電接近傳感器做定位校準(zhǔn)使用,將這4個光電傳感器依次接到PLC的4個輸入點上,作為伺服定位系統(tǒng)的零點傳感器。當(dāng)伺服系統(tǒng)每次開機運行時,使用dzrn指令可使4臺伺服定位器分別移動到4個光電傳感器的位置,然后把此位置換算成脈沖數(shù),賦給伺服驅(qū)動器里的脈沖計數(shù)器作為定位初值。當(dāng)伺服定位器移動時,脈沖計數(shù)器會根據(jù)PLC所發(fā)脈沖數(shù)自動增減。根據(jù)脈沖計數(shù)器的數(shù)值即可知道伺服定位器的精確位置,再將4個脈沖計數(shù)器的數(shù)值經(jīng)過一定的換算關(guān)系,轉(zhuǎn)換為 軸導(dǎo)軌上4個伺服定位器的實際位置,即可在運行過程中不斷監(jiān)視4個定位器的位置差。在程序中設(shè)定4臺伺服定位器的防碰撞安全距離,一旦監(jiān)視到伺服定位器之間的距離差小于或等于防碰撞安全距離,則立即停止PLC脈沖輸出,使伺服電機停止轉(zhuǎn)動,從而防止碰撞發(fā)生。
4 結(jié)語
本文通過臺達(dá)交流伺服控制器、PLC及其t位機的組合來完成一個數(shù)控排鉆的運動控制實現(xiàn),上位機與PLC采用基于Modbus協(xié)議的串口通信實現(xiàn)。由于采用了PLC與上位機人機界面,可采用不同的控制算法,對系統(tǒng)采用不同的控制方式,控制實現(xiàn)上有較大的靈活性。
經(jīng)過一段時問的使用,該數(shù)控排鉆伺服定位系統(tǒng)運行良好,在定位精度、控制可靠性、運行穩(wěn)定性方面效果較好。
(審核編輯: 智匯張瑜)
分享