基于藍牙4.0的教室人數監測智能系統設計
摘要:為了能實時監測教室人數,方便各大高校的日常教學及管理活動,提出了一種基于藍牙4.0技術、用于統計教室人數的智能系統。本系統以基于藍牙低功耗技術的CC2540射頻單片機為核心,通過控制紅外光電傳感器和溫濕度傳感器進行數據的采集,并通過WiFi模塊將采集到的數據傳輸給遠程上位機、手機等終端設備,也可以通過WiFi模塊查詢教室的信息。實際測試結果表明,該設計可靠性高、功耗低、準確度高,可廣泛應用于各大高校的日常教學活動中。
本文引用地址:http://www.104case.com/article/201610/307264.htm引言
智能人數統計、環境監測等系統,一直以來備受無線通信及電子行業的高度關注,并被廣泛應用于機場、車站、劇院等人流量較大且空間有限的環境資源中。教室作為現在大學生最為熟悉的學習場所,其環境的優劣直接關系到學生的學習效率。教室人數統計系統作為出勤率統計的輔助系統,一方面,服務于教師,使教師能將精力集中于教學活動而非出勤率考量活動(點名或簽到);另一方面,便于學校教師管理部門實時獲得教室利用率等信息的傳遞與反饋,從而合理安排教室資源,同時也有助于同學快速了解教室使用情況。
藍牙無線技術是使用范圍廣泛的全球短距離無線標準之一,藍牙技術聯盟(SIG)于2010年7月發布了藍牙4.0版本核心規范,自此藍牙邁入了4.0時代。藍牙4.0規范的核心是低功耗技術,即藍牙4.0BLE。該技術最大特點是擁有超低的運行功耗和待機功耗,藍牙低功耗設備使用一粒紐扣電池便可以持續工作數年之久。同時,該設備可以應用于對成本和功耗都有嚴格要求的無線方案,并廣泛應用于醫療保健、體育健身、家庭娛樂、傳感器物聯網等眾多領域。
因此,本文設計了一種基于最新藍牙4.0技術的教室人數統計系統,相比于已有的人數統計系統,具有低成本、低功耗和更好的通用性能,擴展了無線傳感器網絡在智能手機、平板電腦等移動終端上的應用,具有很高的實用價值和參考價值。
1 系統架構
系統主要由CC2540射頻單片機、液晶顯示器、紅外光電傳感器、溫濕度傳感器及WiFi模塊組成,分為教室前門和后門兩個子系統,其中,前門藍牙模塊作為主節點(Central),而后門藍牙模塊作為從節點(Peripheral)。與后門系統相比,前門系統多了一個WiFi模塊,其主要作用是為手機終端和上位機提供連接。系統組成框圖如圖1所示。

前后門子系統的溫濕度傳感器和光電傳感器負責采集教室的溫濕度、人數信息,前門(后門)子系統將采集到的數據通過藍牙4.0協議發送到后門(前門)子系統,接收到的數據將通過液晶顯示器顯示在門口,也可以通過WiFi發送給上位機監控終端和手機終端。
2 系統的硬件設計
2.1 處理器單元
主控單元以CC2540射頻單片機為核心,CC2540是TI公司推出的集成了2.4 GHz射頻收發器、完全兼容8051內核的無線射頻單片機,它與藍牙低功耗協議棧共同構成高性價比、低功耗的片上系統(SoC)解決方案,非常適合藍牙低功耗應用。它也包含了豐富的硬件資源,包括21個通用I/O口、8通道12位ADC、3個通用定時器、2個串口、5通道DMA,支持SPI、USB等。
CC2540外圍電路簡單,外接幾個阻容器件構成的濾波電路和PCB天線即可實現網絡節點的構建。CC2540最小系統主要由32 MHz片外晶振、32 kHz睡眠晶振、復位電路、+5 V電源及去耦電容、射頻阻抗匹配電路及單極性PCB天線組成。如果芯片不需要休眠,32kHz晶振可以不用。 CC2540芯片外部接口電路如圖2所示。

