王宏程, 郎潤男, 王芳芳, 徐豐羽, 申景金
(1. 南京郵電大學(xué) 自動化學(xué)院 人工智能學(xué)院, 江蘇 南京 210023;2. 南通大學(xué) 紡織服裝學(xué)院, 江蘇 南通 226019)
日常運(yùn)動過程中,足部作為重要的運(yùn)動功能器官,其狀態(tài)能夠反映人體運(yùn)動模式[1]。若病人的足前部力量偏弱,則身體質(zhì)量會更多地施加于足外沿和足跟部,造成病人足-地面反力異常[2-3],因此,可通過監(jiān)人體足-地面反力實現(xiàn)對人體的運(yùn)動模型乃至健康狀態(tài)的監(jiān)診[4]。目前,足底壓力主要通過測力板或壓力鞋墊進(jìn)行測量[5-6]。其中,國外研發(fā)的足底壓力測量系統(tǒng),如瑞士KISTLER公司研發(fā)的測力板具有很高的測量精度和實時性,但其價格昂貴、不易攜帶[7];德國Novel公司研發(fā)的足底壓力測量系統(tǒng),使用校準(zhǔn)困難且耗時長,校準(zhǔn)后易受外界環(huán)境影響造成漂移,整體儀器同測力板一樣售價較高。因此,研制價格較低、集成度更高和使用更簡便的壓力測量鞋墊受到人們的廣泛關(guān)注。
國內(nèi)研究人員基于聚偏氟乙烯(PVDF)壓電材料[8]、LabVIEW[9]和單片機(jī)[10]等技術(shù)進(jìn)行了足底壓力測量系統(tǒng)的研制,實現(xiàn)了簡單的壓力測量和顯示[11]。Rouhani等[12]通過在實驗對象的腳趾、前腳掌和后腳掌部分安裝三軸陀螺儀和三軸加速度傳感器來進(jìn)行足-地面反力(GRF)的預(yù)測。Jung等[13]提出了2種預(yù)測三軸GRF信號的足-地接觸模型,第1種模型只需要關(guān)節(jié)運(yùn)動學(xué)數(shù)據(jù)來估計三軸GRF 信號,而第2種模型需要關(guān)節(jié)運(yùn)動學(xué)和足部壓力數(shù)據(jù)。Sim等[14]提出利用小波神經(jīng)網(wǎng)絡(luò)(WNN)和主成分交互信息(PCA-MI)估算三軸GRF信號,他們用快、正常、慢3種不同的步態(tài),結(jié)合具有99個壓力傳感器的鞋墊型足底壓力測量裝置和2個AMTI公司的測力板分別測量足底壓力和用于參考的三軸GRF信號。上述文獻(xiàn)中的壓力鞋墊測量系統(tǒng),大都采用有線或局部無線數(shù)據(jù)傳輸方式完成簡單的壓力數(shù)據(jù)采集和顯示,不適用基于足底壓力的遠(yuǎn)程診療。為此,本文運(yùn)用Zigbee和Access技術(shù),設(shè)計了可實現(xiàn)數(shù)據(jù)無線遠(yuǎn)程傳輸?shù)膲毫π瑝|,同時通過多元線性回歸算法把測量的足底壓力轉(zhuǎn)化為足-地面反力,極大地方便了醫(yī)生對病情的診斷。
為保證不同運(yùn)動模式下足底壓力測量的精度,所選用的壓力傳感器應(yīng)具有較好的柔順性、較薄的厚度,以較好地貼合足底形狀[15],因此決定使用FSR402電阻式壓力傳感器,其量程為0~20 N,是質(zhì)量輕、體積小、引腳長、性價比高的超薄型電阻式壓力傳感器。FSR402傳感器將施加于傳感器薄膜區(qū)域的壓力轉(zhuǎn)換成電壓值的變化,從而獲得壓力信息。壓力越大,電阻越低,輸出電壓越高。一般情況下,F(xiàn)SR402傳感器的輸出電壓和施加壓力之間存在如下指數(shù)關(guān)系,
f=aebv+cedv
(1)
式中:f為壓力值,N;v為電壓值,V;a、b、c、d為待確定參數(shù)。為確定a,b,c,d的值,對每個FSR402傳感器進(jìn)行標(biāo)定實驗。將FSR402傳感器同Arduino Uno相連接,通過其讀出輸出電壓值,再將FSR402置于萬能測力機(jī)的平臺上,通過對FSR402施加0~20 N的力,得到其對應(yīng)的電壓輸出值,并采用式(1)對電壓和壓力進(jìn)行擬合,如圖1所示。經(jīng)過實驗得出:a的取值范圍為0.024 58~0.086 33;b的取值范圍為0.712 8~1.336;c的取值范圍為6.264×10-13~2.998×10-9;d的取值范圍為4.814~6.714。
圖1 電壓與壓力曲線圖Fig.1 Voltage-pressure curve
壓力傳感器的數(shù)量和布局位置直接影響系統(tǒng)性能,傳感器數(shù)目過少會降低足底壓力分布的整體測量精度,而數(shù)目過多會增加系統(tǒng)加工和數(shù)據(jù)采集的難度,降低整體的可靠性[16]。基于生物力學(xué)可知,在不同運(yùn)動狀態(tài)下,足弓和腳跟部位壓力分布模式較為單一[17],而足前掌與運(yùn)動狀態(tài)關(guān)系密切,壓力分布較為復(fù)雜[18-19];因此,為達(dá)到較好的監(jiān)診效果,壓力鞋墊在足弓和腳跟區(qū)域的傳感器密度較低,前腳掌區(qū)域的傳感器分布密度較高。壓力傳感器的整體布局如圖2所示,前腳掌、足弓、足跟分別放置7個、2個和3個傳感器。傳感器位置選擇完成之后,將壓力傳感器放置到乙烯-醋酸乙烯酯(EVA)材質(zhì)鞋墊上對應(yīng)的位置中去,壓力傳感器與采集模塊之間采用扁平的杜邦線連接,在鞋墊表面均勻地涂上一層美國Ecoflex00-10硅膠溶液,待其凝固后鞋墊與其就緊密貼合在一起,保證了穿著的舒適度并且可對其進(jìn)行刷洗。
圖2 壓力傳感器整體布局Fig.2 Overall layout of pressure sensor
為獲得穩(wěn)定的壓力數(shù)字信號提高壓力信號的分辨率,在數(shù)模轉(zhuǎn)換模塊ADS1118之前通過放大器進(jìn)行放大。另外,為減少外部因素造成的FSR402傳感器測量的波動,在信號處理模塊加入低通濾波電路。通過MAX8515A穩(wěn)壓模塊和MCP6004放大器設(shè)計如圖3所示信號放大電路。
圖3 信號放大電路圖Fig.3 Signal amplification circuit diagram
Zigbee屬于功耗較低的無線通信技術(shù),可實現(xiàn)近距離的無線連接與組網(wǎng)。本系統(tǒng)的信號傳輸模塊選用CC2530作為構(gòu)建Zigbee無線通信網(wǎng)絡(luò)的核心芯,如圖4所示。在發(fā)射端的電路中,使用5 V直流電源供電。接收模塊功能是將各個發(fā)射子系統(tǒng)節(jié)點(diǎn)上的數(shù)據(jù)接收并通過串口將其發(fā)送到PC上進(jìn)行處理。為實現(xiàn)多個壓力鞋墊的數(shù)據(jù)采集,系統(tǒng)采用星形拓?fù)浣Y(jié)構(gòu)Zigbee網(wǎng)絡(luò)。其中,與PC端串口通信的全功能器件FFD,在Zigbee網(wǎng)絡(luò)中承載協(xié)調(diào)器的功能。
圖4 無線傳輸硬件圖Fig.4 Wireless transmission hardware picture
通過將所有硬件模塊集成到一塊PCB板中,大大減小了數(shù)據(jù)采集和傳輸模塊的體積,便于人們的日常使用。
根據(jù)程序預(yù)期實現(xiàn)目標(biāo)及硬件方案,可將主程序分為4個模塊程序來實現(xiàn),包括數(shù)據(jù)采集處理程序、無線數(shù)據(jù)傳輸程序、數(shù)據(jù)幀儲存程序、后處理顯示程序。其中:數(shù)據(jù)采集處理程序負(fù)責(zé)將數(shù)模轉(zhuǎn)換接口的數(shù)據(jù)進(jìn)行讀取,獲得12路的壓電數(shù)據(jù)并儲存,根據(jù)數(shù)據(jù)發(fā)送的編號順序、幀序來進(jìn)行數(shù)據(jù)幀的生成;無線數(shù)據(jù)傳輸程序則是負(fù)責(zé)傳輸節(jié)點(diǎn)之間的建立與維系同步工作,進(jìn)行網(wǎng)絡(luò)上的數(shù)據(jù)幀的傳輸;數(shù)據(jù)幀儲存程序?qū)⒗脭?shù)據(jù)庫儲存由無線網(wǎng)絡(luò)發(fā)送來的數(shù)據(jù),并以時序編號保存;后處理顯示模塊負(fù)責(zé)從數(shù)據(jù)庫中拉取數(shù)據(jù)幀,從數(shù)據(jù)幀中分理出12路壓力數(shù)據(jù)與時序序號進(jìn)行圖形化顯示。
第1步:數(shù)模-進(jìn)制轉(zhuǎn)換。首先發(fā)送選通信號來進(jìn)行12路壓力傳感器的選通,對選通來的數(shù)模轉(zhuǎn)換接口信息進(jìn)行讀取,每個循環(huán)包括12次讀取的小循環(huán),將12路數(shù)據(jù)依次按比例轉(zhuǎn)換為十進(jìn)制3位整數(shù)并存儲至存儲芯片中,保存第1路信號的地址值。
第2步:存儲相關(guān)數(shù)據(jù)。在數(shù)據(jù)后面的存儲單元中寫入本鞋墊編號、時序值,使用首位地址將12數(shù)據(jù)循環(huán)相加后求出平均值,寫入隨后的地址單元。
第3步:使用串口發(fā)送12路數(shù)據(jù)。使用典型的串口發(fā)送程序按地址位先發(fā)送編號、時序值、平均值,再使用首地址依次發(fā)送12路數(shù)據(jù),完成1幀數(shù)據(jù)的發(fā)送。
第1步:設(shè)計數(shù)據(jù)保存讀取方式。根據(jù)設(shè)計要求,本系統(tǒng)需實現(xiàn)無線發(fā)射終端與無線接收模塊(即Zigbee協(xié)調(diào)器)之間的通信,協(xié)調(diào)器連接到本地終端與PC間的串口通信。數(shù)據(jù)最后在本地終端打開串口進(jìn)行數(shù)據(jù)的讀取和保存。
本系統(tǒng)中遠(yuǎn)程終端(RFD)獲取的數(shù)據(jù)通過與協(xié)調(diào)器之間的通信可以保存到數(shù)據(jù)庫中,利用此方案降低了數(shù)據(jù)保存的難度,也大大簡化了PC端的人員操作。由此可直接利用PC端的Microsoft Access數(shù)據(jù)庫功能實現(xiàn)數(shù)據(jù)的實時傳輸、讀寫與保存。
第2步:利用協(xié)調(diào)器初建傳輸網(wǎng)絡(luò)。協(xié)調(diào)器在整個系統(tǒng)中是ZigBee無線傳感網(wǎng)絡(luò)的創(chuàng)建者,其主要功能是負(fù)責(zé)創(chuàng)建1個具有唯一網(wǎng)絡(luò)ID及信道的網(wǎng)絡(luò)并不斷搜尋該網(wǎng)絡(luò)范圍內(nèi)的新節(jié)點(diǎn),使其允許加入該網(wǎng)絡(luò)中。協(xié)調(diào)器創(chuàng)建網(wǎng)絡(luò)流程圖如圖5所示。
圖5 協(xié)調(diào)器創(chuàng)建網(wǎng)絡(luò)流程圖Fig.5 Flow chart of coordinator creating a network
由圖5可知,協(xié)調(diào)器通過不斷地周期發(fā)送各種數(shù)據(jù)幀來搜索是否有符合要求的終端節(jié)點(diǎn),在該系統(tǒng)中所設(shè)置的網(wǎng)絡(luò)ID為0×1234,信道為0×0B;只有其他終端的網(wǎng)絡(luò)相關(guān)設(shè)置與協(xié)調(diào)器一致時,才會被允許加入該網(wǎng)絡(luò)中。協(xié)調(diào)器成功創(chuàng)建網(wǎng)絡(luò)后,用戶可通過操作PC軟件開始終端采集任務(wù)。
第1步:設(shè)計測量鞋墊編號。本設(shè)計需同時監(jiān)診多位患者的多雙壓力鞋墊。為區(qū)別不同的鞋墊,采用數(shù)據(jù)幀第1位可設(shè)為1位十進(jìn)制數(shù),用來區(qū)別不同鞋墊。
第2步:設(shè)計時序序號。在測量中還需時間位來記錄時間信息,規(guī)定每0.5 h上傳1次數(shù)據(jù),考慮到加入鞋墊標(biāo)號可以只通過1次數(shù)據(jù)庫遍歷就可以找到所需編號特定時間的壓力數(shù)據(jù),提升查詢速度及效率,同時也可做為編號位的校驗碼使用,即可以設(shè)置3位十進(jìn)制數(shù)據(jù):其中第1位表示鞋墊傳感器的標(biāo)號;第2、3位則可表示近日以來的時序數(shù)據(jù)。
第3步:設(shè)計特殊信息位??紤]到壓力數(shù)據(jù)精簡及讀取效率,在1幀數(shù)據(jù)中加入平均位,放于時間位后,其值為12路傳感器數(shù)據(jù)的平均值。平均位中的平均值包含所測足部的很多信息,如此時被監(jiān)診者有無運(yùn)動、雙足的身體重心分配受力情況;還可通過大量的數(shù)據(jù)統(tǒng)計出有無偏足傾向,以便及時接受進(jìn)一步診斷;對于孤居老人也可及時發(fā)現(xiàn)長時間的無運(yùn)動情況,及時進(jìn)行救助;也有助于發(fā)現(xiàn)12路數(shù)據(jù)的錯位,作校驗碼使用。12路的數(shù)據(jù)則按照默認(rèn)順序排列,左右鞋墊編號相互對稱,以3位十進(jìn)制整數(shù)存儲;1幀中不設(shè)停止位。
數(shù)據(jù)幀格式為:第1位鞋墊編號;第2位時序編號;第3位壓力中心平均值;第4~15 位12路壓力數(shù)據(jù)。
第1步:設(shè)計選擇數(shù)據(jù)庫。Microsoft Access 2010 數(shù)據(jù)庫功能較為齊全、具有強(qiáng)大的兼容性和拓展性,但是考慮到Access數(shù)據(jù)庫的遠(yuǎn)程訪問功能不能滿足系統(tǒng)性能的要求,所以選擇了Microsoft SQL Server 2012完成數(shù)據(jù)的集體升遷功能,實現(xiàn)了Access數(shù)據(jù)庫與SQL Server數(shù)據(jù)庫的連接與數(shù)據(jù)的上傳更新。
第2步:圖形化顯示程序的設(shè)計。為實現(xiàn)足底壓力數(shù)據(jù)的圖形化顯示,設(shè)計了基于LabVIEW后處理顯示模塊。圖6為圖形化顯示界面圖。
圖6 圖形化顯示界面圖Fig.6 Graphical display interface diagram
在LabVIEW環(huán)境中,使用Database工具包對SQL數(shù)據(jù)庫進(jìn)行讀寫等操作。LabVIEW后處理顯示模塊可實現(xiàn)如下2個主要功能。
1)無線傳輸模塊的步進(jìn)查詢功能。該功能可實現(xiàn)數(shù)據(jù)幀的步進(jìn)回放,并可對不同足進(jìn)行選擇查看。步進(jìn)顯示及不同足選擇功能的控制由雙層循環(huán)與事件觸發(fā)實現(xiàn)。幀步進(jìn)顯示會按時間次序進(jìn)行演示,數(shù)據(jù)庫相關(guān)數(shù)據(jù)一次性讀入內(nèi)存中,若需刷新數(shù)據(jù)可使用刷新鍵重新將數(shù)據(jù)讀入內(nèi)存。切換不同足時會重新讀取該足相關(guān)信息,具有刷新的功能。
2)無線傳輸模塊的實時監(jiān)診功能。該功能可在允許的延遲時間內(nèi),實現(xiàn)足底壓力信號的實時傳輸。在程序中使用雙緩沖池結(jié)構(gòu)來解決讀寫的時序協(xié)調(diào)問題。完成寫入1張表時向此表寫入完成識別標(biāo)符,當(dāng)讀取模塊讀取完成并將表交還給寫入模塊時,清除第1行寫入完成標(biāo)符,以防止在無線傳輸丟包率過大時信號讀取模塊過度跟進(jìn)。寫入指針與讀取指針移動速度設(shè)為相同值。使用雙緩沖池結(jié)構(gòu)可大大增加系統(tǒng)對無線傳輸丟包現(xiàn)象的容錯能力。
在生物步態(tài)力學(xué)中,足-地面反力通常被用來作為人體行走狀態(tài)的功能性指標(biāo)。行走過程中,地面的世界坐標(biāo)系和鞋墊的局部坐標(biāo)系不能保持一致,因此,足-地面反力不是足底壓力的簡單求和。本文將采用多元線性回歸算法將分析足底壓力和足-地面反力之間的關(guān)系。根據(jù)多元線性回歸算法,可一般性地表達(dá)為
(2)
式中:G為足-地面反力,N;pi為第i個傳感器的壓力,N;γi和βi為回歸系數(shù)。正如文獻(xiàn)[20]所指出的,如果pi之間存在密切相關(guān)項,則多元線性回歸方程(式(2))將產(chǎn)生很大的誤差。獨(dú)立變量的篩選一直是線性回歸算法的一個重要研究方向。
采用逐步回歸的方式篩選變量,首先計算12個變量的偏回歸平方和,選出其中偏回歸平方和最大的變量進(jìn)行F檢驗,檢驗其顯著性。如果其顯著性滿足要求就將其加入方程,接著進(jìn)行下一個變量的檢驗,觀察其顯著性,每增加1個變量之后都要對之前加入的變量再次進(jìn)行顯著性檢驗,重復(fù)以上步驟直到?jīng)]有變量需要增加或者刪除,就結(jié)束變量的篩選。從中選出最優(yōu)回歸子集,變量入選和剔除的顯著水平分別設(shè)為0.1 和0.15, 從而可以選出最主要的影響因素。
邀請10名成年健康男性(體重為50~70 kg,身高為168~180 cm),采用F-SCAN足底壓力系統(tǒng)(Tekscan)和自制壓力鞋墊分別對足-地面反力和足底壓力分布進(jìn)行測量。實驗過程中,F(xiàn)-SCAN系統(tǒng)置于水平地面,自制壓力鞋墊放入被測者鞋內(nèi),如圖7所示。同時,二者采用相同的采樣頻率對數(shù)據(jù)進(jìn)行采集,保證數(shù)據(jù)在時間上的一致性。
基于測量數(shù)據(jù),通過MatLab中編寫的逐步多元線性回歸算法,得到如下足-地面反力模型:
(3)
式中,f2、f3、f8、f9分別為傳感器2、3、8、9的壓力值。
可以看到,G與傳感器2、3、8、9的關(guān)系密切,這是由于人體在行走時腳掌和腳后跟區(qū)域為主要的受力區(qū)域。
圖7 實驗圖Fig.7 Experimental diagram
為驗證所建立模型的正確性,另外邀請2名成年男性進(jìn)行實驗。把所測得的足底壓力數(shù)據(jù)代入式(3)中預(yù)測足-地面反力,并與測量值進(jìn)行對比,如圖8所示。
圖8 驗證實驗1和2Fig.8 Verification experiment 1(a) and 2(b)
通過驗證實驗可以看出,基于壓力鞋墊壓力值的預(yù)測值和測量值之間的相對誤差為0.248 8%和0.731 8%,位于工程實際應(yīng)用可接受的范圍之內(nèi)。在曲線的上升部分和下降部分?jǐn)M合較好,誤差較小,在中間部分?jǐn)M合的誤差較大。產(chǎn)生這種情況的原因是FSR402傳感器在壓力較小時測量精度較高,當(dāng)壓力增大到10 N以上時其測量精度就會降低;產(chǎn)生誤差的另一個原因是足部與鞋墊之間的黏彈性。在部分區(qū)域,預(yù)測力為負(fù)值的原因是由于人體足部抬起時,人體皮膚與鞋墊之間的黏著力,所以會給鞋墊一個向上的力,此時地面反應(yīng)力為負(fù)值。
本文采用FSR402傳感器設(shè)計了足底壓力鞋墊,并基于Zigbee技術(shù)實現(xiàn)了壓力的數(shù)據(jù)無線傳輸。將數(shù)據(jù)幀按格式寫入Access數(shù)據(jù)庫中,之后利用SQL數(shù)據(jù)庫完成共享操作,實現(xiàn)了對壓力鞋墊的遠(yuǎn)程測量。在數(shù)據(jù)傳輸中,設(shè)計了特殊的數(shù)據(jù)幀格式,便于監(jiān)測病人的狀態(tài);在數(shù)據(jù)處理中采用逐步多元線性回歸算法提高了預(yù)測的準(zhǔn)確性,并得出腳掌和腳后跟部位的壓力測量對作用力預(yù)測的影響較大的結(jié)論。
FZXB