摘 要: 采用MSP430低功耗單片機(jī)作為主控芯片,通過(guò)紅外無(wú)線傳輸搭建起一個(gè)低成本、低功耗帶控制功能的數(shù)模雙路傳輸系統(tǒng)。該系統(tǒng)具有簡(jiǎn)潔、無(wú)布線成本、適應(yīng)性和擴(kuò)展性好的優(yōu)點(diǎn)。
關(guān)鍵詞: 無(wú)線傳輸;低功耗;擴(kuò)展性;數(shù)字模擬雙路傳輸系統(tǒng)
1 系統(tǒng)設(shè)計(jì)
本系統(tǒng)的MCU采用MSP430G2553作為主控芯片,分為發(fā)送和接收兩大模塊,無(wú)線傳輸方式選擇紅外方式。為了盡量減少干擾和簡(jiǎn)化系統(tǒng),兩路無(wú)線通路分別傳輸模擬和數(shù)字信號(hào)??紤]到現(xiàn)有系統(tǒng)外設(shè)的多樣性,為了最大限度地提升系統(tǒng)的可擴(kuò)展性,信號(hào)的輸入端只做出了基本的定義,即滿足要求的數(shù)字和模擬輸入都可以當(dāng)作輸入信號(hào)。本文中模擬信號(hào)輸入為音頻信號(hào),數(shù)字信號(hào)由傳感器給出,分為模擬和數(shù)字傳感器兩部分接入,以體現(xiàn)系統(tǒng)良好的擴(kuò)展性。模擬信號(hào)通過(guò)喇叭輸出,數(shù)字信號(hào)則通過(guò)MCU控制的液晶顯示器顯示。輸入端接按鍵,控制顯示的選擇和輸出的使能。整體框圖如圖1所示。
1.1 模擬收發(fā)模塊設(shè)計(jì)
在介紹收發(fā)模塊之前,先了解一下收發(fā)的核心元件——紅外收發(fā)對(duì)管。
紅外收發(fā)對(duì)管分為數(shù)字和模擬兩種,載頻均為38 kHz,不同點(diǎn)是模擬紅外發(fā)射管直接輸入模擬基帶信號(hào)。通過(guò)載波為媒介傳輸給接收端,接收端經(jīng)過(guò)濾波和放大后輸出模擬信號(hào)。而數(shù)字紅外對(duì)管發(fā)送端將待發(fā)送的二進(jìn)制信號(hào)編碼調(diào)制為一系列的脈沖串信號(hào),通過(guò)紅外發(fā)射管發(fā)射出紅外信號(hào)。紅外接收完成對(duì)發(fā)送信號(hào)的接收、放大、檢波、整形,并解調(diào)出編碼脈沖。這里為了減少干擾,采用的是一體化的紅外接收頭(hs0038),接收的同時(shí)對(duì)信號(hào)進(jìn)行放大、檢波、整形,得到TTL電平的編碼信號(hào)。
模擬發(fā)送部分采用模擬音頻信號(hào)作為輸入。以MP3為信號(hào)源,傳輸信號(hào)的頻率范圍是300 Hz~3 400 Hz。通過(guò)NPN型三極管的放大作用,基極輸入,信號(hào)經(jīng)過(guò)射級(jí)放大后由3組發(fā)送管輸出。這里之所以用到3組發(fā)射管是出于兩種因素的考慮,一是提高發(fā)射功率,擴(kuò)大信號(hào)傳輸距離;二是紅外只能以直線傳輸,這么做可以擴(kuò)大傳輸角度提高適用性。具體電路如圖2所示。
接收部分通過(guò)紅外接收管將接收到的數(shù)據(jù)經(jīng)過(guò)電容隔斷直流干擾后輸入給LM386,LM386是一種專用的音頻集成功放,具有自身功耗低、更新內(nèi)鏈增益可調(diào)、外接元件少和總諧波失真小等優(yōu)點(diǎn)。通過(guò)調(diào)節(jié)1腳和8腳之間外接串聯(lián)的電阻和電容,增益可在20~200之間任意變化,這里音頻輸出端為一個(gè)4 W、8 ?贅的喇叭。為了最大限度提升輸出功率,根據(jù)數(shù)據(jù)手冊(cè)選擇10 ?滋F電容,使增益達(dá)到最大。具體如圖3所示。
1.2 數(shù)字收發(fā)模塊設(shè)計(jì)
傳感器信號(hào)經(jīng)過(guò)信號(hào)調(diào)理電路出入MCU中,經(jīng)過(guò)MCU的處理,輸出給紅外發(fā)射管。通過(guò)集成數(shù)字紅外接收管將接收到的數(shù)字信號(hào)解調(diào)出來(lái),再輸入給輸出端的MCU,MCU經(jīng)過(guò)處理將傳感器信息輸出給液晶顯示器。需要注意的是,紅外收發(fā)管的工作電壓為5 V,而MSP430的工作電壓為3.3 V,直接連接會(huì)燒壞MCU,需要一個(gè)簡(jiǎn)單的限幅電路,如圖4所示。其中3 V電源為MCU的GPIO提供,根據(jù)折線模型,選擇R=2 k?贅,可以把輸出限制在3.6 V,該電壓在MCU的安全電壓范圍內(nèi),之后就可以輸送到MCU中了。
2 傳感器和信號(hào)調(diào)理電路設(shè)計(jì)
這里使用常見(jiàn)的溫度和濕度傳感器作為數(shù)字信號(hào)的輸入源,分別采用模擬和數(shù)字傳感器。模擬傳感器采用電阻式或電容式傳感器,好處是其數(shù)值與被測(cè)量成線性變換。之后利用惠斯頓電橋法產(chǎn)生微弱的電信號(hào)經(jīng)過(guò)放大后輸入到MCU內(nèi)置的10 bit A/D轉(zhuǎn)換器的工作電壓范圍內(nèi)(0~2.5 V)。具體實(shí)現(xiàn)方式如下。電阻式溫度傳感器將溫度變換為電阻值通過(guò)直流電橋轉(zhuǎn)換成微小的電壓信號(hào),經(jīng)儀表放大器AD620放大到合適值后輸入給MCU的ADC內(nèi),實(shí)現(xiàn)室溫的測(cè)量。具體電路如圖5所示。其中header為模擬傳感器輸入口,滑動(dòng)變阻器做微調(diào)用,電壓由5 V單電經(jīng)濾波后供給。
電阻式溫度傳感器的電阻值與溫度有關(guān),查表計(jì)算出其對(duì)應(yīng)關(guān)系為圖6中的測(cè)試點(diǎn),通過(guò)計(jì)算擬合公式為:
R=100(1+3.95×10-3×T-5.85×10-7×T2-4.22×10-22×T3)(6)
其中,R表示電阻式溫度傳感器的電阻值,T表示當(dāng)時(shí)的溫度。
數(shù)字傳感器采用數(shù)字溫濕度傳感器DHT11,DHT11是一款已校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度復(fù)合傳感器,具有極高的可靠性、長(zhǎng)期的穩(wěn)定性、響應(yīng)速度快和抗干擾能力強(qiáng)的特點(diǎn)。傳輸方式為單總線雙向,能夠同時(shí)輸出溫度和濕度信息。數(shù)據(jù)格式如下;
8 bit濕度整數(shù)部分+8 bit濕度小數(shù)部分+8 bit溫度整數(shù)部分+8 bit溫度小數(shù)部分+8 bit校驗(yàn)和正確傳輸?shù)男r?yàn)數(shù)據(jù)(等于4個(gè)8 bit數(shù)據(jù)之和的末8位)。通信時(shí)序如圖7所示。
3 數(shù)據(jù)通信協(xié)議封裝格式
模擬信號(hào)由于不經(jīng)過(guò)MCU直接傳輸給接收端,所以本文的通信協(xié)議指的是數(shù)字信號(hào)的傳輸協(xié)議。為了減少兩路信號(hào)之間的干擾,數(shù)字信號(hào)傳輸采用SPI方式,通過(guò)調(diào)整SPI的輸出比特率使其與模擬信號(hào)頻段分開(kāi)。所有傳輸?shù)臄?shù)據(jù)采用BCD碼發(fā)送和接收,一個(gè)字節(jié)的高4位和低4位分別表示十進(jìn)制的一個(gè)數(shù)。傳輸?shù)膬?nèi)容包括傳感器發(fā)送的溫度和濕度,附加信息包括控制和節(jié)點(diǎn)編號(hào)。具體幀格式如表1所示。
建立節(jié)點(diǎn)編號(hào)是方便新設(shè)備的加入,帶來(lái)更廣的適用性??刂莆皇强刂圃摴?jié)點(diǎn)的溫度、濕度和音頻信號(hào)是否輸出。由于模擬傳感器中沒(méi)有濕度信息,所以濕度以全“0”表示,溫度以每4 bit表示一位十進(jìn)制數(shù),考慮到測(cè)量的溫度為室溫,以其中的最高位的“0”或“1”表示溫度的符號(hào)位。數(shù)字傳感器的輸出與傳感器定義相同,通過(guò)濕度是否為全“0”判斷傳感器類型,對(duì)應(yīng)不同的顯示方式。輸出時(shí)先輸出自己編號(hào)的節(jié)點(diǎn)信息,后輸出從其他節(jié)點(diǎn)接收到的內(nèi)容。
4 中繼節(jié)點(diǎn)和傳輸網(wǎng)絡(luò)
考慮到需要通信的設(shè)備可能不止兩個(gè),增加了節(jié)點(diǎn)編號(hào)使系統(tǒng)易于擴(kuò)展。傳輸信號(hào)時(shí)連同接收到的其他節(jié)點(diǎn)信息一起傳輸出去。不但可以共享信息,還能利用其他節(jié)點(diǎn)為中繼,在不提升輸出功率的情況下極大地延長(zhǎng)了通信設(shè)備之間的傳輸距離。通過(guò)合理地安放不同節(jié)點(diǎn),還可以克服紅外只能直線傳輸?shù)娜秉c(diǎn)(根據(jù)地理情況調(diào)節(jié)紅外收發(fā)管的角度)。
5 軟件控制設(shè)計(jì)
MCU每隔一分鐘從傳感器和控制按鍵中采集一次數(shù)據(jù),控制按鍵是由4個(gè)獨(dú)立按鍵組成,分別控制本機(jī)溫濕度信息的發(fā)送使能、他機(jī)溫濕度信息的發(fā)送使能、本機(jī)模擬信號(hào)的發(fā)送使能以及接收到的模擬信號(hào)輸出使能。多路模擬音頻信號(hào)由喇叭輸出會(huì)重疊在一起,影響接收效果。本次測(cè)試只允許一路音頻輸入,其他路音頻信號(hào)暫只作為中繼使用。通過(guò)MCU對(duì)按鍵控制的判斷,決定通過(guò)紅外發(fā)射管輸出的數(shù)字信號(hào)和本機(jī)的音頻輸出使能。本系統(tǒng)接收到的數(shù)字信息會(huì)通過(guò)液晶顯示出來(lái)。而紅外接收管是一直處于工作狀態(tài)的,以便能夠及時(shí)接收數(shù)據(jù)。具體流程如圖8所示。
6 系統(tǒng)數(shù)據(jù)測(cè)試
根據(jù)現(xiàn)有傳感器自身的特點(diǎn),對(duì)得到的數(shù)據(jù)進(jìn)行測(cè)試。數(shù)字傳感器由于直接輸出為溫度和濕度信號(hào),其誤差集中在傳感器自身。這里用到的數(shù)字溫濕度傳感器DHT11的性能為:濕度分辨率為1%RH,精度在4%RH以內(nèi);溫度分辨率為1℃,精度為±1℃。
模擬傳感器需要通過(guò)MCU的ADC進(jìn)行測(cè)量,加上信號(hào)調(diào)理電路、放大器線性度和模擬傳感器本身的誤差,需要使用軟件矯正。其測(cè)量值經(jīng)過(guò)轉(zhuǎn)換最終傳輸給ADC,其結(jié)果如圖9所示。
通過(guò)MATLAB的擬合得到最終溫度與ADC值的對(duì)應(yīng)關(guān)系,并通過(guò)溫濕度測(cè)試箱進(jìn)行驗(yàn)證,結(jié)果如圖10所示。
從圖10中可以看到,溫度的線性度比濕度好很多。這是由于溫度測(cè)量的精度較高,通過(guò)分析所得數(shù)據(jù)可得方差和標(biāo)準(zhǔn)差,溫度的方差和標(biāo)準(zhǔn)差分別為S2=0.379 618 S=0.616 131,濕度的則為S2=3.857 1、S=1.963 96,通過(guò)數(shù)據(jù)也能發(fā)現(xiàn)這一點(diǎn)。這套系統(tǒng)可以滿足一定的用戶需求,通過(guò)替換其他高精度的傳感器以達(dá)到更高的精度;也可以直接接到不同的通信器材中替換有線通信。
該系統(tǒng)實(shí)現(xiàn)了數(shù)字和模擬信息的雙向傳輸,動(dòng)態(tài)地檢測(cè)并共享數(shù)據(jù)。支持選取不同的傳感器作為輸入,并可以增加節(jié)點(diǎn)擴(kuò)大傳輸范圍并形成網(wǎng)絡(luò)。通過(guò)選取合適的傳感器,搭建硬件電路并調(diào)整精度,使其達(dá)到要求。最終經(jīng)過(guò)調(diào)試和編程,完成整個(gè)系統(tǒng)的設(shè)計(jì)。
本系統(tǒng)很好地解決了各種小型化設(shè)備的數(shù)據(jù)傳輸和共享問(wèn)題,通過(guò)這套系統(tǒng)可以很方便地選擇不同類型的數(shù)據(jù)進(jìn)行傳輸,并能夠兼顧多系統(tǒng)通信的擴(kuò)展問(wèn)題。適應(yīng)面極廣,不僅可以向文中提到的連接各種傳感器組件網(wǎng)絡(luò)對(duì)室內(nèi)環(huán)境進(jìn)行全局檢測(cè),還可以用于不同儀器或系統(tǒng)之間的數(shù)據(jù)傳輸,可以推廣到很多方面??梢钥吹竭@套系統(tǒng)有著功耗小、價(jià)格低廉、靈活性高、適用面廣的特點(diǎn),具有較高的實(shí)用價(jià)值。
參考文獻(xiàn)
[1] 沈建華,楊艷琴,霍曉曙.MSP430系列16位超低功耗單片機(jī)原理與應(yīng)用[M].北京:清華大學(xué)出版社,2004
[2] Texas Instruments公司. MSP430x2xx family user′s guide[Z].
[3] Texas Instruments公司.MSP-EXP430G2 LaunchPad實(shí)驗(yàn)板[Z].
[4] 葛亮,湖澤,李俊蘭,等.基于紅外傳輸?shù)木畧?chǎng)環(huán)境監(jiān)測(cè)系統(tǒng)設(shè)計(jì)[J].現(xiàn)代科學(xué)儀器,2010,4(2):71-74.
[5] 劉鳳偉,劉春枚,黃波.基于英飛凌單片機(jī)的紅外編/解碼器設(shè)計(jì)[J].電子質(zhì)量,2012(1):20.