其中,L1為磁珠,型號為BLM15HG102SN1D,其在100 MHz時,阻抗為1 kΩ。
2.2 WiFi模塊
人數統計模塊與服務器端通過WiFi模塊實現數據傳輸,一般校園內的無線網絡都使用WiFi覆蓋并且會覆蓋每一個教室,為了節約成本,可以合理利用現有的資源,實現每個數據統計模塊與服務器之間的無線通信。
WiFi模塊選用的芯片是海凌科電子推出的低成本模塊HLK—RM04,該模塊是基于通用串行接口的符合網絡標準的嵌入式模塊,內置TCP/ IP協議棧,能夠實現用戶串口、以太網、無線網(WiFi)3個接口之間的轉換。通過HLK—RM04模塊,傳統的串口設備在不需要更改任何配置的情況下,即可通過Internet網絡傳輸自己的數據。HLK—RM04模塊通過串口與CC2540相連。
2.3 傳感器模塊
溫濕度傳感器采用瑞士Scnsirion公司推出的一款數字溫濕度傳感器芯片SHT11。其主要特點如下:將溫度感測、濕度感測、信號變換、A/D轉換和加熱器等功能集成到一個芯片上;提供二線數字符串行接口,接口簡單、傳輸可靠性高、測量精度可編程調節、測量精確度高、封裝尺寸超小,測量和通信結束后,自動轉入低功耗模式。將其數據線接口外接上拉電阻,電源與地之間加上100nF去耦電容,CC2540就可以用它來采集溫濕度信息。
光電傳感器選用的是上海泰武電器有限公司型號為E3F-DS304C的光電傳感器,其本身已經將放大器LM324、電阻等外圍器件集成在該模塊內,并引出三根線,分別是地線、數據線和電源線。只要將數據線直接接在CC2540的外部中斷接口并接好電源和地線,就可以實現計數的功能。在前后門系統各裝兩個光電傳感器,并排架設,一前一后。
3 系統的軟件設計
系統軟件設計是根據藍牙4.0BLE協議,在藍牙4.0BLE協議棧基礎上構建節點應用程序,實現藍牙設備的互聯以及無線數據的發送。此協議棧不僅完全支持CC2540芯片的單模模式,而且還具有結構簡單、清晰、兼容性高以及可以免費下載等優點,極大地節省了系統開發的成本。
協議棧代碼以C語言為基礎,具有很強的易讀性,開發人員只需要修改部分代碼便能實現相應的特定功能,節省了軟件開發的時間及成本。協議棧的實現方式采用分層的思想,從下到上一共分了8層,分別為物理層、鏈路層、控制接口層、邏輯鏈路控制及自適應協議層、安全管理層、屬性協議層、通用訪問配置文件層 (GAP)、通用屬性配置文件層(GATT),掌握與應用緊密關聯層(GAP和GATT)就可以滿足大部分設計需要。
在使用BLE協議棧進行應用程序開發過程中,開發者不必關心BLE協議棧的具體細節,但要求其對BLE協議棧的基本構成和內部工作原理有個清晰的認識。關于藍牙4.0協議棧的內容可以看相關參考文獻作進一步的了解。
軟件的設計主要包括3部分:一是溫濕度和人數數據的采集與處理,二是無線數據的收發,三是上位機與手機終端的設計。
3.1 溫濕度和人數數據的采集與處理
溫濕度傳感器SHT11是I2C總線接口,由于CC2540沒有I2C總線接口(CC2541有I2C總線接口),因此采用模擬I2C總線進行數據的讀寫,SHT 11的驅動程序需要參考SHT11的數據手冊,這里不再詳述。而對于進出人數的判斷,主要是利用進出門時兩個光電傳感器所產生的信號順序進行判斷。比如,前門系統放著的兩個光電傳感器分別為A和B,當人走進教室時,A先產生信號,B后產生信號,此時判斷有一個人進了教室;而當人走出教室時,B先產生信號,A后產生信號,此時判斷有一個人出了教室。人數采集流程如圖3所示。

