国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種基于變流器的高速數(shù)據(jù)流的故障記錄系統(tǒng)的研究與設(shè)計(jì)

2020-10-24 07:10宋凱林
關(guān)鍵詞:變流器緩沖區(qū)數(shù)據(jù)流

宋凱林,黃 峰

(湖南工程學(xué)院 電氣與信息工程學(xué)院,湘潭411104)

0 引言

近年來(lái),隨著我國(guó)經(jīng)濟(jì)的快速發(fā)展,國(guó)家加大了對(duì)軌道交通領(lǐng)域的投入,傳動(dòng)控制行業(yè)也迎來(lái)了飛速發(fā)展時(shí)期,各種自動(dòng)化控制設(shè)備大量投入應(yīng)用.同時(shí)伴隨著應(yīng)用環(huán)境的多元復(fù)雜化,設(shè)備故障也出現(xiàn)了指數(shù)級(jí)的暴增[1].通常地,設(shè)備故障的產(chǎn)生是一種具有偶發(fā)性、難以重現(xiàn)性的事件,傳統(tǒng)解決途徑是,設(shè)備研發(fā)企業(yè)派遣大量技術(shù)人員前往現(xiàn)場(chǎng),進(jìn)行人為定位和排查,但經(jīng)常由于故障運(yùn)行狀態(tài)下數(shù)據(jù)的不足或缺失,而加大技術(shù)人員解決問(wèn)題的難度,且資源浪費(fèi)嚴(yán)重[2].因此非常必要研發(fā)設(shè)計(jì)一款故障數(shù)據(jù)記錄平臺(tái),使其能高智能記錄設(shè)備故障,并根據(jù)相應(yīng)的故障現(xiàn)象進(jìn)行故障的快速定位,實(shí)現(xiàn)設(shè)備全生命周期的數(shù)據(jù)記錄,進(jìn)而通過(guò)對(duì)海量故障數(shù)據(jù)分析,運(yùn)用大數(shù)據(jù)等新興技術(shù)進(jìn)行設(shè)備故障預(yù)警[3-5].

1 平臺(tái)架構(gòu)

目標(biāo)平臺(tái)基于德州儀器TI 的多核異構(gòu)SOC 芯片OMAPL138(DSP + ARM 雙 核,下 文 中 簡(jiǎn) 稱(chēng)OMAP)處理器進(jìn)行研發(fā),作為中車(chē)旗下的某型主流城軌牽引控制變流器的故障記錄設(shè)備.

硬件架構(gòu)層,平臺(tái)基本方案需求點(diǎn)包括:脈沖分配板傳輸多路IO 信號(hào)及故障脈沖信號(hào),F(xiàn)PGA 與脈沖轉(zhuǎn)換板之間采用光纖通信;FPGA 與OMAP 片上DSP 核之間采用UPP(并行接口總線(xiàn))通信,實(shí)現(xiàn)高速設(shè)備數(shù)據(jù)流的同步;主控OMAP 主要負(fù)責(zé)在變流器發(fā)生設(shè)備時(shí),將高速的設(shè)備運(yùn)行控制、狀態(tài)數(shù)據(jù)存儲(chǔ)到本地等,如圖1 所示.

圖1 平臺(tái)硬件架構(gòu)

軟件架構(gòu)層,底層平臺(tái)為保證故障數(shù)據(jù)記錄系統(tǒng)的高實(shí)時(shí)性,主控OMAP 側(cè)采用vxWorks 硬實(shí)時(shí)嵌入式操作系統(tǒng),如圖2 所示,平臺(tái)軟件采用架構(gòu):1 級(jí)RBL(ROM BootLoader)+1 級(jí)UBL(User BootLoader)+1 級(jí)UBOOT(the Universal Boot-Loader)+1 級(jí)vxWorks(Kernel).在系統(tǒng)的幾類(lèi)存儲(chǔ)介質(zhì)中,SPI Flash 因其高可靠性屬性,主要存放操作系統(tǒng)內(nèi)核固件及BIOS 啟動(dòng)程序;NAND Flash 作為高性?xún)r(jià)比大容量存儲(chǔ),存放各類(lèi)應(yīng)用程序,包括故障記錄應(yīng)用程序本身,以及設(shè)備運(yùn)行日志等;SATA 因其超大容量存儲(chǔ),主要存放海量的設(shè)備突發(fā)故障時(shí)的運(yùn)行狀態(tài)數(shù)據(jù).

