曾憲陽(yáng),楊紅莉,郁漢琪,褚南峰
(1.南京工程學(xué)院 工業(yè)中心,江蘇 南京 211167;2.南京工程學(xué)院 數(shù)理部,江蘇 南京 211167)
?
基于MSP430單片機(jī)的甲醛含量監(jiān)測(cè)報(bào)警系統(tǒng)設(shè)計(jì)*
曾憲陽(yáng)1,楊紅莉2,郁漢琪1,褚南峰1
(1.南京工程學(xué)院 工業(yè)中心,江蘇 南京 211167;2.南京工程學(xué)院 數(shù)理部,江蘇 南京 211167)
根據(jù)市場(chǎng)上甲醛檢測(cè)裝置存在誤差大、功耗高等缺點(diǎn),設(shè)計(jì)了以MSP430單片機(jī)作為控制核心,多子機(jī)網(wǎng)點(diǎn)輔助監(jiān)測(cè),無(wú)線模塊進(jìn)行數(shù)據(jù)通信的甲醛檢測(cè)儀。使用單片機(jī)內(nèi)部A/D轉(zhuǎn)換模塊將傳感器采集到的模擬量轉(zhuǎn)換成數(shù)字量,再經(jīng)卡爾曼濾波器進(jìn)行濾波,保證了采樣數(shù)據(jù)的準(zhǔn)確性。該監(jiān)測(cè)系統(tǒng)檢測(cè)精度高、功耗低、穩(wěn)定性好,經(jīng)試驗(yàn)驗(yàn)證,能很好地滿足消費(fèi)者需求。
低功耗;MSP430單片機(jī);甲醛監(jiān)測(cè)儀;卡爾曼濾波;多網(wǎng)點(diǎn)
當(dāng)前,空氣環(huán)境污染嚴(yán)重,特別是新裝修的房間含有甲醛等有害物質(zhì)[1-5],影響到人們的身體健康。市面現(xiàn)有的甲醛檢測(cè)系統(tǒng)多為單點(diǎn)測(cè)試,體積大、功耗高、檢測(cè)單一、價(jià)格昂貴,且不能自動(dòng)對(duì)甲醛含量高的區(qū)域進(jìn)行重點(diǎn)實(shí)時(shí)監(jiān)測(cè)[6-7],因此本文設(shè)計(jì)了一種新的甲醛含量監(jiān)控報(bào)警系統(tǒng)。該系統(tǒng)包括多個(gè)子機(jī)系統(tǒng)及一個(gè)主機(jī)系統(tǒng),將每個(gè)子機(jī)系統(tǒng)分散安置在各個(gè)房間的某個(gè)區(qū)域,主機(jī)系統(tǒng)放置在臥室或客廳等住戶常活動(dòng)的位置,主機(jī)與子機(jī)之間采用NRF24L01無(wú)線網(wǎng)絡(luò)進(jìn)行通信。子機(jī)系統(tǒng)定時(shí)將采集到的甲醛含量信息通過(guò)無(wú)線網(wǎng)絡(luò)傳遞給主機(jī),主機(jī)通過(guò)中斷接收各子機(jī)發(fā)來(lái)的信息并進(jìn)行分析處理,同時(shí)根據(jù)需要將數(shù)據(jù)通過(guò)無(wú)線網(wǎng)絡(luò)發(fā)送給上位機(jī)PC,給用戶帶來(lái)方便。
系統(tǒng)選用MSP430F149單片機(jī)作為主控制芯片,以減少功耗,提高效率。采用具有精度高、功耗低的AQM201傳感器來(lái)檢測(cè)甲醛含量。采用多個(gè)430單片機(jī)作為子機(jī)模塊分別測(cè)量對(duì)應(yīng)區(qū)域甲醛含量,然后各子機(jī)實(shí)時(shí)將采集到的甲醛含量信息傳送給430主機(jī)模塊,子機(jī)與主機(jī)之間采用NRF24L01無(wú)線模塊進(jìn)行通信。系統(tǒng)設(shè)計(jì)框圖如圖1所示。

