張鈺熒 高春雷 周佳亮
1.中國鐵道科學研究院研究生部,北京 100081;2.中國鐵道科學研究院集團有限公司鐵道建筑研究所,北京 100081
尖軌降低值不良可造成列車在通過道岔時,尤其是順向過岔時輪軌接觸從尖軌到基本軌過渡不平穩(wěn)。尖軌相對于基本軌降低值超過1 mm,影響行車平穩(wěn)性時須對尖軌進行修理或更換[1]。因此,精確測量尖軌相對于基本軌降低值是十分必要的。
道岔尖軌降低值測量儀(以下簡稱尖軌測量儀)用于道岔的檢測和維修,具有測量效率高、精度高、結構簡單緊湊、重量輕等諸多優(yōu)點[2]。目前對于尖軌測量儀的使用,有些鐵路局采用人工記錄數(shù)據(jù)以及處理數(shù)據(jù),效率不高;部分采用基于Windows系統(tǒng)開發(fā)的上位機軟件獲取所測數(shù)據(jù),存在硬件攜帶、數(shù)據(jù)轉換存儲不便捷的問題。因此需要一種更便捷的方式解決這些問題。與電腦相比,手機更加便于攜帶,并且在野外沒有網(wǎng)線的情況下,手機轉存數(shù)據(jù)更加方便快捷。如果能利用手機APP獲得尖軌測量儀所測數(shù)據(jù)并且在輸入標準值等參數(shù)后就可以計算出誤差,將會為現(xiàn)場工作帶來極大便利。
針對上述情形課題組基于安卓系統(tǒng)開發(fā)了一款通過藍牙與尖軌測量儀進行數(shù)據(jù)傳輸,并可以對接受到的數(shù)據(jù)進行處理與儲存的上位機應用軟件。本文先介紹測量系統(tǒng),再分述軟件的設計與測試。
上位機為安卓手機,下位機為以單片機為處理器的尖軌測量儀。上位機和下位機組成測量系統(tǒng),其間通過無線傳輸交互數(shù)據(jù)。
上位機是該測量系統(tǒng)的核心組成單元,其主要功能有:
1)數(shù)據(jù)通信。實現(xiàn)上位機與尖軌測量儀之間的通信,可以獲得儀器所測數(shù)據(jù)、儀器時鐘及校準儀器時鐘。
2)數(shù)據(jù)處理。由于安卓界面的數(shù)據(jù)顯示與單片機不同,須對數(shù)據(jù)解析處理。根據(jù)已經(jīng)獲得的測量數(shù)據(jù)和用戶輸入的測量地點、標準值計算出相應的誤差。
3)數(shù)據(jù)顯示。顯示傳輸過來的測量數(shù)據(jù),包括序號、測量時間和測量數(shù)值;顯示用戶輸入的測量地點與標準值參數(shù)以及計算后的誤差。
4)文件管理。將接收到的數(shù)據(jù)根據(jù)接收時間生成txt文件,存儲到指定路徑;在用戶輸入測量地點與測量值后對數(shù)據(jù)進行運算,并將相應數(shù)據(jù)生成excel文件存儲到指定路徑。
實現(xiàn)上位機與尖軌測量儀之間的通信有多種方式。最初的數(shù)據(jù)傳輸主要通過有線的方式來實現(xiàn)。隨著科技水平的提高,人們開始采用更加便捷的無線通信技術來傳輸數(shù)據(jù)[3-4]。目前流行的無線通信技術有IrDA、藍牙、WIFI[5]。這三種無線通信技術對比見表1。
表1 三種無線通信技術對比
IrDA的主要優(yōu)點是體積小、功耗低、連接方便、簡單易用,缺點是要求2個相互通信的設備對準,中間不能被其他物體阻隔。藍牙的工作頻率為2.4 GHz,有效范圍10 m,具有低成本、低功耗、高速率、方便快捷的優(yōu)點[6-9]。WIFI數(shù)據(jù)傳輸速率最高可達11 MB∕s。雖然在數(shù)據(jù)安全性方面比藍牙稍差,但其電波的覆蓋范圍大于藍牙。
由于尖軌測量儀應用在鐵路上,經(jīng)常需要野外作業(yè),無電源補充裝置,僅能依靠攜帶電池補充能量,因此最好采用低功耗的通信技術來傳輸數(shù)據(jù)。野外作業(yè)環(huán)境比較艱苦,若尖軌測量儀的通信范圍太小會不利于作業(yè)。綜合以上考慮,該儀器采用藍牙傳輸數(shù)據(jù)。目前大家普遍使用的智能手機中都有藍牙,使用藍牙傳輸數(shù)據(jù)無需額外的設備投入,經(jīng)濟又方便。
軟件基于Android Studio 3.6.3平臺開發(fā),使用的編程語言為Java。軟件可以在安裝有Android 4.1版本以上的設備上運行。根據(jù)谷歌官方數(shù)據(jù)顯示,截止到2020年,擁有Android 4.1及以上版本的智能手機在市場上的占有率已經(jīng)超過99%。
軟件使用流程為:①用戶授予軟件存儲權限。該軟件設有默認存儲路徑,用戶也可自行選擇存儲路徑并新建文件夾。②用戶打開藍牙,選擇要連接的設備,連接成功后可根據(jù)需要校準儀器時鐘,獲得儀器所測數(shù)據(jù)并保存為txt文件。③用戶選擇要分析的文件,將測量值導入,輸入測量地點與標準值,計算出誤差,并將相關信息輸出,保存為同路徑下的excel文件。
安卓6.0以上版本的手機在打開藍牙搜索設備之前需要請求定位權限。安卓10.0版本為了方便用戶更好處理數(shù)據(jù),采用了分區(qū)存儲機制。請求權限時注意請求這些權限。
在用戶授予相關權限并開啟手機藍牙后,藍牙開始搜索藍牙設備。用戶選擇想要連接的藍牙設備,首次配對需要輸入配對碼。配對成功后會提示用戶,即可開始相關數(shù)據(jù)的傳輸。為了方便用戶選擇要連接的設備,加裝有藍牙的尖軌測量儀定名為HC?02,且APP內(nèi)僅可以搜到名稱為HC?02的藍牙設備。
已經(jīng)完成了藍牙配對的Android設備通過調(diào)用BluetoothSocket中的getInputStream來獲得輸入流,通過調(diào)用getOutputStream獲得輸出流。
數(shù)據(jù)傳輸與處理流程見圖1。
圖1 數(shù)據(jù)傳輸與處理流程
重要步序的具體內(nèi)容為:
1)約定通信協(xié)議
在與單片機進行通信時,需要事先約定好通信協(xié)議。在APP中的相關功能下配置好所對應的協(xié)議,以便實現(xiàn)相關功能。通過與單片機通信可以實現(xiàn)的功能有校準儀器時鐘、讀儀器時鐘、傳輸數(shù)據(jù)和清除數(shù)據(jù)。
2)數(shù)據(jù)校驗
為了保證通信更加安全有效,設計中對數(shù)據(jù)的格式進行了定義。將發(fā)送的傳感器數(shù)據(jù)分成兩部分,前半部分數(shù)據(jù)中的6個字節(jié)為攜帶有效信息位。后半部分為校驗位,用于校驗上位機數(shù)據(jù)是否丟失。若數(shù)據(jù)丟失,需重新傳輸。
3)提取數(shù)據(jù)
該軟件采用正則表達式[10-11]對接收到的數(shù)據(jù)進行處理。正則表達式是對字符串操作的一種邏輯公式,就是用事先定義好的一些特定字符及其組合,組成一個規(guī)則字符串。用這個規(guī)則字符串來對字符串進行處理。在提取出數(shù)據(jù)中的有效信息后,這些有效信息會被處理成日常用的十進制數(shù)據(jù)并顯示。
4)生成txt文件
傳輸數(shù)據(jù)完成后,利用FileOutputStream將原始數(shù)據(jù)保存到一個以傳輸完成時間命名的txt內(nèi)。
5)導入txt文件
用戶選擇好需要處理的txt文件,利用FileOutputStream將該txt內(nèi)的原始數(shù)據(jù)導入,用戶輸入與原始數(shù)據(jù)相對應的測量地點與標準值,即可計算出誤差。
6)導出excel文件
計算完成后測量地點、標準值、測量值與誤差均保存在excel文件內(nèi)。為便于用戶后續(xù)查找,名字為所處理txt文件的名字+Ann。用Java語言編寫開發(fā)的jxl.jar將數(shù)據(jù)以規(guī)定好的格式制作成excel表格,存儲到手機上。
處理好的數(shù)據(jù)須完好保存,以便給養(yǎng)護維修提供數(shù)據(jù)支持。保存的數(shù)據(jù)有txt和excel兩種格式。txt格式方便用戶直接查看原始數(shù)據(jù),excel格式方便用戶針對誤差大小與地點進行維修。
編寫、調(diào)試后的程序界面見圖2。
圖2 程序界面
軟件在模擬器以及不同品牌的手機上測試無誤后生成了軟件的安裝包(apk文件)。為了保證軟件在大部分安卓手機上均可運行,軟件的API(Application Programming Interface)級別設置為16。這個級別表示軟件可以在Android 4.1版本及以上的手機上運行。
現(xiàn)場測量見圖3,測量時軟件在手機上的運行界面見圖4。
圖3 現(xiàn)場測量
圖4 軟件在手機上的運行界面
經(jīng)過現(xiàn)場實測,該軟件可以實現(xiàn)數(shù)據(jù)通信、數(shù)據(jù)處理、文件管理與數(shù)據(jù)顯示功能,人機交互體驗良好,可以滿足現(xiàn)場需要。該軟件在不同品牌、不同型號的安卓智能手機上均能正常運行,說明其通用性和兼容性好。
本文基于安卓平臺利用Android Studio設計了一款與尖軌測量儀配套使用的軟件。用戶可以通過手機軟件獲取尖軌測量儀所測數(shù)據(jù),并可對所測數(shù)據(jù)進行處理。所測數(shù)據(jù)保存到手機上可隨時查看,數(shù)據(jù)可視化程度高,保存后的數(shù)據(jù)文件可指導以后的養(yǎng)護維修工作,極大提高野外工作效率,降低了使用和維護成本。該軟件利用了智能手機普及率高的優(yōu)勢,具有成本低、覆蓋廣、操作簡便、人機交互體驗良好、通用性強等優(yōu)點。經(jīng)現(xiàn)場應用,效率良好,值得推廣。