圖2 平臺(tái)軟件架構(gòu)

2 方案設(shè)計(jì)

作為軌道交通城軌牽引傳動(dòng)變流器的故障記錄設(shè)備,其數(shù)據(jù)流規(guī)模呈現(xiàn)出高速實(shí)時(shí)性,外部的變流器脈沖分配模塊每16 μs 會(huì)周期性輸入32*24 個(gè)字,整個(gè)數(shù)據(jù)鏈路中的數(shù)據(jù)量高達(dá)驚人的733 Mbit 每秒.設(shè)計(jì)高速數(shù)據(jù)流的記錄系統(tǒng),必須基于整個(gè)系統(tǒng)數(shù)據(jù)流鏈路分析硬件平臺(tái)性能瓶頸,如圖3 所示.

圖3 數(shù)據(jù)流鏈路

1)FPGA 芯片采用Xilinx 的XC7A100T,其優(yōu)越的數(shù)據(jù)處理性能足夠中轉(zhuǎn)和處理來(lái)自脈沖分配板的高速設(shè)備狀態(tài)數(shù)據(jù)流;

2)FPGA 與OMAP 片內(nèi)DSP 核之間通過(guò)UPP通訊總線(xiàn)進(jìn)行上下行數(shù)據(jù)交互,其總線(xiàn)最高吞吐量可以達(dá)到150 MB/s,故也能適配目標(biāo)高速數(shù)據(jù)流的緩存需求;

3)OMAP 片內(nèi)可將共享RAM 作為數(shù)據(jù)流的一級(jí)緩存區(qū),ARM 核從共享RAM 中讀取DSP 已緩存的數(shù)據(jù)流,再緩存至OMAP 側(cè)外掛的DDR 中,而DDR 資源絕大部分被操作系統(tǒng)的內(nèi)核調(diào)度占用,于是DDR 數(shù)據(jù)寫(xiě)入速度無(wú)法匹配目標(biāo)高速數(shù)據(jù)流的緩存速度,造成了共享RAM 中數(shù)據(jù)的寫(xiě)入速度遠(yuǎn)高于讀取速度,造成數(shù)據(jù)流的覆蓋丟失,所以必須采用一種合理的一級(jí)數(shù)據(jù)流緩存機(jī)制來(lái)彌補(bǔ)平臺(tái)硬件性能的不足;

4)ARM 核將DDR 中作為數(shù)據(jù)流的二級(jí)緩存區(qū),通過(guò)片內(nèi)高速并行總線(xiàn)EDMA 再一次將數(shù)據(jù)流緩存到DDR 中,而DDR 在搭載運(yùn)行操作系統(tǒng)后,根據(jù)存儲(chǔ)映射及內(nèi)存分配機(jī)理可知,可供數(shù)據(jù)流的緩存空間是非常有限.同樣地,也必須提出一種合理的二級(jí)數(shù)據(jù)流緩存機(jī)制,在保證數(shù)據(jù)流正確緩存的前提下,實(shí)現(xiàn)DDR 存儲(chǔ)空間利用率的最大化;

5)當(dāng)發(fā)生設(shè)備故障時(shí),將相應(yīng)的故障數(shù)據(jù)流從DDR 緩存中提取,并以文件的形式將該故障數(shù)據(jù)流存儲(chǔ)在SATA 搭建的文件系統(tǒng)中,以便相關(guān)人員分析對(duì)應(yīng)設(shè)備故障.

