何沛燊,劉元豐,劉桂雄
(1.華南理工大學(xué)機(jī)械與汽車工程學(xué)院,廣東 廣州 510640; 2.中車廣東軌道交通車輛有限公司,廣東 江門 529100)
列車自動控制系統(tǒng)(automatic train control,ATC)是以技術(shù)手段對列車運(yùn)行方向、運(yùn)行間隔和運(yùn)行速度進(jìn)行控制,以保證列車安全運(yùn)行、高效率運(yùn)行的系統(tǒng),對各系統(tǒng)之間控制信號狀態(tài)檢測十分重要[1-3]。目前ATC設(shè)備連通情況檢測主要根據(jù)測試標(biāo)準(zhǔn),逐個觸發(fā)ATC設(shè)備信號,觀察車載設(shè)備的響應(yīng)情況,以確認(rèn)控制信號正常與否。文獻(xiàn)[4]研制車載ATC設(shè)備的離線檢測系統(tǒng),但其系統(tǒng)僅支持固定車型的測試,通用化受到限制。文獻(xiàn)[5]研制車載ATC系統(tǒng)功能測試平臺,但沒有測試過程溯源信息記錄,也沒有集成測試結(jié)果診斷系統(tǒng)。文獻(xiàn)[6]研制車載ATC設(shè)備中列車自動防護(hù)(automatic train protection, ATP)子系統(tǒng)測試平臺,也不支持多車型通用化測試功能。文獻(xiàn)[7]研制列車控制系統(tǒng)功能安全性測試系統(tǒng),檢查設(shè)備間控制信息是否正常,同樣沒有測試過程溯源信息記錄。由于不同車型線路定義不一、測試項(xiàng)目眾多,需要頻繁切換測試線路,且車載設(shè)備位置不一,人工手動測試存在測試繁瑣、測試過程不規(guī)范、測試過程數(shù)據(jù)不可溯源、測試效率低等問題。為解決以上問題,本文研制軌道交通ATC通用型自動智能測試平臺,結(jié)合計(jì)算機(jī)技術(shù),利用可編程邏輯控制器(programmable logic controller, PLC)作為控制單元代替人工切換測試線路,實(shí)現(xiàn)測試裝置的通用化、自動化、數(shù)字化,以及測試過程數(shù)據(jù)可溯源。
圖1為軌道交通ATC系統(tǒng)功能示意圖,ATC系統(tǒng)機(jī)柜與車載設(shè)備通過通信線相連,建立與車載設(shè)備的雙向通信,實(shí)現(xiàn)對車載設(shè)備的控制[8]。在GB/T 50578-2018《城市軌道交通信號工程施工質(zhì)量驗(yàn)收標(biāo)準(zhǔn)》[9]的“列車自動控制”部分中提及,對列車自動控制系統(tǒng)外部接口進(jìn)行檢驗(yàn)以及對信號車載設(shè)備接受車輛輸入、向車輛輸出的信息進(jìn)行檢驗(yàn)時(shí)需要對接口進(jìn)行全部檢查,檢查系統(tǒng)通信通道正常。在CJ/T 407-2012 《城市軌道交通基于通信的列車自動控制系統(tǒng)技術(shù)要求》 “功能要求”部分,規(guī)定需要檢查的ATC系統(tǒng)控制項(xiàng)目[10],表1 為ATC系統(tǒng)控制測試項(xiàng)目表。
根據(jù)測試要求可知,在進(jìn)行軌道交通車輛ATC系統(tǒng)測試時(shí),主要是對系統(tǒng)的110V DC控制信號通信狀況進(jìn)行檢測,實(shí)際測試中需要頻繁切換線路與輸入輸出狀態(tài),并實(shí)時(shí)獲取線路導(dǎo)通情況,不同車型的測試流程、線路定義各不相同。因此,研制軌道交通ATC設(shè)備自動測試裝置的需求有:1)自動化,采用上位機(jī)實(shí)時(shí)控制與監(jiān)測測試線路,實(shí)現(xiàn)機(jī)器代人,測試過程自動化;2)通用化,采用線路全自定義設(shè)計(jì),可錄入不同車型配置,適配不同車型的測試,減少后期投入;3)數(shù)據(jù)可溯源與檢修建議,測試過程實(shí)時(shí)采集并上傳至上位機(jī),自動處理與存儲,測試完成后輸出測試報(bào)表、診斷檢修建議。
圖1 ATC系統(tǒng)功能示意圖
表1 ATC系統(tǒng)控制測試項(xiàng)目表
根據(jù)上述測試需求,設(shè)計(jì)如圖2所示的軌道交通ATC設(shè)備通用化自動測試裝置框架,裝置由測試上位機(jī)、測試下位機(jī)組成,使用50芯連接器連接測試裝置與車載設(shè)備。其中:測試上位機(jī)包括測試控制軟件、數(shù)據(jù)庫,測試控制軟件為測試控制核心,提供人機(jī)交互界面并與測試下位機(jī)進(jìn)行通信,通信采用Modbus通信協(xié)議[11]??刂茰y試下位機(jī)進(jìn)行自動測試;上位機(jī)數(shù)據(jù)庫用于記錄測試溯源數(shù)據(jù)。測試下位機(jī)由PLC、繼電器、光電耦合器、110 V直流電源等組成,PLC輸出節(jié)點(diǎn)與繼電器配合控制線路切換,PLC輸入節(jié)點(diǎn)用于讀取控制信號,光電耦合器采集線路導(dǎo)通信息,110 V直流電源提供控制信號。測試裝置工作時(shí),PLC輸出節(jié)點(diǎn)控制繼電器切換控制信號接入線路,模擬車載ATC設(shè)備輸出控制信號,為不同車載設(shè)備輸出控制信號;車載設(shè)備進(jìn)行操作,以及輸入信號至測試裝置,利用光電耦合器監(jiān)測采集線路導(dǎo)通信息,并由測試上位機(jī)控制讀取PLC輸入節(jié)點(diǎn)獲取,完成車載設(shè)備與ATC設(shè)備間輸入輸出控制測試。
圖2 軌道交通ATC設(shè)備自動測試裝置框架圖
為滿足設(shè)計(jì)需求,設(shè)計(jì)基于PLC線路自動控制器方案,實(shí)現(xiàn)測試過程自動控制與記錄。與此同時(shí),利用該控制方法可設(shè)定PLC每個輸入輸出節(jié)點(diǎn)對應(yīng)的ATC設(shè)備通信線芯定義,實(shí)現(xiàn)測試設(shè)備通用化。以讀取Y0~Y7軟元件為例,Modbus通信協(xié)議如表2所示。根據(jù)PLC通信協(xié)議,利用Python語言編寫用于自動測試的控制函數(shù)。
表2 Modbus通信協(xié)議表
1)輸出繼電器Y強(qiáng)制開關(guān)函數(shù)Yforce (number,state),通信正常返回值06H,通信錯誤返回值15H。
2)輔助繼電器M強(qiáng)制開關(guān)函數(shù)Mforce (number,state),通信正常返回值06H,通信錯誤返回值15H。
3)讀取軟元件狀態(tài)函數(shù):Read PLC 64(KIND),正常讀取當(dāng)前接通軟元件列表。
上位機(jī)利用以上3個控制函數(shù)與PLC建立實(shí)時(shí)通信、信息讀取與控制,方便地實(shí)現(xiàn)測試線路的切換。
軌道交通發(fā)展迅速,現(xiàn)役、在研的軌道交通車輛車型眾多,測試裝置應(yīng)具備通用性,兼容多種車型的測試,減少設(shè)備換代升級投入。圖3所示為多軌道交通車型通用化可編程方案。根據(jù)軌道交通車輛ATC設(shè)備控制線路數(shù)量,采用輸入輸出節(jié)點(diǎn)數(shù)大于等于ATC設(shè)備通信線路數(shù)量的PLC,根據(jù)當(dāng)前車型測試需求,定義PLC輸入、輸出節(jié)點(diǎn)對應(yīng)控制或讀取的控制線路,并根據(jù)自動測試流程調(diào)整不同控制線路的測試順序。切換車型時(shí),調(diào)整PLC輸入輸出節(jié)點(diǎn)對應(yīng)線路定義與自動測試流程,即可完成測試裝置與待測車型匹配,實(shí)現(xiàn)測試設(shè)備通用化。
圖3 多車型通用化可編程方案
以用于故障排查的通用化單項(xiàng)測試模式界面(如圖4)為例,其核心功能為信號輸入指示燈控件與信號輸出切換開關(guān)控件,分別對應(yīng)輸入測試與輸出測試功能,使用前編寫特定Excel格式測試工藝文件,測試進(jìn)行時(shí)選 擇對應(yīng)車型工藝文件讀入測試控制軟件,工藝文件將信號輸入指示燈與PLC的輸入節(jié)點(diǎn)、輸出信號切換開關(guān)與PLC的輸出節(jié)點(diǎn)相關(guān)聯(lián),將相應(yīng)線路定義與PLC節(jié)點(diǎn)綁定并顯示。工藝文件讀取完成后,按軟件前面板顯示內(nèi)容進(jìn)行操作即可完成單項(xiàng)測試。
圖4 通用化單項(xiàng)測試界面
實(shí)際使用中,該通用化方案兼容多種軌道交通車型的ATC設(shè)備測試,大幅提升測試設(shè)備兼容性。
測試控制軟件基于Python語言與LabVIEW軟件進(jìn)行開發(fā),利用LabVIEW軟件搭建程序主界面,使用Python語言編寫數(shù)據(jù)處理程序與PLC通信函數(shù)。Python語言高效、靈活,配合LabVIEW軟件,能編寫出功能強(qiáng)大的虛擬儀器軟件[12-13]。
圖5為測試控制軟件的功能結(jié)構(gòu),包括有系統(tǒng)初始化模塊,測試過程控制模塊以及測試數(shù)據(jù)處理模塊。系統(tǒng)初始化模塊負(fù)責(zé)軟件登錄,建立與硬件設(shè)備的通信,檢查硬件設(shè)備的完整性,并從配置文件中解密并讀取測試項(xiàng)目的測試策略、線芯定義以及專家系統(tǒng)的測試知識庫;測試過程控制模塊負(fù)責(zé)控制PLC,監(jiān)控記錄線路狀態(tài),自動記錄測試信息,實(shí)現(xiàn)測試過程的可溯源[13];測試數(shù)據(jù)處理模負(fù)責(zé)對測試數(shù)據(jù)進(jìn)行專家系統(tǒng)分析、存儲以及報(bào)表打印。
圖5 自動測試軟件功能結(jié)構(gòu)
圖6為測試控制軟件的主界面,默認(rèn)為自動測試模式。軟件設(shè)置有自動測試、手動測試、診斷模式3個工作模式。
圖7為初始模塊的工作流程圖,軟件啟動時(shí),首先解密配置文件,從中讀取測試配置文件,配置文件包含線芯定義,測試流程以及專家系統(tǒng)的邏輯集;隨后系統(tǒng)將會與PLC建立連接,確認(rèn)PLC設(shè)備的完整性,提高PLC設(shè)備運(yùn)行可信度[14];最后連接數(shù)據(jù)庫,記錄軟件登錄時(shí)間,當(dāng)初始化完成后,軟件進(jìn)入待測試狀態(tài)。
配置文件的加密采用RSA非對稱加密算法,破解難度大、安全性強(qiáng),在公開密鑰加密和電子商業(yè)中被廣泛應(yīng)用[15]。操作人員在編輯完成工藝文件后,利用RSA加密程序生成加密文件,RSA加密的解密密鑰存儲在測試控制軟件內(nèi),在讀取配置文件的時(shí)利用解密密鑰解密加密的配置文件。配置文件經(jīng)過加密后只有測試控制軟件能解密并讀取,達(dá)到保密效果[16]。圖8為加密效果圖,與圖6對比自動測試步驟流程中的顯示信息已變亂碼密文。
圖6 測試控制軟件主界面
圖7 初始化流程
圖8 RSA加密效果圖
圖9為測試裝置測試流程圖,其具體自動測試流程為:1)測試控制軟件初始化測試設(shè)置,讀取測試項(xiàng)目、測試順序;2)測試控制軟件按照測試設(shè)置進(jìn)行自動測試,利用Yforce函數(shù)控制 PLC 切換輸出線路的接通、斷開,實(shí)現(xiàn)線路自動切換;3)測試控制軟件利用Read PLC 64函數(shù)對 PLC 的軟元件狀態(tài)進(jìn)行檢測,讀取輸出觸點(diǎn)的狀態(tài),確定線路的接通正常,若接通正常執(zhí)行下一步操作,否則判斷為線路接通出錯,彈出錯誤提示并進(jìn)行專家系統(tǒng)錯誤判斷排查錯誤,出錯線路故障處理完畢后判斷是否結(jié)束測試,若否則返回2);4)測試控制軟件利用Read PLC 64函數(shù)對 PLC 的輸入觸點(diǎn)進(jìn)行檢測,讀取線路導(dǎo)通信息,確定測試線路的接通情況,若接通正常則進(jìn)行下一步操作,否則彈出報(bào)錯信息并根據(jù)測試成功項(xiàng)與出錯項(xiàng)進(jìn)行專家系統(tǒng)診斷,隨后判斷是否結(jié)束測試,若否則返回2);5)判斷是否結(jié)束測試,若否則返回2)。
圖9 自動測試流程圖
為降低測試系統(tǒng)學(xué)習(xí)成本,提升測試效率,測試控制軟件集成專家系統(tǒng)對測試錯誤結(jié)果進(jìn)行診斷,指導(dǎo)操作人員排查并檢修故障。測試過程中某項(xiàng)測試出錯時(shí),測試控制軟件自動進(jìn)入診斷模式,專家系統(tǒng)根據(jù)測試知識庫對測試過程數(shù)據(jù)進(jìn)行診斷推理,給出相應(yīng)的故障診斷信息與檢修建議[17-18],工作人員可根據(jù)故障信息進(jìn)行單點(diǎn)調(diào)試。圖10為診斷模式界面,界面提供當(dāng)前故障線路、故障原因、解決措施顯示框,并設(shè)置溯源數(shù)據(jù)索引功能用于翻查測試記錄。
圖11為研制的ATC設(shè)備通用化自動測試裝置下位機(jī)實(shí)物圖,與上位機(jī)一同組成軌道交通ATC設(shè)備通用化自動測試裝置。
圖10 診斷界面
圖11 測試裝置下位機(jī)實(shí)物圖
使用該裝置對多型號軌道交通車輛進(jìn)行軌道交通車輛ATC系統(tǒng)通信測試(測試系統(tǒng)實(shí)物如圖12所示)。測試過程中,設(shè)備根據(jù)工藝文件自動進(jìn)行測試,測試過程中一直利用上位機(jī)記錄測試信息并對結(jié)果進(jìn)行分析。結(jié)果表明,該裝置能兼容多種車型測試,按照給定測試順序自動測試并給出測試結(jié)果,專家系統(tǒng)診斷故障并給出檢修建議,全面提升測試自動化、智能化、通用化與可溯源水平。
圖12 測試系統(tǒng)實(shí)物圖
表3為本文測試方法與傳統(tǒng)測試方法比較表??梢钥闯?,使用通用化自動測試裝置的測試方法通用性好,測試時(shí)間短,測試過程自動化,僅需將測試線路連接至ATC自動測試平臺,連接上位機(jī),在上位機(jī)軟件上選擇測試項(xiàng)目即可自動完成測試項(xiàng)目,其測試流程與測試方法符合測試要求,實(shí)現(xiàn)機(jī)器代人,提升測試效率。
表3 手動測試與自動測試效果對比表
1)針對軌道交通不同車型 ATC 設(shè)備通信線路定義不一,ATC 設(shè)備測試項(xiàng)目眾多、線路切換頻繁,測試步驟繁瑣,測試過程不規(guī)范、測試過程數(shù)據(jù)不可溯源、測試效率低等問題,提出研發(fā)軌道交通ATC 設(shè)備通用化自動測試裝置,具有重要實(shí)際意義。
2)研發(fā)利用Python語言、LabVIEW平臺的測試控制軟件,結(jié)合PLC自動控制技術(shù),實(shí)現(xiàn)控制測試線路自動切換、自動記錄測試溯源信息;集成專家系統(tǒng)診斷測試故障,兼容多種軌道交通車型的測試系統(tǒng),測試設(shè)備的具有較好通用化特點(diǎn)。
3)基于Python語言編寫用于自動測試的控制函數(shù)的靈活調(diào)用,多車型通用化可編程以及基于RSA加密方法應(yīng)用,是本文重要創(chuàng)新工作。
以后將加強(qiáng)測試大數(shù)據(jù)的綜合利用,提高測試裝置及系統(tǒng)的智能化水平,加大推廣力度。感謝中車廣東軌道交通車輛有限公司對本項(xiàng)目研究支持。