劉斌琨,劉海濤
(合肥工業(yè)大學 電氣與自動化工程學院,安徽 合肥 236000)
隨著二胎政策的開放,新生兒數(shù)量逐年增多,使得新生兒在家庭中處于更重要的位置,安全問題也日益嚴峻。傳統(tǒng)的嬰兒車只是一個出行代步工具,并不能為嬰兒提供較全面的安全保障,即嬰兒被人帶走時嬰兒車無法做出任何相關反應。當今時代控制技術的發(fā)展日新月異,各種設備都走上了智能化道路,嬰兒車也應走向智能。但是智能嬰兒車在國外的發(fā)展傾向于對嬰兒生命體征的監(jiān)測,比如血壓、體溫、身高、體重等方面,國內(nèi)的智能嬰兒車則傾向于避震便攜等方面。智能安全防護領域依舊是一片空白,因此,人們對一款能提供一系列安全措施的智能嬰兒車的渴望越來越急切。

圖1 整體設計的框圖
智能嬰兒車采用嵌入式設計,可以實現(xiàn)包括溫濕度檢測、位置定位、誤抱抓拍、越界檢測和報警等功能。用戶可通過手機軟件遠程監(jiān)控或控制某些功能的開啟和關閉。當系統(tǒng)檢測到嬰兒被非監(jiān)護人抱走時,系統(tǒng)會啟動攝像頭對其抓拍,同時發(fā)出警報,手機會接收到抓拍的照片并振動彈出提示框“嬰兒被抱走”。當嬰兒車與監(jiān)護人之間的距離超出一定范圍時,嬰兒車自身會報警,并且手機也會收到報警訊息,除非通過手機軟件關閉報警或者嬰兒車與監(jiān)護人之間的距離恢復到安全值,否則嬰兒車會一直報警。當監(jiān)護人把嬰兒交給不會使用手機的長輩看管時,可暫時關閉距離報警功能,同時能在手機軟件界面上實時查看嬰兒車的位置。
智能安全嬰兒車的供電電源是只需提供5 V電壓,并且能驅(qū)動兩片單片機,因此,電源體積小、質(zhì)量輕,不會造成額外的質(zhì)量負擔,保證了嬰兒車的便攜性。且整個電路裝置用金屬屏蔽網(wǎng)包裹,減少了電磁輻射,避免對嬰兒身體健康發(fā)育造成影響。
整體設計如圖1所示。
1.1.1 溫濕度采集
溫濕度傳感器選型為DHT11,可檢測溫度和濕度。將傳感器貼于嬰兒車底部,用于檢測車內(nèi)溫度和濕度,并實時地將數(shù)據(jù)傳送給STM32(2),當STM32(1)收到來自手機的溫度命令字時,STM32(1)通過串口1向STM32(2)發(fā)送請求,STM32(2)則將讀取到的溫濕度值回傳給STM32(1)。STM32(1)將接收到的溫濕度通過WIFI模塊發(fā)送給手機。
1.1.2 壓力檢測
壓力傳感器選型為HX711,其單個壓力傳感器測量上限設置為25 kg。三個壓力傳感器呈三角形擺放在嬰兒車底部,目的是更可靠地采集車內(nèi)質(zhì)量,防止嬰兒翻身等活動造成單個壓力傳感器測量值不準確。根據(jù)物理學原理,STM32(2)將三個壓力傳感器檢測到的數(shù)值相加得出最終的結果。當檢測質(zhì)量超過4 kg時,單片機程序中的標志變量Flag1置1,認為此時嬰兒位于車內(nèi);當檢測質(zhì)量低于1.5 kg時,認為嬰兒此時不在車內(nèi),此時判斷Flag1是否為1,如果為1,則說明嬰兒之前位于車內(nèi),現(xiàn)在嬰兒被人抱走,嬰兒車發(fā)出警報并拍照,標志變量Flag1清零,否則繼續(xù)檢測。
1.1.3 指紋識別
指紋模塊選型為AS608。單片機程序內(nèi)標志變量Flag2默認值為0,當監(jiān)護人想要抱起嬰兒時,可先進行指紋識別,單片機會對Flag2的值進行判斷,F(xiàn)lag2為1時拒絕進行指紋識別,F(xiàn)lag2為0時允許進行指紋識別,識別成功后Flag2置1,這段邏輯是為了防止多次識別。指紋識別成功后系統(tǒng)動作為關閉報警功能,壓力傳感器則正常工作,當壓力傳感器檢測的數(shù)值驟降時即嬰兒被抱起,報警系統(tǒng)不響應,F(xiàn)lag2置0,最后報警功能恢復正常。AS608可存儲300枚指紋,響應時間小于0.3 s,認假率小于0.001%,性能足以滿足嬰兒車的需求。
1.1.4 距離報警
距離報警通過檢測藍牙是否連接來實現(xiàn),藍牙選型為HC05。HC05在空曠地帶的理論通訊距離為10 m,但經(jīng)檢測一般情況下其通訊距離在5 m左右。手機和單片機都在監(jiān)測藍牙連接狀態(tài),當嬰兒車與監(jiān)護人的距離超過5 m時,藍牙連接就會斷開,手機和單片機同時報警,且單片機的警報只有當接收到來自手機發(fā)送的警報解除信號或者藍牙重新連接上時才會解除。其目的在于有人推走嬰兒車后,嬰兒車會一直警報,引起監(jiān)護人和其他路人的注意,能夠及時發(fā)現(xiàn)嬰兒車被推走。在推走距離不是很遠時,可通過警報聲追蹤嫌疑人。
1.1.5 位置定位
位置定位通過S1216北斗+GPS雙定位模塊來實現(xiàn),其天線放置在嬰兒車的把手上。S1216與單片機STM32之間通過串口3交換數(shù)據(jù),串口3的波特率設置為38 400,刷新頻率為5 Hz。北斗+GPS具有更高的精度,其定位精度為2.5 mCEP。當監(jiān)護人想要查看嬰兒車位置時可通過手機軟件將命令字中GPS位置1發(fā)送給單片機,STM(1)接收到命令字完成解析后,將經(jīng)緯坐標通過WIFI模塊回傳給手機。因為傳送字長的關系,手機軟件上顯示小數(shù)點后四位,這已經(jīng)能滿足基本需求。
1.1.6 數(shù)據(jù)通信
數(shù)據(jù)通信依賴于WIFI模塊ESP8266來實現(xiàn)。單片機與手機之間的數(shù)據(jù)傳輸都必須通過ESP8266完成。ES8266接收到6位手機命令字后,通過串口2傳送給STM32(1),STM32(1)對6位命令字進行解析,不同的位對應不同的功能,根據(jù)不同的命令字執(zhí)行不同的功能。ESP8266設置的波特率為115 200,傳輸速率約為8.5 KB/S,在數(shù)據(jù)量不大時,可以實現(xiàn)實時傳輸。
1.1.7 報警系統(tǒng)
報警系統(tǒng)由蜂鳴器和攝像頭組成,攝像頭選用OV2640。其像素為200萬,經(jīng)實驗驗證,抓拍的照片可以分辨人的面貌特征,抓拍反應時間小于1 s,能夠在較短的時間內(nèi)對壓力警報做出反應。報警系統(tǒng)被壓力傳感器觸發(fā)時蜂鳴器動作,OV2640抓拍抱起人員,手機軟件彈出“嬰兒被抱起”的窗口并持續(xù)振動。抓拍照片存放在STM32(2)攜帶的內(nèi)存卡里,同時STM32(2)通過STM32(1)發(fā)送到手機。報警系統(tǒng)被藍牙觸發(fā)時蜂鳴器動作,手機軟件彈出“嬰兒超出距離”的窗口并持續(xù)振動。 STM32(1)流程圖和STM32(2)流程圖如圖2和圖3所示。

