吳雙娥,冉貴龍,王錦榮,程子源,楊雨欣,趙雁偉,李 元,康 懿
(呂梁學(xué)院物理系,山西呂梁 033001)
在第七次人口普查[1]中,60 歲及以上老年人口總占比為18.7%。2021 年工信部、民政部、國家衛(wèi)健委共同印發(fā)《智慧健康養(yǎng)老產(chǎn)業(yè)發(fā)展行動計劃(2021—2025 年)》[2],提出重點發(fā)展養(yǎng)老監(jiān)護類[3]、數(shù)字化智能產(chǎn)品及家庭服務(wù)機器人產(chǎn)品[4]。在對老年慢性病病人口服藥智能化管理研究的調(diào)研中[5],我國超1.8 億老年人至少患有一種慢性病,人均服藥9.1 種且長期服用多種藥物者占60.2%,其中有66.08%的人有時忘記服藥,60.8%的人經(jīng)常會忘記服藥,57.22%的人有時忘記,11.39%的人經(jīng)常忘記在服藥期間及時購買后續(xù)藥物。老年慢性病病人由于記憶力和認(rèn)知力下降,其用藥依從性低下,忘記服藥[6]。為了提高用藥依從性,減少并發(fā)癥,提高病人的生命質(zhì)量,解決老年人因年齡帶來的記憶力衰退問題,本項目通過調(diào)研分析[7]發(fā)現(xiàn),目前的藥箱無法為老年人提供健康管理與醫(yī)療幫助等相關(guān)服務(wù)[8-11]。總結(jié)當(dāng)前市面上的藥箱有以下問題:老人取藥時的識別方式[12-14]、出藥仍然不能實現(xiàn)自動化[15-17]、老人服藥后不能將服藥信息進行反饋[17-19]。針對上述問題,本文提出以下解決方法并成功實現(xiàn)以下功能:
1)通過人臉識別來確認(rèn)老人身份;
2)識別成功后,控制舵機出藥;
3)設(shè)置有紅外檢測,出藥后老人一定時間內(nèi)未取藥將發(fā)出警報;
4)附帶WiFi 模塊,服藥后按下按鍵,通過物聯(lián)網(wǎng)將信息發(fā)送到關(guān)聯(lián)手機。
本裝置(人臉識別服藥模擬裝置)結(jié)合單片機控制和攝像頭識別來實現(xiàn)上述功能。裝置分為兩個工作部分,有人臉識別部分OpenMV 攝像頭和單片機部分。其中人臉識別使用LBP 特征算法將當(dāng)前識別到的人臉與庫中的LBP 值進行對比,輸出特征值最小的人臉序號,收到最小序號后控制舵機旋轉(zhuǎn)出藥,藥物落到指定區(qū)域時,紅外檢測藥物是否取走。運用物聯(lián)網(wǎng)技術(shù)傳輸服藥信息,再加上鬧鐘、加熱水溫等功能來解決老人隨取隨服的需求。技術(shù)路線圖如圖1 所示。
圖1 技術(shù)路線圖
在系統(tǒng)硬件結(jié)構(gòu)中與單片機連接的有時鐘模塊、溫度檢測模塊、報警模塊、WiFi 模塊、顯示模塊。其中:時鐘模塊DS1302提供系統(tǒng)時間參數(shù),確定鬧鐘時間及其紅外報警時間;溫度檢測模塊DS18B20 用來檢測加熱水溫,并顯示在LCD1602屏幕上;ESP8266 WiFi模塊將取藥信息通過物聯(lián)網(wǎng)傳輸?shù)教囟ňW(wǎng)址上;LCD1602 液晶顯示屏可實時顯示時間、溫度等參數(shù)。系統(tǒng)硬件圖如圖2所示。
圖2 系統(tǒng)硬件結(jié)構(gòu)圖
人臉檢測電路主要使用OV7725 芯片,在人臉分辨前,通過拍照的方式將人臉的不同樣貌錄入到OpenMV內(nèi)置SD 卡內(nèi)。人臉分辨是通過計算當(dāng)前人臉的LBP 值與之前錄入的值相比較。
藥物分配電路使用多個舵機控制轉(zhuǎn)盤,最多使用16 個舵機同時旋轉(zhuǎn)控制,每個舵機轉(zhuǎn)盤內(nèi)可以放置一種藥物,根據(jù)不同人臉序列號來控制多個舵機出藥。舵機采用SG90,其可以360°連續(xù)旋轉(zhuǎn),人臉識別成功后舵機控制轉(zhuǎn)盤轉(zhuǎn)到相應(yīng)的位置上完成藥品分配。藥物分配電路圖如圖3 所示。
圖3 藥物分配電路
WiFi 信息傳輸電路用ESP8266 模塊,其可以設(shè)置多種模式,通過PC 端配置芯片工作模式。使用串口和單片機相連接,將手機和WiFi 模塊連接到同一WiFi 下,手機端就能登錄到特定網(wǎng)址查看老人服藥信息。
該裝置的軟件結(jié)構(gòu)分為人臉識別和單片機控制兩部分。首先軟件對OpenMV 攝像頭及舵機進行初始化,之后檢測并識別是否插入SD 卡。當(dāng)檢測到SD 卡信息時對卡內(nèi)信息進行讀取,并識別出之前錄入的人臉特征信息,使用表1 函數(shù)find_lbp 對錄入人臉信息進行提取,計算出每張圖片中的LBP 值大小。再求出每個人每張圖片的LBP 值,并求出平均值大小定義為d1,人臉識別流程圖如圖4 所示。
表1 人臉部分函數(shù)使用表
圖4 人臉識別流程圖
當(dāng)人臉識別輸出對應(yīng)序號后,就會跳轉(zhuǎn)到舵機控制部分。初始化舵機,識別出對應(yīng)人臉序號,對不同人臉序號進行識別,根據(jù)識別的人臉序號控制舵機PWM 信號輸出來選擇要旋轉(zhuǎn)的角度,實現(xiàn)自動出藥。
單片機部分流程圖如圖5 所示。當(dāng)藥物通過舵機掉落在出藥平臺時,紅外感應(yīng)會檢測到藥物掉落,如果在2 min 內(nèi)未取走藥物,蜂鳴器會發(fā)出警報。水溫利用陶瓷加熱片進行控制,并通過DS18B20 檢測水溫,在藥箱正前面安裝有LCD1602顯示屏,顯示當(dāng)前時間、水溫和鬧鐘時間。利用DS1302時鐘模塊定時提醒老人服藥,若老人已服藥,并按下按鍵,則通過ESP8266 模塊發(fā)送“l(fā)ao ren yi fu yao”信息到對應(yīng)網(wǎng)址上,完成信息實時傳輸。
圖5 單片機流程圖
1)人臉錄入:通過OpenMV 內(nèi)置芯片定時拍攝圖片,將不同人臉的圖片保存到不同文件夾內(nèi),通過程序設(shè)置拍攝中斷時長和拍攝圖片張數(shù),再將這些圖片文件夾全部保存到OpenMV 的SD 卡內(nèi)。
2)人臉識別:計算當(dāng)前拍攝的人臉LBP 值,與人臉錄入文件夾內(nèi)的序號依次比較,輸出LBP 值差異度最小的人臉序號。
3)測試方法:打開OpenMV IDE 軟件,識別已錄入人臉,在軟件下方的串行終端將會輸出LBP 差異度最小的人臉序號和對比各文件夾內(nèi)人臉LBP 差異度值。目前人臉識別庫中錄入了4 份人臉,在不同時間、不同地點進行人臉準(zhǔn)確度測試,只要人臉正對攝像頭,人臉識別的準(zhǔn)確度均在90%以上??蓪崟r修改人臉錄入的圖片和人臉庫里需要識別的人臉數(shù)量。人臉識別準(zhǔn)確度如表2 所示。
表2 不同環(huán)境下人臉識別準(zhǔn)確度%
4)舵機控制:當(dāng)人臉識別后,依據(jù)人臉序號控制不同舵機旋轉(zhuǎn),最多可控制16 個舵機。本設(shè)計目前只加入4 個舵機,后續(xù)可根據(jù)需求添加相應(yīng)數(shù)量的舵機。實測4 個舵機與相應(yīng)人臉序號旋轉(zhuǎn)角度對應(yīng)關(guān)系如表3 所示。人臉識別服藥模擬裝置圖如圖6 所示。
表3 舵機旋轉(zhuǎn)角度表
圖6 人臉識別服藥模擬裝置圖
5)單片機功能測試:系統(tǒng)初始化后,加熱模塊自動加熱,溫度模塊將檢測到的溫度、時間模塊將檢測到的時間實時傳輸?shù)絃CD 顯示屏上,且該裝置具有鬧鐘功能。當(dāng)舵機出藥后,藥物未在2 min 內(nèi)取走,紅外檢測模塊未檢測到藥物取走,會通過蜂鳴器發(fā)出警報。WiFi模塊將服藥狀態(tài)傳輸?shù)绞謾C上。
目前市面上尚無人臉識別自動出藥的服藥裝置。本裝置通過人臉識別智能出藥,借助紅外檢測模塊檢測服藥狀態(tài),利用WiFi 互聯(lián)供家人實時查詢老人服藥信息,以此來解決市面上老人藥盒不易操作、指紋識別準(zhǔn)確率不高等方面的問題。
本裝置設(shè)計考慮老人生活實際比較人性化,能服務(wù)于多位老人,根據(jù)服務(wù)場合實時增減舵機數(shù)量,滿足多位老人的需求;易操作,只要老人正對攝像頭,即可自動出藥;裝置小巧、成本低;查詢服藥狀態(tài)無需下載軟件。但該裝置也存在一些缺點,如還需要人為地添加藥物、提醒方式不夠智能、人臉識別準(zhǔn)確率還有待提高等。今后還需完善擴展各部分功能,以給予老人更加貼心的服務(wù)。
注:本文通訊作者為王錦榮。