張玲娜+毛敏
摘 要:本文提出了基于MSP430為核心的最小化系統(tǒng)。通過霍爾傳感器實現(xiàn)了對電機的轉(zhuǎn)速測量,通過放大與濾波電路后經(jīng)過MSP430單片機數(shù)字量接口完成脈沖計數(shù),經(jīng)過換算成真實的轉(zhuǎn)速值后實現(xiàn)LED顯示及串口的發(fā)送的功能。如果電機轉(zhuǎn)速超速,則系統(tǒng)報警。
關(guān)鍵詞:電機轉(zhuǎn)速測量;霍爾傳感器;MSP430單片機
DOI:10.16640/j.cnki.37-1222/t.2015.21.130
0 引言
在工廠車間與汽車、火車等交通工具中,人們經(jīng)常遇到測量電極轉(zhuǎn)動速度的問題,并且在此問題的基礎(chǔ)上需要解決按照自己的目的設(shè)定電機轉(zhuǎn)速的問題。例如,在發(fā)電機、卷揚機、造紙機械中電機設(shè)備中要實現(xiàn)轉(zhuǎn)速的控制,并且要連續(xù)時間內(nèi)實施采集控制目標(biāo)的速度值以保證系統(tǒng)的安全性。或者分時的對目標(biāo)檢測并顯示其轉(zhuǎn)速。這時,我們首先要求等過獲取電機運行時的正確速度,即要求傳感器的精確測量,并且保證系統(tǒng)能夠?qū)崟r性反應(yīng)生產(chǎn)狀況,所以要求傳感器能夠準(zhǔn)確測量瞬時轉(zhuǎn)速。
1 系統(tǒng)設(shè)計
本系統(tǒng)設(shè)計了一個MSP430單片機整體系統(tǒng),利用單片機的數(shù)量捕捉功能以及AD轉(zhuǎn)換完成對外部數(shù)據(jù)的采集,利用PWM完成對外部電機的控制。選用適合電機測速的霍爾傳感器,測量電機的速度,同時選擇合理的LCD顯示器件,實現(xiàn)與單片機引腳匹配并實現(xiàn)動態(tài)顯示,顯示過程中使系統(tǒng)具備實時顯示的能力,如果轉(zhuǎn)速超過設(shè)定值,則實現(xiàn)在調(diào)速系統(tǒng)中的聲光報警功能。
單片機作為微控制器MCU,在不同工業(yè)現(xiàn)場的控制系統(tǒng)中,如適應(yīng)性控制系統(tǒng)、數(shù)據(jù)的采集與處理系統(tǒng)中得到了充分的運用。在控制領(lǐng)域中,主流上舍棄之前模擬式控制方法,改為通用嵌入式計算機實現(xiàn)控制功能。大部分的控制系統(tǒng)都可以用以單片機為核心的系統(tǒng)或單片機加通用機系統(tǒng)來代替。在單片機對電動機測量測量與控制系統(tǒng)中,其典型系統(tǒng)結(jié)構(gòu)圖如圖1所示,整個系統(tǒng)由模擬信號采集過程、人機交互過程、信號顯示設(shè)備、實時報警設(shè)備、實時存儲設(shè)備、信號輸出設(shè)備等功能來實現(xiàn)。
2 硬件設(shè)計
2.1 部分電路設(shè)計
2.1.1 仿真電路設(shè)計:整題電路設(shè)計如下(圖2)所示
2.1.2 供電電源電路設(shè)計
整個信號調(diào)理電路板和霍爾傳感器需要一個穩(wěn)壓電源,這里選擇調(diào)整電源芯片LM317。MSP430單片機的電源電壓要求3.3V電壓,放大器芯片的電源需要5V電壓,需要重新處理電壓,該芯片是TPS76950和TPS76933。芯片TPS76950和TPS76933為變換電壓芯片,穩(wěn)定性好,輸出穩(wěn)壓性高。當(dāng)輸入的電壓在10V左右時,輸出電壓可以分別穩(wěn)壓在5V和3.3V,相應(yīng)的電容起到穩(wěn)壓作用(圖3)。
2.1.3 霍爾傳感器
利用霍爾傳感器將電機轉(zhuǎn)速轉(zhuǎn)化為脈沖信號。測量用霍爾器件A3144為開關(guān)型霍爾集成電路,是將霍爾元件、穩(wěn)壓電路、放大器、施密特觸發(fā)器、OC門等電路做在同一個芯片。當(dāng)外加磁場強度超過規(guī)定的工作點時,OC門由高阻態(tài)變?yōu)閷?dǎo)通狀態(tài),輸出變?yōu)榈碗娖?當(dāng)外加磁場強度低于釋放點時,OC門重新變?yōu)楦咦钁B(tài),輸出高電平。通過上拉電阻可將其輸出接入邏輯電路。
該芯片具有尺寸小、穩(wěn)定性好、靈敏度高等特點,有兩種封裝形式,一種是3腳貼片微小型封裝,后綴為“LT”;另一種是3腳直插封裝,后綴為“UA”?;魻柶骷嗀3144管腳及其接線如圖4所示。
2.2 處理器
處理器采用的是89C51單片機。完成對電機轉(zhuǎn)速脈沖計數(shù)的控制,讀取寄存器完成轉(zhuǎn)速頻率的確定。電機脈沖信號連到引腳。中斷對轉(zhuǎn)速脈沖計數(shù)。定時器T0工作于定時方式,工作于方式1,每1s讀一次外部中斷計數(shù)值,此值即為脈沖信號的頻率。根據(jù)下式可計算出電機的轉(zhuǎn)速,電機轉(zhuǎn)速計算公式:
其中n為電機轉(zhuǎn)速,f為電機脈沖信號頻率,z為轉(zhuǎn)軸旋轉(zhuǎn)一圈霍爾傳感器產(chǎn)生的脈沖數(shù)。
3 軟件設(shè)計
3. 1 主程序
工作過程:先初始化,設(shè)置各中斷初值,檢測脈沖到來后,啟動外部中斷,每來一個脈沖中斷一次,記錄脈沖個數(shù);同時啟動T0定時器工作,每1秒定時中斷一次,讀取記錄的脈沖個數(shù),即電機脈沖信號頻率,根據(jù)公式計算出電機的轉(zhuǎn)速,再進行數(shù)值的判斷,若數(shù)值高于100則報警,否則就進行正常速度液晶顯示。
3.2 流程圖
流程圖如下圖5所示。
3. 3 程序代碼
main()
{ relay=0;
IE=0x83; ? ? ?//準(zhǔn)許T0 INT中斷
TCON=0x11;
TMOD=0x01; ? ?//T0為mode1
TH0=TH_M1; ? ?//50ms定時
TL0=TL_M1;
init_LCM();
while(fb==0)
{ ? }
EA=0;
if(zs>=100)
{ ?relay=1;
pulse_BZ(5000,1,1); ?}
disp_led();
}
3.4 中斷程序
3.4.1 外部計數(shù)中斷
(1)工作過程:每來一個電機脈沖信號,產(chǎn)生中斷計數(shù)。
(2)流程圖,如圖6所示。
(3)程序
void counter(void) interrupt 0
{ ? count++;
if(count%6==0) //6次循環(huán)為電機轉(zhuǎn)一圈
{ zs++;//轉(zhuǎn)圈計數(shù)加1}
}
3.4.2 定時器中斷
(1)工作過程。TT0定時器每1秒定時中斷一次,讀取記錄的脈沖個數(shù)。
(2)流程圖。如圖7所示。
(3)程序
void Time0(void) interrupt 1
{TH0=TH_M1; ? ? ? ? ? ?//50ms定時
TL0=TL_M1;
if(++msec==20) ? ? ? ? ?//50*20=1S
{ fb=1; }
}
4 結(jié)論
本文給出了一種單片機實現(xiàn)電機轉(zhuǎn)速的測量系統(tǒng),克服了傳統(tǒng)方法測量的不足,可以實現(xiàn)電機轉(zhuǎn)速不同區(qū)段的精度測量。該速度測量系統(tǒng)具有測量速度快、測量精度高、靈敏度高的優(yōu)點,不但可應(yīng)用于一般的機電控制過程中進行速度測量,而且可應(yīng)用于其它要求轉(zhuǎn)速精確測量系統(tǒng)中,具有較高的理論和實際應(yīng)用意義。
參考文獻:
[1]丁芝琴.基于霍爾傳感器的電機測速裝置設(shè)計[J].農(nóng)機化研究,2010(05):81-83.
[2]張坤,徐慧.基于MSP430的智能汽車防撞系統(tǒng)[J].電腦知識與技術(shù),2013(28):6385-6388.
[3]杜紅.基于MSP430的直流電機控制器設(shè)計[J].信息系統(tǒng)工程,2013(10):81-86.endprint