張忠民,李揚(yáng),周文生
1. 哈爾濱工程大學(xué) 信息與通信工程學(xué)院,黑龍江 哈爾濱 150001
2. 黑龍江瑞興科技股份有限公司,黑龍江 哈爾濱 150030
隨著中國(guó)經(jīng)濟(jì)的高速發(fā)展,鐵路運(yùn)輸無(wú)論在人們的日常出行還是貨物運(yùn)輸中都占據(jù)著主導(dǎo)地位。中國(guó)高速鐵路的開(kāi)通和運(yùn)行,使人們的出行更加高效、便捷。為確保鐵路運(yùn)輸?shù)母咝?、安全性,鐵路運(yùn)行中使用很多輔助設(shè)備來(lái)監(jiān)管列車(chē)的運(yùn)行狀態(tài),計(jì)軸設(shè)備[1-2]就是其中的一種。計(jì)軸設(shè)備可以判斷軌道區(qū)間的空閑或是占用狀態(tài),其工作原理是在軌道區(qū)段的兩側(cè)各安裝一套計(jì)軸設(shè)備,通過(guò)對(duì)比2 套計(jì)軸設(shè)備統(tǒng)計(jì)的軸數(shù)是否相同給出區(qū)間的狀態(tài),若相同,表明該區(qū)間空閑;若不同,表明該區(qū)間被占用。
計(jì)軸設(shè)備的發(fā)展經(jīng)歷了機(jī)械式、光電式、永磁式、電子式和微電子式的更新?lián)Q代,目前使用的計(jì)軸設(shè)備都是微電子式計(jì)軸設(shè)備。計(jì)軸設(shè)備根據(jù)結(jié)構(gòu)組成,一般分為室內(nèi)部分和室外部分。室外部分包括計(jì)軸傳感器和電子連接箱,計(jì)軸傳感器用來(lái)采集車(chē)軸信號(hào),電子連接箱用來(lái)處理傳感器采集到的信號(hào),統(tǒng)計(jì)軸數(shù);室內(nèi)部分包括運(yùn)算器和接口電路,運(yùn)算器用來(lái)對(duì)比各計(jì)軸點(diǎn)的數(shù)據(jù),接口電路用來(lái)實(shí)現(xiàn)數(shù)據(jù)的交換[3]。根據(jù)計(jì)軸傳感器的類(lèi)型不同,計(jì)軸設(shè)備大概分為4 種:調(diào)相式計(jì)軸設(shè)備、調(diào)幅式計(jì)軸設(shè)備、電磁振蕩式計(jì)軸設(shè)備和光纖光柵式計(jì)軸設(shè)備[4]。調(diào)相式計(jì)軸設(shè)備的典型代表有瑞興JWJ-C 型計(jì)軸設(shè)備[5]、泰雷茲AzLM-Zp30型計(jì)軸設(shè)備;調(diào)幅式計(jì)軸設(shè)備的典型代表有西門(mén)子AzS(M)350U 型計(jì)軸設(shè)備[6];電磁振蕩式計(jì)軸設(shè)備的典型代表有富豪舍爾ACS2000型計(jì)軸設(shè)備[7];光纖光柵式計(jì)軸設(shè)備的典型代表為武漢理工大學(xué)研究的光纖式計(jì)軸設(shè)備[8-9]。
以上提及的這些典型計(jì)軸設(shè)備,在電子連接箱處理計(jì)軸信號(hào)時(shí),大多使用單片機(jī)或是單核DSP芯片進(jìn)行設(shè)計(jì),這是由于這些芯片的成本較低。但這些芯片設(shè)計(jì)的計(jì)軸設(shè)備在監(jiān)測(cè)高速列車(chē)時(shí)容易出現(xiàn)丟軸的情況,這是由芯片的內(nèi)部運(yùn)行方式所局限的。隨著集成電路的發(fā)展,F(xiàn)PGA 芯片以處理速度快、精度高、內(nèi)部并行運(yùn)行的優(yōu)點(diǎn)逐步在各個(gè)行業(yè)中被廣泛使用。
本文使用FPGA 芯片完成對(duì)計(jì)軸信號(hào)處理系統(tǒng)的設(shè)計(jì),下面通過(guò)4部分內(nèi)容對(duì)該系統(tǒng)進(jìn)行介紹。
系統(tǒng)設(shè)計(jì)使用雙側(cè)計(jì)軸傳感器,圖1所示為雙側(cè)計(jì)軸傳感器安裝在鐵軌上的示意圖,圖中同時(shí)給出計(jì)軸設(shè)備整體的框架。
圖1 雙側(cè)計(jì)軸傳感器安裝位置示意
由圖1可知雙側(cè)計(jì)軸傳感器共包括2對(duì)磁頭,圖中的RX1和TX1組成一對(duì)磁頭,RX2和TX2組成一對(duì)磁頭,RX 代表接收線圈,TX 代表發(fā)送線圈,RX 安裝在鋼軌內(nèi)側(cè),TX 安裝在鋼軌外側(cè),2對(duì)磁頭的設(shè)計(jì)和工作原理完全相同,不同點(diǎn)是線圈中信號(hào)的頻率有所不同。本系統(tǒng)中分別使用24和28 kHz 頻率信號(hào)作為2對(duì)磁頭的工作頻率。使用這2個(gè)頻率的信號(hào)作為計(jì)軸系統(tǒng)的工作頻率,是因?yàn)榻?jīng)過(guò)實(shí)測(cè),2個(gè)頻率信號(hào)傳輸效率高、相互干擾小。
為了形象地說(shuō)明計(jì)軸傳感器磁頭的工作原理,圖2給出計(jì)軸傳感器磁頭安裝在鐵軌上的截面圖。
圖2 磁頭傳感器安裝在鐵軌上的截面
圖中簡(jiǎn)單地畫(huà)出了磁頭發(fā)送線圈的磁感線分布,用以說(shuō)明磁頭線圈的工作原理。發(fā)送線圈TX中通以固定頻率的交流信號(hào),受鐵軌的影響,在接收線圈RX 兩端形成固定變化規(guī)律的磁場(chǎng)分布。圖 中 φ1和 φ2分 別 表 示 穿 過(guò) 接 收 線 圈RX 兩 端方向不同的磁通量。在無(wú)車(chē)通過(guò)傳感器的狀態(tài)下, φ1的值大于 φ2的值;有車(chē)通過(guò)傳感器時(shí),會(huì)改變傳感器周?chē)艌?chǎng)的分布,使 φ2的值大于 φ1的值。因此在有車(chē)通過(guò)傳感器時(shí),感應(yīng)線圈中產(chǎn)生的感應(yīng)信號(hào)的相位發(fā)生翻轉(zhuǎn)。正是利用這一特性,計(jì)軸處理系統(tǒng)監(jiān)測(cè)到相位的變化,進(jìn)行軸計(jì)數(shù)。
系統(tǒng)傳感器使用2對(duì)磁頭的目的是根據(jù)2 對(duì)傳感器磁頭相位發(fā)生變化的先后順序判斷列車(chē)的行駛方向。
在了解了計(jì)軸傳感器的安裝和工作原理后,對(duì)FPGA 計(jì)軸信號(hào)處理系統(tǒng)進(jìn)行介紹。計(jì)軸信號(hào)處理系統(tǒng)為計(jì)軸傳感器提供工作信號(hào),并接收傳感器反饋回來(lái)的信號(hào),通過(guò)發(fā)送信號(hào)和接收信號(hào)的相位差來(lái)判斷是否有車(chē)輪通過(guò)傳感器,有則進(jìn)行計(jì)數(shù),最后將軸數(shù)信號(hào)上傳。為了保證系統(tǒng)安全的工作,系統(tǒng)設(shè)計(jì)時(shí)考慮到多方面的安全可靠性因素,對(duì)其進(jìn)行設(shè)計(jì)。首先,系統(tǒng)設(shè)計(jì)使用“1+1”冗余的設(shè)計(jì)方案,當(dāng)其中一套計(jì)軸信號(hào)處理系統(tǒng)出現(xiàn)故障時(shí),可以啟用另外一套計(jì)軸處理系統(tǒng)工作;其次,一套計(jì)軸信號(hào)處理系統(tǒng)使用2塊信號(hào)處理板,對(duì)2對(duì)磁頭分別進(jìn)行信號(hào)處理、計(jì)數(shù);最后,每一塊板上都有監(jiān)測(cè)各部分是否正常工作的監(jiān)測(cè)模塊。
圖3所示是一套計(jì)軸信號(hào)處理系統(tǒng)的結(jié)構(gòu)框圖,包括24 kHz 信號(hào)處理板、28 kHz 信號(hào)處理板、電源板。24 kHz 信號(hào)處理板和28 kHz 信號(hào)處理板的設(shè)計(jì)結(jié)構(gòu)和工作原理完全類(lèi)似,只是工作的頻率不同,因此在下面介紹計(jì)軸信號(hào)處理系統(tǒng)硬件電路設(shè)計(jì)和軟件設(shè)計(jì)時(shí),主要以24 kHz 信號(hào)處理板為例進(jìn)行說(shuō)明。
圖3 計(jì)軸信號(hào)處理系統(tǒng)結(jié)構(gòu)
以24 kHz 信號(hào)處理板為例,說(shuō)明系統(tǒng)信號(hào)處理板的硬件電路設(shè)計(jì),具體如圖4 所示,包括信號(hào)發(fā)送模塊、信號(hào)接收模塊、模數(shù)轉(zhuǎn)換模塊、數(shù)據(jù)傳輸模塊。
圖4 信號(hào)處理板硬件模塊關(guān)系框圖
以24 kHz 信號(hào)處理板為例,信號(hào)發(fā)送模塊是通過(guò)FPGA 芯片內(nèi)部產(chǎn)生24 kHz 的方波信號(hào),然后經(jīng)過(guò)信號(hào)發(fā)送模塊處理要發(fā)送的信號(hào),圖5所示是信號(hào)發(fā)送模塊電路圖。
圖5 信號(hào)發(fā)送模塊電路
由圖5可知信號(hào)發(fā)送模塊最左端連接FPGA信號(hào)發(fā)送引腳。圖6表示FPGA 引腳發(fā)送出信號(hào)的波形圖。FPGA 引腳端發(fā)送的信號(hào)為方波信號(hào),高電平為3.3 V,低電平為0 V。
圖6 FPGA 信號(hào)發(fā)送引腳波形
信號(hào)發(fā)送出來(lái)后經(jīng)過(guò)電容C1隔直后,再經(jīng)過(guò)R4和R5分壓,將分壓后的信號(hào)經(jīng)過(guò)三極管Q3(S8050)放大,放大后的波形圖如圖7所示。由圖可知信號(hào)經(jīng)過(guò)三極管單管放大后方波的高電平值達(dá)到了24 V,低電平為0 V,信號(hào)依然保持方波形狀。
圖7 信號(hào)經(jīng)過(guò)三極管S8050后信號(hào)波形
此后,信號(hào)經(jīng)由二極管D1(1N4148)、三極管Q1(C2383)、Q2(A1013)組成的OTL甲乙類(lèi)互補(bǔ)對(duì)稱電路進(jìn)行功率放大,放大后的信號(hào)波形如圖8所示。這是在變壓器線圈FS的主線圈測(cè)得的波形圖,由圖可知信號(hào)波形有一定失真,高電平值為12 V,低電平值為-12 V。
圖8 信號(hào)經(jīng)過(guò)OTL 甲乙類(lèi)互補(bǔ)對(duì)稱電路后的波形
最后,信號(hào)經(jīng)過(guò)變壓器線圈FS耦合到變壓器的副級(jí)線圈。在副級(jí)線圈一端,變壓器的副級(jí)線圈、磁頭發(fā)送線圈、電容(2個(gè)并聯(lián)的電容C4和C5)組成串聯(lián)諧振回路,諧振的中心頻率點(diǎn)為24 kHz。組成串聯(lián)諧振回路的目的是為了在磁頭發(fā)送線圈的2端獲得類(lèi)正弦波,同時(shí)獲得較高的電壓幅值。已知諧振的中心頻率,同時(shí)可以測(cè)出變壓器副級(jí)線圈的電感和磁頭發(fā)送線圈的電感值,由串聯(lián)諧振回路諧振頻率的計(jì)算公式可知,需要的電容的容值約為90 pF左右,故電路設(shè)計(jì)中電容C4和C5的值分別為30 pF和56 pF。圖9所示為磁頭發(fā)送線圈兩端的波形圖,由圖可知磁頭發(fā)送線圈信號(hào)波形接近于正弦波,信號(hào)最大值為48 V。
圖9 磁頭發(fā)送線圈兩端信號(hào)波形
圖5中FS1、FS2和FS3這3個(gè)點(diǎn)是發(fā)送回路測(cè)試點(diǎn),通過(guò)測(cè)試這3個(gè)點(diǎn)的電壓值來(lái)判斷發(fā)送回路是否正常。將這3個(gè)監(jiān)測(cè)點(diǎn)的信號(hào)進(jìn)行處理,然后在模數(shù)轉(zhuǎn)化模塊下采樣,監(jiān)測(cè)分析在3.2節(jié)中給出。
信號(hào)接收模塊接收磁頭接收線圈的信號(hào)進(jìn)行處理,圖10是信號(hào)接收模塊電路圖。
圖10 信號(hào)接收模塊電路
由圖可知,信號(hào)接收模塊接收來(lái)自磁頭接收線圈的信號(hào),然后經(jīng)過(guò)變壓器JS 耦合,最后經(jīng)過(guò)U1(TL072MJG)進(jìn)行放大。
信號(hào)磁頭發(fā)送線圈和接收線圈通過(guò)電磁感應(yīng)實(shí)現(xiàn)信號(hào)的傳遞,圖11是磁頭接收線圈收到信號(hào)的波形圖。由圖可知,磁頭發(fā)送信號(hào)經(jīng)過(guò)電磁感應(yīng)耦合到接收線圈兩端,信號(hào)波形依然保持正弦波狀態(tài),但是信號(hào)的幅度衰減較大,最大值由原來(lái)的48 V 衰減到了現(xiàn)在的30 mV 左右。
圖11 磁頭接收線圈信號(hào)波形
接收到的信號(hào)經(jīng)過(guò)U1進(jìn)行放大,放大后的波形經(jīng)過(guò)電阻R7和R8進(jìn)行分壓,F(xiàn)PGA 輸入端24KIN(圖10中接收信號(hào)輸入FPFA 的接口)的波形圖如圖12所示。由圖可知,信號(hào)波形接近于方波,方波的高電平值為2.2 V,低電平值為0 V,將該信號(hào)輸入到FPGA 中能夠有效識(shí)別出信號(hào)波形。
圖12 接收信號(hào)輸入FPGA 端信號(hào)波形
模數(shù)轉(zhuǎn)換模塊實(shí)現(xiàn)對(duì)外部電源模塊,發(fā)送、接收模塊的電壓監(jiān)測(cè),模數(shù)轉(zhuǎn)換模塊使用芯片AD7265實(shí)現(xiàn),圖13是模數(shù)轉(zhuǎn)換模塊電路圖。
圖13 模數(shù)轉(zhuǎn)換模塊電路
由圖可知,AD7265芯片引腳22(SGL/DIFF)連接高電平,輸入配置為單端模式,共12路;引腳21(RANGE)決定了12路通道輸入模擬量的范圍,該引腳接高電平,輸入模擬量的范圍在0~2VREF(VREF為芯片內(nèi)部參考電平),即為5 V;引腳2(REFSELECT)接低電平,參考電壓為2.5 V;根據(jù)SGL/DIFF和引腳RANGE的配置可知,輸出的12位二進(jìn)制編碼方式為二進(jìn)制補(bǔ)碼形式,該模式下1個(gè)最低有效位的大小為2VREF/4 096。AD7265共有3種工作模式,分別是正常模式、部分?jǐn)嚯娔J胶屯耆珨嚯娔J?,軟件配置使該芯片一直工作在正常模式下?/p>
由于受輸入范圍的限制,模擬值的輸入范圍是0~5 V。在12 V 電源監(jiān)測(cè)時(shí),使用阻值為47 kΩ和10 kΩ 的2個(gè)電阻分壓,監(jiān)測(cè)模擬量的理論值為2.105 V;24 V 電源經(jīng)過(guò)10 kΩ和75 kΩ電阻分壓,監(jiān)測(cè)模擬量的理論值為2.824 V;3.3 V 電源經(jīng)過(guò)10 kΩ和20 kΩ電阻分壓,監(jiān)測(cè)模擬量的理論值為2.2 V。220 V 電源經(jīng)過(guò)一個(gè)整流電橋進(jìn)行整形,然后通過(guò)電容進(jìn)行濾波,最后再經(jīng)過(guò)一個(gè)光電耦合原件,進(jìn)行監(jiān)測(cè)。線圈斷線檢測(cè)JSAIN量,是將外部傳感器線圈上的電壓值通過(guò)一個(gè)集成放大電路原件AD8226ARMZ進(jìn)行放大后輸入到AD7265中,如圖14所示。
圖14 耦合線圈斷路監(jiān)測(cè)電路
數(shù)據(jù)發(fā)送模塊將軸數(shù)信息和監(jiān)測(cè)信息打包為幀發(fā)送出去,圖15是數(shù)據(jù)發(fā)送模塊電路圖。
圖15 數(shù)據(jù)發(fā)送模塊電路
由圖15可知,MCP2515[10-11]中引腳1(TXCAN)和引腳2(RXCAN)實(shí)現(xiàn)CAN 接口數(shù)據(jù)傳輸;引腳7(OSC2)和引腳8(OSC1)是時(shí)鐘輸入引腳,該芯片外接16 MHz 的外部時(shí)鐘;引腳17(RESET)是低電平有效的器件復(fù)位輸入引腳;引腳12(INT)是中斷輸出。
MCP2515每個(gè)發(fā)送緩存器占用內(nèi)部14 byte 的資源,根據(jù)CAN 數(shù)據(jù)幀的格式可知,CAN 數(shù)據(jù)幀有標(biāo)準(zhǔn)數(shù)據(jù)幀和擴(kuò)展數(shù)據(jù)幀,標(biāo)準(zhǔn)數(shù)據(jù)幀和擴(kuò)展數(shù)據(jù)幀最大的區(qū)別在于標(biāo)志位位數(shù)的不同,因此在存儲(chǔ)數(shù)據(jù)時(shí)以擴(kuò)展數(shù)據(jù)幀為依據(jù)。擴(kuò)展數(shù)據(jù)幀共有29位標(biāo)志位,因此需要4 byte 的存儲(chǔ)空間存儲(chǔ),此外還需要1 byte 存儲(chǔ)要發(fā)送數(shù)據(jù)的大小,最多可以發(fā)送8 byte 的數(shù)據(jù),需要8個(gè)數(shù)據(jù)字節(jié)。最重要的是發(fā)送緩存控制寄存器TXBnCTRL,它控制著報(bào)文的發(fā)送[12]。
圖16是系統(tǒng)軟件設(shè)計(jì)的整體框圖,由圖可知,要使系統(tǒng)可靠的工作,首先要保證系統(tǒng)信號(hào)產(chǎn)生和接收的完整性和正確性,它是軸數(shù)信號(hào)統(tǒng)計(jì)的前提;然后根據(jù)發(fā)送信號(hào)和接收信號(hào)進(jìn)行軸數(shù)的統(tǒng)計(jì),將統(tǒng)計(jì)好的軸數(shù)信息發(fā)送;最后監(jiān)測(cè)是否發(fā)送完成,若軸數(shù)信息發(fā)送完成,將軸數(shù)信息清空,進(jìn)行下一次計(jì)數(shù)。
圖16 系統(tǒng)軟件整體流程
軟件設(shè)計(jì)的說(shuō)明和硬件電路的設(shè)計(jì)相對(duì)應(yīng),從信號(hào)的產(chǎn)生、模數(shù)轉(zhuǎn)換模塊的實(shí)現(xiàn)、數(shù)據(jù)的產(chǎn)生和組合、數(shù)據(jù)發(fā)送4部分進(jìn)行詳細(xì)介紹。
系統(tǒng)中FPGA 外接16 MHz 的晶振,即系統(tǒng)時(shí)鐘為16 MHz。使用計(jì)數(shù)器分頻的方式產(chǎn)生要發(fā)送的24、28 kHz 的信號(hào)。對(duì)于24 kHz 信號(hào)使用計(jì)數(shù)器計(jì)數(shù)333個(gè)系統(tǒng)周期信號(hào)進(jìn)行翻轉(zhuǎn),對(duì)于28 kHz 信號(hào)使用計(jì)數(shù)器計(jì)數(shù)286個(gè)系統(tǒng)周期信號(hào)進(jìn)行翻轉(zhuǎn)。
圖17所示是24 kHz/28 kHz 信號(hào)仿真圖,圖中上面波形為28 kHz 波形時(shí)序圖,下面波形為24 kHz 波形時(shí)序圖。由圖可知28 kHz 信號(hào)一個(gè)周期時(shí)間為35 750 000 ps,頻率為27.972 kHz,頻率偏差為0.1%;24 kHz 信號(hào)一個(gè)周期時(shí)間為41 625 000 ps,頻率為24.024 kHz,頻率偏差為0.1%,均在誤差允許范圍內(nèi)。
圖17 信號(hào)仿真波形
AD7265每14個(gè)時(shí)鐘周期數(shù)據(jù)轉(zhuǎn)換一次,時(shí)鐘為1 MHz,故轉(zhuǎn)換速率為14μs/次。當(dāng)CS拉低時(shí),模塊的時(shí)鐘開(kāi)始計(jì)數(shù),產(chǎn)生時(shí)鐘adclk。片選計(jì)數(shù)器cnt_adcs使用時(shí)鐘adclk 進(jìn)行計(jì)數(shù),計(jì)數(shù)到cnt_adcs=14結(jié)束,完成一次單端端口的模數(shù)轉(zhuǎn)換。當(dāng)cnt_adcs=1時(shí),將上次轉(zhuǎn)換完成的數(shù)據(jù)和相對(duì)應(yīng)的門(mén)限值進(jìn)行對(duì)比,檢查所對(duì)應(yīng)的模擬量是否出現(xiàn)異常。當(dāng)cnt_adcs=2時(shí)開(kāi)始芯片輸出12位數(shù)據(jù),直到cnt_adcs=13的時(shí)候?qū)?2 位數(shù)據(jù)全部輸出。當(dāng)cnt_adcs=14時(shí),將片選CS拉高,同時(shí)將地址ad_addr 加1,準(zhǔn)備對(duì)下一個(gè)數(shù)據(jù)進(jìn)行采樣,同時(shí)將cnt_adcs清零。
表1列出了各個(gè)監(jiān)測(cè)量對(duì)應(yīng)的門(mén)限值和其對(duì)應(yīng)的判斷條件,門(mén)限值對(duì)應(yīng)的模擬量的計(jì)算方法是二進(jìn)制編碼原碼數(shù)值與5/212相乘,再加上2.5。將實(shí)際采樣值與門(mén)限值結(jié)果進(jìn)行對(duì)比,比較后判斷所檢測(cè)的值是否超過(guò)所設(shè)定的門(mén)限值。這里規(guī)定若未超過(guò)門(mén)限值,上傳數(shù)據(jù)為0;超過(guò)門(mén)限值出現(xiàn)異常時(shí),上傳的數(shù)據(jù)為1。根據(jù)上傳數(shù)據(jù)對(duì)應(yīng)的位即可檢測(cè)哪里出現(xiàn)問(wèn)題并及時(shí)進(jìn)行維護(hù)。
表1 檢測(cè)數(shù)值和檢測(cè)判決條件
JSAIN在斷線的情況下檢測(cè)值為4.11 V,在連接狀態(tài)下檢測(cè)值為2.39 V。故在接收電路不斷線的情況下,warn144為0。分別對(duì)FSAINR、FSAINL和FSAINC進(jìn)行斷線和不斷線情況的測(cè)量。在斷線情況下3個(gè)信號(hào)的測(cè)量值分別為0.684、0.111和0.691 V,與表1中對(duì)應(yīng)相關(guān)門(mén)限值對(duì)比得a2=1、a3=0、a4=0,故warn143為1,表明在斷線情況下會(huì)發(fā)出報(bào)警;在不斷線的情況下,3個(gè)信號(hào)測(cè)量的測(cè)量值分別為0.496、3.846 和2.672 V,此時(shí)與表1 中對(duì)應(yīng)相關(guān)門(mén)限值對(duì)比得a2=1、a3=1、a4=1,故warn143為0,表明在不斷線的情況下不會(huì)報(bào)警。12V_CHECK 的實(shí)測(cè)值為1.929 V,故warn12為0;24 V_CHECK 的實(shí)測(cè)值為2.928 V,故warn24 為0;220 V_CHECK 的實(shí)測(cè)值為4.168 V,故warn220為0;3.3 V_CHECK 的實(shí)測(cè)值為2.650 V,故warn33為0。
軸計(jì)數(shù)時(shí)根據(jù)發(fā)送信號(hào)經(jīng)過(guò)調(diào)相后的信號(hào)sqrt_out 和接收信號(hào)sqrt_in 兩者的相位差進(jìn)行判別是否有列車(chē)車(chē)輪通過(guò)傳感器磁頭。規(guī)定在無(wú)車(chē)的情況下要保證兩者的相位差在40°以內(nèi),有車(chē)時(shí)由于輸入信號(hào)sqrt_in 相位的翻轉(zhuǎn),使兩者的相位差相差較大(≥140°),在檢測(cè)時(shí)設(shè)置門(mén)限值為70°,當(dāng)超過(guò)70°時(shí)表示有車(chē)輪通過(guò)傳感器。
由3.1節(jié)可知24 kHz 信號(hào)周期為41 625 000 ps,而系統(tǒng)時(shí)鐘一個(gè)周期為62 500 ps,24 kHz 信號(hào)是通過(guò)對(duì)主時(shí)鐘計(jì)數(shù)分頻得到的,即對(duì)系統(tǒng)時(shí)鐘計(jì)數(shù)666次就可以得到。同理28 kHz 信號(hào)周期為35 750 000 ps,需要對(duì)系統(tǒng)時(shí)鐘計(jì)數(shù)572次。將24 kHz 或是28 kHz 信號(hào)的一個(gè)周期看作是360°,那么在對(duì)sqrt_out 和sqrt_in 兩者的相位差進(jìn)行計(jì)數(shù)時(shí),相位差計(jì)數(shù)器檢測(cè)到sqrt_and(sqrt_and<=sqrt_out&(!sqrt_in))的高電平時(shí)開(kāi)始以系統(tǒng)時(shí)鐘計(jì)數(shù)。對(duì)于24 kHz 信號(hào),計(jì)數(shù)74個(gè)系統(tǒng)時(shí)鐘周期表示40°,計(jì)數(shù)129個(gè)系統(tǒng)時(shí)鐘周期表示70°;對(duì)于28 kHz 信號(hào),計(jì)數(shù)63個(gè)系統(tǒng)時(shí)鐘周期表示40°,計(jì)數(shù)111個(gè)系統(tǒng)時(shí)鐘周期表示70°。
圖18表示當(dāng)有車(chē)輪經(jīng)過(guò)傳感器時(shí)相位標(biāo)志信號(hào)的狀態(tài),使用phasea 表示24 kHz 信號(hào)處理板的相位標(biāo)志信號(hào),使用phaseb表示28 kHz 信號(hào)處理板的相位標(biāo)志信號(hào)。圖18(a)表示車(chē)輪先經(jīng)過(guò)24 kHz 磁頭,后經(jīng)過(guò)28 kHz 時(shí)的相位信息。圖18(b)圖表示車(chē)輪先經(jīng)過(guò)28 kHz 磁頭后經(jīng)過(guò)24 kHz 磁頭時(shí)的相位信息。由兩者低電平相位出現(xiàn)的先后進(jìn)行計(jì)數(shù),以24 kHz信號(hào)板為例,規(guī)定當(dāng)檢測(cè)到phasea 超前于phaseb時(shí)進(jìn)行累計(jì)計(jì)數(shù),當(dāng)phaseb超前于phasea 時(shí)進(jìn)行遞減計(jì)數(shù)。
圖18 不同方向行駛列車(chē)相位標(biāo)志信號(hào)
數(shù)據(jù)使用CAN 總線擴(kuò)展數(shù)據(jù)幀進(jìn)行發(fā)送,擴(kuò)展數(shù)據(jù)幀標(biāo)志位一共29位,共占用MCP2515的4 byte;發(fā)送數(shù)據(jù)字節(jié)數(shù)占用MCP2515內(nèi)部1個(gè)寄存器,發(fā)送一幀數(shù)據(jù)包含8 byte的數(shù)據(jù),其中軸數(shù)占用2 byte,其他信息占用2 byte;保留2 byte;CRC_16效驗(yàn)碼占2 byte。
數(shù)據(jù)的發(fā)送即通過(guò)MCP2515將組合好的數(shù)據(jù)進(jìn)行發(fā)送,圖19為發(fā)送數(shù)據(jù)流程圖。由圖可知:首先上電將MCP2515寄存器復(fù)位,設(shè)置工作模式為正常模式并檢測(cè),直到芯片工作在正常模式下;然后初始化相關(guān)發(fā)送和接收寄存器,將要發(fā)送的數(shù)據(jù)裝載到發(fā)送寄存器中,啟動(dòng)發(fā)送,在發(fā)送時(shí)要時(shí)時(shí)監(jiān)測(cè)軸數(shù)信息是否更新,若更新及時(shí)將更新的數(shù)據(jù)裝載到發(fā)送緩存器中;最后判斷接收緩存器是否接收到軸數(shù)不變的相關(guān)數(shù)據(jù)幀,若接收產(chǎn)生接收中斷,將軸數(shù)信息清零,重新計(jì)數(shù)。
圖19 數(shù)據(jù)發(fā)送流程
根據(jù)MCP2515的外部連接16 MHz 的晶振可知,F(xiàn)SOC=16 MHz,那么Tsoc=62.5 ns。由寄存器配置可知波特率預(yù)分頻比RBRP為63,1位數(shù)據(jù)可分解為更小的時(shí)間份額TQ,TQ的計(jì)算表達(dá)式為T(mén)Q=2×(RBRP+1)×Tsoc=8 000 ns。CAN 數(shù)據(jù)幀每1位數(shù)據(jù)的時(shí)間長(zhǎng)度NBT(標(biāo)稱位時(shí)間)由4部分組成,分別是同步段、傳播段、相位緩沖段1和相位緩沖段2。其中同步段的時(shí)間長(zhǎng)度固定為1TQ,不可編程改變,其他位段的長(zhǎng)度可以通過(guò)編程設(shè)置。根據(jù)寄存器配置可知傳播段時(shí)長(zhǎng)、相位緩沖段1和相位緩沖段2的時(shí)長(zhǎng)都為8TQ,故整個(gè)標(biāo)稱位時(shí)間為25TQ,MCP2515的CAN接口波特率為5 kb/s。
將設(shè)計(jì)好的軟件程序下載到系統(tǒng)硬件電路中,在有車(chē)和無(wú)車(chē)的狀況下分別使用使用Altera公司的Quartus II軟件提供的片上邏輯分析儀SignalTap對(duì)要分析的信號(hào)進(jìn)行抓取,同時(shí)通過(guò)仿真來(lái)說(shuō)明計(jì)軸原理。
圖20所示是無(wú)車(chē)狀態(tài)下24 kHz 信號(hào)處理板,使用SignalTap抓取到關(guān)鍵信號(hào)的波形圖。圖中sqrt_in 表示磁頭接收線圈接收的信號(hào),sqrt_out 表示發(fā)送信號(hào)經(jīng)過(guò)調(diào)相后的信號(hào),sqrt_and 是sqrt_in和sqrt_out 相與得到的信號(hào),sqrt_or 是sqrt_in 和sqrt_out 相 或 得 到 的 信 號(hào),sqrt_orf 是sqrt_or 延時(shí)1 個(gè)周期后得到的信號(hào)和sqrt_or 相與得到的信號(hào),count 表示相位差計(jì)數(shù)值。由圖可知,無(wú)車(chē)狀態(tài)下相位差計(jì)數(shù)值保持在3附近,與設(shè)定的40°的相位差的計(jì)數(shù)值73相比相差較大,說(shuō)明在無(wú)車(chē)狀態(tài)下相位差遠(yuǎn)遠(yuǎn)小于40°,符合設(shè)計(jì)要求。
圖20 無(wú)車(chē)時(shí)SignalTap抓取信號(hào)波形
圖21所示是有車(chē)狀態(tài)下24 kHz 信號(hào)處理板,使用SignalTap抓取到的關(guān)鍵信號(hào)的波形圖,圖中信號(hào)的意義和圖20中信號(hào)的意義完全一樣。由圖可知有車(chē)狀態(tài)下相位差計(jì)數(shù)值為128保持不變,即相位差保持在70°以上,能夠有效識(shí)別列車(chē)車(chē)輪信號(hào)。
圖21 有車(chē)時(shí)SignalTap抓取信號(hào)波形
圖22為軟件計(jì)數(shù)原理波形圖。由圖可知,當(dāng)有車(chē)輪通過(guò)傳感器時(shí),車(chē)輪先經(jīng)過(guò)24 kHz磁頭,后經(jīng)過(guò)28 kHz 磁頭,通過(guò)相位信息phasea 和phaseb來(lái)判別方向并計(jì)數(shù)。由于phasea 超前于phaseb,故進(jìn)行累加計(jì)數(shù)。
由圖還可以知道在進(jìn)行數(shù)據(jù)時(shí),軸數(shù)信息以3種不同的方式進(jìn)行存儲(chǔ),zhouy <= zhou;zhouf = ~zhou;zhoub= ~zhou+16'd1。以3種方式存儲(chǔ)軸數(shù)信息是為了在將軸數(shù)信息裝載到發(fā)送寄存器中時(shí)進(jìn)行對(duì)比,保證存儲(chǔ)數(shù)據(jù)的準(zhǔn)確性。
圖22 計(jì)軸原理波形
本文通過(guò)對(duì)計(jì)軸系統(tǒng)的硬件部分和軟件部分的介紹,詳細(xì)闡述了該系統(tǒng)所使用的硬件電路結(jié)構(gòu)和系統(tǒng)的工作原理。與使用傳統(tǒng)單片機(jī)和單核DSP芯片相比,使用FPGA 的優(yōu)點(diǎn)如下:
1)本設(shè)計(jì)使用FPGA 軟件編程設(shè)定閾值與使用硬件電路設(shè)計(jì)閾值相比較具有可更改、靈活和方便的優(yōu)勢(shì);
2)本設(shè)計(jì)采用FPGA 作為信號(hào)處理芯片,信號(hào)處理速度快,更加適合于現(xiàn)如今高速鐵路的發(fā)展,對(duì)高速鐵路適應(yīng)性更強(qiáng),可監(jiān)測(cè)。
3)本設(shè)計(jì)采用FPGA 作為信號(hào)處理芯片,在移相時(shí)可以軟件編程,與現(xiàn)在的硬件相移相比較,采用軟件相移設(shè)計(jì)更加精確具體。
4)本設(shè)計(jì)采用FPGA 作為信號(hào)處理芯片,與以往使用單片機(jī)做的系統(tǒng)相比,功能更加豐富,集成度更高,安全可靠性更好。