根據(jù)上述數(shù)據(jù)流鏈路的分析,確定可以采用多級(jí)緩存機(jī)制實(shí)現(xiàn)該高速數(shù)據(jù)流記錄系統(tǒng),主要因外部DDR 緩存數(shù)據(jù)流能力的不足引出兩個(gè)技術(shù)難點(diǎn):如何在一級(jí)緩存區(qū)共享RAM 中設(shè)計(jì)合理的高速數(shù)據(jù)流緩存機(jī)制,解決數(shù)據(jù)流讀寫(xiě)速度不匹配問(wèn)題;如何在二級(jí)緩存區(qū)DDR 有限硬件資源中,設(shè)計(jì)有效可靠的數(shù)據(jù)流的緩存機(jī)制,突發(fā)設(shè)備故障時(shí)從緩存數(shù)據(jù)流中快速準(zhǔn)確提取目標(biāo)故障數(shù)據(jù)流,保證故障數(shù)據(jù)的實(shí)時(shí)準(zhǔn)確性.

2.1 共享RAM中數(shù)據(jù)流緩存機(jī)制

共享雙口RAM 的讀寫(xiě)訪(fǎng)問(wèn)原理簡(jiǎn)單,但作為目標(biāo)高速數(shù)據(jù)流的緩沖區(qū)時(shí)會(huì)產(chǎn)生兩個(gè)問(wèn)題:一個(gè)是DSP 核側(cè)的UPP 模塊和ARM 核同時(shí)去訪(fǎng)問(wèn)操作共享RAM 時(shí),不可避免地會(huì)產(chǎn)生內(nèi)存不一致問(wèn)題,導(dǎo)致數(shù)據(jù)出錯(cuò);另一個(gè)就是對(duì)共享RAM 而言,UPP 模塊的寫(xiě)入速度遠(yuǎn)高于ARM 核讀取數(shù)據(jù)流再寫(xiě)入DDR 的速度,容易造成讀寫(xiě)帶寬競(jìng)爭(zhēng)引起數(shù)據(jù)流無(wú)法同步甚至覆蓋丟失.通常工程解決辦法可參考計(jì)算機(jī)存儲(chǔ)器層次中的高速緩存[6-8],引入數(shù)據(jù)流緩沖機(jī)制,典型的如“乒乓”操作,如圖4 所示.

1)DSP 檢測(cè)到緩沖區(qū)1 的空標(biāo)志,往緩沖區(qū)1中填充數(shù)據(jù),填滿(mǎn)之后,設(shè)置相關(guān)標(biāo)志位及滿(mǎn)標(biāo)記;

2)DSP 檢測(cè)到緩沖區(qū)2 的空標(biāo)志,往緩沖區(qū)2中填充數(shù)據(jù),填滿(mǎn)之后,設(shè)置相關(guān)標(biāo)志位及滿(mǎn)標(biāo)記;同時(shí)ARM 檢測(cè)到緩沖區(qū)1 的滿(mǎn)標(biāo)記,開(kāi)始讀取緩沖區(qū)1 數(shù)據(jù),讀完之后,設(shè)置相關(guān)標(biāo)志位及空標(biāo)記;

3)DSP 檢測(cè)到緩沖區(qū)1 的空標(biāo)志,往緩沖區(qū)1中填充數(shù)據(jù),填滿(mǎn)之后,設(shè)置相關(guān)標(biāo)志位及滿(mǎn)標(biāo)記;同時(shí)ARM 檢測(cè)到緩沖區(qū)2 的滿(mǎn)標(biāo)記,開(kāi)始讀取緩沖區(qū)2 數(shù)據(jù),讀完之后,設(shè)置相關(guān)標(biāo)志位及空標(biāo)記;

4)重復(fù)周期執(zhí)行上述過(guò)程,形成一個(gè)數(shù)據(jù)流的存取閉環(huán)鏈路.

圖4 “乒乓”操作

已知OMAP 內(nèi)部的共享RAM 容量為128 KB,上述數(shù)據(jù)流緩沖機(jī)制雖然能夠提高共享RAM 的數(shù)據(jù)吞吐能力,卻引入其他問(wèn)題:一個(gè)是必須事先分配指定大長(zhǎng)度且地址連續(xù)的存儲(chǔ)空間,空間利用率低下,不適合有限的RAM 空間資源;另一個(gè)是數(shù)據(jù)的存取之間會(huì)存在相對(duì)較多的等待周期,造成數(shù)據(jù)緩存中的讀寫(xiě)效率低下,相對(duì)目標(biāo)高速目標(biāo)數(shù)據(jù)流而言容易達(dá)到瓶頸值甚至不滿(mǎn)足目標(biāo)需求.

