本站小編為你精心準(zhǔn)備了單片機(jī)伺服電機(jī)的控制系統(tǒng)設(shè)計(jì)要點(diǎn)參考范文,愿這些范文能點(diǎn)燃您思維的火花,激發(fā)您的寫作靈感。歡迎深入閱讀并收藏。
當(dāng)今社會(huì),電動(dòng)機(jī)在工農(nóng)業(yè)生產(chǎn)、人們?nèi)粘I钪衅鹬种匾淖饔谩F渲校竭M(jìn)電機(jī)是最常見的一種控制電機(jī),在各領(lǐng)域中:如加工中心,打印機(jī)、自動(dòng)化生產(chǎn)線等等場合都可以得到應(yīng)用。研究伺服電機(jī)的控制系統(tǒng),對(duì)提高控制精度和響應(yīng)速度、節(jié)約能源等都具有重要意義。本系統(tǒng)是基于80C51的伺服電機(jī)控制系統(tǒng),在脈沖控制控制作用下控制電機(jī)運(yùn)行于0-3000轉(zhuǎn)/分鐘,并實(shí)現(xiàn)正轉(zhuǎn)與反轉(zhuǎn)。
1引言
在自動(dòng)控制系統(tǒng)中,伺服電動(dòng)機(jī)作為執(zhí)行元件,作用是把所收到的電信號(hào)轉(zhuǎn)換成電動(dòng)機(jī)軸上的角位移或角速度輸出。它有直流電機(jī)和交流電機(jī)之分。其中交流伺服有更廣的適用性。交流伺服系統(tǒng)已成為當(dāng)代高性能伺服系統(tǒng)的主要發(fā)展方向。本文介紹如何使用C8051F060來控制交流伺服電機(jī),使電機(jī)運(yùn)行于0-3000轉(zhuǎn)/分鐘的任意轉(zhuǎn)速。
2系統(tǒng)設(shè)計(jì)
圖1所示是伺服電機(jī)控制系統(tǒng),它以C8051F060為核心,同時(shí)還有顯示電路、編碼器、編碼器處理電路、RS485通信電路、伺服電機(jī)驅(qū)動(dòng)電路、伺服電機(jī)。
3電路及原理
3.1主芯片介紹C8051F060是SiliconLab公司出品的完全集成的混合信號(hào)片上系統(tǒng)型MCU。它使用了Cygnal專利的高速、流水線結(jié)構(gòu)以及與MCS-51指令集完全兼容的CIP251微處理器內(nèi)核。C8051F060具有P0-P7,共計(jì)8個(gè)端口,64個(gè)可以實(shí)際使用的IO。
3.2LED電路如圖2所示,系統(tǒng)使用6個(gè)LED數(shù)碼管顯示伺服電機(jī)的轉(zhuǎn)速,LED數(shù)碼管采用MC14489芯片進(jìn)行驅(qū)動(dòng),MC14489采用SPI通信方式和CPU進(jìn)行通信,可以節(jié)省IO口的使用。
3.3編碼器及處理電路系統(tǒng)采用多個(gè)BCD撥碼開關(guān)來設(shè)置系統(tǒng)運(yùn)行參數(shù)。BCD撥碼開關(guān)是十進(jìn)制輸入,BCD碼輸出,又稱為8421撥碼開關(guān)。每位BCD撥碼開關(guān)可輸入1位10進(jìn)制數(shù)。每個(gè)BCD撥碼開關(guān)后面有5個(gè)接點(diǎn),其中C為輸入控制線,另外4根是BCD碼輸出信號(hào)線。撥盤撥到不同的位置時(shí),輸入控制線C分別與4根BCD碼輸出線中的某根或某幾根接通。其接通的BCD碼輸出線狀態(tài)正好與撥盤指示的10進(jìn)制數(shù)相一致,符合2-10進(jìn)制編碼關(guān)系。BCD撥碼開關(guān)通過如圖3所示電路,讀取開關(guān)的設(shè)置。BCD_S1-BCD_S8是BCD碼輸出信號(hào)線,BCD_1—BCD_6接的是BCD撥碼開關(guān)的控制線C,每次P2.0跳變一次,就會(huì)選中具體的一個(gè)BCD撥碼開關(guān)的控制線,再讀取4根信號(hào)線上面的值,就可以將BCD撥碼開關(guān)設(shè)置的值讀取進(jìn)來。根據(jù)設(shè)置的值,使電機(jī)運(yùn)行于相應(yīng)的轉(zhuǎn)速。
3.4頻率輸出現(xiàn)有的伺服電機(jī)的控制方式有脈沖控制、模擬信號(hào)控制兩種比較常用的控制方式,由于模擬信號(hào)控制方式對(duì)于速度變化不確定,而且精度很高的場合缺乏靈活性。故通常采用脈沖控制的方式。PWM信號(hào)的產(chǎn)生有許多種方式,比較常用的有模擬電路、單片機(jī)I/O端口的輸出及單片機(jī)PWM部件的輸出。本設(shè)計(jì)中采用C8051F020單片機(jī)內(nèi)部的捕捉/比較寄存器來產(chǎn)生PWM信號(hào)。如下:啟動(dòng)PCA時(shí)鐘計(jì)數(shù)器PCA0進(jìn)行加1計(jì)數(shù),當(dāng)PCA0計(jì)數(shù)值與PCA0CPn相等時(shí),CEXn引腳為輸出高電平,當(dāng)PCA溢出時(shí)。CEXn引腳輸出低電平。因此改變PCA0CPn的值,可以輸出占空比可變的波形。(黃慧,等.基于C8051F020的PWM輸出頻率分析[J].數(shù)據(jù)采集與處理,2009,10)本設(shè)計(jì)采用16位PWM輸出,能受到高分辨率控制;允許CF以及CFFn中斷;占空比為1/2,比較/捕捉寄存器初值經(jīng)過計(jì)算為0x8000。PCA初始化程序如下:voidpcacsh(void){PCA0MD=0x05;//選擇定時(shí)器T0溢出作為PCA時(shí)基,即T0溢出一次,PCA計(jì)數(shù)加1次,允許CF標(biāo)志產(chǎn)生中斷請(qǐng)求。PCA0L=0x00;PCA0H=0x00;//賦定時(shí)計(jì)數(shù)器初值為0PCA0CPM0=0xcb;//設(shè)置PCA模塊O為16位PWM輸出,當(dāng)CCFO=1時(shí),允許CFFO。PCA0CPL0=0x00:圖2LED顯示電路PCA0CPH0=0x80://設(shè)置比較/捕捉寄存器初值為0X8000,PWM信號(hào)占空比1/2PCA0CN=0x40;//允許PCA0定時(shí)計(jì)數(shù)EIEl=0x08;}
4小結(jié)
本文介紹了通過使用C8051F060單片機(jī)產(chǎn)生的脈沖信號(hào)來控制伺服電機(jī),具有成本低,控制靈活等特點(diǎn)。可以應(yīng)用于各種場合。
作者:張玲玲 單位:郴州職業(yè)技術(shù)學(xué)院