圖2 STM32(1)流程圖

圖3 STM32(2)流程圖
軟件通過發(fā)送命令字控制系統(tǒng),命令字一共6位。功能如下。對應指示表如表1所示。

表1 對應指示表
第0位:控制GPS,為0時手機軟件不接收經(jīng)緯坐標,為1時接收經(jīng)緯坐標。
第1位:控制DHT11,為0時手機軟件不接收溫濕度值,為1時接收溫濕度值。
第2位:控制指紋模塊,為0時指紋模塊正常工作,為1時指紋模塊禁用。
第3位:控制藍牙,為0時禁用距離報警,為1時開啟距離報警并且啟動手機藍牙。
第4位:控制壓力傳感器,為0時壓力傳感器正常工作,為1時壓力傳感器禁用。
第5位:解除警報,默認為0,允許單片機發(fā)出警報,手機收到警報時置1關閉系統(tǒng)警報。
軟件識別區(qū)分來自單片機回傳的數(shù)據(jù)依賴于回傳數(shù)據(jù)前的標識符,比如“TEM|”表示溫度,“"HUM|”表示濕度,“"BJ|”則表示警報,“WD|N”表示北緯,“JD|E”表示東經(jīng)。

圖4 軟件主界面

圖5 軟件功能界面
軟件主界面如圖4所示,軟件功能界面如圖5所示。
本款基于STM32的智能安全嬰兒車可以較全面地為嬰兒提供防護,各功能通過軟件開啟或關閉,更加人性化。該設計的不足之處在于利用ESP8266進行數(shù)據(jù)通信必須有可供連接的WIFI,這就極大地限制了這款智能安全嬰兒車的應用,以及抓拍時不能連拍,一旦照片模糊,就無法識別嫌疑人,后期發(fā)展方向則是采用物聯(lián)網(wǎng)的新一代標準NB-Iot進行數(shù)據(jù)傳輸,從而擺脫對WIFI無線網(wǎng)絡的依賴,加快數(shù)據(jù)傳送速率,優(yōu)化算法,提高攝像頭反應速度的同時,使攝像頭能夠完成連拍多張照片的任務。