周銀,王新峰
(吉首大學(xué)軟件學(xué)院,張家界427000)
根據(jù)《中國(guó)老齡事業(yè)的發(fā)展》白皮書(shū),中國(guó)人口年齡結(jié)構(gòu)已經(jīng)開(kāi)始進(jìn)入老齡化階段。人口老齡化問(wèn)題已經(jīng)逐漸變成中國(guó)乃至全球性的社會(huì)性問(wèn)題。預(yù)計(jì)到2040 年,65 歲及以上老年人口占總?cè)丝诘谋壤龑⒊^(guò)20%。同時(shí),老年人口高齡化趨勢(shì)日益明顯。民政部部長(zhǎng)李立國(guó)說(shuō),城鄉(xiāng)老人家庭中,空巢家庭超過(guò)50%,部分大中城市達(dá)70%。而養(yǎng)老機(jī)構(gòu)床位占全國(guó)老年人口1.59%,所以還約有90%的老人需要家庭看護(hù)。
老人單獨(dú)在家時(shí)會(huì)遇到各類(lèi)麻煩如:出門(mén)外帶鑰匙,不記得定時(shí)吃藥,不記得家中爐灶的火是否關(guān)閉,智能電器不會(huì)用,身體突發(fā)不適找不到人幫助、行動(dòng)不便等。而現(xiàn)在老人普遍子女少,同時(shí)女子也沒(méi)有太多精力在家照看老人,這就迫切要求我們通過(guò)技術(shù)手段輔助老人生活,幫助老人解決衣食住行的困難,并且方便和外界通信及子女照看老人,因此提出建立一個(gè)智能老人助理系統(tǒng)。智能老人助理系統(tǒng)的建立可以大大提升老人生活質(zhì)量,讓老人享受科技進(jìn)步帶來(lái)的實(shí)惠。
通過(guò)對(duì)老人生活遇到的主要問(wèn)題進(jìn)行分析,本系統(tǒng)要完成以下目標(biāo):讓行動(dòng)不便的老人在少量移動(dòng)的情況下,可以控制所有智能家電設(shè)備;可以讓老人及監(jiān)護(hù)人實(shí)時(shí)了解居住環(huán)境,當(dāng)有異常發(fā)生時(shí),系統(tǒng)會(huì)報(bào)警讓老人及時(shí)撤離;當(dāng)老人操作失誤或有突發(fā)情況時(shí),遠(yuǎn)程輔助功能可讓監(jiān)護(hù)人遠(yuǎn)程協(xié)助;當(dāng)老人思念子女時(shí)也可通過(guò)簡(jiǎn)單操作即可聯(lián)系到子女。以上目標(biāo)可以進(jìn)一步化分為三個(gè)模塊即:智能控制、環(huán)境監(jiān)控、遠(yuǎn)程輔助。
(1)智能控制:是指老人能通過(guò)語(yǔ)音或手機(jī)統(tǒng)一控制房間內(nèi)的智能設(shè)置,如空調(diào)、電視、燈以及窗簾和門(mén)等,操作流程要簡(jiǎn)單,界面要人性化。
(2)環(huán)境及健康監(jiān)控:實(shí)時(shí)檢測(cè)房間內(nèi)溫濕度,有毒氣體(煤氣),煙霧等環(huán)境信息,方便查看。當(dāng)環(huán)境中出現(xiàn)異常時(shí)可報(bào)警,報(bào)警方式有聲音和燈光兩種。老人也可通過(guò)設(shè)備(心率檢測(cè)、脈搏檢測(cè)等)將健康情況上傳系統(tǒng)服務(wù)器方便監(jiān)控護(hù)和醫(yī)療人員查看。
(3)遠(yuǎn)程輔助:本系統(tǒng)全程聯(lián)網(wǎng),當(dāng)有突發(fā)情況時(shí),老人的監(jiān)護(hù)人可通過(guò)授權(quán)遠(yuǎn)程控制房間內(nèi)的智能設(shè)備,同時(shí)還可與老人實(shí)時(shí)聊天通信。
本系統(tǒng)的三個(gè)功能模塊(智能控制、環(huán)境監(jiān)控、遠(yuǎn)程輔助)整合在一起如圖1 所示。
圖1 系統(tǒng)功能結(jié)構(gòu)圖
圖1 中無(wú)箭頭線代表數(shù)據(jù)和命令可以雙向發(fā)送,單箭頭的線代碼數(shù)據(jù)或命令從一個(gè)模塊到另一個(gè)模塊發(fā)送。數(shù)據(jù)指獲取的溫濕度、健康、圖像等數(shù)據(jù)信息,命令包含開(kāi)、關(guān)、移動(dòng)等控制指令。
從系統(tǒng)功能結(jié)構(gòu)圖中可以看出,本系統(tǒng)分為:主控App、服務(wù)器、Web 端軟件功能部分,以及中央控制器和各子板的硬件平臺(tái)部分。下面就按軟件和硬件分開(kāi)詳細(xì)講解各功能。
軟件由主控App、服務(wù)器和Web 端三塊組成。
手機(jī)是現(xiàn)在最好的控制器,可以集各種功能與一身,主控App 使用Android 開(kāi)發(fā),主要功能就是用來(lái)接受數(shù)據(jù)與發(fā)送命令,由于是給老人使用,所以操作界面要求特別簡(jiǎn)單,一鍵式使用,界面如圖2 所示。
圖2 App操作界面圖
主控App 工作命令發(fā)送流程:App 發(fā)送指令->服務(wù)器->中央控制板(解析命令目的地)->子板。
主控App 數(shù)據(jù)接收流程:各子板收集數(shù)據(jù)->中央控制板->服務(wù)器->主控App 讀取顯示。
服務(wù)器是數(shù)據(jù)處理中心,用來(lái)將命令和數(shù)據(jù)發(fā)送到各模塊,保存數(shù)據(jù)、記錄日志等都由服務(wù)器完成。
由于各類(lèi)設(shè)備采集的數(shù)據(jù)信息格式和命令格式各不相同,為了統(tǒng)一處理,定義相同的數(shù)據(jù)結(jié)構(gòu)體和命令結(jié)構(gòu)體。
數(shù)據(jù)的結(jié)構(gòu)體如下:
typedef struct s_data
{
int data_type; //數(shù)據(jù)的類(lèi)型
char data_src[100]; //數(shù)據(jù)的來(lái)源
char data_des[100]; //數(shù)據(jù)的接收方
void*buff; //數(shù)據(jù)指針
int size; //數(shù)據(jù)大小
time_t send_time; //數(shù)據(jù)發(fā)送時(shí)間
time_t recv_time; //數(shù)據(jù)接收時(shí)間
}DATA;
命令即指令結(jié)構(gòu)體如下所示:
typedef struct s_order
{
int order_type; //命令的類(lèi)型
char order_src[100]; //命令的發(fā)出方
char order_des[100]; //命令接收方
char value[100]; //命令值
time_t send_time; //命令發(fā)送時(shí)間
time_t recv_time; //命令接收時(shí)間
int is_run; //命令是否執(zhí)行
}ORDER;
Web 端是提供給監(jiān)護(hù)人使用的,通過(guò)Web 端授權(quán)后可遠(yuǎn)程查看房間情況,并控制小車(chē)巡視。每個(gè)用戶都有獨(dú)立賬號(hào),這樣可以讓類(lèi)似養(yǎng)老中心的機(jī)構(gòu)實(shí)用對(duì)多個(gè)地方監(jiān)控。Web 端頁(yè)面布局如圖3 所示。
圖3 中功能有手機(jī)號(hào)綁定,數(shù)據(jù)圖表區(qū)、圖像區(qū)和指令操控區(qū)。Web 端頁(yè)面根據(jù)每套系統(tǒng)特有的機(jī)器碼進(jìn)行登錄采用Highcharts 將所有環(huán)境數(shù)據(jù)可視化,各功能如下:
圖3 Web端頁(yè)面
(1)手機(jī)號(hào)綁定:當(dāng)有異常發(fā)生時(shí),會(huì)通過(guò)直接發(fā)送短信通知這個(gè)手機(jī)號(hào)。
(2)數(shù)據(jù)圖表區(qū):把環(huán)境的數(shù)據(jù)(溫濕度、煤氣濃度、健康指標(biāo)等)顯示在這里,還可以在這里設(shè)置閾值待數(shù)據(jù)超出閾值后即發(fā)送警報(bào),警報(bào)即要在老人所在房間內(nèi)發(fā)送,可通過(guò)聲音和燈光提醒,也要發(fā)送短信到監(jiān)控人手機(jī)上。
(3)圖像區(qū):小車(chē)拍攝的圖像顯示區(qū),方便監(jiān)控人查看房?jī)?nèi)情況。至于為什么不全房間放置攝像頭,這考慮到老人的隱私問(wèn)題。同時(shí)這個(gè)小車(chē)能否上傳圖像,是需要經(jīng)過(guò)老人授權(quán)的。
(4)指令操控區(qū):發(fā)送各類(lèi)命令,如屋內(nèi)智能電器、小車(chē)移動(dòng)等。
從圖1 中可以看到,嵌入式相關(guān)內(nèi)容有中央控制器和各子板,這里都選用Arduino 芯片,Arduino 是開(kāi)源的硬件平臺(tái),入手快開(kāi)發(fā)簡(jiǎn)單,擴(kuò)展性好,Arduino UNO R3 板子結(jié)構(gòu)如圖4 所示。
圖4 Arduino芯片結(jié)構(gòu)
主控制器與子板間和服務(wù)器的通信是重點(diǎn)要解決的問(wèn)題。主控制器與子板之間使用NRF24L01 芯片通信傳輸距離幾十到幾百米,它是由NORDIC 生產(chǎn)的工作在2.4GHz~2.5GHz 的ISM 頻段的單片無(wú)線收發(fā)器芯片。無(wú)線收發(fā)器包括:頻率發(fā)生器、增強(qiáng)型“Schock-Burst”模式控制器、功率放大器、晶體振蕩器、調(diào)制器和解調(diào)器。輸出功率頻道選擇和協(xié)議的設(shè)置可以通過(guò)SPI 接口進(jìn)行設(shè)置。幾乎可以連接到各種單片機(jī)芯片,并完成無(wú)線數(shù)據(jù)傳送工作。
主控制器與服務(wù)器的連接使用ESP8266 Wi-Fi 連網(wǎng),該芯片是一種無(wú)線轉(zhuǎn)串口的芯片,無(wú)線傳輸距離可達(dá)300 米,遠(yuǎn)遠(yuǎn)滿足本項(xiàng)目的室內(nèi)傳輸要求。
子板的功能實(shí)現(xiàn)都較簡(jiǎn)單,會(huì)用到紅外控制、馬達(dá)電機(jī)、溫濕度、有毒氣體、煙霧和心率、脈搏、體溫等傳感器,巡航小車(chē)可遠(yuǎn)程控制也可按軌跡巡航。
小車(chē)模塊由Android+Arduino+H 橋+電機(jī)+輪胎+模具+HC-05 藍(lán)牙模塊組成,Android 與Arduino 通過(guò)藍(lán)牙聯(lián)通進(jìn)而將小車(chē)的行進(jìn)控制轉(zhuǎn)交至Android。Android 通過(guò)自身的4G 網(wǎng)絡(luò)與服務(wù)器進(jìn)行信息交互,即轉(zhuǎn)移控制權(quán)至服務(wù)器,相應(yīng)的Android 調(diào)用自身的攝像頭將實(shí)時(shí)畫(huà)面拍攝上傳至服務(wù)器完成監(jiān)控功能。
本項(xiàng)目的創(chuàng)新與特色有如下4 點(diǎn):
(1)目前智能看護(hù)和智能家居相關(guān)的系統(tǒng)大多采用ZigBee 技術(shù)或ARM 體系,雖然這些系統(tǒng)功能強(qiáng)大,但開(kāi)發(fā)過(guò)程較復(fù)雜,同時(shí)成本高。而本系統(tǒng)采用最近流行的Arduino 平臺(tái),這是開(kāi)源的平臺(tái)成本非常低,入手快。
(2)考慮到老人對(duì)智能設(shè)備的掌握程度不高,本系統(tǒng)采用雙輸入模式:語(yǔ)音和App。且App 應(yīng)用只有一個(gè)圖形界面,每個(gè)功能都獨(dú)立設(shè)置操作。
(3)緊急呼救,老人單獨(dú)在家很容易突發(fā)意外如摔倒,老人可呼叫遠(yuǎn)程報(bào)警,系統(tǒng)檢測(cè)到亦會(huì)自動(dòng)報(bào)警。
(4)本系統(tǒng)提供云服務(wù)器接入接口,監(jiān)護(hù)人通過(guò)授權(quán)后可遠(yuǎn)程協(xié)助老人對(duì)智能設(shè)備進(jìn)行控制,可時(shí)也可實(shí)時(shí)查看室內(nèi)環(huán)境。