基于上述“乒乓”操作分析,本文提出一種改進(jìn)型類(lèi)“乒乓”操作機(jī)制,如圖5 所示.

在共享RAM 中開(kāi)辟n 個(gè)地址不連續(xù)緩沖塊,避免連續(xù)大緩沖區(qū)引起RAM 空間的不足,塊的大小取決于單個(gè)周期鏈路上所傳輸?shù)臄?shù)據(jù)量,也就是每16 μs 傳輸32*24 個(gè)字,其中n 取決于數(shù)據(jù)存取雙方的最大通訊周期的倍數(shù):

n ≥Tarm_rMAX/Tdsp_tMAX + 1 (1)

因上述n 個(gè)緩沖塊的地址空間不連續(xù),故生成一個(gè)地址表保存對(duì)應(yīng)緩沖塊的首地址,每次通信雙方進(jìn)行數(shù)據(jù)的存取時(shí),從地址表中查找對(duì)應(yīng)緩沖塊的地址,當(dāng)訪(fǎng)問(wèn)到地址表的最后成員時(shí),就返回到首地址,形成一個(gè)閉環(huán)緩沖區(qū).引入這種閉環(huán)緩沖區(qū),一方面可以充分利用一些零散的存儲(chǔ)空間;另一方面可以動(dòng)態(tài)增加緩沖塊n 值,以應(yīng)對(duì)通信雙方因周期改變帶來(lái)的不確定性,利用冗余保證系統(tǒng)穩(wěn)定和可靠性.

圖5 閉環(huán)緩沖區(qū)

圖6 為該改進(jìn)型數(shù)據(jù)緩存算法的具體數(shù)據(jù)讀寫(xiě)流程.

DSP 側(cè)數(shù)據(jù)寫(xiě)入過(guò)程:DSP 檢測(cè)滿(mǎn)標(biāo)志是否置位,是則放棄本次數(shù)據(jù)寫(xiě)入,等待數(shù)據(jù)的讀取完畢,等待時(shí)間超過(guò)閾值則增加緩沖塊n 值;根據(jù)寫(xiě)指針在上文的地址表中查找,將數(shù)據(jù)寫(xiě)入對(duì)應(yīng)緩沖塊;寫(xiě)指針加1,若其大于n,則將其清零;判斷當(dāng)前寫(xiě)指針是否等于讀指針,是則將滿(mǎn)指針置位用以指示當(dāng)前閉環(huán)緩沖區(qū)數(shù)據(jù)已滿(mǎn),否則將滿(mǎn)指針清零;

ARM 側(cè)數(shù)據(jù)讀出過(guò)程:ARM 檢測(cè)空標(biāo)志是否置位,是則放棄本次數(shù)據(jù)讀取,當(dāng)前閉環(huán)緩沖區(qū)已空,等待有效數(shù)據(jù)的寫(xiě)入;根據(jù)讀指針在上文的地址表中查找,將數(shù)據(jù)從對(duì)應(yīng)緩沖塊讀出;讀指針加1,若其大于n,則將其清零;判斷當(dāng)前讀指針是否等于寫(xiě)指針,是則將空指針置位以標(biāo)識(shí)當(dāng)前閉環(huán)緩沖區(qū)數(shù)據(jù)數(shù)據(jù)已空,否則將空指針清零.

圖6 數(shù)據(jù)讀寫(xiě)流程圖

2.2 DDR中數(shù)據(jù)流緩存機(jī)制