圖1 系統(tǒng)設(shè)計(jì)框圖
子機(jī)系統(tǒng)中的甲醛傳感器檢測(cè)空氣中的甲醛含量,經(jīng)處理以模擬信號(hào)形式輸出,經(jīng)A/D轉(zhuǎn)換為數(shù)字量后傳送給CPU,考慮到傳感器非線性因素,CPU將數(shù)據(jù)修正后轉(zhuǎn)換為實(shí)際甲醛含量濃度百分比,通過(guò)各自無(wú)線通信模塊通道傳輸給主機(jī)。以上過(guò)程每隔5 s重復(fù)采集發(fā)送一次,該采樣時(shí)間可通過(guò)主機(jī)發(fā)送給子機(jī)的命令參數(shù)進(jìn)行自動(dòng)調(diào)整。
主機(jī)通過(guò)外部中斷及時(shí)采集各子機(jī)發(fā)來(lái)的信息,并根據(jù)子機(jī)發(fā)來(lái)的地址碼將各子機(jī)發(fā)來(lái)的信息進(jìn)行歸類,同一子機(jī)發(fā)來(lái)的信息存放在對(duì)應(yīng)房間號(hào)的數(shù)組中。主機(jī)通過(guò)數(shù)組數(shù)據(jù)及時(shí)分析各房間的甲醛含量值,對(duì)于甲醛含量長(zhǎng)時(shí)間未呈減少趨勢(shì)的房間區(qū)域,主機(jī)將自動(dòng)通知子機(jī)調(diào)整采樣時(shí)間來(lái)進(jìn)行重點(diǎn)監(jiān)測(cè)。當(dāng)甲醛含量連續(xù)多天一直超過(guò)設(shè)定上限值時(shí),主機(jī)還會(huì)發(fā)出報(bào)警聲,用以提示用戶甲醛超標(biāo)。在實(shí)際測(cè)量過(guò)程中,傳感器接收到的信號(hào)包括環(huán)境干擾信號(hào),因此各子機(jī)采用卡爾曼濾波器對(duì)采樣數(shù)據(jù)進(jìn)行濾波,更大程度地保證了采樣數(shù)據(jù)的準(zhǔn)確性。
2.1 MSP430單片機(jī)最小系統(tǒng)電路設(shè)計(jì)[8-9]

圖2 MSP430F149單片機(jī)最小系統(tǒng)電路
本系統(tǒng)選用MSP430F149單片機(jī)作為主控單元,其最小系統(tǒng)包含了時(shí)鐘電路、復(fù)位電路、JTAG調(diào)試電路,如圖2所示。單片機(jī)的引腳VeREF+為內(nèi)部A/D轉(zhuǎn)換參考電壓,接3.3 V。為保證參考電壓穩(wěn)定,該引腳及單片機(jī)電源引腳DVCC均對(duì)地增加了濾波電容C8、C6以濾掉環(huán)境電磁干擾。由于430單片機(jī)為低電平復(fù)位,由R1、C5組成復(fù)位電路,系統(tǒng)上電后電容C5充電,相當(dāng)于短路,RST端為低電平,充電完畢后RST變?yōu)楦唠娖剑瓿缮想娮詣?dòng)復(fù)位功能。按鍵S2為系統(tǒng)增加了手動(dòng)復(fù)位功能。JTAG電路為系統(tǒng)程序調(diào)試下載接口,連接MSP-FET430UIF仿真器即可實(shí)現(xiàn)程序調(diào)試下載工作。在主機(jī)系統(tǒng)電路設(shè)計(jì)中,增加了按鍵電路如圖2中S3、S4、S5、S6所示。S3鍵為功能鍵,用于選擇采樣時(shí)間、顯示模式、報(bào)警上下限等功能;S4、S5分別為增加、減少按鍵,用于參數(shù)調(diào)整;S6鍵作為備用按鍵,便于后期功能拓展開(kāi)發(fā)。按鍵接至單片機(jī)具有外部中斷功能的P1口,CPU可隨時(shí)進(jìn)入按鍵中斷服務(wù)子程序?qū)ο鄳?yīng)參數(shù)進(jìn)行設(shè)定調(diào)整。
2.2 甲醛傳感器模塊電路設(shè)計(jì)[10]
所設(shè)計(jì)的甲醛傳感器模塊電路如圖3所示。由于甲醛傳感器AQM201輸出模擬量,需經(jīng)A/D轉(zhuǎn)換后得到數(shù)字量方可送給單片機(jī)處理。考慮到MSP430單片機(jī)內(nèi)部自帶高精度12位A/D轉(zhuǎn)換器,滿足設(shè)計(jì)要求,因此直接采用430單片機(jī)內(nèi)部A/D轉(zhuǎn)換器將信號(hào)轉(zhuǎn)換為數(shù)字量后供單片機(jī)CPU處理。由于甲醛傳感器輸出模擬量電壓范圍為0~5 V,而單片機(jī)A/D采樣滿量程電壓為3.3 V,因此傳感器輸出的模擬量還需進(jìn)行電壓量程匹配轉(zhuǎn)換。如圖3所示,R2、R3組成分壓電路,阻值分別為1.7 kΩ、3.3 kΩ。3.3 kΩ電阻兩端的電壓作為模擬電壓輸出,此時(shí)該模塊輸出模擬電壓范圍將為0~3.3 V,與單片機(jī)A/D轉(zhuǎn)換量程匹配,該輸出信號(hào)接至單片機(jī)A/D轉(zhuǎn)換口P6.0。

