何沛燊,劉元豐,劉桂雄
(1.華南理工大學機械與汽車工程學院,廣東 廣州 510640; 2.中車廣東軌道交通車輛有限公司,廣東 江門 529100)
列車自動控制系統(automatic train control,ATC)是以技術手段對列車運行方向、運行間隔和運行速度進行控制,以保證列車安全運行、高效率運行的系統,對各系統之間控制信號狀態檢測十分重要[1-3]。目前ATC設備連通情況檢測主要根據測試標準,逐個觸發ATC設備信號,觀察車載設備的響應情況,以確認控制信號正常與否。文獻[4]研制車載ATC設備的離線檢測系統,但其系統僅支持固定車型的測試,通用化受到限制。文獻[5]研制車載ATC系統功能測試平臺,但沒有測試過程溯源信息記錄,也沒有集成測試結果診斷系統。文獻[6]研制車載ATC設備中列車自動防護(automatic train protection, ATP)子系統測試平臺,也不支持多車型通用化測試功能。文獻[7]研制列車控制系統功能安全性測試系統,檢查設備間控制信息是否正常,同樣沒有測試過程溯源信息記錄。由于不同車型線路定義不一、測試項目眾多,需要頻繁切換測試線路,且車載設備位置不一,人工手動測試存在測試繁瑣、測試過程不規范、測試過程數據不可溯源、測試效率低等問題。為解決以上問題,本文研制軌道交通ATC通用型自動智能測試平臺,結合計算機技術,利用可編程邏輯控制器(programmable logic controller, PLC)作為控制單元代替人工切換測試線路,實現測試裝置的通用化、自動化、數字化,以及測試過程數據可溯源。
圖1為軌道交通ATC系統功能示意圖,ATC系統機柜與車載設備通過通信線相連,建立與車載設備的雙向通信,實現對車載設備的控制[8]。在GB/T 50578-2018《城市軌道交通信號工程施工質量驗收標準》[9]的“列車自動控制”部分中提及,對列車自動控制系統外部接口進行檢驗以及對信號車載設備接受車輛輸入、向車輛輸出的信息進行檢驗時需要對接口進行全部檢查,檢查系統通信通道正常。在CJ/T 407-2012 《城市軌道交通基于通信的列車自動控制系統技術要求》 “功能要求”部分,規定需要檢查的ATC系統控制項目[10],表1 為ATC系統控制測試項目表。
根據測試要求可知,在進行軌道交通車輛ATC系統測試時,主要是對系統的110V DC控制信號通信狀況進行檢測,實際測試中需要頻繁切換線路與輸入輸出狀態,并實時獲取線路導通情況,不同車型的測試流程、線路定義各不相同。因此,研制軌道交通ATC設備自動測試裝置的需求有:1)自動化,采用上位機實時控制與監測測試線路,實現機器代人,測試過程自動化;2)通用化,采用線路全自定義設計,可錄入不同車型配置,適配不同車型的測試,減少后期投入;3)數據可溯源與檢修建議,測試過程實時采集并上傳至上位機,自動處理與存儲,測試完成后輸出測試報表、診斷檢修建議。

圖1 ATC系統功能示意圖

表1 ATC系統控制測試項目表
根據上述測試需求,設計如圖2所示的軌道交通ATC設備通用化自動測試裝置框架,裝置由測試上位機、測試下位機組成,使用50芯連接器連接測試裝置與車載設備。其中:測試上位機包括測試控制軟件、數據庫,測試控制軟件為測試控制核心,提供人機交互界面并與測試下位機進行通信,通信采用Modbus通信協議[11]。控制測試下位機進行自動測試;上位機數據庫用于記錄測試溯源數據。測試下位機由PLC、繼電器、光電耦合器、110 V直流電源等組成,PLC輸出節點與繼電器配合控制線路切換,PLC輸入節點用于讀取控制信號,光電耦合器采集線路導通信息,110 V直流電源提供控制信號。測試裝置工作時,PLC輸出節點控制繼電器切換控制信號接入線路,模擬車載ATC設備輸出控制信號,為不同車載設備輸出控制信號;車載設備進行操作,以及輸入信號至測試裝置,利用光電耦合器監測采集線路導通信息,并由測試上位機控制讀取PLC輸入節點獲取,完成車載設備與ATC設備間輸入輸出控制測試。

