黃炎 曾培峰
摘 要: 本文設(shè)計了一種基于傳感器和無線傳輸?shù)倪\動輔助系統(tǒng),人員佩戴的單元模塊通過LoRa與上位機通信。接收上位機發(fā)出的心跳信號、采集運動和定位信息。肢體傳感器通過2.4 G無線通信與相應(yīng)的單元模塊通信以及采集肢體運動數(shù)據(jù)。LoRa使得上位機可遠(yuǎn)程獲取人員數(shù)據(jù)。單元模塊和肢體傳感器間采用2.4 G近距離通信,避免了各人員間數(shù)據(jù)干擾。
關(guān)鍵詞: 運動狀態(tài); 傳輸協(xié)議; 傳感器; 數(shù)據(jù)采集
文章編號: 2095-2163(2021)07-0120-04中圖分類號:TP391.4文獻(xiàn)標(biāo)志碼: A
Study on all-day intelligent motion assistant system
HUANG Yan, ZENG Peifeng
(School of Computer Science and Technology, Donghua University, Shanghai 201620, China)
【Abstract】A motion assistant system is designed based on sensors and wireless transmission. The unit module worn by personnel communicates with the host computer through LoRa, which receives the heartbeat signals from the host computer and collects the movement and positioning information. The limb sensor communicates with the corresponding unit module through 2.4 G wireless communication and collects the limb movement data. The host computer can obtain personnel data remotely through LoRa. A 2.4 G short-range communication is used between the unit module and its limb sensors, which avoids data interference among people.
【Key words】motion state; transmission protocol; sensor; data acquisition
0 引 言
體育鍛煉是青少年獲得德智體全面發(fā)展的重要環(huán)節(jié)。對于鍛煉運動量,常常依據(jù)生理方法進(jìn)行檢查以及初步估算相應(yīng)運動量[1]。但是,諸如球類比賽的劇烈運動項目具有時間長、對抗性強以及不能隨意中斷的特點。只能通過對運動員的跑動、跳躍、站立的活動時間以及次數(shù)進(jìn)行統(tǒng)計[2]。隨著科學(xué)鍛煉方法的提高[3],對運動改善心肺機能有氧鍛煉強度控制進(jìn)行研究。通過健康青年在運動跑臺上進(jìn)行遞增負(fù)荷走跑進(jìn)行攝氧量檢測。近年來,計算機在運動檢測和仿真方面起到了越來越大的作用[4]。針對不同的運動方式下計算機仿真結(jié)果進(jìn)行了誤差分析。對比了不同的仿真模型的特點。
運動是人們維持身體健康的有效方式,通常進(jìn)行適量的有氧運動和無氧運動,高強度間歇運動效果更佳,可以有效地降低體內(nèi)血脂的含量,改善人體血脂環(huán)境[5],保持人體身體健康。形成長期良好的運動習(xí)慣,會對皮下脂肪進(jìn)行干預(yù),提高人體新陳代謝,起到改善內(nèi)臟脂肪含量的作用[6],保持良好的身材。通過游泳、自行車等運動能夠鍛煉到人體身體機能,尤其是籃球、足球等運動更能鍛煉心肺功能[7]。
2010年微軟推出的Kinect為人體運動檢測提供了設(shè)備,廣泛運用于目前的運動檢測以及監(jiān)控、醫(yī)療等領(lǐng)域。針對Kinect深度圖像[8],研發(fā)出改進(jìn)的ViBe算法提高了人體輪廓提取的準(zhǔn)確率。文獻(xiàn)[9]提出自適應(yīng)的EWMA算法,提高了檢測的實時性和穩(wěn)定性。文獻(xiàn)[10]提出Kinect深度圖像與信息熵結(jié)合的方法,通過計算運動熵值得出人體運動狀態(tài)。文獻(xiàn)[11]提出了使用WiFi傳遞狀態(tài)信息(CSI),在室內(nèi)短距離實現(xiàn)了基于無線射頻的人體運動檢測。文獻(xiàn)[12]提出一種壓力陣列傳感器,可以檢測出細(xì)微運動狀態(tài),但不具備無線傳輸模塊,無法滿足實際應(yīng)用的需求。
上述方法主要通過圖像處理進(jìn)行數(shù)據(jù)拾取并要求參與訓(xùn)練人員在指定區(qū)域內(nèi)進(jìn)行活動,不能用于一般體能訓(xùn)練中的行軍拉練,以及全天候野外訓(xùn)練。本文提出一種基于加速度傳感器、高度傳感器和北斗定位的可擴展的無線訓(xùn)練輔助系統(tǒng)。通過傳感器信息,對運動量進(jìn)行計算統(tǒng)計。系統(tǒng)不依靠圖像處理,在各種氣象條件下均可正常工作。此外,結(jié)合高度傳感器,可以區(qū)分不同地形對訓(xùn)練的結(jié)果進(jìn)行修正。采用LoRa無線通信協(xié)議,使得功耗與通信距離得到較好的協(xié)調(diào)。出現(xiàn)異常情況時,通過LoRa進(jìn)行定位呼救。
1 系統(tǒng)設(shè)計
本文系統(tǒng)采用無線通信進(jìn)行數(shù)據(jù)傳輸。目前廣為使用的無線方案有工作在2.4 GHz頻率段的藍(lán)牙、ZigBee和WiFi。研究可知,各方案的工作頻率高,信號傳輸速度高,但是傳輸距離近,適合于室內(nèi)或小范圍場合。針對室外或野外拉練的使用場合,本文采用工作頻率為433 MHz的LoRa通信協(xié)議。由于LoRa通過擴頻通信,提高了頻帶的使用率,因此通信距離得到很大提高,其通信范圍在數(shù)公里。
每個參加訓(xùn)練的人員均佩戴一個單元模塊。筆記本電腦作為本系統(tǒng)的上位機,通過LoRa和各個單元模塊進(jìn)行通信。上位機向各個單元模塊發(fā)出廣播信息,實現(xiàn)工作指令的下達(dá)以及系統(tǒng)時間的統(tǒng)一。佩戴于每個人員身上的單元模塊采集人員的運動數(shù)據(jù)、并對數(shù)據(jù)進(jìn)行簡單處理及存儲。在與上位機聯(lián)網(wǎng)時將數(shù)據(jù)上傳至上位機。系統(tǒng)結(jié)構(gòu)如圖1所示。
考慮實際使用場合,單元模塊由鋰電池供電??陀^上希望電池續(xù)航時間長。所以,本文選用低功耗ARM芯片??紤]到LoRa協(xié)議棧代碼量較大,需要ARM帶有較大的程序存儲區(qū)。因此本文采用STM32L031G6U6,該芯片帶有的32 K的Flash空間,滿足了LoRa協(xié)議棧的要求。單元模塊的結(jié)構(gòu)如圖2所示。
圖2中,ARM通過SPI接口和LoRa模塊相連,接收上位機指令。高度傳感器和加速度傳感器通過I2C接口與ARM通信。北斗定位則通過UART進(jìn)行通信。單元模塊和肢體傳感器通信是nRF24L01提供的2.4 GHz模塊,nRF24L01與ARM間通過SPI接口通信。
在警察和部隊訓(xùn)練中常常包含臥姿、匍匐以及下蹲等動作,為了進(jìn)一步提高數(shù)據(jù)采集的精度,系統(tǒng)中可以增加肢體傳感器。單元模塊一般佩戴在腰間,每個單元模塊可擴展最多2個肢體傳感器,并分別佩戴在肩部以及腳踝。肢體傳感器包含一個低功耗ARM芯片STM32L011F4U6、一個高度傳感器和一個加速度傳感器。肢體傳感器與單元模塊間通過2.4 GHz通信。肢體傳感器的結(jié)構(gòu)如圖3所示。和單元模塊相同,加速度傳感器和高度傳感器通過I2C、nRF24L01(2.4 GHz通信)通過SPI和ARM相連。
2 工作原理
整個系統(tǒng)由上位機控制工作。上位機在固定時間間隔通過LoRa向各個單元模塊廣播心跳信號。單元模塊只需單向接受心跳信號的廣播信息,并不對此信息進(jìn)行回答。該心跳信號格式如圖4所示。
LoRa通信是廣播信號,各個設(shè)備擁有唯一的地址。其中,上位機專用地址0x0000,單元模塊地址范圍是0x0001~0xfffe。此外,0xffff是廣播地址。所有設(shè)備都必須接收和處理發(fā)往廣播地址的數(shù)據(jù)。本文中,上位機發(fā)送心跳廣播信號時間間隔為10 s。上述心跳信號中:
(1)DestAddr為2字節(jié),表示數(shù)據(jù)接收者地址。由于心跳信號為廣播信號,故DestAddr固定為0xffff。
(2)SrcAddr為2字節(jié),表示數(shù)據(jù)發(fā)送者地址。上位機地址為0x0000。
(3)CurTime為4字節(jié),表示系統(tǒng)統(tǒng)一時標(biāo)。通過上位機的TimeTick取得,單位為ms。各個單元模塊接收到心跳信號中的時標(biāo)信號,完成自身的機器時間與該時標(biāo)信號時間同步。
(4)WKStatus為一字節(jié),表示工作模式。全部的單元模塊工作模式通過心跳信號統(tǒng)一。有2種工作模式:運動(Working)和休息(Idle)。其中在Idle模式下,上位機忽略單元模塊發(fā)送的各種傳感器數(shù)據(jù),所以,在此模式下,單元模塊可以關(guān)閉北斗定位以及相關(guān)傳感器以延長電池續(xù)航時間。
(5)CRC16為2字節(jié)無符號數(shù),是DestAddr開始到WKStatus為止9字節(jié)的校驗值。本文中,無線通信均通過CRC16進(jìn)行數(shù)據(jù)整合校驗,使用的多項式為x15+x13+1。
肢體傳感器和單元模塊配對使用。通過nRF24L01的2.4 GHz進(jìn)行通信。設(shè)置nRF24L01協(xié)議層(Enhanced Shockburst)中發(fā)送方和接收方地址以避免不同單元模塊間信號串?dāng)_。只有在發(fā)送方和接收方地址一致時,單元模塊才能接收到肢體傳感器發(fā)送的信息。
本文中,肢體傳感器每0.5 s啟動一次高度傳感器工作并取得當(dāng)前高度數(shù)據(jù)。設(shè)置加速度傳感器的數(shù)據(jù)轉(zhuǎn)換速率為10 Hz,即每0.5 s內(nèi)可以取得4~5個三軸加速度數(shù)據(jù)、計算對應(yīng)的加速度模值并記錄該時間段內(nèi)加速度模值的最大值。加速度數(shù)據(jù)和高度數(shù)據(jù)以圖5的數(shù)據(jù)格式發(fā)送到單元模塊。
上述協(xié)議中:
(1)Addr為一字節(jié)地址。每個單元模塊包含2個肢體傳感器,相對應(yīng)的地址分別是0x01和0x02。
(2)Acc為2字節(jié)無符號整數(shù)。對應(yīng)為該0.5s時間段內(nèi)加速度模值的最大值。
(3)AirPressure為2字節(jié)無符號整數(shù)。對應(yīng)為當(dāng)前大氣壓值。
(4)CRC16為2字節(jié)整數(shù)。是Addr開始到AirPressure為止5字節(jié)的校驗值。
單元模塊包括ARM芯片、加速度傳感器、大氣壓傳感器、北斗定位模塊、LoRa以及2.4 GHz無線模塊。合理分配各個模塊的工作,能夠在實現(xiàn)所需功能的前提下,節(jié)約電能、延長電池的續(xù)航時間。單元模塊有上電狀態(tài)、休閑狀態(tài)和工作狀態(tài)等3種工作狀態(tài)。對此可做闡釋分述如下。
(1)上電狀態(tài)。關(guān)閉所有模塊以省電,只打開LoRa模塊用以接收上位機的心跳信號。若1 s內(nèi)接受心跳信號失敗,則關(guān)閉LoRa模塊一定時間,然后重新開啟LoRa接收上位機心跳信號。當(dāng)接收到心跳信號后,實現(xiàn)時間同步,并根據(jù)心跳信號的指令,跳轉(zhuǎn)到工作或休閑狀態(tài)。
(2)休閑狀態(tài)。除LoRa模塊以外的所有模塊關(guān)閉。每10 s開啟LoRa模塊接收上位機心跳信號進(jìn)行時間同步。當(dāng)上位機命令開始工作,則打開加速度傳感器,跳轉(zhuǎn)至工作模式。
(3)工作模式。單元模塊定時采集加速度數(shù)據(jù)。根據(jù)加速度的變化規(guī)律,進(jìn)行運動狀態(tài)的估算,判斷當(dāng)前工作在靜止或是運動工作模式。此外,每一秒鐘打開一次高度傳感器,采集高度數(shù)據(jù)并進(jìn)行高度變量的計算。根據(jù)加速度變化率以及高度變化量,進(jìn)一步確定當(dāng)前是屬于平地運動或是上、下坡訓(xùn)練。
在工作模式中,根據(jù)加速度的變化規(guī)律以及高度變化狀況,確定安全狀態(tài),包括3種情況:
(1)正常狀態(tài):根據(jù)平地步行、跑步或攀登運動模式,計算運動量。
(2)跌落狀態(tài):加速度數(shù)據(jù)出現(xiàn)異常變小后瞬間變大,表明出現(xiàn)跌落。跌落過程的自由落體使得加速度值異常變小;落地的沖擊使得加速度瞬時變大。同時,根據(jù)高度傳感器數(shù)據(jù)計算跌落高度。這種情況下,自主開啟北斗定位,取得當(dāng)前位置信息。立即開啟LoRa,通過LoRa持續(xù)發(fā)送急救信號,直至接收到上位機應(yīng)答。
(3)滾落狀態(tài):根據(jù)加速度數(shù)據(jù),計算當(dāng)前加速度的方向,若出現(xiàn)加速度方向與傳感器間的夾角單向持續(xù)變化,同時,高度數(shù)據(jù)表明其高度值不斷下降,這表明人員出現(xiàn)滾落的可能性大。這種情況下,自主開啟北斗定位,取得當(dāng)前位置信息,立即開啟LoRa,通過LoRa持續(xù)發(fā)送急救信號,直至接收到上位機應(yīng)答。
在上位機發(fā)送心跳信號的間隔時間內(nèi),任取一個時間點,單元模塊將當(dāng)前的運動數(shù)據(jù)上傳到上位機。同時該數(shù)據(jù)保存到ARM的Flash區(qū)域內(nèi),以備離線運動量統(tǒng)計。
工作模式接收到心跳信號的指令中WKStatus為休閑狀態(tài),則跳轉(zhuǎn)至休閑狀態(tài)。
單元模塊向上位機上傳數(shù)據(jù),格式如圖6所示。
在上述數(shù)據(jù)格式中:
(1)DestAddr為2字節(jié)的上位機地址。固定為0x0000。
(2)SrcAddr為2字節(jié)。每個單元模塊擁有唯一的非零地址。
(3)CType為一字節(jié)。值為0表示正常數(shù)據(jù)上傳。值為1表示模塊發(fā)出緊急呼救。
(4)Acc為2字節(jié)。當(dāng)前時間段中加速度模值最大值。
(5)AirPressure為2字節(jié),為當(dāng)前時間段中大氣壓值。當(dāng)上位機取得該大氣壓數(shù)據(jù)后,計算其當(dāng)前海拔高度。
(6)GPS為8字節(jié)。為當(dāng)前的北斗定位值。
(7)SubData為2字節(jié)。是根據(jù)肢體傳感器的數(shù)據(jù)計算得到的人體姿態(tài)數(shù)據(jù)。表示當(dāng)前是否直立、下蹲、彎腰、下趴等人體姿態(tài)。
(8)CRC16為2字節(jié)。是DestAddr開始、SubData為止的19字節(jié)數(shù)據(jù)的校驗值。
3 結(jié)束語
本文著重分析基于圖像處理進(jìn)行運動識別的局限性,研發(fā)了一種運動輔助系統(tǒng),針對運動范圍廣、光線環(huán)境差的場景,提供了有效的運動識別系統(tǒng)。通過LoRa實現(xiàn)單元模塊與上位機通信,通過2.4 G無線通信完成單元模塊和肢體傳感系統(tǒng)的信息傳輸。在識別運動狀態(tài)的基礎(chǔ)上,針對危險狀態(tài)做出識別并發(fā)出警報信息。具有功耗低、功能性強、數(shù)據(jù)傳輸穩(wěn)定、實時性好等特點,可滿足大范圍、長時間的戶外運動訓(xùn)練的要求。
參考文獻(xiàn)
[1]李妙琴,劉潤波. 關(guān)于體育課運動量計算方法的探討[J]. 體育科學(xué),1983(1):20-25.
[2]常慶, 陳體強. 籃,排,足球運動量計算機測試方法的研究[J]. 電腦學(xué)習(xí), 1989(1):17-21.
[3]譚思潔,俞中濤,賈曉凱. 運動改善心肺機能有氧鍛煉強度控制方法研究—走跑速度推算攝氧量回歸方程的建立[J]. 天津體育學(xué)院學(xué)報,2020,35(3):310-315.
[4]穆雪蓮,李翰君,周興龍,等. 不同減小運動學(xué)和動力學(xué)數(shù)據(jù)誤差的方法對下蹲跳運動仿真結(jié)果的影響[J]. 科學(xué)技術(shù)與工程,2018,18(30):35-43.
[5]林鵬杰,藍(lán)道忠,翁錫全,等. 短期有氧運動與高強度間歇運動對男性青年血脂代謝指標(biāo)的影響[J]. 體育學(xué)刊,2018,25(4):140-144.
[6]張勇,王典,葉衛(wèi)兵. 高強度間歇運動與最大脂肪氧化強度持續(xù)運動對普通女大學(xué)生身體成分的影響[J]. 中國運動醫(yī)學(xué)雜志,2018,37(5):384-390.
[7]楊三軍. 間歇性練習(xí)對TRIMP計算與運動負(fù)荷評價的影響[J]. 首都體育學(xué)院學(xué)報,2016,28(2):152-155.
[8]孟明, 楊方波, 佘青山,等. 基于Kinect深度圖像信息的人體運動檢測[J]. 儀器儀表學(xué)報, 2015, 36(2):386-393.
[9]呂金澤,張元,韓燮. 改進(jìn)的人體運動檢測方法[J]. 計算機工程與設(shè)計,2019,40(9):2460-2465.
[10]劉劍,龔志恒,高恩陽,等. 一種基于深度和信息熵的人體運動檢測方法[J]. 小型微型計算機系統(tǒng),2014,35(2):388-392.
[11]史白,莊杰,龐宏. 基于信道狀態(tài)信息的非合作式室內(nèi)人體運動檢測[J]. 計算機應(yīng)用,2017,37(7):1843-1848.
[12]廖璐璐,高鯤鵬,楊漢嘉,等.? 面向人體運動檢測的紙基柔性壓力陣列傳感器[J]. 傳感器與微系統(tǒng),2019,38(10):57-60.
[13]孫小華. 基于Softmax回歸分類分析的人體運動檢測研究[J]. 價值工程,2019,38(26):239-240.
作者簡介: 黃 炎(1997-),女,碩士研究生,主要研究方向:嵌入式; 曾培峰(1964-),男,博士,教授,主要研究方向:圖像處理、嵌入式、纖維的圖像識別等。
通訊作者: 黃 炎Email:416289692@qq.com
收稿日期: 2021-04-20