鄔志鋒 姚樹生 齊攀
(廣東交通職業(yè)技術學院,廣東廣州 510800)
全國第二次殘疾人抽樣調(diào)查的結(jié)果表明我國大陸地區(qū)肢體殘障人士近3000 萬,每年由于外傷或疾病導致的肢體運動功能障礙新增患者約200 萬人[1]。隨著我國逐漸進入老齡化社會,肢體運動失能、半失能的老年人數(shù)日益增多,肢體殘障人士得到了社會的廣泛關注。若輪椅乘坐者的上肢體無功能障礙,其即可用上肢體運動控制電動輪椅出行,但是上肢體運動失能殘障人士的出行問題一直是個難題。為了解決這一問題,近年來有研究者給出一些方案,如用身體微動作、眼部圖像處理、語音識別、腦電信號等方式對輪椅進行控制[2-5],但這些方法有的操作過于復雜,有的操作不夠人性化,有的控制效果不佳,有的響應速度慢。
針對以上弊端,本文基于9 軸傳感器MPU9250 設計了一款適用于上肢體運動失能殘疾人,通過點頭和仰頭控制輪椅啟動、停止、加速、減速,通過頭部的轉(zhuǎn)動實現(xiàn)左轉(zhuǎn)、右轉(zhuǎn)的控制的智能輪椅,從而使輪椅的控制更簡單更人性化,操控效果更穩(wěn)定可靠。同時還可以通過對輪椅姿態(tài)的分析,判斷當前所處的是上坡、下坡、平路、轉(zhuǎn)彎,對輪椅的速度進行自動調(diào)節(jié),提高輪椅的安全性,避免可能出現(xiàn)的誤操作;通過對乘坐者頭部動作、心率、體溫的分析,判斷其是否出現(xiàn)了焦慮、緊張等負面情緒,并據(jù)此控制輪椅是否要進行緊急限速、制動、剎車、報警,進一步提高輪椅的安全性;通過移動通信網(wǎng)絡把穿戴式傳感器采集到的人體體溫、心率等生理參數(shù)傳輸?shù)皆破脚_,實時監(jiān)控輪椅乘坐者的身體狀態(tài),利用云平臺存儲的歷史數(shù)據(jù)進行大數(shù)據(jù)分析,對一些潛在發(fā)作的慢性疾病進行預警;家人可通過手機APP 等實時了解輪椅乘坐者的所處的位置和各項生理參數(shù),系統(tǒng)構(gòu)成如圖1 所示。
圖1 系統(tǒng)構(gòu)成
乘坐者頭部姿態(tài)、輪椅姿態(tài)既是本文控制輪椅運動的根據(jù),為了更高精度獲取運動中的輪椅的姿態(tài),本項目采用了內(nèi)置數(shù)字運動處理器的九軸傳感器MPU9250 作為姿態(tài)感知器件。MPU9250 包含了三軸加速度計、三軸陀螺儀和三軸磁力計,使用姿態(tài)解算算法對以上9 軸數(shù)據(jù)進行計算即可得到物體在空間的姿態(tài),電路如圖2 所示。
圖2 姿態(tài)傳感器
MPU9250 還具有體積小、功耗低的優(yōu)點,非常適合本文系統(tǒng)的頭戴部分和輪椅使用。
由于姿態(tài)解算的計算量大,而輪椅乘坐者頭戴式設備的電池容量較小,所以本系統(tǒng)選用了意法公司的STM32L151 作為主控單片機。STM32L151 在休眠模式下所需電流僅為0.28uA,工作頻率高達32MHz,內(nèi)部擁有128KB 的Flash 程序存儲器和32KB 的SRAM,此外其還集成了豐富的外設資源,有10 個定時器、3 個串口,多路GPIO 接口、2 個SPI、2 個I2C、ADC、DMA等,在嵌入式領域廣泛使用[6],能夠滿足本系統(tǒng)低功耗、外設所需接口較多的需求,且意法公司官方提供了豐富的固件庫和開發(fā)資源,編程極其方便靈活。
心率作為人體最重要的生命體征之一,可以用來表征人的心理變化。本文擬采用歐司朗光電半導體推出的SFH7051 光學傳感器采集心率信號,SFH7051 光學傳感器專為心率監(jiān)測應用而設計,其工作原理是用光照射皮膚表面,血液和周圍組織分別吸收不同量的光,未被吸收的光則被反射回檢測器,通過分析反射光的強度獲得心率。SFH7051 內(nèi)部由三個綠光發(fā)射器和一個光電二極管組成,該管在綠色光譜內(nèi)具有非常高的靈敏度,而對于紅外光,靈敏度則大受抑制,電路如圖3 所示。
圖3 心率傳感器
該電路的工作原理是:SFH7051 內(nèi)部的光電二極管將皮膚反射回來的綠光轉(zhuǎn)換為電流,電流經(jīng)運算放大器U4 轉(zhuǎn)換成電壓,該電壓被單片機的AD 轉(zhuǎn)換成數(shù)字信號進行心率的計算。
本項目主要利用慣性測量單元測量乘坐者頭部和輪椅的x、y、z 三個方向的加速度、角速度、以及磁力值,MPU9250 具有三個16 位加速度AD 輸出,三個16 位陀螺儀AD 輸出,三個6位磁力計AD 輸出,基于四元數(shù)對三個量進行解算可以得到反應頭部和輪椅的空間姿態(tài),即獲得頭部和輪椅的航向角(Yaw)、俯仰角(Pitch)、滾轉(zhuǎn)角(Roll)三個變量。實際測試表明解算出來的結(jié)果既使經(jīng)過磁力計的校正也會存在一定的誤差,尤其使當數(shù)據(jù)采集周期存在變動的情況下誤差較大的異常值。本文使用了中值濾波的方法去除異常值,中值濾波法作為一種非線性平滑技術,它的原理是采用排序統(tǒng)計理論降低信號中的噪聲,該方面對信號中的孤立噪聲有很好的降低效果[7]。計算公式如式(1)所示:
程序流程圖如圖4 所示。
圖4 中值濾波
當乘坐者做出點頭、仰頭的動作時,頭部姿態(tài)的俯仰角(Pitch)發(fā)生變化;當乘坐者左右轉(zhuǎn)動頭部把視線移向自己感興趣的地方時,頭部姿態(tài)的航向角(Yaw)發(fā)生變化。據(jù)此,把乘坐者的頭部姿態(tài)和輪椅的啟動、停止、加速、減速、左轉(zhuǎn)、右轉(zhuǎn)6 個基本動作結(jié)合起來,具體為:低頭5 度~15 度:啟動,低頭大于25 度:加速,抬頭5 度~15 度:減速,抬頭大于25 度:停止。
轉(zhuǎn)向控制的基本思路是以輪椅和乘坐者頭部之間的航向角差(ΔYaw)為變量控制左右兩個電機按照不同的速度運動,使輪椅發(fā)生轉(zhuǎn)動,逐步縮小航向角差(ΔYaw),直至最后小于設定的閾值Ymin,實現(xiàn)輪椅運動的方向和乘坐者頭部指向的方向一致(圖5)。
圖5 轉(zhuǎn)向過程
與啟動、加速、減速、停止相比,左轉(zhuǎn)和右轉(zhuǎn)的動作是最頻繁的控制,而輪椅的轉(zhuǎn)動是通過左右兩個電機的速度差來實現(xiàn)的,控制復雜。為了保證控制過程的順暢,不發(fā)生強烈抖動,體現(xiàn)良好的操控性,本文采用了位置式PID 算法進行轉(zhuǎn)向的控制。PID 算法具有原理簡單,易于實現(xiàn),適用面廣,控制參數(shù)相互獨立,參數(shù)的選定比較簡單等優(yōu)點,其基本算法如圖6 所示。
圖6 轉(zhuǎn)向控制
智能輪椅一般都是電機驅(qū)動,與一般輪椅相比其運動速度快,尤其是在下坡、轉(zhuǎn)彎等運動時,危險性更大;才外由于乘坐者存在緊張、焦慮等負面精神狀態(tài),可能會造成各種誤操作;第三是乘坐者存在昏迷、失去操作能力等可能。所以智能輪椅的安全控制機制非常重要,但是從公開的資料來看,目前主要的安全控制主要有限制電機速度和增加防反轉(zhuǎn)輪兩種方式。顯然這兩種方式都不能很好地保證智能輪椅的安全。
本文構(gòu)建了基于輪椅狀態(tài)、乘坐者生理狀態(tài)、乘坐者精神狀態(tài)三者相結(jié)合的智能輪椅三維安全控制機制,程序框圖如圖7所示。
單片機首先通過輪椅上的姿態(tài)傳感器識別輪椅是否處于下坡和轉(zhuǎn)彎狀態(tài),如果屬于這種狀態(tài),則適當進行制動或者限速,同時停止響應加速操作。然后測量乘坐者心率、體溫和頭部運動頻率,分析乘坐者是否處于昏迷和失控狀態(tài),如果出現(xiàn),則應該立刻進行剎車動作。最后通過融合采集到的心率、體溫兩個生物信號和頭部運動,使用功率譜密度算法分析乘坐者的情緒識別,如果發(fā)現(xiàn)有負面情緒,則執(zhí)行限制加速、報警等預先設定好的安全策略。
本文設計的輪椅乘坐者頭戴部分和改造后的電動輪椅控制部分分別如圖8、圖9 所示,裝配好的輪椅如圖10 所示。
圖8
圖9
圖10
不同使用者的測試表明,本文設計的智能輪椅實現(xiàn)了乘坐者使用頭部運動控制輪椅的運動,響應迅速,控制靈活,且運動操控感好,安全性高。