圖2 軌道交通ATC設備自動測試裝置框架圖
為滿足設計需求,設計基于PLC線路自動控制器方案,實現測試過程自動控制與記錄。與此同時,利用該控制方法可設定PLC每個輸入輸出節點對應的ATC設備通信線芯定義,實現測試設備通用化。以讀取Y0~Y7軟元件為例,Modbus通信協議如表2所示。根據PLC通信協議,利用Python語言編寫用于自動測試的控制函數。

表2 Modbus通信協議表
1)輸出繼電器Y強制開關函數Yforce (number,state),通信正常返回值06H,通信錯誤返回值15H。
2)輔助繼電器M強制開關函數Mforce (number,state),通信正常返回值06H,通信錯誤返回值15H。
3)讀取軟元件狀態函數:Read PLC 64(KIND),正常讀取當前接通軟元件列表。
上位機利用以上3個控制函數與PLC建立實時通信、信息讀取與控制,方便地實現測試線路的切換。
軌道交通發展迅速,現役、在研的軌道交通車輛車型眾多,測試裝置應具備通用性,兼容多種車型的測試,減少設備換代升級投入。圖3所示為多軌道交通車型通用化可編程方案。根據軌道交通車輛ATC設備控制線路數量,采用輸入輸出節點數大于等于ATC設備通信線路數量的PLC,根據當前車型測試需求,定義PLC輸入、輸出節點對應控制或讀取的控制線路,并根據自動測試流程調整不同控制線路的測試順序。切換車型時,調整PLC輸入輸出節點對應線路定義與自動測試流程,即可完成測試裝置與待測車型匹配,實現測試設備通用化。

圖3 多車型通用化可編程方案
以用于故障排查的通用化單項測試模式界面(如圖4)為例,其核心功能為信號輸入指示燈控件與信號輸出切換開關控件,分別對應輸入測試與輸出測試功能,使用前編寫特定Excel格式測試工藝文件,測試進行時選 擇對應車型工藝文件讀入測試控制軟件,工藝文件將信號輸入指示燈與PLC的輸入節點、輸出信號切換開關與PLC的輸出節點相關聯,將相應線路定義與PLC節點綁定并顯示。工藝文件讀取完成后,按軟件前面板顯示內容進行操作即可完成單項測試。

圖4 通用化單項測試界面
實際使用中,該通用化方案兼容多種軌道交通車型的ATC設備測試,大幅提升測試設備兼容性。
測試控制軟件基于Python語言與LabVIEW軟件進行開發,利用LabVIEW軟件搭建程序主界面,使用Python語言編寫數據處理程序與PLC通信函數。Python語言高效、靈活,配合LabVIEW軟件,能編寫出功能強大的虛擬儀器軟件[12-13]。
圖5為測試控制軟件的功能結構,包括有系統初始化模塊,測試過程控制模塊以及測試數據處理模塊。系統初始化模塊負責軟件登錄,建立與硬件設備的通信,檢查硬件設備的完整性,并從配置文件中解密并讀取測試項目的測試策略、線芯定義以及專家系統的測試知識庫;測試過程控制模塊負責控制PLC,監控記錄線路狀態,自動記錄測試信息,實現測試過程的可溯源[13];測試數據處理模負責對測試數據進行專家系統分析、存儲以及報表打印。

圖5 自動測試軟件功能結構
圖6為測試控制軟件的主界面,默認為自動測試模式。軟件設置有自動測試、手動測試、診斷模式3個工作模式。
圖7為初始模塊的工作流程圖,軟件啟動時,首先解密配置文件,從中讀取測試配置文件,配置文件包含線芯定義,測試流程以及專家系統的邏輯集;隨后系統將會與PLC建立連接,確認PLC設備的完整性,提高PLC設備運行可信度[14];最后連接數據庫,記錄軟件登錄時間,當初始化完成后,軟件進入待測試狀態。
配置文件的加密采用RSA非對稱加密算法,破解難度大、安全性強,在公開密鑰加密和電子商業中被廣泛應用[15]。操作人員在編輯完成工藝文件后,利用RSA加密程序生成加密文件,RSA加密的解密密鑰存儲在測試控制軟件內,在讀取配置文件的時利用解密密鑰解密加密的配置文件。配置文件經過加密后只有測試控制軟件能解密并讀取,達到保密效果[16]。圖8為加密效果圖,與圖6對比自動測試步驟流程中的顯示信息已變亂碼密文。

