王聰玲 許婧婷 高軍 董永軍 郭景富 徐明奇



摘? 要: 針對多人參加的耐力素質測試中傳統計時方法存在的測試過程繁瑣、數據丟失、數據統計困難等問題,將RFID技術、LoRa無線通信技術與數據庫結合,設計了一套耐力跑體能測試系統。該系統具有自動計時、顯示和保存成績的功能,能夠以無線通信的方式將測試結果上傳至數據庫中。該系統還可以設置多個中途計時點,記錄多點成績。實際測試結果表明,該系統能夠實現分段計時、防止數據丟失、簡化數據統計與處理的過程,提高測試效率。
關鍵詞: 耐力素質; 自動計時; 射頻識別; LoRa無線傳輸; STM32; 數據統計
中圖分類號: TN710?34; TP273? ? ? ? ? ? ? ? ? ? 文獻標識碼: A? ? ? ? ? ? ? ? ? ? ?文章編號: 1004?373X(2020)19?0138?04
Abstract: In view of the tedious testing process, data loss and difficult data statistics existing in the traditional timing method of endurance quality test attended by several people, a set of endurance running fitness test system is designed by combining RFID (radio frequency identification) technology, LoRa (long range radio) wireless communication technology and database. The system has the functions of self?clocking, displaying and saving scores. Moreover, the test results can be uploaded to the database by wireless communication. The system can also be used to set multiple midway timing points to record the results of several points. The result of actual test shows that the system can perform segmented timing, prevent data loss, simplify the process of data statistics and processing, and improve the test efficiency.
Keywords: endurance; self?clocking; radio frequency identification; LoRa wireless transmission; STM32; data statistics
0? 引? 言
青少年的體質情況關系到國家的發展和民族的未來。有調研結果顯示,青少年參與體育鍛煉活動較少,身體素質有待提高[1]。為改善這一狀況,國家制定了一系列的標準和改進措施。在最新的《國家學生體質健康標準》中,男子1 000 m跑、女子800 m跑是唯一能衡量耐力素質的項目[2?3]。
目前,常見的耐力測試計時方式有秒表計時、光電感應計時[4]和RFID(Radio Frequency Identification)技術計時[5?8]三種方式。秒表計時方法繁瑣費力,受人為因素的影響,計時結果極易出現誤差,數據統計量大且易出錯;光電感應計時設備在多人參加的測試中無法分辨多個個體,延長了測試時間,此方式僅適用于單人的測試或訓練;RFID技術的計時設備在每次測試前都需要手動錄入參加測試者身份信息,此外,此類設備多以USB、以太網接口等與PC連接,無法在測試完畢后立刻將測試成績存儲到數據庫中,造成數據易丟失、數據統計過程繁瑣、時效性差等問題。本文針對校園中的耐力測試,將RFID技術、LoRa技術與數據庫相結合,設計了一套耐力素質測試系統。
1? 系統的總體設計
耐力素質測試系統總體結構框圖如圖1所示,包括下位機和上位機。下位機用來實現數據采集,由主控制器、多個計時器、地毯天線、電子標簽組成;上位機用來實現數據處理,由數據庫服務器和人機界面組成。
系統各部分具體實現的功能如下:
1) 主控制器:對整個耐力測試過程進行控制,包括身份認證、開始與終止測試、成績顯示和保存、數據傳送等。
2) 計時器:計時器連接地毯天線和電子標簽,共同組成一個完整的RFID系統。計時器分為終點計時器和多個中途計時器。終點計時器放置于終點位置,用于記錄測試者通過終點時的時間;中途計時器的位置和個數根據測試場地和需求進行放置和調整,用于記錄測試者通過中途計時點的時間,從而實現多點計時。
3) 數據庫:主要實現對數據的統計和保存,包括參加測試者身份、測試成績等相關信息。
4) 人機界面:與數據庫交互,實現管理人員對測試結果的查詢和管理,對測試結果評分。
2? 下位機的設計
2.1? 下位機的硬件設計
下位機的硬件設計如圖2所示。RFID技術作為一種非接觸自動識別技術具有能夠分辨不同個體的特點[9],其工作頻段有低頻(125~134 kHz)、高頻(13.56 MHz)、超高頻(433 MHz,860~960 MHz)、微波(2.45 GHz,5.8 GHz)。根據系統測試距離和穩定性的需要,主控制器選用13.56 MHz的讀卡模塊讀取校園卡,該模塊支持常見IC卡的讀取,計時器選用915 MHz的超高頻RFID閱讀器搭配地毯天線實現計時。測試時,測試者配帶電子標簽,RFID閱讀器發送一定頻率的射頻信號,電子標簽到達地毯式天線位置后接收閱讀器發出的射頻信號,發送電子標簽中的信息給RFID閱讀器,通過識別不同的標簽信息分辨出不同測試者。
藍牙、ZigBee等傳統的無線通信方式的通信距離較短,不適用于戶外場景。LoRa無線通信技術融合了數字擴頻、數字信號處理和前向糾錯編碼技術,與傳統的無線通信方式相比,具有低功耗、低成本、長距離等特點[10]。系統選用基于SX1278 射頻芯片的LoRa無線模塊實現主控制器與計時器、主控制器與服務器之間的通信,LoRa無線模塊的工作頻率范圍為410~441 MHz,不會影響RFID設備工作。
2.2? 下位機的軟件設計
數據采集系統的設計流程圖如圖3所示。
測試過程中為避免多個計時終端同時向主控制終端發送數據而產生的數據沖突,系統采用終點成績實時上傳,中途成績由主控制端查尋的方式實現獲取多點跑步成績。具體思路為:主控制器通過刷卡的方式獲取參加測試人員身份信息,并與其測試時佩戴的電子標簽綁定。開始測試,主控制器向所有計時器發送開始測試命令,所有計時器中的定時器開始計時,開始計時時間為[T0],RFID閱讀器開始工作。當計時器中的RFID閱讀器讀取到電子標簽,計時時間為[T1], 則經過該計時點的時間[T]為:
得到計時時間后,判斷計時時間是否有效。若時間有效,終點計時器將標簽信息和計時時間發送至主控制器,主控制器顯示并保存計時成績。中途計時器將標簽信息和計時時間暫時保存在中途計時器中,等待主控制器查詢。判斷計時時間有效的依據為:
即同一計時器本次計時時間與上次計時時間間隔大于5 s,則本次計時時間有效。直到所有測試人員完成測試,主控制器向所有計時器發送停止測試命令,各個計時器中的定時器清零,RFID閱讀器停止工作。主控制器依次查詢中途計時器,將本輪所有計時時間通過LoRa模塊發送至主控制器。主控制器將本輪測試的測試成績和刷卡卡號打包,通過LoRa模塊直接發送到數據庫服務器端。
2.3? LoRa無線通信
主控制器與計時器之間、上位機與下位機之間的通信均采用LoRa無線通信技術,為確保數據的準確性和可靠性,本設計制定了自定義的數據幀格式,如表1所示。
起始符1 B,功能碼1 B,數據長度由要發送的數據決定,數據內容為電子標簽的標簽號/學生卡卡號(計時器通過電子標簽號發送成績到主控制器,主控制器通過學生卡卡號發送成績到數據庫)+計時時間,校驗碼采用校驗和的方式,2 B,結束符1 B。具體功能碼及其含義如表2所示。
3? 上位機的設計
3.1? 數據庫的設計
上位機數據庫的設計采用PostgreSQL數據庫管理軟件實現數據的存儲。數據庫編寫思路如下:
1) 打開服務器串口,對串口初始化,設置波特率、數據流控制和幀格式;
2) 等待接收主控制器發送的數據,用SELECT語句檢索數據庫表中卡號字段;
3) 更新表中卡號對應的學生耐力測試成績;
4) 關閉串口。
pgAdmin 4中查看數據庫如圖4所示。
3.2? 人機交互界面的設計
人機交互界面采用LabVIEW軟件編寫,采用ODBC接口實現上位機界面與數據庫之間的連接。具體實施方式如下:用ADO Create Conn.vi與數據庫建立連接,隨后用ADO Connection Open.vi打開數據源為PostgreSQL35W的數據庫;SQL Executr.vi用來執行任何SQL語句,執行SELECT語句,查詢表中數據,將數據在表格控件中顯示,隨后用ADO Connection Close.vi關閉與數據庫的連接,如圖5所示。
4? 實驗測試與分析
為了測試本文設計系統計時的準確性和可靠性,在標準的400 m田徑跑道上分別對女子和男子進行了800 m/1 000 m中長跑測試。根據《國家學生體質健康標準》的測試要求,以分、秒為單位記錄測試成績,不計小數。測試時在200 m處放置中途計時終端。部分計時成績如表3,表4所示。
從實際測試可以看出,本文系統能夠自動記錄階段性跑步時間,本文設計的系統與傳統的人工手動計時方式相比,避免了人為因素產生的誤差,操作簡單,減少了繁瑣的人工勞動。與光電感應方法設計的自動計時設備相比,能夠實現多人同時測試,縮短了測試時間。與現有的RFID計時設備相比,能夠將計時成績直接上傳至數據庫,解決了數據丟失、數據統計困難等問題。
5? 結? 論
本文針對現有中長跑計時方法出現的測試效率低、數據統計困難等問題,選用RFID與LoRa技術相結合,設計了一套耐力素質測試系統。該系統改進了現有測試方法數據統計困難的問題,提高了測試效率。增加了分段計時功能,可測得多點數據,幫助測試者了解速度分配,為學生和運動員的訓練提供更多參考數據,有助于學生耐力素質的提高。
注:本文通訊作者為徐明奇。
參考文獻
[1] 王祥全.我國大學生人口身體素質研究[D].長春:吉林大學,2018.
[2] 陳偉強,宋小榮.對《國家學生體質健康標準(2014年修訂)》女生800米跑的解讀與分析[J].中華女子學院學報,2015(1):110?114.
[3] 張麗萍,楊雨軒.《國家學生體質健康標準》與《國家學生體質健康標準(2014年修訂)》的對比研究[J].體育科技文獻通報,2015(2):92?93.
[4] 李圣普,王小輝.基于ZigBee的跑步訓練輔助系統研究[J].現代電子技術,2016,39(2):62?64.
[5] 李慶功.面向中長跑體能測試的RFID設計與實現[J].現代電子技術,2017,40(1):28?31.
[6] KAO C?C, LO C?W, LU K?H. A personal video summarization system by integrating RFID and GPS information for marathon activities [C]// 2015 IEEE 5th International Conference on Consumer Electronics. Berlin: IEEE, 2015: 347?350.
[7] 孫海曉,于忠,段渭軍.基于RFID的高校馬拉松比賽管理系統設計[J].現代電子技術,2014,37(9):34?37.
[8] 張川.基于田徑比賽中的跑圈計數器的設計[J].電子設計工程,2016,24(19):105?106.
[9] 姜立芳.超高頻RFID技術在倉儲管理中的應用[J].現代信息科技,2018,2(11):191?193.
[10] 趙太飛,陳倫斌,袁麓,等.基于LoRa的智能抄表系統設計與實現[J].計算機測量與控制,2016,24(9):298?301.