摘要:本文主要敘述利用Proteus軟件實(shí)現(xiàn)的數(shù)字式指針溫度計(jì)的一種調(diào)試方法,采用MCS51單片機(jī)作為指針溫度計(jì)的數(shù)字信號(hào)處理器,其中,溫度采集傳感器選用Dallas公司的Ds1820單總線式數(shù)字溫度傳感器,該
溫度計(jì)的溫度值通過(guò)四個(gè)數(shù)碼管顯示,同時(shí)還可以通過(guò)刻盤(pán)指針指示,以下信息供大家參考。
本文主要敘述利用Proteus軟件實(shí)現(xiàn)的數(shù)字式指針溫度計(jì)的一種調(diào)試方法,采用MCS51單片機(jī)作為指針溫度計(jì)的數(shù)字信號(hào)處理器,其中,溫度采集傳感器選用Dallas公司的Ds1820單總線式數(shù)字溫度傳感器,該溫度計(jì)的溫度值通過(guò)四個(gè)數(shù)碼管顯示,同時(shí)還可以通過(guò)刻盤(pán)指針指示。
硬件設(shè)計(jì)
硬件設(shè)計(jì)包括溫度采集模塊、單片系統(tǒng)及溫度顯示模塊等模塊,其中,刻度盤(pán)上指針的控制是設(shè)計(jì)中的一個(gè)重點(diǎn)。在設(shè)計(jì)數(shù)字電路的角位移控制時(shí),一般選用步進(jìn)電機(jī)或伺服電機(jī),選用步進(jìn)電機(jī)時(shí),其步進(jìn)角固定,同時(shí),對(duì)于角位移的控制,會(huì)產(chǎn)生控制角度的動(dòng)作位置不夠的問(wèn)題;選用伺服電機(jī)也就是舵機(jī)時(shí),其控制原理是通過(guò)MCS51單片機(jī)產(chǎn)生脈寬調(diào)制(PWM)信號(hào)的占空比來(lái)改變舵機(jī)搖臂旋轉(zhuǎn)的位置,以達(dá)到控制伺服電機(jī)的目的,zui后在刻度盤(pán)上指示溫度值。
系統(tǒng)硬件電路原理圖如圖1所示。
1.舵機(jī)的工作原理
系統(tǒng)中指針的驅(qū)動(dòng)由舵機(jī)實(shí)現(xiàn),為使指針在刻度盤(pán)上的初始指示,文中采用4個(gè)獨(dú)立按鍵實(shí)現(xiàn)指針刻盤(pán)上的粗、微調(diào)節(jié)。
舵機(jī)是一個(gè)簡(jiǎn)單的閉環(huán)系統(tǒng),其內(nèi)部硬件電路、微型電機(jī)及減速器封裝在一個(gè)部件內(nèi),實(shí)物圖如圖2所示,輸出軸可在一90°~90°范圍內(nèi)旋轉(zhuǎn)到任意角度。
舵機(jī)包含控制信號(hào)線、電源線和地線3根引線,其反饋元件為一個(gè)與輸出軸同軸的精密電位器,通過(guò)電位器的反饋信號(hào)得到舵機(jī)輸出軸轉(zhuǎn)動(dòng)的位置,然后將相應(yīng)的電壓值反饋回控制芯片,zui后將反饋的輸出軸位置與控制引線設(shè)定的位置進(jìn)行比較,得到輸出軸位置的偏差,從而驅(qū)動(dòng)微型電機(jī)轉(zhuǎn)動(dòng),使輸出軸轉(zhuǎn)到預(yù)定控制的角度。
舵機(jī)的控制信號(hào)為一列PWM波,周期為18~20ms,舵機(jī)輸出軸轉(zhuǎn)動(dòng)的角度位置與PWM信號(hào)占空比呈線性關(guān)系,當(dāng)控制信號(hào)的高電平寬度為0.5ms時(shí),舵機(jī)輸出軸位置為-90°;當(dāng)信號(hào)高電平寬度為2.5ms時(shí),輸出軸位置為+90°。
軟件設(shè)計(jì)
單片機(jī)軟件的設(shè)計(jì)包括DSl820的讀寫(xiě)、模擬PWM輸出、單片機(jī)溫度取值、按鍵掃描、數(shù)碼管顯示等程序設(shè)計(jì)。
1.DS1820的讀寫(xiě)
DS1820采用單總線協(xié)議,能夠?qū)崿F(xiàn)數(shù)據(jù)的雙向傳輸,在進(jìn)行DS1820讀寫(xiě)操作前應(yīng)先對(duì)DS1820進(jìn)行復(fù)位,同時(shí),必須嚴(yán)格遵守DS1820的讀寫(xiě)時(shí)序,盡量精簡(jiǎn)中斷程序,以減少對(duì)DS1820的讀寫(xiě)時(shí)序的影響,提高溫度采集的準(zhǔn)確性。
DS1820讀、寫(xiě)子程序如下:
2.PWM的輸出
利用MCS51單片機(jī)的定時(shí)器中斷產(chǎn)生PWM信號(hào),TO每產(chǎn)生一次中斷,PWM輸出邏輯電平翻轉(zhuǎn)一次,PWM控制信號(hào)的輸出周期為20ms。
定時(shí)器中斷服務(wù)程序如下:
其中,int_m為中斷計(jì)數(shù)的中間變量。
3.按鍵掃描程序
文中采用4個(gè)獨(dú)立按鍵完成指針刻度盤(pán)上的粗、微調(diào)節(jié),按鍵掃描程序如下:
Proteus軟件調(diào)試
Proteus軟件可以對(duì)常用的單片機(jī)進(jìn)行實(shí)時(shí)仿真,具有全速、單步、設(shè)置斷點(diǎn)等調(diào)試功能,可以觀察各個(gè)變量、寄存器等當(dāng)前狀態(tài),同時(shí)支持第三方軟件編譯和調(diào)試環(huán)境。
在Proteus軟件中系統(tǒng)的調(diào)試界面如圖3所示,其中,邏輯分析儀用于測(cè)量等當(dāng)前狀態(tài),同時(shí)支持第三方軟件編譯和調(diào)試環(huán)境。
在Proteus軟件中系統(tǒng)的調(diào)試界面如圖3所示,其中,邏輯分析儀用于測(cè)量單片機(jī)產(chǎn)生的PWM信號(hào),其中通道A3為測(cè)量PWM信號(hào)的基準(zhǔn),通道A5為單片機(jī)產(chǎn)生的PWM信號(hào):示波器用于觀察產(chǎn)生的PWM信號(hào)。
在Proteus6.9軟件中調(diào)試的某一調(diào)試狀態(tài)的界面圖如圖4所示,系統(tǒng)27℃、43.1℃時(shí)指針刻盤(pán)的顯示效果圖分別如圖5、圖6所示。