肖孟英 唐軍 張東方
摘 要:為適應(yīng)當(dāng)前形式下的市場需求,同時(shí)提高整車對(duì)柴油機(jī)系統(tǒng)控制的可靠性,基于內(nèi)燃機(jī)車微機(jī)控制系統(tǒng)在多種直流機(jī)車以及交流機(jī)車上的應(yīng)用情況,重新設(shè)計(jì)了新一代的內(nèi)燃機(jī)車微機(jī)控制系統(tǒng)平臺(tái)。根據(jù)該平臺(tái)在實(shí)際應(yīng)用中各功能的使用情況,新一代控制平臺(tái)可提高機(jī)車控制的響應(yīng)速度,能有效縮短機(jī)車邏輯控制軟件的開發(fā)周期,并提升現(xiàn)場調(diào)試的效率。
關(guān)鍵詞:內(nèi)燃機(jī)車 微機(jī) 控制平臺(tái)
中圖分類號(hào):U262.27 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1674-098X(2019)04(c)-0088-03
如今軌道交通機(jī)車、車輛的主通信方式逐漸從TCN網(wǎng)絡(luò)的MVB+WTB通信向?qū)崟r(shí)以太網(wǎng)通信轉(zhuǎn)換,實(shí)時(shí)以太網(wǎng)和絞線式列車總線WTB、多功能車輛總線MVB 通信比較,在傳輸速度、傳輸周期、集成度、調(diào)試設(shè)備、開發(fā)資源費(fèi)用上等都有很大的優(yōu)勢[1]。目前的通信網(wǎng)絡(luò)是雙網(wǎng)共存設(shè)計(jì),以MVB網(wǎng)絡(luò)數(shù)據(jù)作為控制數(shù)據(jù),以太網(wǎng)數(shù)據(jù)作為參考數(shù)據(jù),相信在不久的未來將是實(shí)時(shí)以太網(wǎng)通信的時(shí)代。
同時(shí),各大主機(jī)廠也有編制機(jī)車邏輯控制軟件的需求,所以傳統(tǒng)的軟件開發(fā)模式將逐漸被淘汰,需要設(shè)計(jì)一種新的軟件開發(fā)環(huán)境來適應(yīng)并滿足主機(jī)廠客戶的這種需求。目前,在多個(gè)海內(nèi)外項(xiàng)目中,采用合作開發(fā)機(jī)車邏輯控制軟件的模式來探索未來內(nèi)燃機(jī)車應(yīng)用軟件開發(fā)的方法。
為適應(yīng)外部環(huán)境的發(fā)展,同時(shí)改善并提升內(nèi)燃機(jī)車的控制性能,加強(qiáng)對(duì)柴油機(jī)系統(tǒng)控制的可靠性,設(shè)計(jì)了使用圖形化編程環(huán)境的新一代內(nèi)燃機(jī)車微機(jī)控制平臺(tái)。
1 控制平臺(tái)功能分析
內(nèi)燃機(jī)車微機(jī)(如圖1)主要由CPU插件、IO插件、通信插件以及電源插件構(gòu)成。CPU插件作為微機(jī)的核心,是控制軟件運(yùn)行的載體,主要實(shí)現(xiàn)機(jī)車的邏輯控制、牽引/電阻制動(dòng)/自負(fù)荷特性控制、故障診斷及處理等功能[2]。
通過分析微機(jī)控制功能以及控制平臺(tái)所關(guān)聯(lián)的對(duì)象,可得知控制平臺(tái)需要實(shí)現(xiàn)的功能應(yīng)包括:
(1)支持圖形化應(yīng)用軟件開發(fā)環(huán)境;
(2)網(wǎng)絡(luò)通信功能,重點(diǎn)是以太網(wǎng)通信;
(3)微機(jī)系統(tǒng)IO數(shù)據(jù)采集與驅(qū)動(dòng);
(4)數(shù)據(jù)存儲(chǔ)功能;
(5)系統(tǒng)安全機(jī)制。
2 硬件平臺(tái)設(shè)計(jì)
上一代微機(jī)控制系統(tǒng)平臺(tái)總線處理效率不夠、與柴油機(jī)系統(tǒng)數(shù)據(jù)交換的可靠性有待提高、以太網(wǎng)接口僅實(shí)現(xiàn)了程序下載更新功能。通過對(duì)控制平臺(tái)功能的分析,在總線模式與上一代產(chǎn)品保持兼容的情況下,新增以下功能[3]:
(1)采用更高主頻的處理器以提高單指令響應(yīng)速度;
(2)主控板采用高集成度通信芯片與柴油機(jī)系統(tǒng)通信;
(3)兩路以太網(wǎng)接口可同時(shí)實(shí)現(xiàn)以太網(wǎng)通信或者程序下載更新功能;
采用大容量的NandFlash芯片做數(shù)據(jù)存儲(chǔ)。
2.1 以太網(wǎng)
以太網(wǎng)通信是軌道交通裝備的一個(gè)發(fā)展趨勢,目前已在動(dòng)車上推廣應(yīng)用,為提高內(nèi)燃機(jī)車微機(jī)控制系統(tǒng)的競爭性,設(shè)計(jì)兩路100 Mbps以太網(wǎng),采用處理器的兩路TSEC控制器。
作為微機(jī)以太網(wǎng)通信專用的接口,由主控板輸出到背板連接器,通過子板從機(jī)箱出線。另一路以太網(wǎng)設(shè)計(jì)成調(diào)試下載專用,從主控板前面板出線。
2.2 CAN
目前微機(jī)控制系統(tǒng)通過專用的柴油機(jī)通信板實(shí)現(xiàn)CAN通信的功能,主控板通過雙口RAM與柴油機(jī)通信板交換通信數(shù)據(jù)。這種方案存在數(shù)據(jù)更新不及時(shí)、處理環(huán)節(jié)過多過程不可控的潛在故障。
新的設(shè)計(jì)方案采用處理器的串行外圍設(shè)備接口(SPI)擴(kuò)展CAN通信電路。主控板能獲取第一手的通信數(shù)據(jù),減掉了數(shù)據(jù)交換的中間環(huán)節(jié),提高了數(shù)據(jù)交換的效率以及可靠性,同時(shí)微機(jī)控制系統(tǒng)在總體方案上可考慮裁剪掉柴油機(jī)通信板的配置資源、有利于產(chǎn)品的成本控制。
2.3 數(shù)據(jù)存儲(chǔ)
由于存儲(chǔ)空間有限,目前的微機(jī)控制系統(tǒng)只進(jìn)行了機(jī)車的故障信息記錄,數(shù)據(jù)以二進(jìn)制的形式存儲(chǔ)在非易失性閃存中,通過機(jī)車顯示器界面可查詢到故障信息。
本文設(shè)計(jì)的控制平臺(tái)中,數(shù)據(jù)存儲(chǔ)的載體為1G容量的NandFlash芯片,可實(shí)現(xiàn)故障信息的海量存儲(chǔ),同時(shí)滿足機(jī)車運(yùn)行狀態(tài)數(shù)據(jù)記錄的需求,對(duì)分析機(jī)車運(yùn)行狀態(tài),機(jī)車故障的判斷、處理以及預(yù)防都能起到有效的作用。
3 軟件平臺(tái)設(shè)計(jì)
軟件平臺(tái)設(shè)計(jì)的目的是提供一個(gè)穩(wěn)定可靠的應(yīng)用軟件開發(fā)環(huán)境,最終需達(dá)成的目標(biāo)是減輕應(yīng)用軟件開發(fā)的難度、減少開發(fā)工作量,快速響應(yīng)市場需求。
本文描述的軟件平臺(tái)采用嵌入式操作系統(tǒng)加圖形化編程系統(tǒng)的架構(gòu),主要分為圖形化應(yīng)用軟件、中間層、操作系統(tǒng)三個(gè)層次,其中的中間層軟件包括驅(qū)動(dòng)軟件以及封裝的功能塊,具體如圖3所示。
3.1 應(yīng)用層
IEC 61131-3是可編程序控制器編程語言的標(biāo)準(zhǔn),規(guī)定了兩大類編程語言:文本化編程語言和圖形化編程語言。設(shè)計(jì)人員根據(jù)需求,可選擇任何文本語言(IL和ST)或圖形語言(LD、FBD和SFC)來編制軟件。
Multiprog軟件是一個(gè)符合IEC 61131標(biāo)準(zhǔn)的編程系統(tǒng),它簡單、易用,搭配軟PLC內(nèi)核ECLR方案可以在多種嵌入式系統(tǒng)中使用,被廣泛地應(yīng)用于不同的工業(yè)領(lǐng)域。
由此可見,PLC的圖形化語言是一種面向現(xiàn)場、面向用戶的編程語言,可以在機(jī)車電器線路不改變或者少改變的情況下,現(xiàn)場修改程序,實(shí)現(xiàn)機(jī)車的邏輯控制功能[4]。
3.2 中間層
中間層是與應(yīng)用強(qiáng)相關(guān)的一種軟件技術(shù),它不包括嵌入式操作系統(tǒng)底層軟件,由基于操作系統(tǒng)開發(fā)的應(yīng)用程序組成。
中間層把原本屬于應(yīng)用層軟件的一些通用的功能抽取出來,與微機(jī)系統(tǒng)的硬件資源封裝組合形成獨(dú)立的一層軟件,為應(yīng)用軟件提供一個(gè)靈活,安全,移植性好的開發(fā)平臺(tái)。如上文所述,中間層軟件包括驅(qū)動(dòng)軟件以及封裝的功能塊。
驅(qū)動(dòng)軟件是指系統(tǒng)層面的軟件,它會(huì)調(diào)用與硬件強(qiáng)相關(guān)的底層驅(qū)動(dòng)代碼,或者是與硬件資源無關(guān)的純軟件資源,是實(shí)現(xiàn)某個(gè)具體軟件功能的程序合集。本設(shè)計(jì)中的相關(guān)驅(qū)動(dòng)軟件有:支撐圖形化開發(fā)軟件Multiprog運(yùn)行的圖形化內(nèi)核驅(qū)動(dòng),實(shí)現(xiàn)應(yīng)用軟件設(shè)計(jì)任務(wù)的管理等功能;實(shí)時(shí)以太網(wǎng)驅(qū)動(dòng)使得控制平臺(tái)具備接入以太網(wǎng)進(jìn)行實(shí)時(shí)通信的功能;控制功能驅(qū)動(dòng)實(shí)現(xiàn)機(jī)車的勵(lì)磁控制、故障診斷以及記錄等功能。
功能塊實(shí)現(xiàn)應(yīng)用軟件對(duì)驅(qū)動(dòng)軟件的調(diào)用,通過對(duì)功能塊的自由組合,可實(shí)現(xiàn)不同的機(jī)車控制需求。譬如,目前階段上以太網(wǎng)實(shí)時(shí)通信功能并不是每個(gè)項(xiàng)目都會(huì)采用的方案,應(yīng)用軟件開發(fā)可自行裁剪掉這個(gè)功能塊。
下面以直流內(nèi)燃機(jī)車的PWM勵(lì)磁控制功能為例進(jìn)行描述。
如圖4所示,為實(shí)現(xiàn)機(jī)車的勵(lì)磁控制功能,中間層的軟件需開發(fā)勵(lì)磁驅(qū)動(dòng)軟件、與上層軟件接口的功能塊。
微機(jī)在不同機(jī)車工況下,根據(jù)反饋信號(hào)量,通過設(shè)定的PID參數(shù)由算法計(jì)算得出PWM占空比值,最終輸出PWM信號(hào)實(shí)現(xiàn)勵(lì)磁調(diào)節(jié)。在機(jī)車邏輯控制軟件上的勵(lì)磁調(diào)節(jié)如圖5所示。
圖5中EXCITE功能塊的接口層、封裝的勵(lì)磁驅(qū)動(dòng)分別由fw_function.c、LcsFuncDrv.c中的代碼實(shí)現(xiàn),PWM信號(hào)的輸出周期為10ms,相比以往控制系統(tǒng)的40ms提升4倍,如果機(jī)車邏輯控制軟件設(shè)計(jì)合理,微機(jī)控制系統(tǒng)的PWM勵(lì)磁調(diào)節(jié)精度按預(yù)期可以跨越一個(gè)臺(tái)階。
中間層軟件設(shè)計(jì)的理念就是要通用,要減少應(yīng)用軟件開發(fā)的工作量、提高開發(fā)效率。如果內(nèi)燃機(jī)車的勵(lì)磁調(diào)節(jié)功能是用PWM信號(hào)實(shí)現(xiàn)的話,那么各機(jī)車邏輯控制應(yīng)用軟件都可以調(diào)用這個(gè)功能塊,通過接口賦值即可實(shí)現(xiàn)。
3.3 系統(tǒng)層
嵌入式操作系統(tǒng)具備自恢復(fù)能力,不會(huì)造成系統(tǒng)崩潰。當(dāng)系統(tǒng)受到外部干擾的時(shí)候,系統(tǒng)中只有單個(gè)的進(jìn)程會(huì)被破壞,操作系統(tǒng)的監(jiān)控進(jìn)程會(huì)立即對(duì)其進(jìn)行修復(fù)。系統(tǒng)層基于嵌入式操作系統(tǒng)VxWorks開發(fā),它由操作系統(tǒng)內(nèi)核、文件系統(tǒng)、TCP/UDP網(wǎng)絡(luò)協(xié)議模塊及通用組件組成。
系統(tǒng)層的軟件功能可劃分為基礎(chǔ)功能和擴(kuò)展功能?;A(chǔ)功能是核心,它提供對(duì)操作系統(tǒng)的支持,負(fù)責(zé)整個(gè)系統(tǒng)的任務(wù)調(diào)度、管理等,包括操作系統(tǒng)內(nèi)核在內(nèi)的各種系統(tǒng)資源。
擴(kuò)展功能是設(shè)計(jì)人員基于系統(tǒng)資源而開發(fā)的實(shí)用性功能,本文設(shè)計(jì)的控制平臺(tái)開發(fā)了如下功能:
(1)文件系統(tǒng)實(shí)現(xiàn)了故障及狀態(tài)數(shù)據(jù)的文件存儲(chǔ),商用的系統(tǒng)保證了數(shù)據(jù)的可靠性。
(2)考慮到控制平臺(tái)的用戶,系統(tǒng)設(shè)計(jì)了安全機(jī)制,對(duì)系統(tǒng)登錄以及網(wǎng)絡(luò)賬戶進(jìn)行了權(quán)限管理。
(3)開發(fā)基于TCP協(xié)議的FTP功能提升了系統(tǒng)的維護(hù)性,借助以太網(wǎng)的有線以及無線網(wǎng)絡(luò),可方便的實(shí)現(xiàn)程序的更新下載。在調(diào)試的初期階段,還可通過無線網(wǎng)絡(luò)在地面進(jìn)行機(jī)車功能調(diào)試。
(4)基于UDP協(xié)議的實(shí)時(shí)數(shù)據(jù)流監(jiān)測功能反應(yīng)了系統(tǒng)的“健康”狀態(tài)。通過PC端的顯示軟件,設(shè)計(jì)人員可實(shí)時(shí)觀測到微機(jī)系統(tǒng)采集到的所有信號(hào)量;并且通過功能塊可將應(yīng)用軟件中的控制量傳遞給此功能,實(shí)時(shí)顯示控制狀態(tài)。
4 結(jié)語
本文分析了內(nèi)燃機(jī)車微機(jī)的控制功能,總結(jié)出控制平臺(tái)所需要實(shí)現(xiàn)的功能,搭建了基于嵌入式操作系統(tǒng)的圖形化應(yīng)用軟件開發(fā)平臺(tái)。
早期通過在出口阿根廷內(nèi)燃機(jī)車以及動(dòng)力集中動(dòng)車組上各功能的運(yùn)用,表明使用該控制平臺(tái)的微機(jī)控制系統(tǒng)能接入以太網(wǎng)組網(wǎng)的列車網(wǎng)絡(luò)控制系統(tǒng),更快的控制周期能提高控制精度,專業(yè)的文件系統(tǒng)保證故障數(shù)據(jù)的完整性,先進(jìn)的調(diào)試手段促進(jìn)了軟件開發(fā)與現(xiàn)場調(diào)試。
為進(jìn)一步提高微機(jī)控制系統(tǒng)的可靠性,后續(xù)可基于此平臺(tái)進(jìn)行控制系統(tǒng)主控板冗余的應(yīng)用研究開發(fā)。
參考文獻(xiàn)
[1] 肖家博.嵌入式列車網(wǎng)絡(luò)控制系統(tǒng)軟件平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[D].湖南大學(xué),2011.
[2] 吳正平,劉智聰.CKD4C型內(nèi)燃機(jī)車微機(jī)網(wǎng)絡(luò)控制系統(tǒng)[J].機(jī)車電傳動(dòng),2007(6):10-13.
[3] 姚曉陽.國產(chǎn)內(nèi)燃機(jī)車微機(jī)控制系統(tǒng)的發(fā)展與展望[J].機(jī)車電傳動(dòng),2002(3):1-3.
[4] 陳晨,王力生,賈廷綱,等.嵌入式PLC圖形化編程技術(shù)的研究[J].電腦知識(shí)與技術(shù),2015,11(21):156-157.