當(dāng)ARM 核將高速數(shù)據(jù)流從片上共享RAM 中讀取出來(lái)后,會(huì)再一次將數(shù)據(jù)流緩沖到外掛DDR中,從而采用多級(jí)緩存機(jī)制實(shí)現(xiàn)了高速數(shù)據(jù)流的緩存.于是當(dāng)設(shè)備發(fā)生故障時(shí),應(yīng)該如何設(shè)計(jì)DDR 緩存高速數(shù)據(jù)流機(jī)制,以及在設(shè)備故障時(shí)刻如何在已緩存數(shù)據(jù)流中,準(zhǔn)確實(shí)時(shí)提取出故障數(shù)據(jù)流,避免成為舊數(shù)據(jù)被新數(shù)據(jù)覆蓋掉.

圖7 為DDR 中采用的環(huán)形隊(duì)列數(shù)據(jù)流緩存機(jī)制.

圖7 環(huán)形隊(duì)列緩沖區(qū)

1)在DSP 核完成數(shù)據(jù)流在片上共享RAM 中的緩存后,ARM核會(huì)將數(shù)據(jù)流從共享RAM中讀取,剛開(kāi)始會(huì)從循環(huán)隊(duì)列的Head 位置,一次性寫(xiě)入20 ms數(shù)據(jù),也就是1250個(gè)數(shù)據(jù)包(每個(gè)數(shù)據(jù)包大小為16 μs的周期數(shù)據(jù)量),共計(jì)14.65 Mbit;

2)從節(jié)約硬件資源的角度出發(fā),往循環(huán)隊(duì)列可共緩沖三次數(shù)據(jù)(共1250*3 個(gè)數(shù)據(jù)包),當(dāng)隊(duì)列指針等于Tail 時(shí),表示隊(duì)列已滿(mǎn),隊(duì)列開(kāi)始覆蓋緩存;

3)系統(tǒng)為了對(duì)設(shè)備故障事件做出實(shí)時(shí)響應(yīng),由FPGA 集成故障檢測(cè)算法[9-10],實(shí)時(shí)檢測(cè)判斷異常數(shù)據(jù),通過(guò)產(chǎn)生GPIO 中斷通知ARM 核發(fā)生設(shè)備故障事件.已知整個(gè)中斷響應(yīng)事件為10 ms(從設(shè)備故障產(chǎn)生到FPGA 識(shí)別故障事件產(chǎn)生GPIO 中斷),故障分析策略為提取設(shè)備故障時(shí)刻前后10 ms 的數(shù)據(jù)流,當(dāng)發(fā)生故障時(shí)當(dāng)前隊(duì)列指針逆時(shí)針20 ms 內(nèi)的數(shù)據(jù)流即為目標(biāo)故障數(shù)據(jù)流;

4)系統(tǒng)調(diào)度故障記錄任務(wù)將上述故障數(shù)據(jù)流以文件形式存儲(chǔ)至SATA 搭建的文件系統(tǒng)中.

3 系統(tǒng)驗(yàn)證與結(jié)論

為驗(yàn)證目標(biāo)系統(tǒng)的可靠性和有效性,本文采用持續(xù)對(duì)比測(cè)試來(lái)進(jìn)行系統(tǒng)驗(yàn)證:一種方案為平臺(tái)采用數(shù)據(jù)流直傳的系統(tǒng)方案,即ARM 核直接將數(shù)據(jù)從共享RAM 中取出,存儲(chǔ)到文件系統(tǒng)中;另一種為采用本文提出的數(shù)據(jù)流多級(jí)緩存的系統(tǒng)方案,如表1 所示.其測(cè)試過(guò)程中OMAP 初始狀態(tài)處于正常負(fù)荷下,唯一測(cè)試激勵(lì)變量為數(shù)據(jù)流規(guī)模量的提升,即在不斷減少數(shù)據(jù)傳輸周期內(nèi),數(shù)據(jù)鏈路上傳輸相同規(guī)模數(shù)據(jù)量——32*24 個(gè)字.

表1 兩種系統(tǒng)可靠性對(duì)比

