雷長志,趙 棟,申建利
(1.中國電子科技集團(tuán)公司第33研究所山西太原030006;2.太原科技大學(xué),山西太原030024)
“鐵路貨運(yùn)量”是“克強(qiáng)指數(shù)”的重要經(jīng)濟(jì)指標(biāo)之一,它反映了中國經(jīng)濟(jì)的發(fā)展?fàn)顩r。目前,中國鐵路貨運(yùn)量逐年增大,貨運(yùn)安全對國民經(jīng)濟(jì)至關(guān)重要。因此,貨車制動性能的好壞對貨車安全運(yùn)行有重要作用,建設(shè)一個智能的、高效的、可追溯的制動閥檢修數(shù)字系統(tǒng)對提高檢修制動閥技術(shù)以及提高貨車安全都有重要的作用。
制動閥檢修數(shù)字化系統(tǒng)的功能包括:電子標(biāo)簽管理、檢修全信息化存儲、工件數(shù)字測量、過程信息分類查詢。其檢修數(shù)字化流程框圖如圖1所示。
圖1 檢修數(shù)字化流程框圖
從圖1中可以看到,制動閥檢修數(shù)字化流程從制動閥進(jìn)入制動室開始,對貨車各種制動閥進(jìn)行RFID電子標(biāo)簽標(biāo)記,然后通過RFID識別并采集制動閥圖像,最后對制動閥的各種參數(shù)進(jìn)行數(shù)字測量并將數(shù)據(jù)存入制動閥檢修數(shù)據(jù)庫中。
從流程圖中可以看到,制動閥檢修數(shù)字化系統(tǒng)的關(guān)鍵技術(shù)是對制動閥進(jìn)行數(shù)字測量并將數(shù)據(jù)存入制動閥檢修數(shù)據(jù)庫。該技術(shù)采用數(shù)字游標(biāo)卡尺智能數(shù)據(jù)采集器,將制動閥的各個參數(shù)采集到計算機(jī)中,并存入檢修數(shù)據(jù)庫中,以備將來對制動閥的檢修參數(shù)、檢修人員、檢修時間等進(jìn)行查找。
數(shù)字游標(biāo)卡尺有4個信號輸入接口,分別為卡尺電源端口、卡尺時鐘信號輸出端、卡尺數(shù)據(jù)信號輸出端、卡尺地端??ǔ邥r鐘信號輸出端和卡尺數(shù)據(jù)信號輸出端的電平對應(yīng)關(guān)系為:在時鐘信號的上升沿,與其對應(yīng)的電平信號就是卡尺輸出的數(shù)據(jù)信號。
根據(jù)這個對應(yīng)關(guān)系,本系統(tǒng)設(shè)計了智能數(shù)據(jù)采集器的硬件原理圖,該原理圖主要包括電源電路單元、時鐘和數(shù)據(jù)信號電平轉(zhuǎn)換電路單元、數(shù)據(jù)采集和串口通信電路單元三大部分,如圖2所示。
圖2 智能數(shù)據(jù)采集器的硬件原理圖
電源電路單元是制動閥數(shù)字測量系統(tǒng)的動力單元,主要提供+5V和+1.55V兩種電源標(biāo)準(zhǔn)。本系統(tǒng)中采用2種三端穩(wěn)壓器提供電源,一種是78XX系列的三端穩(wěn)壓器,一種是LM217系列的三端穩(wěn)壓器。78XX三端穩(wěn)壓器輸出 +5V電源,LM217三端穩(wěn)壓器可以通過調(diào)整對地電阻的大小來輸出+1.55V。調(diào)整電阻大小如下列公式(1)所示:
公式中,Vout是輸出電壓,RP1是對地電阻,根據(jù)輸出電壓+1.55V和電阻R1的值,可以很容易地計算出電位器RP1需要調(diào)整的數(shù)值。電平轉(zhuǎn)換電路單元是制動閥數(shù)字測量系統(tǒng)的數(shù)據(jù)匹配單元,它將游標(biāo)卡尺產(chǎn)生的時鐘信號和數(shù)據(jù)信號轉(zhuǎn)換成標(biāo)準(zhǔn)的TTL電平,供CPU使用。其電路如圖3所示:
圖3 電平轉(zhuǎn)換電路
時鐘和數(shù)據(jù)信號都是經(jīng)過1個光耦將信號從非TTL電平轉(zhuǎn)換成TTL電平,然后將光耦輸出的信號經(jīng)過反向器74ALS04整形,得到可以使CPU容易辨識的信號,這樣有利于使用CPU的中斷來進(jìn)行編程。
數(shù)據(jù)采集和串行通信電路單元是整個數(shù)據(jù)采集器的核心單元,采用硬件電路結(jié)合軟件編程,將數(shù)據(jù)信號采集到數(shù)據(jù)寄存器中,然后將數(shù)據(jù)寄存器中的數(shù)據(jù)通過RS-232協(xié)議發(fā)送到計算機(jī)中。該電路的CPU采用AT89C2051,該芯片體積小,便于操作,電路如圖4所示。
圖4 數(shù)據(jù)采集和串行通信電路
從圖中可以看到,時鐘信號輸入到CPU的P3.0管腳,用于觸發(fā)外部中斷,數(shù)據(jù)信號輸入到CPU的P1.0管腳,用于在中斷處理程序中接收數(shù)據(jù)。P3.5管腳接1個外部開關(guān),用于發(fā)送數(shù)據(jù),當(dāng)按下開關(guān)后,P3.5從高電平變成低電平,CPU通過P3.1(TXD)管腳將數(shù)據(jù)發(fā)送到MA232的11管腳,然后MAX232將數(shù)據(jù)轉(zhuǎn)換成232電平送給計算機(jī)串口,從而實(shí)現(xiàn)上、下位機(jī)的通信。
該核心電路的軟件程序是實(shí)現(xiàn)數(shù)據(jù)采集和串口通訊功能的重要方法。軟件程序主要有初始化、主程序、外部中斷程序、時鐘中斷程序、串口通信中斷程序組成。
本系統(tǒng)大致分為四大模塊:系統(tǒng)管理、檢修、數(shù)據(jù)管理和系統(tǒng)幫助。
系統(tǒng)管理模塊主要包括系統(tǒng)登錄、用戶管理、檢修信息管理、系統(tǒng)退出。系統(tǒng)登錄主要是指當(dāng)用戶點(diǎn)擊計算機(jī)桌面應(yīng)用程序圖標(biāo)后,進(jìn)入檢修系統(tǒng)主界面,顯示系統(tǒng)登錄窗口,此時用戶需要輸入用戶名和密碼才能進(jìn)入檢修系統(tǒng),否則不允許進(jìn)入系統(tǒng)。用戶管理主要是指對用戶的添加,密碼的修改以及用戶的刪除。檢修信息管理主要是指系統(tǒng)需要檢修的信息和檢測標(biāo)準(zhǔn)的管理,如檢修信息的增加、合格標(biāo)準(zhǔn)的修改等。系統(tǒng)退出主要是指當(dāng)作業(yè)人員修改完成后,退出檢修系統(tǒng)的操作。
檢修模塊主要是指作業(yè)人員登錄系統(tǒng)后開始進(jìn)行相關(guān)檢修的操作。當(dāng)點(diǎn)擊檢修操作后,操作人員需要選擇需要檢修的工件名稱、工件類型、工件測試項(xiàng),然后點(diǎn)擊檢修按鈕。此時,系統(tǒng)將通過串口從下位機(jī)進(jìn)行讀數(shù),并進(jìn)行相關(guān)的計算以及根據(jù)此工件標(biāo)準(zhǔn)進(jìn)行合格性的判斷顯示到系統(tǒng)界面,最后,系統(tǒng)把檢修的相關(guān)信息存入數(shù)據(jù)庫,以便于日后的數(shù)據(jù)管理操作。
數(shù)據(jù)管理包括檢修數(shù)據(jù)查詢、數(shù)據(jù)報表生成、數(shù)據(jù)報表打印。數(shù)據(jù)查詢主要指經(jīng)過檢修操作后,數(shù)據(jù)庫中存入大量的檢修工件信息,若需要查詢某些特定的數(shù)據(jù)時,可以通過本操作進(jìn)行,如按作業(yè)人員、按工件名稱、按工件類型或按時間進(jìn)行查詢檢修信息。數(shù)據(jù)報表生成是指根據(jù)選定的選項(xiàng)生成類似于Excel的表格信息。數(shù)據(jù)報表打印是指當(dāng)前一步生成數(shù)據(jù)報表后,需要進(jìn)行打印為紙質(zhì)文件而執(zhí)行的操作。
系統(tǒng)幫助包括系統(tǒng)版本說明、系統(tǒng)說明書。系統(tǒng)版本說明主要用來顯示本系統(tǒng)的版本號。系統(tǒng)說明書主要是通過經(jīng)過編譯的CHM文件來詳細(xì)介紹本系統(tǒng)的各種功能以及具體的使用步驟。
本系統(tǒng)的開發(fā)軟件平臺為Microsoft Visual Studio 2005,數(shù)據(jù)庫軟件平臺為Microsoft SQL Server 2000 Developer Edition。
軟件主界面如圖5所示。
圖5 軟件主界面
軟件實(shí)現(xiàn)基本描述:
第一步,從下位機(jī)的串口讀取數(shù)據(jù)包。
第二步,根據(jù)數(shù)據(jù)包格式對讀到的數(shù)據(jù)進(jìn)行解析。
第三步,把解析出來的數(shù)值更新到軟件顯示界面,并存入數(shù)據(jù)庫。
在軟件實(shí)現(xiàn)過程中最為重要的是,對數(shù)據(jù)包的解析過程。其關(guān)鍵技術(shù)如下:
因?yàn)橄挛粰C(jī)把一包數(shù)據(jù)用24位進(jìn)行傳輸,因此軟件接收部分,每接收到24位為一包數(shù)據(jù),然后再對這24位數(shù)據(jù)進(jìn)行解析。其基本算法如下:
Int s1=sp.ReadByte();
str=s1.ToString();
if(result.Length==24)
{
result=result.Substring(1,20);
result=Reverser(result);
Double value=Convert.ToInt32(result,2)*0.01;
result=value.ToString();
}
由于上位機(jī)收到的這24位數(shù)據(jù)為二進(jìn)制格式的數(shù)據(jù)串,并且上傳上的部分為二制的低位部分,后傳上來的為二進(jìn)制的高部分。因此,軟件需要對這具字符串進(jìn)行反轉(zhuǎn),得到正確順序的二進(jìn)制數(shù)據(jù)。這個函數(shù)是對收到的數(shù)據(jù)進(jìn)行反轉(zhuǎn)的。
private String Reverser(String str)
{
char[]arr=str.ToCharArray();
Array.Reverse(arr);
return new String(arr);
}
該制動閥檢修數(shù)字化系統(tǒng)的研制成功,大大的提高了制動閥檢修精度,提高了制動閥的安全系數(shù),對貨車的安全運(yùn)行有很大幫助。
[1] 鐵道部運(yùn)輸局裝備部.鐵路機(jī)車概要[M].北京:中國鐵路出版社,2009.
[2] 徐科軍.容柵傳感器的研究與應(yīng)用[M].北京:清華大學(xué)出版社,1995.