資源描述:
《基于單片機(jī)的步進(jìn)電機(jī)細(xì)分驅(qū)動系統(tǒng)設(shè)計(jì)》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、基于單片機(jī)的步進(jìn)電機(jī)細(xì)分驅(qū)動系統(tǒng)設(shè)計(jì) 摘要:為了優(yōu)化步進(jìn)電機(jī)的控制性能,使其具有更高的定位精度、更小的低速振動,更大的扭矩輸出,本文設(shè)計(jì)了基于AT89C52單片機(jī)的步進(jìn)電機(jī)細(xì)分驅(qū)動系統(tǒng)。通過對步進(jìn)電機(jī)驅(qū)動原理進(jìn)行詳細(xì)分析,根據(jù)此原理完成系統(tǒng)的硬件設(shè)計(jì)和軟件設(shè)計(jì)。本文最后對設(shè)計(jì)的系統(tǒng)進(jìn)行實(shí)驗(yàn),結(jié)果表明該驅(qū)動系統(tǒng)具有控制精度高、低頻運(yùn)行電機(jī)振動小等優(yōu)點(diǎn)。 關(guān)鍵詞:步進(jìn)電機(jī);AT89C52單片機(jī);電機(jī)驅(qū)動 DOI:10.16640/j.cnki.37-1222/t.2017.06.136 0引言 步進(jìn)電機(jī)也被稱為脈沖電機(jī),它是以控制器發(fā)出的脈沖信號作為驅(qū)動的運(yùn)動元件。在不超過電機(jī)額定功
2、率下,步進(jìn)電機(jī)運(yùn)動的位置和速度只與脈沖數(shù)和脈沖頻率有關(guān),不會受其它因素影響,只要給步進(jìn)電機(jī)一個(gè)脈沖信號,它就會轉(zhuǎn)動一個(gè)固定角度[1-2]。相對于其他的控制方式,基于細(xì)分的步進(jìn)電機(jī)驅(qū)動方案可以使電機(jī)具有更高的定位精度、更小的低速振動以及更大的扭矩輸出,因此得到廣泛應(yīng)用?! ?步進(jìn)電機(jī)細(xì)分驅(qū)動的原理 步進(jìn)電機(jī)控制原理如圖1所示(這里都是以兩相混和式步進(jìn)電機(jī)為控制對象),控制轉(zhuǎn)子旋轉(zhuǎn)主要是通過控制各相繞組的電流大小使繞組合成磁勢的大小和方向發(fā)生變化[3]。 常見的步進(jìn)電機(jī)轉(zhuǎn)子齒數(shù)一般為z=50,電機(jī)磁極對數(shù)為2p=2,當(dāng)有一相繞組接通時(shí),每一齒距的空間機(jī)械角為如公式1.1所示,每一極距所占的
3、轉(zhuǎn)子齒數(shù)如公式1.2所示,為每一極距的空間機(jī)械角如公式1.3所示[4]?! 纳瞎?.2可以看出,因?yàn)槊恳粯O距所占的齒數(shù)是一個(gè)帶小數(shù)的值,所以當(dāng)某一個(gè)定子和轉(zhuǎn)子一致時(shí),其它的定子和轉(zhuǎn)子一定會錯(cuò)開,這個(gè)角度計(jì)算公式為:(13-12.5)*t=0.25*t,所以,在步進(jìn)電機(jī)換相時(shí),轉(zhuǎn)子實(shí)際轉(zhuǎn)過的角度為0.25*θz=θs=1.8°。步進(jìn)電機(jī)有很多種換相方式,比較常見的有以下兩種:1)采用A-B-C-D順序不斷地通電。2)采用A-AB-B-BC-C-CD-D-DA-A通電順序。采用第二種方式時(shí),θs=0.9°,轉(zhuǎn)子的轉(zhuǎn)速可以由下式1.4計(jì)算出: 式中:電機(jī)拍數(shù)為N,每秒輸入f個(gè)脈沖?! ∮缮?/p>
4、式可以看出,只要N發(fā)生改變,步進(jìn)電機(jī)的速度就會發(fā)生改變,步進(jìn)電機(jī)增大細(xì)分也就是加大N的值,也就是所說的運(yùn)行拍數(shù)變大,所以步距角就會變小[5]。采用這種方法會降低電機(jī)速度,為了達(dá)到預(yù)定速度,通常需要加快輸入脈的頻率f?! Σ竭M(jìn)電機(jī)細(xì)分控制其實(shí)就是對電流進(jìn)行細(xì)分控制,電流大小被分為多少個(gè)階梯等級,轉(zhuǎn)動一個(gè)固定的步距角就需要多少步來實(shí)現(xiàn)。步進(jìn)電機(jī)細(xì)分驅(qū)動如圖2所示,從圖中可以看出電機(jī)步距控制是通過控制繞組中電流實(shí)現(xiàn),走一個(gè)步距角一般都是由許多個(gè)電流細(xì)分組成。因此,我們把這種控制方式稱為細(xì)分控制?! ?驅(qū)動系統(tǒng)硬件設(shè)計(jì) 步進(jìn)電機(jī)驅(qū)動器硬件方案如圖3所示。驅(qū)動器選擇AT89C52單片機(jī)為主控制器
5、,步進(jìn)電機(jī)由單片機(jī)產(chǎn)生的脈沖進(jìn)行控制,通過數(shù)模轉(zhuǎn)換模塊D/A將控制器產(chǎn)生的數(shù)字信號轉(zhuǎn)換為電壓量,電壓傳輸?shù)矫}沖分配器,功率電阻對電機(jī)相電流進(jìn)行轉(zhuǎn)換,這個(gè)電壓和單片機(jī)D/A模塊產(chǎn)生的電壓進(jìn)行比較,通過邏輯運(yùn)算輸出PWM波,這個(gè)PWM波功率較小,不能驅(qū)動電機(jī),必須經(jīng)過光耦電路進(jìn)行功放大。電機(jī)的運(yùn)轉(zhuǎn)情況通過編碼器采集,以直觀的方式進(jìn)行讀取?! 》桨钢械拿}沖分配器選用IXM160高性能CMOS集成電路,該電路是美國IXMS公司生產(chǎn)的,它具有兩路獨(dú)立的脈沖輸出,通常被用來驅(qū)動兩路獨(dú)立的H橋,以實(shí)現(xiàn)對電流進(jìn)行精確的閉環(huán)控制。所以,IXM160非常適合用來做步進(jìn)電機(jī)控制分散電路,借助該芯片對電流的高精度
6、控制,驅(qū)動器可以步實(shí)現(xiàn)200細(xì)分,即發(fā)送200個(gè)脈沖步進(jìn)電機(jī)走一個(gè)步距角。數(shù)模轉(zhuǎn)換模塊D/A選取具有高達(dá)12位的高精度AD657模塊,它的數(shù)模轉(zhuǎn)換非常迅速,只需要2μs便可完成。功率開關(guān)管選擇APT公司的APT34GE121BR器件。選用日本信濃公司生產(chǎn)的SST43D2165型步進(jìn)電機(jī),這款電機(jī)的工作頻率范圍很大,推薦工作在1.5A的電流下。測速編碼器采用專門定制的編碼器,具有20位的高精度。通過這種設(shè)計(jì)方案,不僅大幅提高了步進(jìn)電機(jī)的運(yùn)動精度,還使低速狀體下的諧振與紋波大大減小,改善了電機(jī)的性能?! ?步進(jìn)電機(jī)細(xì)分驅(qū)動系統(tǒng)的軟件設(shè)計(jì) 在運(yùn)行前,我們先設(shè)定好步進(jìn)電機(jī)的運(yùn)動方式,按照:啟動一
7、勻加速一勻速一勻減速一停止的方式運(yùn)行,我們提前在單片機(jī)的EPROM中導(dǎo)入標(biāo)準(zhǔn)的正弦、余弦函數(shù)表,當(dāng)步進(jìn)電機(jī)需要運(yùn)行在在恒轉(zhuǎn)速,可以通過按鍵燈外部設(shè)備發(fā)送信號給單片機(jī),單片機(jī)根據(jù)控制信號進(jìn)行運(yùn)行,數(shù)字信號經(jīng)過D/A模塊轉(zhuǎn)換成電壓信號送給脈沖分配器。因?yàn)镃語言具有編程方便、移植性和可讀性強(qiáng)的優(yōu)點(diǎn),因此AT89C52單片機(jī)采用C語言進(jìn)行編寫。啟??刂茣r(shí),需要安裝S型曲線的方式進(jìn)行啟停,以增加控制精度,減小振動。為減少系統(tǒng)的運(yùn)算