本發明涉及鐵路信號,尤其涉及一種聯鎖系統的仿真方法、裝置、設備和存儲介質。
背景技術:
1、聯鎖系統是一種安全系統,通常用于鐵路或公路交通,確保車輛在通過交叉口或進入特定區域時,其他車輛或行人不會與之發生沖突。這種系統通過信號燈、欄桿或其他障礙物來控制交通流,以防止事故的發生。
2、現有技術中,聯鎖系統作為一種高可靠性系統,使用vxworks作為其操作系統可以最大程度上保證系統的可靠性和穩定性。然而,在vxworks實時操作系統上開發聯鎖系統,受限于聯鎖系統采用二乘二取二平臺來實現,導致應用數據開發后,聯鎖系統的測試邏輯復雜,不利于應用邏輯的開發與測試。
3、因此,如何實現對基于vxworks的聯鎖系統進行仿真,已成為當前業內亟需解決的技術問題。
技術實現思路
1、本發明提供一種聯鎖系統的仿真方法、裝置、設備和存儲介質,實現了在無需復雜的仿真環境下對基于vxworks的聯鎖系統進行仿真。
2、第一方面,本發明提供一種聯鎖系統的仿真方法,應用于聯鎖系統的仿真系統中的仿真平臺,所述聯鎖系統的仿真系統包括:所述仿真平臺和板卡仿真系統,所述仿真平臺包括基礎應用層,所述基礎應用層運行于計算板卡或虛擬板卡仿真環境中,所述仿真平臺與所述板卡仿真系統連接,所述方法包括如下步驟:
3、利用所述基礎應用層,調用所述仿真平臺的接收命令接口將至少兩個目標板卡命令報文全部放入第一vxworks任務結構體中;所述目標板卡命令報文為單幀命令報文;
4、利用協議轉換組件,根據預設的設備映射關系表將各所述目標板卡命令報文進行轉換整合,得到轉換整合后的單幀命令組合報文;
5、將所述轉換整合后的單幀命令組合報文下發給所述板卡仿真系統;所述板卡仿真系統用于對各設備進行控制和模擬;
6、接收板卡仿真數據并處理所述板卡仿真數據;所述板卡仿真數據為所述板卡仿真系統根據所述轉換整合后的單幀命令組合報文進行對應設備的仿真運行后得到的,所述板卡仿真數據中包含各所述設備的仿真數據。
7、根據本發明提供的一種聯鎖系統的仿真方法,所述調用所述仿真平臺的接收命令接口將至少兩個目標板卡命令報文全部放入第一vxworks任務結構體中,包括:
8、調用所述接收命令接口接收各所述目標板卡命令報文,并將各所述目標板卡命令報文存放于第一消息隊列中;
9、從所述第一消息隊列中順序取出各所述目標板卡命令報文,對各所述目標板卡命令報文進行多板卡協議轉換,得到轉換后的各所述目標板卡命令報文;
10、對轉換后的各所述目標板卡命令報文進行解析處理后放置于所述第一vxworks任務結構體中。
11、根據本發明提供的一種聯鎖系統的仿真方法,所述根據預設的設備映射關系表將各所述目標板卡命令報文進行轉換整合,得到轉換整合后的單幀命令組合報文,包括:
12、通過目標接口函數遍歷所述第一vxworks任務結構體中各所述目標板卡命令報文的指針;
13、根據各所述目標板卡命令報文的指針以及預設的設備映射關系表,將各所述目標板卡命令報文進行轉換整合,得到所述轉換整合后的單幀命令組合報文。
14、根據本發明提供的一種聯鎖系統的仿真方法,所述板卡仿真數據為單幀狀態報文;所述接收板卡仿真數據,包括:
15、通過傳輸控制協議和/或互聯網協議的規定接收所述單幀狀態報文;
16、將所述單幀狀態報文放入第二消息隊列中。
17、根據本發明提供的一種聯鎖系統的仿真方法,所述處理所述板卡仿真數據,包括:
18、在確定所述第二消息隊列中存在數據的情況下,從所述第二消息隊列中取出最新一條單幀狀態報文;
19、根據所述最新一條單幀狀態報文以及預設的設備映射關系表,根據設備碼位順序對所述最新一條單幀狀態報文進行分解處理,得到所述最新一條單幀狀態報文對應的設備狀態;
20、將所述最新一條單幀狀態報文對應的設備狀態存儲到對應的第二vxworks任務結構體中;
21、利用所述基礎應用層,通過所述應用與仿真平臺之間的接口函數獲取各所述第二vxworks任務結構體中的所述最新一條單幀狀態報文對應的設備狀態;
22、清空所述第二消息隊列中的所述最新一條單幀狀態報文,得到更新后的第二消息隊列;
23、在固定周期內重新從所述更新后的第二消息隊列中取出對應的最新一條單幀狀態報文,直至處理時長達到固定周期的時長。
24、根據本發明提供的一種聯鎖系統的仿真方法,所述接收所述板卡仿真數據處理對應的任務以及所述板卡仿真數據對應的任務為兩個獨立的任務,兩個所述獨立任務的優先級為基于所述仿真平臺控制的。
25、第二方面,本發明還提供一種聯鎖系統的仿真裝置,應用于聯鎖系統的仿真系統中的仿真平臺,所述聯鎖系統的仿真系統包括:所述仿真平臺和板卡仿真系統,所述仿真平臺包括基礎應用層,所述基礎應用層運行于計算板卡或虛擬板卡仿真環境中,所述仿真平臺與所述板卡仿真系統連接,所述裝置包括如下模塊:
26、指令下發模塊,用于利用所述基礎應用層,調用所述仿真平臺的接收命令接口將至少兩個目標板卡命令報文全部放入第一vxworks任務結構體中;所述目標板卡命令報文為單幀命令報文;
27、利用協議轉換組件,根據預設的設備映射關系表將各所述目標板卡命令報文進行轉換整合,得到轉換整合后的單幀命令組合報文;
28、將所述轉換整合后的單幀命令組合報文下發給所述板卡仿真系統;所述板卡仿真系統用于對各設備進行控制和模擬;
29、數據仿真模塊,用于接收板卡仿真數據并處理所述板卡仿真數據;所述板卡仿真數據為所述板卡仿真系統根據所述轉換整合后的單幀命令組合報文進行對應設備的仿真運行后得到的,所述板卡仿真數據中包含各所述設備的仿真數據。
30、第三方面,本發明還提供一種電子設備,包括存儲器、處理器及存儲在存儲器上并可在處理器上運行的計算機程序,所述處理器執行所述計算機程序時實現如上述任一種所述聯鎖系統的仿真方法。
31、第四方面,本發明還提供一種非暫態計算機可讀存儲介質,其上存儲有計算機程序,該計算機程序被處理器執行時實現如上述任一種所述聯鎖系統的仿真方法。
32、第五方面,本發明還提供一種計算機程序產品,包括計算機程序,所述計算機程序被處理器執行時實現如上述任一種所述聯鎖系統的仿真方法。
33、本發明提供的聯鎖系統的仿真方法、裝置、設備和存儲介質,應用于聯鎖系統的仿真系統中的仿真平臺,聯鎖系統的仿真系統包括:仿真平臺和板卡仿真系統,仿真平臺包括基礎應用層,基礎應用層運行于計算板卡或虛擬板卡仿真環境中,仿真平臺與板卡仿真系統連接,首先,利用基礎應用層,調用仿真平臺的接收命令接口將至少兩個目標板卡命令報文全部放入第一vxworks任務結構體中,其中,目標板卡命令報文為單幀命令報文;然后,利用協議轉換組件,根據預設的設備映射關系表將各目標板卡命令報文進行轉換整合,得到轉換整合后的單幀命令組合報文;之后,將轉換整合后的單幀命令組合報文下發給板卡仿真系統,其中,板卡仿真系統用于對各設備進行控制和模擬;進而,接收板卡仿真數據并處理板卡仿真數據,其中,板卡仿真數據為板卡仿真系統根據轉換整合后的單幀命令組合報文進行對應設備的仿真運行后得到的,板卡仿真數據中包含各設備的狀態數據。
34、本發明中因仿真平臺的基礎應用層運行于計算板卡或虛擬板卡仿真環境中,使得基礎應用在單獨虛擬環境下可以快速調試,無需復雜的仿真環境,首先,將至少兩個目標板卡命令報文全部放入第一vxworks任務結構體中,然后,將各目標板卡命令報文進行轉換整合,得到轉換整合后的單幀命令組合報文,進而,接收板卡仿真數據并處理板卡仿真數據,本發明實現了在無需復雜的仿真環境下對基于vxworks的聯鎖系統進行仿真。