塔里木大學信息工程學院通信工程系 鄒 敏 張 曉 鄭現超 張楠楠
該小轎車報警救人系統主要由STC89C52單片機作為主控電路,通過MH-Z14A二氧化碳傳感器檢測車內的二氧化碳濃度及溫度感應器檢測車內溫度,具體包括STC89C52單片機、MH-Z14A二氧化碳傳感器、溫度感應器、紅外感應裝置、SIM 900A通信電路、LCD1602液晶顯示器、蜂鳴器報警裝置等模塊。
系統基本原理是首先通過紅外感應裝置檢測在密閉的、不行駛的小轎車車內有無乘員,若沒有,則本系統不開啟;若有,則系統開始工作。然后通過MH-Z14A二氧化碳傳感器和溫度感應器不停地檢測車內的二氧化碳濃度、溫度是否超過設定的閾值[1],若二氧化碳濃度或溫度其中有一項超過閾值,則將檢測到的數值通過LCD1602液晶顯示器顯示出來,并通過SIM 900A通信模塊自動打電話給車主以報警,與此同時車窗半開啟。
圖1 系統結構框圖
采用STC89C52芯片作為主控電路,其理由如下[2]:
第一,采用了超大規模集成電路技術的STC89C52芯片,數據處理能力極強。
第二,該芯片在-40~+85℃的溫度范圍內皆可正常工作。換言之,在惡劣的環境下STC89C52芯片的性能良好。
該模塊采用串口(UART)通信,可實現發短信或者打電話的功能,并且利于封裝,同時因為SIM 900A的小巧、緊湊,所以當該芯片作為通信模塊被應用在此報警系統之時,所占比的空間更小,而其采用了功能強大的處理器ARM 9216EJ-S內核又使得其性能優越,能實現信息的高速傳輸。
該傳感器的工作原理是利用非色散紅外(NDIR)原理對空氣中存在的CO2進行探測,具有很好的選擇性和無氧氣依賴性[3]。它的高靈敏度能為本報警系統的檢測工作提供極其精確而有效的數據,同時其優異的穩定性、使用壽命長等優點又大大增強了本系統長久工作之后的可靠性。
該模塊的核心就是溫度傳感器,溫度傳感器是指能感受溫度并轉換成可用輸出信號的傳感器[4]。按測量方式可以分為接觸式和非接觸式兩大類[5]。鑒于本設計系統的特性,考慮到溫度感應模塊需要精確地檢測車內溫度,因而必須先充分的與車內空氣接觸,故采用接觸式的溫度測量儀表。
接觸式的溫度測量儀表是需要通過傳導或對流達到熱平衡,從而使溫度計的示值能直接表示被測對象的溫度,一般測量精度較高[6]。本系統是應用到車內,所以設計時必須充分考慮到溫度計的接觸面問題。
LCD1602液晶顯示器其特殊的點陣字符位特性,有著行間距和字符間距的作用。正因為如此,所以LCD1602它不能很好地顯示圖形,卻能較好地顯示具體數據[7]。LCD1602是指顯示的內容為16X2,即可以顯示兩行,每行則是16個字符液晶模塊(顯示字符和數字)[8]。
當單片機采集到二氧化碳濃度及溫度的信號后,經過處理、加工、傳遞,立即在LCD1602上面顯示出當前測量到的二氧化碳的濃度值。
本設計采用STC89C52和STC89C51作為控制的單片機芯片,是本系統中的核心部分與中樞,他們控制整個系統的正常運行[9]。軟件設計主要分為系統初始化、驅動傳感器,二氧化碳濃度、溫度的計算和顯示等,設計的主程序流程圖如圖2所示。
圖2 主體設計流程圖
本設計系統采用的定時器中斷是為了驅動二氧化碳傳感器和溫度感應裝置,每次進入中斷后需要不斷地重新賦值,流程圖如圖3所示。
圖3 中斷程序
圖4 SIM 900A模塊程序流程
SIM 900A模塊與單片機是串口通信,由單片機的引腳P30/P31來控制SIM 900A模塊的讀寫數據命令功能,流程圖如圖4所示。SIM 900A模塊內部是采用串口(UART)通信,是通過另一個單片機發送AT指令來控制的,只要該單片機通電則SIM 900A模塊就開始打電話。
報警采用的是以iSIM 900A模塊為核心加上蜂鳴器、電風扇和2個發光二極管來顯示。傳感器輸入值后,運行比較程序,小于閾值則執行顯示程序,大于閾值則進行聲光報警。報警流程圖如圖5所示。
圖5 報警程序流程圖
根據本設計的特點,因其核心主要是STC89C52單片機,所以這里采用Keil uVision3,它是51 系列兼容單片機C語言的開發系統。它具有效率高,運行速度快,占用存儲空間小等等一系列優點[10]。它能夠寫出最優化程序,且能反映出計算機的實際運行情況[11]。具有良好的模塊化、容易閱讀、維護等優點,且編寫的模塊程序易于移植[12]。最后把Keil uVision3生成的HEX文件,再通過STC_ISP_V483燒錄到單片機中及程序燒錄完成。
圖6所示為本硬件設計實物圖,包括單片機STC89C52,STC89C51,MH-Z14A氣敏傳感器,溫度傳感器,SIM 900A通信模塊及開關,蜂鳴器,電風扇和電阻等。
待硬件和軟件都準備完畢之后,將該系統放入密閉的玻璃箱內,打開電源開關,系統初始化,各模塊預熱并開始正常工作。當LCD1602液晶顯示屏正常工作時,就往密閉玻璃箱中徐徐通入二氧化碳,幾秒后熒屏則會顯示CO2濃度值開始升高。若二氧化碳濃度超過設定的閾值,則立馬會啟動蜂鳴器報警,電風扇轉動,二極管被點亮,SIM 900A模塊開始工作(大約10秒后會接到該模塊撥打的電話)。測試時我們還可以調節閾值的大小來控制系統的報警狀態。同理,當對玻璃箱緩緩加溫時,若超過設定的溫度閾值時,也會立即報警(整個過程溫度的測定值將不會在LCD1602上顯示)。最后,將把二氧化碳和溫度結合起來共同對本系統作用,只要其一超過閾值則報警。
圖6 總體實物圖
通過團隊的不斷調整與改進,基于單片機與軟件設計的預警救人系統現在能輕松地實現紅外感應人體、溫度預警、二氧化碳濃度預警、自動撥打報警電話等功能。基于該系統的設計靈感來源于社會事件,因而本報警系統具有良好的擴展性及實用性,尤其其實用性具有更為廣闊的應用價值和極高的實際運用意義。該系統不僅可運用于家庭小轎車預警救人,也可運用于中小學校車之內,更可以用于礦產挖掘和密閉空間氣體監測、報警等方面。
當然,由于客觀條件不足和團隊能力有限,該系統還有以下不足之處需要改進:
(1)增加語音提示模塊;
(2)單片機的控制算法較為簡單,應進一步對中斷、判斷、報警等程序算法進行優化,以提高靈敏度,減少延遲。
[1]李萬鵬,許美玉,王迪,李世明.基于IoT的二氧化碳濃度檢測及通風控制系統的設計與實現[J].智能計算機與應用,2015,5(1):53-55.
[2]蔡曉艷,胡朝陽.基于STC89C52單片機的火災語音報警器的設計與實現[J].電子設計工程,2015,23(14):67-69.
[3]彭占武,王雪,袁洪印.基于ZigBee的雞舍環境無線監測系統設計與實現[J].中國農機化學報,2015,36(2):238-241.
[4]楊東生,崔博.傳感器在油氣生產物聯網中的應用[J].通信管理與技術,2013(2):17-21.
[5]車向前.結構光三維測量系統中匹配與拼合技術研究[D].哈爾濱工程大學,2008:72.
[6]王琳.淺談溫度傳感器特點及其應用[J].黑龍江科技信息,2011:21.
[7]張建軍.MRI梯度功率放大器軟件系統設計與分析[D].電子科技大學,2013:78.
[8]趙海蘭,趙之赫.基于單片機的紅外遙控智能小車的設計[J].電子世界,2013(3):31-33.
[9]張紅,雷志國,潘帥帥,王暉.基于MCS51單片機的智能校園導游車的設計[J].長春工程學院學報(自然科學版),2012,13(4):108-110.
[10]王正蘭.基于at89c51的多功能智能實驗測試儀器的設計與實現[D].蘭州大學,2006:77.
[11]吳媛媛.軸類零件裝配力檢測系統的研究[D].大連交通大學,2007:82.
[12]360百科.https://baike.so.com/doc/5407199-5645104.html.