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