用單片機(jī)實(shí)現(xiàn)的電機(jī)速度和位置測(cè)量與控制
肖本賢 (合肥工業(yè)大學(xué)230009)
【摘 要】介紹8098單片機(jī)用于電機(jī)速度和位置的反饋測(cè)量、控制的原理及方法,且對(duì)測(cè)量精度與光柵信號(hào)的抗干擾措施作了分析,并給出了實(shí)際使用中的線路及位置調(diào)節(jié)器的設(shè)計(jì)。
1 引 言
現(xiàn)代工業(yè)技術(shù)的發(fā)展,特別是近年來的cnc技術(shù)的發(fā)展及應(yīng)用,有速度和位置控制的要求越來越多。在cnc系統(tǒng)中,位置控制是決定其最終性能的關(guān)鍵技術(shù),也是數(shù)控技術(shù)開發(fā)中難點(diǎn)所在。本文結(jié)合我所研制的yk8320銑齒機(jī)數(shù)控系統(tǒng),在該系統(tǒng)中采用
了三臺(tái)直流伺服電機(jī),其型號(hào)為b8—5,即o.8kw,反饋元件僅安裝有脈沖編碼器。因此cnc系統(tǒng)不僅要實(shí)現(xiàn)位置計(jì)數(shù)與控制,還要給出速度反饋電壓,供伺服單元使用。為了提高伺服電機(jī)的調(diào)速與伺服性能。反饋信號(hào)的準(zhǔn)確檢測(cè)、實(shí)時(shí)快速控制是穩(wěn)定性與精度的保證與前提,本文針對(duì)僅帶有光碼盤作為檢測(cè)器的這類伺服系統(tǒng),介紹與之相適應(yīng)
的測(cè)速與位置控制方法。為實(shí)現(xiàn)電機(jī)的運(yùn)動(dòng),控制部分采用以單片機(jī)為核心,配以數(shù)模轉(zhuǎn)換電路、計(jì)數(shù)電路、接口輔助電路等,重點(diǎn)介紹與速度位置檢測(cè)相關(guān)電路的設(shè)計(jì)。由于8098單片機(jī)內(nèi)部有16位數(shù)據(jù)總線和8位地址總線,能把寄存器算術(shù)邏輯運(yùn)算單元ralu與256字節(jié)的寄存器緊密地聯(lián)系起來,故具有高速度和16位高精度控制的能力,且有多級(jí)中斷,從而可提高速度位置控制的實(shí)時(shí)性。測(cè)速方法采用軟件m/t法,位置環(huán)是由單片機(jī)進(jìn)行直接數(shù)字控制。為了保證位置環(huán)的動(dòng)態(tài)特性與穩(wěn)態(tài)特性,適應(yīng)快速跟蹤曲線能力,數(shù)字位置環(huán)的控制策略采用變結(jié)構(gòu)控制,以滿足高速、高精度加工要求。
2測(cè)量系統(tǒng)的硬件線路
在數(shù)控系統(tǒng)和工業(yè)機(jī)器人控制系統(tǒng)中,光電編碼器是作為閉環(huán)控制的一個(gè)主要反饋
現(xiàn)高精度的數(shù)字測(cè)量。
光電測(cè)速的基本原理是,光碼盤每轉(zhuǎn)一轉(zhuǎn)輸出的脈沖數(shù)一定,隨著電動(dòng)機(jī)轉(zhuǎn)速和輸出脈沖頻率的不同,頻率與轉(zhuǎn)速成正比,能測(cè)量其頻率,通過軟件計(jì)算就能得到速度,鑒相電路還能同時(shí)反映實(shí)際轉(zhuǎn)速的方向。
設(shè)電機(jī)轉(zhuǎn)速為,n,每轉(zhuǎn)一轉(zhuǎn)光碼盤發(fā)出k個(gè)脈沖,設(shè)定一個(gè)標(biāo)準(zhǔn)頻率,f0(f0=fcp=2mhz),在采樣周期tms內(nèi)采樣到標(biāo)準(zhǔn)脈沖n個(gè)。電機(jī)脈沖m個(gè),則有
一般,f0》f,則m《n,這樣在丁內(nèi)采樣到整數(shù)個(gè)電機(jī)脈沖m,則由標(biāo)準(zhǔn)頻率f0采樣引起的量化誤差可忽略。在低速段為保證每采樣周期得到整個(gè)脈沖數(shù),則每轉(zhuǎn)脈沖數(shù)越多越好,測(cè)速越精確,一是通過倍頻來提高,二是通過加長(zhǎng)低速段的采樣周期丁。如圖1鑒向倍頻線路的輸出1y、2y直接接到8253的clkl和clk2端,clk0用于標(biāo)準(zhǔn)時(shí)鐘fcp的計(jì)數(shù)。
4位置調(diào)節(jié)器的設(shè)計(jì)
圖2所示為一由8098單片機(jī)作位置控制器的原理框圖。從圖中可以看出,該閉環(huán)控制系統(tǒng)硬件主要由兩部分組成,一是單片機(jī)及其計(jì)數(shù)、d/a等接口電路組成的位置控制器及測(cè)速單元。二是伺服驅(qū)動(dòng)裝置。單片機(jī)在位置環(huán)中作為一個(gè)實(shí)時(shí)控制器主要處理三種外部信號(hào),一是接收來自上位機(jī)的命令信號(hào),即給定的位置、速度及其方向信號(hào),而上位機(jī)即cnc系統(tǒng)的插補(bǔ)周期為6ms,本系統(tǒng)位置調(diào)節(jié)為3ms,因此系統(tǒng)每6ms與cnc通信一次,并將所接收的位置指令值除以2,作為每次中斷調(diào)整的位置指令值。且上位機(jī)以中斷方式傳送,中斷請(qǐng)求信號(hào)是通過8098的外部中斷輸入端extlnt送入的。二是從電機(jī)的光電編碼器那里得到的位置反饋信號(hào),三路分別是正向4f+反向4f-基準(zhǔn)脈沖,f0信號(hào),分別由8253可逆計(jì)數(shù)器計(jì)數(shù),單片機(jī)從這三個(gè)信號(hào)中可以算出電機(jī)的實(shí)際位置、速度及其方向信號(hào),以確定電機(jī)離給定位置的偏差值的大小和電機(jī)應(yīng)運(yùn)行的速度、方向等。三是單片機(jī)確定了輸出電壓的大小和方向后,通過d/a轉(zhuǎn)換接口,向伺服驅(qū)動(dòng)單元輸出一個(gè)帶有極性的模擬量的控制電壓vcu。和一個(gè)帶有極性的速度反饋電壓tsa,在系統(tǒng)中兩個(gè)d/a芯片為12位dacl210,采用雙極性輸出模式,vcmd給定速度信號(hào)每3ms由位置環(huán)調(diào)整一次,而速度反饋信號(hào)tsa每6ms由m/t法重新計(jì)算調(diào)整一次,當(dāng)
速度低時(shí),6ms定時(shí)中斷增至12ms定時(shí)中斷。
從圖2可見,位置控制環(huán)節(jié)是利用可逆計(jì)數(shù)器,實(shí)時(shí)采樣計(jì)算位置跟蹤誤差 |