對(duì)比測(cè)試結(jié)果表1 表明:采用數(shù)據(jù)流直傳方案的系統(tǒng)在通訊周期為50 μs 以下時(shí),開(kāi)始偶發(fā)數(shù)據(jù)流的覆蓋丟失,系統(tǒng)出現(xiàn)總線(xiàn)帶寬競(jìng)爭(zhēng),甚至引發(fā)ARM 核任務(wù)調(diào)度超時(shí),數(shù)據(jù)記錄系統(tǒng)崩潰失效,無(wú)法滿(mǎn)足目標(biāo)系統(tǒng)需求;而采用數(shù)據(jù)流多級(jí)緩存方案的系統(tǒng)在通訊周期為16 μs 時(shí),系統(tǒng)依然運(yùn)行正常,僅僅是在可用的硬件資源范圍多開(kāi)辟一些共享RAM 空間,在設(shè)備發(fā)生故障時(shí)能夠正常準(zhǔn)確記錄故障數(shù)據(jù)流,滿(mǎn)足系統(tǒng)目標(biāo)需求.

測(cè)試方法主要是通過(guò)人為模擬觸發(fā)牽引變流器故障,系統(tǒng)自動(dòng)將故障數(shù)據(jù)流以文件形式存儲(chǔ)到文件系統(tǒng)中.圖8 為配套研發(fā)故障分析上位機(jī)軟件解析出來(lái)的故障運(yùn)行狀態(tài)數(shù)據(jù),從紅色和藍(lán)色異常波形可以進(jìn)行故障的快速定位,網(wǎng)壓同步信號(hào)幅值及頻率均劇烈變化甚至嚴(yán)重畸變,導(dǎo)致整流控制異常,引發(fā)牽引變壓器二次側(cè)電流異常增大,同既定模擬故障輸入一致.

圖8 牽引控制變流器故障

綜上所述,本文提出設(shè)計(jì)的高速數(shù)據(jù)記錄系統(tǒng)能夠滿(mǎn)足目標(biāo)系統(tǒng)需求,能夠助力變流器設(shè)備故障的快速定位,進(jìn)而根據(jù)故障的類(lèi)別對(duì)系統(tǒng)進(jìn)行軟硬件層次的優(yōu)化升級(jí).

4 結(jié)束語(yǔ)

本文針對(duì)軌道交通領(lǐng)域的牽引傳動(dòng)控制變流器的高速數(shù)據(jù)流特性,研究設(shè)計(jì)了一種基于數(shù)據(jù)流多級(jí)緩存機(jī)制的設(shè)備故障記錄系統(tǒng),成功解決該類(lèi)設(shè)備故障經(jīng)常無(wú)法定位的難題,實(shí)現(xiàn)設(shè)備故障的快速定位及設(shè)備全生命周期的數(shù)據(jù)記錄,節(jié)省大量人力、物力資源,助力“中國(guó)制造2025”.目前該系統(tǒng)方案已經(jīng)開(kāi)始應(yīng)用于中車(chē)某科研院所旗下設(shè)備,包括主流城軌支柱行業(yè)設(shè)備,遠(yuǎn)銷(xiāo)海內(nèi)外市場(chǎng).據(jù)了解,該技術(shù)方案每年產(chǎn)生了不菲的經(jīng)濟(jì)效益,而且有望進(jìn)一步在其他類(lèi)似工程領(lǐng)域推廣應(yīng)用.

猜你喜歡
變流器緩沖區(qū)數(shù)據(jù)流
CRH5 型動(dòng)車(chē)組輔助變流器的研究
數(shù)據(jù)流計(jì)算研究進(jìn)展與概述
基于大數(shù)據(jù)的CR400AF 型動(dòng)車(chē)組牽引變流器濾網(wǎng)視情修研究
二電平和三電平網(wǎng)側(cè)變流器控制及諧波比較*
汽車(chē)維修數(shù)據(jù)流基礎(chǔ)(上)
汽車(chē)維修數(shù)據(jù)流基礎(chǔ)(下)
用于能量回饋裝置的變流器設(shè)計(jì)與實(shí)現(xiàn)
串行連續(xù)生產(chǎn)線(xiàn)的可用度與緩沖庫(kù)存控制研究*
基于ARC的閃存數(shù)據(jù)庫(kù)緩沖區(qū)算法①
AADL端對(duì)端數(shù)據(jù)流一致性驗(yàn)證方法