


收稿日期:2024-03-15
作者簡介:張勇(1982—),男,本科,工程師,研究方向:鐵路信號。
摘要 信號系統作為鐵路車站的重要設備,關系著鐵路的正常運行,但由于現場設備調試工作量巨大,故而通常采用試驗模擬裝置進行聯鎖調試。為保證鐵路車站聯鎖控制及列車運行演練的真實性和安全性,文章基于Visual Studio平臺從應用層模塊、安全功能模塊、通信功能模塊、故障注入模塊設計了試驗模擬裝置系統。相較于傳統模擬裝置,該系統能夠縮短1/3左右的試驗時間,具有較為理想的應用效果。
關鍵詞 鐵路車站;信號聯鎖試驗;模擬裝置
中圖分類號 U284.3文獻標識碼 A文章編號 2096-8949(2024)11-0021-03
0 引言
傳統車站信號系統調試主要通過模擬試驗盤進行模擬,這種試驗盤僅能模擬車站的室外信號機、轉轍機、軌道電路的狀態,不僅功能不全,還需結合實際需求進行個性化改進,效率低、適用性差,并且無法實現重復利用,經濟性較低。該次研究設計的信號試驗模擬系統操作簡單、實用性強,能夠根據需求靈活配置方針設備數量,并具備強電動作過程模擬功能,在很大程度上提高了模擬試驗與現場實際的一致性,具有較高的應用推廣價值。
1 系統總體架構
該次研究基于Visual Studio平臺進行鐵路車站信號聯鎖試驗模擬裝置系統的設計,將系統劃分為四個模塊:①應用層模塊;②安全功能模塊;③通信功能模塊;④故障注入模塊。各模塊間的聯系如圖1所示。
圖1 各模塊間的聯系圖
發送端,應用層模塊會將數據發送到安全功能模塊,安全功能模塊接收來自上層的數據后,會對數據進行打包處理,再發送到通信功能模塊,最后由通信功能模塊發送到接收端的通信功能模塊[1]。其中,故障注入模塊主要與安全功能與通信功能兩模塊相連接,并在兩模塊收發數據的過程中注入錯誤數據,以此形成故障注入。
接收端,通信功能模塊在接收到發送端通信功能模塊傳輸的數據后,會將數據發送到安全功能模塊,由安全功能模塊進行數據檢驗以及數據解析,最后將安全、正確的數據傳輸到應用層模塊[2]。系統總體架構如圖2所示。
圖2 系統總體架構圖
2 系統設計
2.1 應用層模塊設計
2.1.1 系統界面設計
應用層是信號聯鎖試驗模擬系統的核心模塊,主要負責數據生成與接收[3]。該次研究通過MFC仿真平臺進行應用層系統界面的構建,將界面劃分為五個部分:
(1)參數設置。該部分主要用于設置系統參數,例如發送端參數設置、接收端參數設置等,決定著收發數據的類型以及傳輸協議類型。
(2)信息窗口。該部分主要用于應用層交互版本信息的顯示,例如接口數據版本校驗信息、接口規范信息等。
(3)狀態欄。該部分主要用于數據收發狀態的更改,配置文件讀取完成后,會對窗口欄中的各種信息進行設置,例如布爾量等,再通過更改箭頭方向實現對數據收發狀態的更改。
(4)預留信息。該部分主要用于收發預留信息的顯示,并且可以通過窗口更改收發預留信息。
(5)信息輸出窗口。該部分主要用于系統軟件調試,判斷軟件運行狀態,并顯示運行錯誤信息。
2.1.2 系統數據塊設計
系統數據塊主要負責存儲收發信息、預留信息以及接口版本校驗信息[4]。系統數據塊長度為60字節,各部分所占字節數如表1所示。
表1 數據塊各部分所占字節數
字節數 數據塊
8 接口版本校驗信息
30 收發信息狀態數據
22 預留信息
2.2 安全功能模塊設計
安全功能模塊由四部分構成:①模塊初始化;②數據發送;③數據接收;④時鐘更新。
2.2.1 模塊初始化設計
安全功能模塊初始化主要包括三方面:
(1)配置初始化。讀取配置文件,并進一步讀取各鍵名下的參數,并對參數進行賦值[5]。安全功能模塊全局配置結構體如表2所示。
表2 安全功能模塊全局配置結構體
參數 字節 備注
main_cycle 5 設備周期
connection_num 3 節點數量
source_addr 3 設備地址
local_sid_1 5 通道1地址信息
local_sinit_1 5 通道1SINIT初始值
local_data Ver_1 5 通道1數據版本信息
local_Sys Check_1 5 通道1校核字
local_sid_2 5 通道2地址信息
local_sinit_2 5 通道2SINIT初始值
local_data Ver_2 5 通道2數據版本信息
local_Sys Check_2 5 通道2校核字
SFM_U2L_Q_Size 5 發送端數據包最大值
SFM_L2U_Q_Size 5 接收端數據包最大值
(2)連接初始化。流程與配置初始化類似,首先讀取配置文件,并進一步讀取與各連接通道對應鍵名下的參數,并對參數進行賦值[6]。對于無法初始化的參數,則將其更改為0。安全功能模塊連接配置結構體如表3所示。
(3)信息隊列初始化。首先,對信息隊列的類型進行設置,并將隊列中的元素個數清零;其次,將隊列總容量設置為SFM_L2U_Q_size的值;最后,對隊列頭的地址偏移量進行計算,并進行賦值。
表3 安全功能模塊連接配置結構體
參數 字節 備注
RSSP_comm_cycle 5 設備周期
dest_addr 3 目的地址
delta Time 3 最大時序偏差周期
life Time 3 SSE與SSR最大差值
torlerate_cycle 3 寬恕周期
num_data_ver 1 數據版本號
remote_sid_1 4 通道1地址信息
remote_sinit_1 4 通道1SINIT初始值
remote_data Ver_1 4 通道1數據版本信息
remote_sid_2 4 通道2地址信息
remote_sinit_2 4 通道2SINIT初始值
remote_data Ver_2 4 通道2數據版本信息
2.2.2 數據收發設計
在安全數據交互過程中,安全功能模塊主要分為安全數據的防護處理和傳輸驗證兩大部分。安全數據防護處理在安全功能模塊發送RSD、SSE、SSR三種通信報文過程中,主要涉及雙通道中CRCM安全編碼的生成、時間戳生成、CRC32生成以及CRC16的生成。在數據的接收過程中,安全數據傳輸驗證用于防護通信過程中可能存在的威脅,是數據完整性、時效性、有序性、真實性的保障。
2.3 通信功能模塊設計
2.3.1 模塊初始化
與安全功能模塊初始化相同,通信模塊初始化同樣分為配置初始化、連接初始化、信息隊列初始化三方面內容,其流程與安全功能模塊初始化相同,僅配置結構體存在差異,該文在此不再贅述。
2.3.2 底層通信模型選擇
該次系統軟件設計的過程中,為確保UDP連接的有效性,絕大多數通信組件均基于Socket套接字實現。同時,數據收發過程中,均采用Winsock接口,接收端、發送端分別創建Winsock接口,并以Sockert為通信端點,并由系統分配Sockert號。
調用socket函數創建套接字文件描述符,通過sockaddr_in結構體設置目的地址和端口,bind將設置好的目的地址和端口與套接字進行綁定。在端口為可寫狀態時,利用sendto函數將網絡數據包發送出去;在端口為可讀狀態時,recvfrom函數用于接收對機的網絡數據包,結束后利用close關閉套接字。
2.3.3 消息處理
通信功能模塊消息處理流程主要分為八個步驟:
(1)調用Get_CFM_Object函數,獲取靜態CFM對象,返回指針pCFM。
(2)從CFM_MQ.SND_MQ隊列中獲取數據包pri。
(3)將數據包放入LNK_MQ.SND_MQ,通過Socket套接字發送。
(4)通過Socker套接字獲取外界發送的信息,并將信息存到LNK_MQ.RCV_MQ隊列。
(5)從LNK_MQ.RCV_MQ隊列中獲取數據包pri。
(6)判斷數據是否大于通信層可接受的來自安全層的最大數據長度,若是,則進入下一階段;若否,則丟棄數據。
(7)判斷數據包的類型是否合法,若是,則進入下一階段;若否,則丟棄數據。
(8)進行CRC16檢驗,若檢驗通過,則將數據包放入CFM_MQ.RCV_MQ隊列;若未通過,則丟棄。
2.4 故障注入模塊設計
2.4.1 界面設計
系統界面主要包括九個操作輸入框:①CRCM1故障值輸入框;②CRCM2故障值輸入框;③CRC16故障值輸入框;④長度故障值輸入框;⑤序號故障值輸入框;⑥源地址故障值輸入框;⑦目的地址故障值輸入框;⑧發送超時故障值輸入框;⑨重復故障輸入框。
2.4.2 功能設計
故障注入主要根據試驗模擬需求通過人為操作對數據內容以及數據傳輸過程進行更改,例如改變數據關鍵變量、目標地址等。按照故障注入時間不同,故障注入主要分為兩種,一種為安全功能模塊信息構建階段的故障注入,另一種為信息從通信功能模塊發出階段的故障注入。
其中,發送超時、重復故障屬于信息從通信功能模塊發出階段的注入故障。
發送超時故障的注入流程分為四步:①調動Do Data Exchange函數,并將控件文本IDC_EDIT_TIMEOUT與變量m_Edit Time Ou進行t關聯;②輸入控件文本數據,并點擊開始,調用On Bn Clicked Button Start函數進行數據更新,將m_Edit Time Out賦值給m_Error_Time Out;③CFM模塊發送信息過程中,在函數CFM_Send_Dat中增加Sleep(400*m_Error_Time Out);④休眠時間結束后,通信層將數據包pri寫入發送隊列。
重復故障的注入分為四步:①調用Do Data Exchange函數,將控件文本IDC_CHECK_DUTERROR與變量m_Edit Dut Error進行關聯;②輸入控件文本數據并點擊開始,調用On Bn Clicked Button Start函數更新數據,將m_Edit Dut Error賦值給m_Error_Dut Error;③增加一個變量duplicated_times,用來記錄將pri放入發送隊列的次數,每發送一次次數加一;④循環發送至次數大于用戶設定。
3 系統試驗
3.1 系統現場試驗
系統試驗是保證信號設備功能正常發揮的重要基礎,系統設計完成后,結合實際使用需求,在經過深入調研的基礎上,已在某鐵路局新建車站得到應用,并取得了較為理想的應用效果。相比于傳統試驗模擬裝置,該系統進一步提高了車站信號聯鎖試驗效率,調試及驗證時間僅為傳統試驗模擬裝置的2/3,并且隨著操作熟練度的提高以及后續系統軟件的更新,還能進一步縮短試驗時間,提高試驗效率。
3.2 系統優勢
相較于傳統試驗模擬裝置,該系統的優勢體現在以下幾點:
(1)在通電情況下,該系統具有一鍵開關功能,操作便捷。同時,系統各模塊獨立運行,硬件更新簡單。線路連接方面,該系統通過萬科端子與室內接口一線連接,操作方便,實用性強。操作簡單、實用性強、能夠根據需求靈活配置方針設備數量,并具備強電動作過程模擬功能。
(2)該系統有著與現場相同的仿真設備數量,并且還能根據需求進行靈活配置,個性化較強。
(3)該系統除具有模擬盤的所有功能外,還增加了強電動作過程模擬功能,在很大程度上提高了模擬試驗與現場實際的一致性。
(4)該系統能夠對行車過程的設計進行模擬,能夠自動配合鐵路電務人員進行聯鎖關系試驗的驗收過程,相較于傳統人工操作,縮短了試驗時間,提高了聯鎖試驗的全面性和準確性。
(5)該系統的室外設備模擬模塊通過采集電纜輸出的電壓、電流、相位和相序等電氣特性,能夠分析出室內控制電路的故障點,協助施工單位快速查找設備故障點,能顯著節省調試時間,縮短車站施工工期。
4 結束語
針對傳統試驗模擬盤存在的效率低、經濟性低、適用性差的不足,研究基于Visual Studio平臺設計了鐵路車站信號聯鎖試驗模擬裝置系統。經實際使用檢驗發現,該系統操作便捷,能夠在很大程度上提高試驗效率,縮短試驗時間,還能根據使用需求靈活配置方針設備,模擬強電動作過程,且能夠重復使用,經濟性、適用性較強,在既有線日常施工、維修進行信號聯鎖試驗時運用該裝置可以取得較好效果。
參考文獻
[1]馬廣元, 張燕, 周游, 等. 鐵路車站信號聯鎖系統本地化仿真試驗平臺的研究[J]. 現代信息科技, 2019(19): 51-54.
[2]楊貴, 賈亞紅. 鐵路車站信號聯鎖試驗模擬裝置的研究與實現[J]. 鐵道運營技術, 2021(1): 14-16.
[3]朱勇. 鐵路信號模擬試驗自動控制系統設計與實現[J]. 鐵道建筑技術, 2023(3): 69-73.
[4]王麗, 劉逸明, 丁新魁, 等. 基于全電子聯鎖的車站現場聯鎖試驗研究[J]. 中國鐵路, 2020(2): 122-123.
[5]谷勝元. 鐵路信號模擬試驗中采用計算機軟件+采驅板替代模擬盤的研制[J]. 科技創新與應用, 2020(18): 167-169.
[6]陳大千. 鐵路室外信號試驗模擬盤的設計與實現[J]. 工程建設與設計, 2019(24): 32-34.