何福運 劉會巧 龐家園


摘要:本文研制了一款集監控、調溫、安撫、防盜為一體的智能育嬰箱。該系統軟件部分主要由安卓手機、單片機及視頻服務器來實現。
關鍵詞:育嬰箱;安卓;單片機;視頻服務器
中圖分類號:TP277 文獻標識碼:A 文章編號:1007-9416(2020)03-0173-02
1 項目簡介
智能育嬰箱通過自主開發的Android系統上位機軟件APP結合WIFI無線通信建立無線網絡,同時用攝像頭的視頻服務器上傳實時視頻數據到APP,再以單片機為核心搭載多種傳感器與終端執行裝置時刻檢測及監控嬰兒所處環境與嬰兒狀態,達到智能育嬰的目的。
2 安卓手機Java語言編寫的應用程序
Android在編寫中是以Java為編程語言,其中Activity等同于J2ME的MIDlet,一個Activity類負責創建視窗(window);View等同于J2ME的Displayable,程序人員可以通過View類與“XML layout”檔將UI放置在視窗上,Android 1.5的版本可以利用View打造出所謂的Widgets,其實Widget只是View的一種,所以可以使用xml來設計layout;View與事件(event)息息相關,兩者之間通過Listener結合在一起,每一個View都可以注冊一個event listener。簡單來說,利用Java語言編寫可實現溫濕度顯示,及嬰兒實時監控的手機APP。手機APP界面如圖1所示。
3 單片機程序
本系統是以STC89C52單片機為核心,實現對嬰兒所處環境的監測及控制。我們用C語言來完成程序的設計。其中控制空調、轉動玩具、報警等功能建立各部分的子程序,其中以控制空調為例:
#include <12C5A.H>
#include
#include
#include "uart1.h"
#include "uart2.h"
if((UART1_Receive_Buffer>=0)&&(UART1_Receive_Buffer<=16))
{ UART2_Send_Byte(0x40+UART1_Receive_Buffer-0);}
else if((UART1_Receive_Buffer>=31)&&(UART1_Receive_ Buffer<=47))
{ learn_flag=UART1_Receive_Buffer-31;UART2_Send_ Byte(0xf0);}
if((UART1_Receive_Buffer>=17)&&(UART1_Receive_Buffer<=30))
{alarm_temp=UART1_Receive_Buffer;}
4 視頻服務器程序MJPG-streamer
本文中將USB攝像頭采集到的實時視頻數據流發送到安卓手機,我們選擇了移植開源視頻服務器程序MJPG_streamer來完成視頻采集共享功能。
在嵌入式視頻監控系統中常常用到一個輕量級的視頻服務器--“MJPG streamer”。開發者可以基于軟件的體系結構的特征,通過修改軟件服務器的源代碼,或者添加新模塊來增強軟件的功能。最后經過交叉編譯,移植到嵌入式系統中。MJPG-streamer服務器流程圖如圖2所示。
5 結語
本文實現了用安卓手機編寫監控APP、單片機控制育嬰箱、視頻服務器傳遞采集到的實時視頻給手機APP,從而實現了智能育嬰箱的監控、調溫濕度、安撫、防盜等功能。
參考文獻
[1] 張蕾.基于嵌入式Linux的視頻采集系統研究設計[D].西安:西安電子科技大學,2010.
[2] 車玥瑋,童金,王明寶,等.基于網絡的小車遠程監控系統的設計[J].電子測量技術,2012,35(3):20-23.
Abstract:This paper develops an intelligent baby-raising box which integrates monitoring, temperature regulation, comfort and anti-theft.The software of the system is mainly implemented by Android mobile phone SCM and video server.
Key words:baby box;android;SCM;video server