圖3 甲醛傳感器模塊電路及實(shí)物圖
2.3 無(wú)線通信模塊電路設(shè)計(jì)
無(wú)線通信采用NRF24L01模塊[11-12],電路如圖4所示,N1為無(wú)線通信模塊,其中第8腳為中斷請(qǐng)求輸出端,接至單片機(jī)的外部中斷P1.4口。各無(wú)線通信模塊在接收到數(shù)據(jù)后,將數(shù)據(jù)保存在自身存儲(chǔ)器中,然后向單片機(jī)發(fā)出中斷請(qǐng)求,以便單片機(jī)及時(shí)讀取保存在自身存儲(chǔ)器中的數(shù)據(jù),防止該數(shù)據(jù)被新接收的數(shù)據(jù)覆蓋。

圖4 無(wú)線通信模塊電路及實(shí)物圖
主機(jī)中的無(wú)線通信模塊IRQ引腳接至單片機(jī)外部中斷接口,以便主機(jī)及時(shí)響應(yīng)各子機(jī)發(fā)來(lái)的數(shù)據(jù)。系統(tǒng)中各子機(jī)將定義各自的地址碼,代表各子機(jī)所在的不同房間。子機(jī)在發(fā)送數(shù)據(jù)的同時(shí)連同自身的地址碼一并發(fā)出,主機(jī)接收到數(shù)據(jù)后,通過(guò)地址碼來(lái)區(qū)分各個(gè)子機(jī)的數(shù)據(jù)信息,從而得到對(duì)應(yīng)房間區(qū)域的甲醛含量濃度。主機(jī)采集到信息后在液晶顯示屏上顯示當(dāng)前各個(gè)區(qū)域的甲醛濃度百分比,以及甲醛含量隨時(shí)間變化的曲線圖,便于用戶分析甲醛濃度分布及走向。
2.4 報(bào)警模塊電路設(shè)計(jì)

圖5 報(bào)警模塊電路
選用蜂鳴器作為報(bào)警發(fā)生裝置,采用PNP三極管9012作為驅(qū)動(dòng),如圖5中Q1所示。考慮到I/O口的驅(qū)動(dòng)能力,單片機(jī)將以灌電流形式控制蜂鳴器發(fā)聲,控制I/O口由單片機(jī)的P5.5引腳提供,當(dāng)I/O口為低電平時(shí),蜂鳴器發(fā)聲,為高電平時(shí),蜂鳴器停止發(fā)聲。
2.5 顯示模塊電路設(shè)計(jì)
如圖6所示,顯示模塊采用LCD12864HZ液晶顯示器,其自帶漢字字庫(kù),可顯示漢字、字符及圖形,使用方便。液晶直接采用3.3 V電壓供電,便于與單片機(jī)I/O口電平匹配。為簡(jiǎn)化電路設(shè)計(jì),節(jié)約I/O口開(kāi)支,液晶顯示模塊與單片機(jī)的接口采用串行接口進(jìn)行通信,SCLK、SID、CS三引腳分別接至單片機(jī)的P3.5、P3.6、P3.7三個(gè)引腳。

