利用BB-Black的遠程醫(yī)療監(jiān)測智能硬件設計
2.2 CGI與SQLite數據庫移植
BB-Black開發(fā)板在運行CGI和SQLite程序前,需要將相應的庫移植到開發(fā)板。設計通過交叉編譯之后將CGI的libcgic.a和capture拷貝到BB-black開發(fā)板的/home/www/cgi-bin目錄下,完成移植工作(可通過網頁訪問該目錄,若在網頁上顯示cgic test的字樣,則表明cgi庫移植成功);將SQLite的sqlite3和libsqlite3.so.0.8.6分別下載到BB-black開發(fā)板的/usr/bin和/usr/lib目錄中并通過ln –s /usr/lib/libsqlite3.so.0.8.6 /usr/lib/libsqlite3.so.0命令,建立軟連接(因為可執(zhí)行程序sqlite3在運行的時候搜尋libsqlite3.so.0動態(tài)庫),完成移植工作。
2.3 遠程監(jiān)控功能實現
2.3.1 HTML設計
遠程醫(yī)療監(jiān)控界面主要有監(jiān)護人登錄界面和被監(jiān)護人生理數據監(jiān)測界面。其中脈搏和心跳監(jiān)測HTML頁面首行代碼
用action=“pluse_heart_monitor.cgi”將表單指向pluse_heart_monitor.cgi處理程序,method=“get”指定獲取環(huán)境變量的方式為get;程序的最后幾行用type=“submit”或type=“reset”指定點擊這兩個按鈕時提交表單;其他生理數據監(jiān)測頁面與此相似。
2.3.2 CGI和SQLite數據庫互動設計
CGI與SQLite數據的互動主要包括CGI程序在SQLite數據庫上建立生理數據表,插入生理數據;CGI按照表單提交內容對數據表進行增刪改查詢操作;其主要的控制函數代碼如下:
其中getcgidata()實現GET和POST兩種方式從網頁獲取字符串函數;若為””“GET”方式,則通過getenv(“QUERY_STRING”)函數獲取字符串函數;若為“POST”方式,首先用atoi(getenv(“CONTENT_LENGTH”))函數獲取字符串長度,再利用(char)fgetc(stdin)函數依次獲取單個字符。
通過getcgidata()函數從網頁獲取的字符串中各數據項由‘’符號隔開,getstringdata()函數則是去掉‘’符號,提取有效信息,為select_pluse_spo2()函數對SQLite數據庫執(zhí)行查詢操作提供參數。
select_pluse_spo2()函數以getstringdata()函數得到的有效信息為參數,執(zhí)行打開數據庫、查詢數據、向網頁打印數據操作。部分功能實現代碼:
3 參數發(fā)送和接受功能的設計
3.1 數據采集模塊功能實現
生理數據采集模塊,由數據監(jiān)測模塊和無線傳感節(jié)點ZigBee組成。數據監(jiān)測模塊負責采集數據,ZigBee節(jié)點負責接收、解析和傳輸數據;解析過程根據監(jiān)測項目調用相應的子程序(如:測血氧、脈搏、體溫等);傳輸數據時終端節(jié)點和非終端節(jié)點分別調用向串口發(fā)送子程序和發(fā)射子程序。具體的實現程序流程如下圖7所示。
圖7 ZigBee節(jié)點參數接收和發(fā)送流程圖
3.2 ARM板上生理數據接收功能實現
在ARM板上首先打開串口,然后配置發(fā)短信所需的串口參數,并初始化接收緩沖區(qū),開始循環(huán)讀串口數據包;當讀取到數據,就對數據包進行分析,獲取包中隱含的血氧飽和度和脈搏值;并進行健康監(jiān)測(按照健康生理指標監(jiān)測),如果獲取的生理數據不正常就會向監(jiān)護人手機發(fā)送短信(包含相應的生理數據和健康狀況說明);最后將生理數據包轉化為16進制數存入文檔。具體的處理流程如下圖8所示。
圖8 ARM板接收和處理生理數據的流程圖
4. 系統功能測試
測試前,需通過開發(fā)板上的USB和UART接口,將生理數據接收模塊和GSM/GPRS模塊連接;通過RJ45接口將開發(fā)板接入網絡;同時用戶根據需要佩戴數據采集模塊。完成硬件連接后各模塊上電,待系統會自動啟動各項服務完成后,進行測試。
以脈搏和血氧濃度為例,測試的登錄界面;查詢生理數據結果顯示,以及手機接收短信如下圖所示。
圖9 用戶登錄界面
圖10 用戶查詢生理數據結果顯示
圖11 手機接收生理監(jiān)測的生理數據短信
經功能測試表明:
1. 在無線傳感網絡覆蓋范圍內,測試者可以攜帶監(jiān)測設備,隨意走動;系統自動進行生理監(jiān)測,數據傳輸和存儲。
2. 系統能夠智能的分析生理數據并將結果以短信形式發(fā)送到測試者手機上,同時能夠智能緊急呼叫測試者。
3. 測試者可以使用電腦或手機等其它上網設備,通過瀏覽器訪問Boa服務器,查看存儲的生理數據信息。
通過性能測試表明:
測試者穿戴完畢上電后,設備智能工作。測試者可以實時收到生理數據短信提示,同時也可以通過網頁快速的訪問、修改生理數據。但受傳感器信號覆蓋范圍的影響(據測試,兩個傳感節(jié)點間可傳遞數據包的間隔距離上限為1.5米),測試者的自有度有限。同時嵌入式設備存儲空間有限,存儲在SQLite數據中的數據會每隔一個小時以數據包的形式通過GSM發(fā)送給測試者。
總體來說該系統與傳統的醫(yī)療監(jiān)測設備相比,具有易攜帶、低功耗、低成本等優(yōu)點,在未來的家庭子女遠程監(jiān)護老人和提高人們生活質量方面,有很大的市場前景。但系統仍存在不足,今后的工作主要是戶外無線傳感網絡環(huán)境的搭建研究,實現更大范圍、更實用的遠程醫(yī)療監(jiān)控。
評論