圖6 測試控制軟件主界面

圖7 初始化流程

圖8 RSA加密效果圖
圖9為測試裝置測試流程圖,其具體自動測試流程為:1)測試控制軟件初始化測試設置,讀取測試項目、測試順序;2)測試控制軟件按照測試設置進行自動測試,利用Yforce函數控制 PLC 切換輸出線路的接通、斷開,實現線路自動切換;3)測試控制軟件利用Read PLC 64函數對 PLC 的軟元件狀態進行檢測,讀取輸出觸點的狀態,確定線路的接通正常,若接通正常執行下一步操作,否則判斷為線路接通出錯,彈出錯誤提示并進行專家系統錯誤判斷排查錯誤,出錯線路故障處理完畢后判斷是否結束測試,若否則返回2);4)測試控制軟件利用Read PLC 64函數對 PLC 的輸入觸點進行檢測,讀取線路導通信息,確定測試線路的接通情況,若接通正常則進行下一步操作,否則彈出報錯信息并根據測試成功項與出錯項進行專家系統診斷,隨后判斷是否結束測試,若否則返回2);5)判斷是否結束測試,若否則返回2)。

圖9 自動測試流程圖
為降低測試系統學習成本,提升測試效率,測試控制軟件集成專家系統對測試錯誤結果進行診斷,指導操作人員排查并檢修故障。測試過程中某項測試出錯時,測試控制軟件自動進入診斷模式,專家系統根據測試知識庫對測試過程數據進行診斷推理,給出相應的故障診斷信息與檢修建議[17-18],工作人員可根據故障信息進行單點調試。圖10為診斷模式界面,界面提供當前故障線路、故障原因、解決措施顯示框,并設置溯源數據索引功能用于翻查測試記錄。
圖11為研制的ATC設備通用化自動測試裝置下位機實物圖,與上位機一同組成軌道交通ATC設備通用化自動測試裝置。

圖10 診斷界面

圖11 測試裝置下位機實物圖
使用該裝置對多型號軌道交通車輛進行軌道交通車輛ATC系統通信測試(測試系統實物如圖12所示)。測試過程中,設備根據工藝文件自動進行測試,測試過程中一直利用上位機記錄測試信息并對結果進行分析。結果表明,該裝置能兼容多種車型測試,按照給定測試順序自動測試并給出測試結果,專家系統診斷故障并給出檢修建議,全面提升測試自動化、智能化、通用化與可溯源水平。

圖12 測試系統實物圖
表3為本文測試方法與傳統測試方法比較表??梢钥闯?,使用通用化自動測試裝置的測試方法通用性好,測試時間短,測試過程自動化,僅需將測試線路連接至ATC自動測試平臺,連接上位機,在上位機軟件上選擇測試項目即可自動完成測試項目,其測試流程與測試方法符合測試要求,實現機器代人,提升測試效率。

表3 手動測試與自動測試效果對比表
1)針對軌道交通不同車型 ATC 設備通信線路定義不一,ATC 設備測試項目眾多、線路切換頻繁,測試步驟繁瑣,測試過程不規范、測試過程數據不可溯源、測試效率低等問題,提出研發軌道交通ATC 設備通用化自動測試裝置,具有重要實際意義。
2)研發利用Python語言、LabVIEW平臺的測試控制軟件,結合PLC自動控制技術,實現控制測試線路自動切換、自動記錄測試溯源信息;集成專家系統診斷測試故障,兼容多種軌道交通車型的測試系統,測試設備的具有較好通用化特點。
3)基于Python語言編寫用于自動測試的控制函數的靈活調用,多車型通用化可編程以及基于RSA加密方法應用,是本文重要創新工作。
以后將加強測試大數據的綜合利用,提高測試裝置及系統的智能化水平,加大推廣力度。感謝中車廣東軌道交通車輛有限公司對本項目研究支持。