圖6 顯示模塊電路
3.1 子機(jī)系統(tǒng)軟件設(shè)計(jì)
在子機(jī)系統(tǒng)中,傳感器每隔一定時(shí)間采集一次數(shù)據(jù),經(jīng)數(shù)據(jù)處理、卡爾曼濾波[13-15]后,通過(guò)無(wú)線通信模塊發(fā)送給主機(jī),同時(shí)子機(jī)實(shí)時(shí)準(zhǔn)備接收主機(jī)發(fā)送過(guò)來(lái)的設(shè)置命令(用于設(shè)置子機(jī)傳感器采樣時(shí)間間隔等)。因此子機(jī)系統(tǒng)軟件任務(wù)包含傳感器數(shù)據(jù)采集、數(shù)據(jù)處理、數(shù)據(jù)發(fā)送、數(shù)據(jù)接收幾個(gè)部分。由于無(wú)線接收任務(wù)屬于緊急任務(wù),該任務(wù)由外部中斷來(lái)完成。主程序?qū)⑼瓿蓚鞲衅鲾?shù)據(jù)采集、數(shù)據(jù)處理、數(shù)據(jù)發(fā)送任務(wù),流程圖如圖7所示。

圖7 子機(jī)系統(tǒng)程序流程圖
3.2 主機(jī)系統(tǒng)軟件設(shè)計(jì)
主機(jī)要完成的任務(wù)有:本機(jī)數(shù)據(jù)采集、子機(jī)數(shù)據(jù)接收、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)顯示、傳感器檢測(cè)、按鍵掃描、發(fā)送數(shù)據(jù)給上位機(jī)、報(bào)警等。根據(jù)任務(wù)的緊急性將數(shù)據(jù)接收、按鍵掃描任務(wù)均設(shè)置為外部中斷模式,并將數(shù)據(jù)接收設(shè)置為高優(yōu)先級(jí)中斷。數(shù)據(jù)顯示、傳感器檢測(cè)以及報(bào)警任務(wù)程序在主程序中循環(huán)調(diào)用。其中,初始化函數(shù)包含了時(shí)鐘配置、I/O口初始化、中斷初始化、各功能模塊初始化等,為系統(tǒng)工作做好準(zhǔn)備。外部中斷入口對(duì)應(yīng)的中斷源為主機(jī)系統(tǒng)單片機(jī)的P1.4引腳,在初始化函數(shù)中將該引腳設(shè)置為外部中斷模式。主機(jī)流程圖在此不再贅述。
3.3 系統(tǒng)數(shù)據(jù)處理

圖8 模擬輸出特性曲線圖
圖8為甲醛傳感器模擬輸出特性曲線圖,橫軸為濃度值,縱軸為采集到的電壓,根據(jù)圖中提供的數(shù)據(jù)可知,對(duì)采集到的數(shù)據(jù)進(jìn)行處理即可計(jì)算出甲醛在空氣中的含量。設(shè)采集到的電壓為Vx,甲醛濃度為Y,則計(jì)算公式為:

