【導讀】本文設計并研制了一種集可編程(設置參數(shù))、語音播報、超限報警功能于一體,并能聯(lián)機顯示溫度變化曲線和可聯(lián)網(wǎng)使用的新型智能溫度計??梢詮V泛地應用于醫(yī)療衛(wèi)生行業(yè)甚至家庭。
系統(tǒng)設計目標
(1)每分鐘采用語音報告一次所測溫度的實時值,無誤報、漏報。所測溫度超過預警溫度值時,系統(tǒng)立即報警。
(2)系統(tǒng)預警溫度值可在-55.O~+125.O℃的范圍內(nèi)任意設置(默認值設定為37.O℃)。
(3)記錄測溫結果,并可以和計算機聯(lián)網(wǎng)顯示溫度變化曲線。
(4)測量精度為±0.1℃(或0.2 F)。
(5)系統(tǒng)結構簡單,使用方便,價格合理。
硬件設計
系統(tǒng)采用一般自動測試系統(tǒng)的成熟方案,由主控單片機、測溫電路、語音播報和編程電路組成。
主控芯片的選擇
可供選擇的主控芯片比較多,如使用面最廣的MCS-5l系列、資源豐富的ARM7TDMI-S系列微控制器、低功耗的MSP430系列等??紤]到語音播報和語音編程功能的高性價比實現(xiàn)方案,所以采用臺灣凌陽公司推出的16位μ’nSPTM內(nèi)核單片機SPCE061A,其較高的處理速度能夠非常容易、快速地處理復雜的數(shù)字信號,也是適用于數(shù)字語音識別應用領域產(chǎn)品的一種最經(jīng)濟的選擇。
測溫方案
在不同的測溫范圍,成熟的測溫方案也比較多,如采用熱敏電阻、利用鉑電阻、基于集成溫度傳感器等的測溫系統(tǒng)。當前流行的數(shù)字型溫度傳感器有 AD7416;MAX6575L/H以及DSl8X20。前兩者多用于計算機或儀器設備內(nèi)部的溫度檢測。鑒于后者接口簡單,且就測量精度、器件可靠性、穩(wěn)定性及參數(shù)一致性而言表現(xiàn)良好,應用較廣泛。由于在-10~+85℃范圍其測溫誤差不超過±O.5℃,以及有12位的分辨率而使其在各適用領域十分受歡迎。本系統(tǒng)采用DSl8B20,該傳感器內(nèi)部自帶信號調(diào)理和A/D轉(zhuǎn)換,與單片機之間的硬件接口非常簡單,只需要通過一根數(shù)據(jù)線與單片機相連,所以保證了系統(tǒng)的高可靠性。為了實現(xiàn)測量精度為±0.1℃,利用了DSl8B20中SCRATCHPAD中的“剩余脈沖數(shù)”和“每度脈沖數(shù)”,通過公式:高分辨率溫度值=TI-0.25+(Tp—TR)/TP可以獲得±0.1℃的測量精度。
語音播報
對于語音播報,常用做法是用單片機對ISDl420操作來實現(xiàn),所用硬件和連線都較多,所以系統(tǒng)的可靠性和成本都不占優(yōu)勢。本設計由于采用了 SPCE061A單片機,由于其強大的信號處理功能,所以可以直接由單片機輸出語音信號,不需要借助其他語音芯片,從而使系統(tǒng)的可靠性得到大幅提高。
語音控制(編程)
語音控制也有現(xiàn)成的芯片可供選擇,由于本系統(tǒng)采用的單片機具有較強的數(shù)字信號處理能力,而且其Mic輸入內(nèi)部已經(jīng)集成AGC電路,使得語音控制更為穩(wěn)定,所以直接用SPCE061A實現(xiàn)語音控制。由于凌陽公司提供的語音識別API是基于特定人語音識別技術的,所以使用之前需要用戶對系統(tǒng)進行訓練,同時也只有對訓練過的人的語音識別率才較高,所以使用很不方便。本系統(tǒng)基于DHMM模型的識別算法,用BaumWelch法對模板進行訓練,Viterbi算法進行識別實現(xiàn)的非特定人語音識別,使得使用者可以直接控制而無需進行繁瑣的訓練,不同的用戶也不需要經(jīng)常反復訓練,使系統(tǒng)的適應性大為增強。
鍵盤電路
考慮到使用者講話的習慣,對于部分用戶,使用語音控制不太方便,所以設置鍵盤電路,以解決其設置(編程)問題,所以要求鍵盤電路非常簡單,對整體成本影響不大。SPCE06IA有2個16位的通用I/O接口Port A和Port B,而且Port A具有喚醒功能,所以采用A口直控鍵盤的形式。
聯(lián)網(wǎng)功能
SPCE061A同樣提供了通用異步串行接口UART,所以可以直接利用其通用異步串行接口進行聯(lián)網(wǎng),實現(xiàn)測溫人員與被測對象的隔離,即遠距離和多點測溫。
綜上所述,整體硬件電路組成如圖1所示,由SCPE061A單片機實現(xiàn)系統(tǒng)整體控制并實現(xiàn)語音或鍵盤編程與語音播報,系統(tǒng)可通過通用異步串行接口實現(xiàn)聯(lián)網(wǎng)功能,在不需要聯(lián)網(wǎng)的場合,溫度計也可以單獨使用,實現(xiàn)了系統(tǒng)的可裁剪,DSl8B20用來實現(xiàn)溫度檢測。
圖1:系統(tǒng)組成
軟件設計
軟件設計的主要任務是將測量溫度通過語音播報出來,接收編程數(shù)據(jù)使系統(tǒng)工作于不同的狀態(tài)。
溫度檢測
通過DSl8B20測溫時,要求控制器嚴格按照其單總線協(xié)議進行通信,對于DSl8B20的通信控制程序已有很多討論,這里不再贅述。
語音播報
實驗凌陽公司提供的API可以直接播放壓縮格式的語音,將O~9十個數(shù)字和攝氏度、設置、報警溫度等語音的數(shù)字信號(文件)壓縮后直接寫入單片機,播報溫時傳遞溫度參數(shù)給放音程序就可以實現(xiàn)語音播報或者報警功能。
參數(shù)設置
參數(shù)設置可以通過語音控制和鍵盤輸入實現(xiàn),對于普通話較好的用戶,可以直接使用語音控制實現(xiàn)系統(tǒng)參數(shù)的調(diào)整,而普通話不太好( 識別率低)的用戶,則可以選擇使用鍵盤調(diào)整系統(tǒng)參數(shù)。系統(tǒng)采用非特定人語音識別技術,使得使用語言控制系統(tǒng)較為簡單、方便,同時鍵盤的設計也為不方便使用語音控制的人群提供了另一種選擇,可以適應不同類型的用戶。
可設置的參數(shù)主要有,播報方式:“連續(xù)、隔x秒、禁止”;報警溫度值;工作方式等。在需要實時關注溫度值的時候,可以設置為連續(xù)播報;溫度變化較慢的時候可以設置為隔x秒方式;夜晚設置報警模式后,可以設置為禁止播報模式。設置報警溫度值后可以,可以處理其他事情,在出現(xiàn)警情時,系統(tǒng)給出報警,提示用戶。選擇工作方式為“聯(lián)網(wǎng)工作”后,系統(tǒng)除了現(xiàn)場播報和報警外,還將相應信息通過異步串行口發(fā)送到遠端。設置過程全部采用語音菜單方式,可以大幅度較低成本,設置流程圖如圖2所示。
圖2:設置子程序流程圖
結語
本文設計的智能溫度計,電路簡單、所需元器件少、測量精度高、抗干擾能力強,可以實現(xiàn)實時測溫、超限報警和語音播報等功能。由于各種功能是通過單片機來實現(xiàn)的,可以根據(jù)具體要求添加不同的測溫模式,實現(xiàn)了設計目標,可廣泛地應用于溫度測量和性價比要求較高的領域,尤其是特殊應用場合。