AT89C52單片機在捻度測量中的應(yīng)用
紗線捻度測量是紡織生產(chǎn)中重要的環(huán)節(jié)。目前紗線捻度普遍采用機械式和半電子化測量。該測量方法精度低、操作人員勞動強度大、易出現(xiàn)錯誤操作。為適應(yīng)市場需求和社會發(fā)展,開發(fā)了以單片機為核心捻度測量裝置,實現(xiàn)捻度測量的自動化、微型化、數(shù)字化,從而大大提高了測試精度。
1 系統(tǒng)原理
本裝置如圖所1示。單片機將測量的電機轉(zhuǎn)速與鍵盤設(shè)置的工作方式和初始值進行比較判斷,調(diào)整輸出脈沖的高電平,控制直流電機的速度和啟動停止。同時將單片機計算的電機轉(zhuǎn)速和旋轉(zhuǎn)數(shù)(捻數(shù))通過串行方式輸出顯示。
2 系統(tǒng)的硬件組成
系統(tǒng)的硬件基本上分為三個部分:即PWM脈沖轉(zhuǎn)換電路、速度測量電路和單片機電路組成。
1)速度測量電路
本裝置中電機的轉(zhuǎn)速比較低,采用霍爾元件作為傳感器。將磁芯固定在電機的轉(zhuǎn)子上,感應(yīng)部分固定在電機外殼。當轉(zhuǎn)子旋轉(zhuǎn),磁芯接近或遠離感應(yīng)器,不同的磁感應(yīng)強度使感應(yīng)器產(chǎn)生微小的電壓差。差分放大器將電壓差放大后送給施密特觸發(fā)器整形為脈沖信號,經(jīng)過三極管驅(qū)動取反后作為單片機INT1的中斷源。電路如圖2所示。
T1定時/計數(shù)器設(shè)為定時方式,與軟件配合組成脈沖周期測量。外部中斷INT1產(chǎn)生時,單片機讀取兩次中斷之間的時間,計算成速度和捻度輸出顯示。
2)PWM脈沖轉(zhuǎn)換電路
PWM控制系統(tǒng)是通過改變直流電機電樞上脈動直流電的“占空比”來改變平均電壓的大小,從而控制電機的轉(zhuǎn)速。電樞電壓的平均值為:Umg= .Vcc=ρVcc, ρ= 稱為占空比,其值由固定頻率調(diào)節(jié)脈沖寬度的方法來調(diào)節(jié)。本裝置采用H型單極受控可逆式PWM的功率轉(zhuǎn)換電路,如圖3所示。
它由四個大功率的場效應(yīng)管和四個續(xù)流二極管組成。四個大功率的場效應(yīng)管分為兩組,MOS1和MOS4為一組,
MOS2和MOS3為一組。當MOS2、MOS3導(dǎo)通,MOS1、MOS4關(guān)斷,電樞電壓Umg=Vcc,電樞電流img沿方向1流通,電動機正轉(zhuǎn);當MOS1、MOS4導(dǎo)通,MOS2、MOS3關(guān)斷,電樞電壓Umg=-Vcc,電樞電流img沿方向2流通,電動機反轉(zhuǎn);當MOS1、MOS2關(guān)斷,MOS3、MOS4導(dǎo)通,Vmg=0,電樞電流img按原先方向沿3構(gòu)成續(xù)流回路。圖3中場效應(yīng)管輸入端分別與單片機的P1.6、P1.7、P0.0和P0.1連接;為了更好的續(xù)流,獲得較大的轉(zhuǎn)距,應(yīng)在場效應(yīng)管柵極加入如圖4所示的電壓波形。圖4所示的柵極電壓波形由軟件產(chǎn)生,控制電機的啟停、轉(zhuǎn)動方向和轉(zhuǎn)速。
3)單片機和鍵盤顯示電路
本裝置采用AT89C52單片機,其性能價格比高,內(nèi)部具有3個16位定時/計數(shù)器、一個串行口、8K FLASH存儲器和256個字節(jié)的RAM及兩個外部中斷源,32個I/O線,完全滿足系統(tǒng)的要求。根據(jù)系統(tǒng)要求,設(shè)計出如圖5所示的電路,為了提高裝置的可靠性,通過光藕將PWM功率轉(zhuǎn)換電路和單片機鍵盤顯示電路隔離,并采用兩組電源供電。為防止死機現(xiàn)象,外加了定時看門狗(WATCHDOG),在程序出現(xiàn)“死機”或“飛逸”時,系統(tǒng)能夠自動進行復(fù)位;同時定時看門狗內(nèi)部的存儲器用來存儲鍵盤設(shè)置的工作方式和其他的基準值。
因為直流電機轉(zhuǎn)速都比較低,用兩個4位LED就可以滿足顯示的要求。顯示采用動態(tài)工作方式,P1.0、P1.1和P1.3作為顯示端口,外接兩片CD4094進行捻度和速度七段碼的串并轉(zhuǎn)換,經(jīng)過兩片2003驅(qū)動送給數(shù)碼顯示器和狀態(tài)指示燈。P3.4和P3.5為鍵盤數(shù)據(jù)輸入端,P2口連接74LS138作為鍵盤和顯示器的掃描端口。
3 系統(tǒng)的軟件設(shè)計
軟件是配合硬件完成脈沖計數(shù)、速度與捻度顯示、鍵盤處理和轉(zhuǎn)速控制。主程序完成鍵盤處理,速度、捻度及狀態(tài)顯示。在外部中斷子程序中讀取定時/計數(shù)器T1和相關(guān)變量的值計算當前電機轉(zhuǎn)速,按一定算法調(diào)整PWM信號高電平寬度,同時根據(jù)設(shè)定的工作方式計算紗線捻數(shù)。在本裝置中關(guān)鍵是如何產(chǎn)生如圖4所示的PWM電壓波形,以確保電路和電機正常工作。
.
定時/計數(shù)器T2和T0用作PWM信號的產(chǎn)生,T2決定工作脈沖的基準周期T,T0控制工作脈沖高電平的寬度Ton,低電平寬度Toff為T2定時減去T0定時。圖3中跨接在直流電源Vcc兩端的上下兩個場效應(yīng)管交替工作,由于場效應(yīng)管不能立即關(guān)斷,因此,當一個場效應(yīng)管關(guān)斷后,另一個場效應(yīng)開啟之前必須延時一段時間,以避免上下兩個場效應(yīng)直通,造成短路。故對于圖4所示波形,在續(xù)流和方向改變的兩個場效應(yīng)管交替時,通過軟件定時延時t時刻。軟件代碼如下:
;T2中斷服務(wù)子程序
;T2工作于16位常數(shù)自動重新裝入方式,決定PWM工作周期
T2_INT:JB DIRECT_FLAG,T2_BACK ;判斷正反轉(zhuǎn)
CLR P1.7 ;無反轉(zhuǎn)輸出
CLR P0.1
NOP
NOP
SETB P1.6 ;正轉(zhuǎn)輸出高電平
SETB P0.0
SJMP T2_QUIT
T2_BACK:CLR P1.6
CLR P0.0
NOP
NOP
SETB P1.7
SETB P0.1
;T0置初值,啟動
T2_QUIT: MOV TH0, SPEEDRAMH ;T0初值由預(yù)置速度和實際測量
MOV TL0,SPEEDRAML ;速度比較后決定
SETB TR0
SETB ET0
RETI
;定時/計數(shù)器T0中斷服務(wù)子程序
;T0工作于方式1,決定PWM信號的高電平
T0_INT: JB DIRECT_FLAG,T0_BACK
CLR P1.6 ;正轉(zhuǎn)輸出低電平
NOP
NOP
SETB P0.1 ;更好的續(xù)流,獲得較大轉(zhuǎn)距
SJMP T0_QUIT
T0_BACK:CLR P1.7
NOP
NOP
SETB P0.0
T0_QUIT:CLR TR0
RETI
4 結(jié)論
本裝置的硬件電路體積小、功耗低,抗干擾能力強,具有較好的穩(wěn)定性和可靠性。采用結(jié)構(gòu)化的軟件設(shè)計方法;用平滑濾波算法解決速度測量的干擾問題
,實現(xiàn)速度平穩(wěn)調(diào)節(jié);用PWM實現(xiàn)較寬范圍的直流調(diào)速;采用冗余技術(shù)保證系統(tǒng)長時間正常運行。經(jīng)用戶投產(chǎn)運行表明,操作方便,經(jīng)濟效益顯著,具有較強的市場競爭力。