圖9 系統(tǒng)主機(jī)實(shí)物圖
圖9為系統(tǒng)主機(jī)實(shí)物圖及實(shí)時(shí)監(jiān)測(cè)曲線顯示。系統(tǒng)包括硬件設(shè)計(jì)和軟件編程兩部分,實(shí)現(xiàn)了對(duì)室內(nèi)甲醛含量的實(shí)時(shí)監(jiān)控與報(bào)警監(jiān)測(cè)。采用卡爾曼濾波器對(duì)傳感器采集到的信號(hào)進(jìn)行濾波,保證了采樣數(shù)據(jù)的準(zhǔn)確性。系統(tǒng)檢測(cè)精度高、功耗低、穩(wěn)定性好,可用于建筑室內(nèi)甲醛氣體含量監(jiān)測(cè),也可用于電廠、化工、地下管道等施工環(huán)境監(jiān)測(cè),防止甲醛中毒事故發(fā)生。
[1] 王維新.甲醛釋放與檢測(cè)[M].北京:化學(xué)工業(yè)出版社,2003.
[2] 陳煥文,鄭健,李明,等.甲醛檢測(cè)方法及儀器[J].分析化學(xué)評(píng)述與進(jìn)展,2004,32(7):969-972.
[3] GB/T 18204.26-2000,公共場(chǎng)所空氣中甲醛測(cè)定方法[S].北京:中國(guó)標(biāo)準(zhǔn)出版社,2000.
[4] GB/T 16129-1995,居住區(qū)大氣甲醛衛(wèi)生檢驗(yàn)標(biāo)準(zhǔn)方法:分光光度法[S].北京:中國(guó)標(biāo)準(zhǔn)出版社,1995.[5] 陸學(xué)奎,蘭建中.家庭室內(nèi)裝修后空氣中甲醛污染調(diào)查及防治措施初探[J].現(xiàn)代預(yù)醫(yī)學(xué),2006,33(6):952-953.
[6] 馬天.甲醛分析儀現(xiàn)場(chǎng)檢測(cè)技術(shù)[J].中國(guó)測(cè)試技術(shù),2005,31(5):131-132.
[7] 孫登峰,方正,馬天,等.甲醛快速測(cè)定儀測(cè)試性能研究[J].中國(guó)測(cè)試技術(shù),2006,32(6):26-28.
[8] 胡大可.MSP430C語(yǔ)言程序設(shè)計(jì)與開(kāi)發(fā)[M].北京:北京航空航天大學(xué)出版社,2003.
[9] 劉忠超,殷華文,郭抒穎.基于MSP430單片機(jī)的智能儀表設(shè)計(jì)[J].自動(dòng)化與儀表,2015(2):20-24.
[10] 單成祥.傳感器的理論與設(shè)計(jì)基礎(chǔ)及應(yīng)用[M].北京:國(guó)防工業(yè)出版社,1999.
[11] 侯杏娜,陳壽宏,唐萬(wàn)順.基于NRF24L01的降雨量實(shí)時(shí)采集無(wú)線監(jiān)測(cè)系統(tǒng)[J].計(jì)算機(jī)測(cè)量與控制,2014,22(8):2372-2376.
[12] 嚴(yán)林祥,張紅雨.基于Web和nRF24L01的遠(yuǎn)程數(shù)據(jù)接收器設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2013,39(10):69-75.
[13] DAUM F.Nonlinear filters beyond the Kalman filter[J].IEEE A&E Systems Magazine,2005,20(8):57-69.
[14] KIM J,VADDI S S,MENON P K,et al.Comparison between nonlinear filtering techniques forspiraling ballistic missile state estimation [J].IEEE Transactions on Aerospace and Electronic Systems,2012,48(1):313-328.
[15] KALMAN R E.A new approach to linear filtering and prediction problems [J].Transactions of the AMSE Journal of Basic Engineering,1960,82(1):35-45.
The design of formaldehyde content monitoring alarm system based on MSP430 single chip
Zeng Xianyang1,Yang Hongli2,Yu Hanqi1,Chu Nanfeng1
(1.Industry Center,Nanjing Institute of Technology,Nanjing 211167,China; 2.Department of Mathematics and Physics,Nanjing Institute of Technology,Nanjing 211167,China)
At present,the formaldehyde detection device on the market have many limits such as large error and higher power consumption.This paper designs a kind of formaldehyde detector which chooses MSP430 single chip microcomputer as control core,multiple outlets to auxiliary monitoring,and the wireless module for data communication.The analogue which has been collected by sensor can be converted to the digital quantity using the internal A/D conversion module in single chip microcomputer,and then be filtered by the Kalman filter,at last the precise sampling data can be guaranteed.This monitoring system can meet the needs of consumers well with the high precision,low power consumption and good stability which is verified by test.
low power consumption; MSP430 MCU; formaldehyde monitor; calman filter; multiple outlets
南京工程學(xué)院青年基金重點(diǎn)項(xiàng)目(QKJA201404);南京工程學(xué)院校級(jí)教學(xué)改革項(xiàng)目(JG201440);南京工程學(xué)院創(chuàng)新基金重大項(xiàng)目(CKJA201410)
TP216+.1
A DOI:10.19358/j.issn.1674-7720.2016.19.026
曾憲陽(yáng),楊紅莉,郁漢琪,等.基于MSP430單片機(jī)的甲醛含量監(jiān)測(cè)報(bào)警系統(tǒng)設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2016,35(19):89-91,94.
2016-05-03)
曾憲陽(yáng)(1979-),男,博士研究生,實(shí)驗(yàn)師,主要研究方向:控制系統(tǒng)及數(shù)學(xué)建模。
楊紅莉(1980-),通信作者,女,博士后,講師,主要研究方向:計(jì)算數(shù)學(xué)。E-mail:yanghongli1016@163.com。
郁漢琪(1961-),男,學(xué)士,教授,主要研究方向:電子技術(shù)應(yīng)用。