3.2 無線數據的收發
藍牙節點組網中,只能存在一個主節點和單個或者多個從節點,從節點是發出信號者,主節點是掃描且發起連接者。當從節點發出廣告信號(包括設備地址和設備名稱之類的附加信息),主節點收到此廣告信號后,向從節點發出掃描請求,當從節點回應掃描時,就完成了設備發現過程。接著主節點向從節點發出連接請求(包括連接時隙、從節點待機次數、連接超時值),從節點回應連接,自此主從節點建立了連接。
藍牙從節點與主節點間的數據傳輸可以分為主節點向從節點讀寫和從節點向主節點發送數據兩種。當主節點向從節點讀寫數據時,主節點會調用GATT_WriteCharValue或者GATT_ReadCharValue和從節點進行通信。
而當從節點向主節點發送數據時,從節點需要通過notify的方式,也就是通過調用GATT_Notification發起和主節點的通信。在本設計中,前門系統通過調用GATT_WriteCharValue將采集到的數據傳輸給后門系統,后門系統通過調用GATT_Notification將采集到的數據傳輸給前門系統,確保了人數統計的準確性。
在CC2540的設計應用中,低功耗是尤為重要的內容,為充分發揮其作用,同時利用人員進出教室時光電傳感器數據接口產生中斷信號的特點,在沒有人員進出教室時,藍牙節點將處于深度睡眠狀態(功耗最低,只能通過復位或者中斷喚醒),而當教室有人員進出時,立刻喚醒節點進行數據的采集與傳輸。
3.3 上位機與手機終端的設計
由控制系統產生的教室人數、教室溫濕度等數據通過WiFi模塊傳給上位機監控端,這樣有利于管理人員對教室的管理。當教室沒有人時,管理員可以第一時間知道,去關掉燈以節約能源。本次設計的上位機采用JAVA設計而成,主要是采用Swing工具實現用戶操作界面,結合SQL數據庫技術實現數據的存儲和遠程數據的訪問。上位機與人數據統計模塊之間采用JAVA自帶的Socket中的UDP協議實現相互之間的通信。上位機與手機終端之間通過 HTTP的POST方式實現全網內的無線通信。上位機界面如圖4所示。

手機終端APP程序設計是使用Myeclipse2014開發環境,在程序中通過JDBC遠程訪問服務器端的SQL數據庫。用戶僅需輸入所要查詢的教室編號,點擊查詢按鈕便可獲得實時的教室信息,并將查詢結果顯示在下面的TextView中。查詢的結果包括教室是否有課、教室的人數和教室的氣溫。手機終端的安卓界面如圖5所示。

結語
教室作為一個與學生息息相關的環境資源,舒適、安逸的學習環境可以極大地提高學習效率以及學習積極性。但在現階段,大多數學校面臨著教室資源的不足,其中很大一部分原因并非教室數量不足,而是因為缺乏實時數據反饋而導致資源的不均衡使用以及學校對教室資源管理不能進行實時的調控。
本文基于藍牙4.0標準規范,提出了一種低功耗、高可靠性的教室人數統計智能系統,其利用藍牙4.0協議進行無線數據的傳輸,并通過WiFi模塊實現藍牙無線網絡與以太網之間的互連。
該系統能將采集到的教室內的實時人數和溫濕度信息等用液晶屏幕顯示出來,同時,通過WiFi模塊將采集到的數據傳輸給遠程的上位機,手機等終端設備也可以通過該模塊查詢教室信息。
該系統的實現和推廣既方便了學生,又為教學管理提供了便利。但由于種種原因,此系統還存在一些不足,比如,目前只有安卓系統的客戶端可以查詢教室信息,其應用和推廣還有很大限制,希望未來能夠在如iOS系統等客戶端上進行數據查詢。
評論