曾憲陽1,楊紅莉2,郁漢琪1,褚南峰1
(1.南京工程學院 工業中心,江蘇 南京 211167;2.南京工程學院 數理部,江蘇 南京 211167)
摘要:根據市場上甲醛檢測裝置存在誤差大、功耗高等缺點,設計了以MSP430單片機作為控制核心,多子機網點輔助監測,無線模塊進行數據通信的甲醛檢測儀。使用單片機內部A/D轉換模塊將傳感器采集到的模擬量轉換成數字量,再經卡爾曼濾波器進行濾波,保證了采樣數據的準確性。該監測系統檢測精度高、功耗低、穩定性好,經試驗驗證,能很好地滿足消費者需求。
關鍵詞:低功耗;MSP430單片機;甲醛監測儀;卡爾曼濾波;多網點
0引言
當前,空氣環境污染嚴重,特別是新裝修的房間含有甲醛等有害物質[1-5],影響到人們的身體健康。市面現有的甲醛檢測系統多為單點測試,體積大、功耗高、檢測單一、價格昂貴,且不能自動對甲醛含量高的區域進行重點實時監測[6-7],因此本文設計了一種新的甲醛含量監控報警系統。該系統包括多個子機系統及一個主機系統,將每個子機系統分散安置在各個房間的某個區域,主機系統放置在臥室或客廳等住戶常活動的位置,主機與子機之間采用NRF24L01無線網絡進行通信。子機系統定時將采集到的甲醛含量信息通過無線網絡傳遞給主機,主機通過中斷接收各子機發來的信息并進行分析處理,同時根據需要將數據通過無線網絡發送給上位機PC,給用戶帶來方便。
1系統設計思路
系統選用MSP430F149單片機作為主控制芯片,以減少功耗,提高效率。采用具有精度高、功耗低的AQM201傳感器來檢測甲醛含量。采用多個430單片機作為子機模塊分別測量對應區域甲醛含量,然后各子機實時將采集到的甲醛含量信息傳送給430主機模塊,子機與主機之間采用NRF24L01無線模塊進行通信。系統設計框圖如圖1所示。
子機系統中的甲醛傳感器檢測空氣中的甲醛含量,經處理以模擬信號形式輸出,經A/D轉換為數字量后傳送給CPU,考慮到傳感器非線性因素,CPU將數據修正后轉換為實際甲醛含量濃度百分比,通過各自無線通信模塊通道傳輸給主機。以上過程每隔5 s重復采集發送一次,該采樣時間可通過主機發送給子機的命令參數進行自動調整。
主機通過外部中斷及時采集各子機發來的信息,并根據子機發來的地址碼將各子機發來的信息進行歸類,同一子機發來的信息存放在對應房間號的數組中。主機通過數組數據及時分析各房間的甲醛含量值,對于甲醛含量長時間未呈減少趨勢的房間區域,主機將自動通知子機調整采樣時間來進行重點監測。當甲醛含量連續多天一直超過設定上限值時,主機還會發出報警聲,用以提示用戶甲醛超標。在實際測量過程中,傳感器接收到的信號包括環境干擾信號,因此各子機采用卡爾曼濾波器對采樣數據進行濾波,更大程度地保證了采樣數據的準確性。
2硬件電路設計
2.1MSP430單片機最小系統電路設計[8-9]
本系統選用MSP430F149單片機作為主控單元,其最小系統包含了時鐘電路、復位電路、JTAG調試電路,如圖2所示。單片機的引腳VeREF+為內部A/D轉換參考電壓,接3.3 V。為保證參考電壓穩定,該引腳及單片機電源引腳DVCC均對地增加了濾波電容C8、C6以濾掉環境電磁干擾。由于430單片機為低電平復位,由R1、C5組成復位電路,系統上電后電容C5充電,相當于短路,RST端為低電平,充電完畢后RST變為高電平,完成上電自動復位功能。按鍵S2為系統增加了手動復位功能。JTAG電路為系統程序調試下載接口,連接MSP-FET430UIF仿真器即可實現程序調試下載工作。在主機系統電路設計中,增加了按鍵電路如圖2中S3、S4、S5、S6所示。S3鍵為功能鍵,用于選擇采樣時間、顯示模式、報警上下限等功能;S4、S5分別為增加、減少按鍵,用于參數調整;S6鍵作為備用按鍵,便于后期功能拓展開發。按鍵接至單片機具有外部中斷功能的P1口,CPU可隨時進入按鍵中斷服務子程序對相應參數進行設定調整。
2.2甲醛傳感器模塊電路設計[10]
所設計的甲醛傳感器模塊電路如圖3所示。由于甲醛傳感器AQM201輸出模擬量,需經A/D轉換后得到數字量方可送給單片機處理。考慮到MSP430單片機內部自帶高精度12位A/D轉換器,滿足設計要求,因此直接采用430單片機內部A/D轉換器將信號轉換為數字量后供單片機CPU處理。由于甲醛傳感器輸出模擬量電壓范圍為0~5 V,而單片機A/D采樣滿量程電壓為3.3 V,因此傳感器輸出的模擬量還需進行電壓量程匹配轉換。如圖3所示,R2、R3組成分壓電路,阻值分別為1.7 kΩ、3.3 kΩ。3.3 kΩ電阻兩端的電壓作為模擬電壓輸出,此時該模塊輸出模擬電壓范圍將為0~3.3 V,與單片機A/D轉換量程匹配,該輸出信號接至單片機A/D轉換口P6.0。
2.3無線通信模塊電路設計
無線通信采用NRF24L01模塊[11-12],電路如圖4所示,N1為無線通信模塊,其中第8腳為中斷請求輸出端,接至單片機的外部中斷P1.4口。各無線通信模塊在接收到數據后,將數據保存在自身存儲器中,然后向單片機發出中斷請求,以便單片機及時讀取保存在自身存儲器中的數據,防止該數據被新接收的數據覆蓋。
主機中的無線通信模塊IRQ引腳接至單片機外部中斷接口,以便主機及時響應各子機發來的數據。系統中各子機將定義各自的地址碼,代表各子機所在的不同房間。子機在發送數據的同時連同自身的地址碼一并發出,主機接收到數據后,通過地址碼來區分各個子機的數據信息,從而得到對應房間區域的甲醛含量濃度。主機采集到信息后在液晶顯示屏上顯示當前各個區域的甲醛濃度百分比,以及甲醛含量隨時間變化的曲線圖,便于用戶分析甲醛濃度分布及走向。
2.4報警模塊電路設計
選用蜂鳴器作為報警發生裝置,采用PNP三極管9012作為驅動,如圖5中Q1所示。考慮到I/O口的驅動能力,單片機將以灌電流形式控制蜂鳴器發聲,控制I/O口由單片機的P5.5引腳提供,當I/O口為低電平時,蜂鳴器發聲,為高電平時,蜂鳴器停止發聲。
2.5顯示模塊電路設計
如圖6所示,顯示模塊采用LCD12864HZ液晶顯示器,其自帶漢字字庫,可顯示漢字、字符及圖形,使用方便。液晶直接采用3.3 V電壓供電,便于與單片機I/O口電平匹配。為簡化電路設計,節約I/O口開支,液晶顯示模塊與單片機的接口采用串行接口進行通信,SCLK、SID、CS三引腳分別接至單片機的P3.5、P3.6、P3.7三個引腳。
3軟件程序設計
3.1子機系統軟件設計
在子機系統中,傳感器每隔一定時間采集一次數據,經數據處理、卡爾曼濾波[13-15]后,通過無線通信模塊發送給主機,同時子機實時準備接收主機發送過來的設置命令(用于設置子機傳感器采樣時間間隔等)。因此子機系統軟件任務包含傳感器數據采集、數據處理、數據發送、數據接收幾個部分。由于無線接收任務屬于緊急任務,該任務由外部中斷來完成。主程序將完成傳感器數據采集、數據處理、數據發送任務,流程圖如圖7所示。
3.2主機系統軟件設計
主機要完成的任務有:本機數據采集、子機數據接收、數據存儲、數據顯示、傳感器檢測、按鍵掃描、發送數據給上位機、報警等。根據任務的緊急性將數據接收、按鍵掃描任務均設置為外部中斷模式,并將數據接收設置為高優先級中斷。數據顯示、傳感器檢測以及報警任務程序在主程序中循環調用。其中,初始化函數包含了時鐘配置、I/O口初始化、中斷初始化、各功能模塊初始化等,為系統工作做好準備。外部中斷入口對應的中斷源為主機系統單片機的P1.4引腳,在初始化函數中將該引腳設置為外部中斷模式。主機流程圖在此不再贅述。
3.3系統數據處理
圖8為甲醛傳感器模擬輸出特性曲線圖,橫軸為濃度值,縱軸為采集到的電壓,根據圖中提供的數據可知,對采集到的數據進行處理即可計算出甲醛在空氣中的含量。設采集到的電壓為Vx,甲醛濃度為Y,則計算公式為:
4結論
圖9為系統主機實物圖及實時監測曲線顯示。系統包括硬件設計和軟件編程兩部分,實現了對室內甲醛含量的實時監控與報警監測。采用卡爾曼濾波器對傳感器采集到的信號進行濾波,保證了采樣數據的準確性。系統檢測精度高、功耗低、穩定性好,可用于建筑室內甲醛氣體含量監測,也可用于電廠、化工、地下管道等施工環境監測,防止甲醛中毒事故發生。
參考文獻
[1] 王維新.甲醛釋放與檢測[M].北京:化學工業出版社,2003.
[2] 陳煥文,鄭健,李明,等.甲醛檢測方法及儀器[J].分析化學評述與進展,2004,32(7):969-972.
[3] GB/T 18204.26-2000,公共場所空氣中甲醛測定方法[S].北京:中國標準出版社,2000.
[4] GB/T 16129-1995,居住區大氣甲醛衛生檢驗標準方法:分光光度法[S].北京:中國標準出版社,1995.
[5] 陸學奎,蘭建中.家庭室內裝修后空氣中甲醛污染調查及防治措施初探[J].現代預醫學,2006,33(6):952-953.
[6] 馬天.甲醛分析儀現場檢測技術[J].中國測試技術,2005,31(5):131-132.
[7] 孫登峰,方正,馬天,等.甲醛快速測定儀測試性能研究[J].中國測試技術,2006,32(6):26-28.
[8] 胡大可.MSP430C語言程序設計與開發[M].北京:北京航空航天大學出版社,2003.
[9] 劉忠超,殷華文,郭抒穎.基于MSP430單片機的智能儀表設計[J].自動化與儀表,2015(2):20-24.
[10] 單成祥.傳感器的理論與設計基礎及應用[M].北京:國防工業出版社,1999.
[11] 侯杏娜,陳壽宏,唐萬順.基于NRF24L01的降雨量實時采集無線監測系統[J].計算機測量與控制,2014,22(8):2372-2376.
[12] 嚴林祥,張紅雨.基于Web和nRF24L01的遠程數據接收器設計[J].電子技術應用,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.