基于數(shù)字傾角傳感器的線路道岔電子檢測尺設(shè)計
引言
本文引用地址:http://m.butianyuan.cn/article/162519.htm線路道岔電子檢測尺是列車運行安全的重要保障,其主要用途是測量軌道的軌距、水平度,目的是為了預(yù)防因外界環(huán)境溫度的影響而使鋼軌狀態(tài)變形。此外,它也可消除人工機械式測量帶來的誤差大、工作效率低等不良因素,從而進一步提高鐵路安全保障措施。
本文所設(shè)計的系統(tǒng)可以測量標準軌距為1435mm軌道的水平度、軌距,可實現(xiàn)自動檢測、自動存儲。通過RS232接口與計算機數(shù)據(jù)通信后,可用專用軟件查詢分析所有測量數(shù)據(jù),并可打印報表。
系統(tǒng)工作原理及硬件設(shè)計
線路道岔電子檢測尺的功能包括兩項:軌距和水平度,該儀器的結(jié)構(gòu)如圖1所示,由數(shù)字傾角(角度)傳感器、高精度位移測量傳感器、單片機及外圍電路、橫尺、直擋、測量滑塊、和液晶顯示器等部分構(gòu)成。其中高精度位移測量傳感器和測量滑塊用于測量軌距。軌距由兩部分構(gòu)成,一部分是橫尺上的標準長度部分s1(該部分為固定值),另外一部分是以標準長度末端A點為起點的測量長度s2(該部分由高精度位移測量傳感器測量得到),總的軌距s=s1+s2??紤]到溫度的影響,單片機自帶溫度傳感器,用來補償溫度對測量數(shù)據(jù)的影響。橫尺上的數(shù)字傾角(角度)傳感器測量橫尺的水平度(角度),通過角度和軌距可測量左右軌的高差。液晶顯示部分顯示軌距、左右軌高差和時間等信息,相關(guān)數(shù)據(jù)可以保存在儀器中,也可通過RS232接口與計算機通訊讀出來形成匯總,在計算機中保存、打印相關(guān)數(shù)據(jù)。
線路道岔電子檢測尺主要通過位移傳感器和數(shù)字傾角(角度)傳感器對鋼軌的軌距、水平度進行測量。傳感器信號通過RS232接口和特殊功能計數(shù)器后進入單片機,單片機計算出軌距后,再由傾角傳感器測量的傾角與軌距這兩組數(shù)據(jù),根據(jù)正弦函數(shù)算出兩軌道相差高度。單片機把這兩組數(shù)據(jù)與設(shè)定的門限值進行比較來判斷測量點是否合格。液晶屏顯示輸出數(shù)據(jù)結(jié)果,鍵盤可以設(shè)定門限值、所測點的位置,并具備刪除和保存數(shù)據(jù)等功能。系統(tǒng)設(shè)計框圖見圖2。
數(shù)字傾角(角度)傳感器
數(shù)字傾角(角度)傳感器利用重力對流體的作用引起膜電位變化的原理而制成,是新型的慣性傳感器,它具有體積小、高靈敏度、線性好、壽命長、寬動態(tài)范圍、高穩(wěn)定性、超強抗沖擊性等特點。
數(shù)字傾角(角度)傳感器通過RS232與單片機接口。紅線為電源輸入,黑線為地(RS232地與電源地共用),黃線為傳感器的RS232輸入,綠線為傳感器的RS232輸出。輸入電源電壓為7V-24V,推薦值9V。傳感器應(yīng)豎直安裝,安裝面與垂直面的夾角不大于2°。安裝示意圖見圖3。
C8051F060單片機
為了減少外圍器件、提高系統(tǒng)穩(wěn)定性,采用自帶溫度傳感器的C8051F060器件,它是完全集成的混合信號系統(tǒng)級MCU芯片,使用Cygnal的專利CIP-51微控制器內(nèi)核,CIP-51與MCS-51指令集完全兼容。C8051F060內(nèi)部有1個SMBUS/I2C接口、2個具有增強型波特率配置的全雙工UART和1個增強型SPI接口,每種串行總線完全由硬件實現(xiàn),都能向CIP-51產(chǎn)生中斷。C8051F060具有五個通用的16位定時器;具有6個捕捉/比較模塊的可編程計數(shù)器/定時器數(shù)組;具有片內(nèi)看門狗定時器、VDD監(jiān)視器、時鐘振蕩器。C8051F060是真正能獨立工作的片上系統(tǒng)。所有模擬和數(shù)字外設(shè)均可由用戶固件使能/禁止和配置。FLASH存儲器還具有在系統(tǒng)重新編程能力,可用于非易失性數(shù)據(jù)存儲,并允許現(xiàn)場更新8051固件。
C8051F060有大量的數(shù)字資源需要通過4個低端I/O端口P0、P1、P2和P3才能使用。P0、P1、P2和P3中的每個引腳既可定義為通用的端口I/O(GPIO)引腳,又可以分配給一個數(shù)字外設(shè)或功能(例如:UART0 或INT1)。系統(tǒng)設(shè)計者控制數(shù)字功能的引腳分配,只受可用引腳數(shù)的限制。這種資源分配的靈活性是通過使用優(yōu)先權(quán)交叉開關(guān)譯碼器實現(xiàn)的。不管引腳被分配給一個數(shù)字外設(shè)或是作為通用 I/O,總是可以通過讀相應(yīng)的數(shù)據(jù)寄存器得到端口 I/O 引腳的狀態(tài)。
優(yōu)先權(quán)交叉開關(guān)譯碼器按優(yōu)先權(quán)順序?qū)⒍丝?~3的引腳分配給器件上的數(shù)位外(UART、SMBus、PCA、定時器等)。端口引腳的分配順序從P0.0開始,可以一直分配到P3.7。當交叉開關(guān)配置寄存器XBR0、XBR1、XBR2和XBR3中外設(shè)的對應(yīng)使能位被設(shè)置為邏輯1時,交叉開關(guān)將端口引腳分配給外設(shè)。端口0~3中所有未被交叉開關(guān)分配的引腳都可以作為通用I/O(GPIO)引腳,通過讀或?qū)懴鄳?yīng)的端口數(shù)據(jù)寄存器訪問,這是一組既可以按位尋址也可以按字節(jié)尋址的SFR。被交叉開關(guān)分配的那些端口引腳的輸出狀態(tài),受使用這些引腳的數(shù)字外設(shè)的控制。向端口資料寄存器(或相應(yīng)的端口位)寫入時對這些引腳的狀態(tài)沒有影響。
C8051F060單片機的P0.0引腳被配置為UART0的TX0,P0.1引腳被配置為UART0的RX0,UART0用來與數(shù)字傾角(角度)傳感器進行通訊。UART0是一個具有幀錯誤檢測和地址識別硬件的增強型串行口。UART0 可以工作在全雙工異步方式或半雙工同步方式,并支持多處理器通信。接收數(shù)據(jù)被暫存于一個保持寄存器中,這就允許UART0 在軟件尚未讀取前一個數(shù)據(jù)字節(jié)的情況下開始接收第二個輸入數(shù)據(jù)字節(jié)。一個接收覆蓋位用于指示新的接收數(shù)據(jù)已被鎖存到接收緩沖器,而前一個接收數(shù)據(jù)尚未被讀取。對UART0的控制和訪問是通過相關(guān)的特殊功能寄存器即串行控制寄存器(SCON0)和串行數(shù)據(jù)緩沖器(SBUF0)來實現(xiàn)的。用同一個 SBUF0 地址可以訪問發(fā)送寄存器和接收寄存器。讀SBUF0將自動訪問接收寄存器,而寫 SBUF0 自動訪問發(fā)送寄存器。UART0可以工作在查詢或中斷方式,它有兩個中斷源:一個發(fā)送中斷標志 TI0(SCON0.1,數(shù)據(jù)字節(jié)發(fā)送結(jié)束時置位)和一個接收中斷標志 RI0(SCON0.0,接收完一個數(shù)據(jù)字節(jié)后置位)。
C8051F060單片機的P0.2被配置為UART1的TX1, P0.3引腳被配置為UART1的RX1, UART1用來與上位PC機進行通訊。對UART1的控制基本與UART0相同。
C8051F060單片機的P0.4被配置為外部中斷源(/INT0)的輸入腳,接收位移傳感器的零點復(fù)位信號,減少由于多次來回運動造成的累積測量誤差。/INT0被配置為下降沿觸發(fā)輸入。
C8051F060單片機的P0.5被配置為定時器/計數(shù)器 3的計數(shù)輸入腳(T3),接收位移傳感器的位移脈沖。P0.6被配置為定時器/計數(shù)器3計數(shù)方向控制腳(T3EX),用來判斷位移傳感器的移動方向。C/T3位被置1時,將定時器配置為計數(shù)器方式(即在 T3 輸入引腳上的負跳變使計數(shù)器/定時器的寄存器加1或減 1)。定時器配置寄存器中的減 1 使能位(DCEN3)被置1,定時器可以向上或向下計數(shù)。當 DCEN3=1時,定時器的計數(shù)方向受 T3EX引腳上的邏輯電平的控制。當 T3EX =1 時,計數(shù)器/定時器向上計數(shù);當T3EX=0時,計數(shù)器/定時器向下計數(shù)。T3EX必須在數(shù)字交叉開關(guān)中被使能并且被配置為數(shù)字輸入。
位移傳感器
采用DC20型光柵尺位移傳感器作為軌距測量工具。DC20型光柵尺采用雙層防護膠條密封,可保證最佳的密封性能。讀數(shù)頭滾動系統(tǒng)采用450式五軸承滾動系統(tǒng),保證光學(xué)感應(yīng)系統(tǒng)能長期穩(wěn)定地在光柵尺上順暢滑行以及它高等級的測量精度。
位移傳感器輸出信號波形見圖4。
調(diào)試電路
C8051F060的片內(nèi) JTAG 調(diào)試電路允許使用安裝在最終應(yīng)用系統(tǒng)上的產(chǎn)品進行非侵入式(不占用片內(nèi)資)、全速、在系統(tǒng)調(diào)試。該調(diào)試系統(tǒng)支持觀察并修改存儲器和寄存器,支持斷點、觀察點、單步及行和停機命令。在使用 JTAG調(diào)試時,所有的模擬和數(shù)字外設(shè)都可全功能運行。JTAG接口使用MCU上的4個專用引腳(TMS、TCK、TDI、TDO)。
萬年歷時鐘芯片電路
每次測量后記錄測量時間,以便在上位PC機形成報表。DS1302 是美國DALLAS公司推出的一種高性能、低功耗、帶RAM的實時時鐘電路,它可以對年、月、日、周日、時、分、秒進行計時,具有閏年補償功能,工作電壓為2.5V~5.5V。DS1302內(nèi)部有一個31×8的用于臨時性存放數(shù)據(jù)的RAM寄存器。采用三線接口與CPU進行同步通信,并可采用突發(fā)方式一次傳送多個字節(jié)的時鐘信號或RAM數(shù)據(jù)。
DS1302與CPU的連接需要三條線,即SCLK(7)、I/O(6)、RST(5)。DS1302與CPU的連接如圖5所示。
EEPROM電路
測量的數(shù)據(jù)保存在EEPROM中。AT24C512是ATMEL公司推出的具有I2C總線容量達512Kbit(64K×8)的EEPROM,該芯片的主要特性如下:存儲容量為65536byte;與100kHz、400kHz、1MHz I2C總線兼容;100000次編程/擦寫周期;單電源、讀寫電壓為1.8V~5.5V;ESD保護電壓>4kV;數(shù)據(jù)可保存40年;寫保護功能,當WP為高電平時,進入寫保護狀態(tài);CMOS低功耗技術(shù),最大寫入電流為3mA;128byte頁寫入緩存器;自動定時的寫周期;具有8引腳DIP及20引腳SOIC封裝等多種封裝形式。EEPROM電路見圖6。
RS232電平轉(zhuǎn)換電路
MAX232是單電源雙RS232發(fā)送/接受芯片,采用單一+5V電源供電,只需外接4個電容,便可構(gòu)成標準的RS232通信接口。單片機和計算機、數(shù)字傾角(角度)傳感器接口電路如圖7所示。圖中的C3、C4、C5、C6是電荷泵升壓及電壓反轉(zhuǎn)部分電路,產(chǎn)生V+、V-電源供EIA電平轉(zhuǎn)換使用,C7是VCC對地去藕電容,其值均為0.1μF。電容C3~C7安裝時必須盡量靠近MAX232芯片引腳,以提高抗干擾能力。
液晶顯示電路
JM19264A是具有192*64點陣的圖形點陣液晶模塊,它與單片機聯(lián)接構(gòu)成功能強、結(jié)構(gòu)簡單、人機對話界面豐富的應(yīng)用系統(tǒng)。本儀器中,單片機采用直接訪問式接口電路與液晶顯示電路進行控制。
液晶屏顯示內(nèi)容及鍵盤布局
線路道岔電子檢測尺外部由JM19264A液晶顯示屏、RS232接口和4*4的鍵盤構(gòu)成,右端是可旋轉(zhuǎn)移動的軸,通過軸的移動產(chǎn)生位移信號輸入單片機,單片機每隔0.5s刷新一次液晶顯示屏數(shù)據(jù)。H后的+號代表左端高,-號表示左端低。L后的+表示比標準值大,-表示比標準值小。液晶屏顯示及鍵盤布局見圖8。
線路道岔電子檢測尺的使用
在使用線路道岔電子檢測尺進行測量時,線路道岔電子檢測尺的左端緊挨著鋼軌的一側(cè),另一端用螺旋器移動中心軸使之接觸鋼軌另一側(cè),按下鍵盤上的確認鍵后,該系統(tǒng)便會很精確地將需要的數(shù)據(jù)測量出來。測量完成后按下保存鍵便可保存該點的數(shù)據(jù)。通過RS232與PC機連接后可獲取所測量點的所有信息。
抗震動、防沖擊的結(jié)構(gòu)設(shè)計
由于線路道岔電子檢測尺輕巧便攜,因此也很容易產(chǎn)生碰撞、跌落。為了讓系統(tǒng)可靠地工作,應(yīng)避免震動、沖擊直接作用到傳感元件上,因此在設(shè)計結(jié)構(gòu)上采取了金屬盒裝的結(jié)構(gòu)。將控制裝置緊固安裝在金屬盒內(nèi),僅留外部接口、液晶顯示屏和鍵盤在金屬盒外,避免內(nèi)部元件直接受外部沖擊、碰撞,提高了器件抗沖擊能力。
系統(tǒng)的編程
采用Silicon Laboratories IDE集成編輯、編譯、仿真、下載軟件包,用C語言進行軟件編寫。系統(tǒng)通電后,首先要對單片機進行初始化,包括單片機的I/O端口和交叉開關(guān)、定時器的初始化、兩個串行通訊口的初始化,液晶顯示器的初試化等。整個程序由器件初始化程序、液晶顯示器的初試化程序、串行口中斷程序、外部中斷0處理程序、顯示程序、鍵盤掃描處理程序、軌距和水平計算程序程序、萬年歷時鐘芯片DS1302讀寫程序、EEPROM AT24C512讀寫程序等組成。
部分源代碼程序如下:
位移測量傳感器過零信號中斷入口程序
void Init0_ISR() interrupt 0 // 外部中斷0,邊沿觸發(fā)
{
uchar distance_flag; //位移測量傳感器運動方向標志保存字
SFRPAGE=0x01;
TMR3H=0; //過零點,復(fù)位計數(shù)器為零.
TMR3L=0;
P05=1;
distance_flag=P0;
distance_flag=distance_flag0x20; //位移測量傳感器B信號腳
if(distance_flag==0)
{
distance_positive_flag=0;//位移測量傳感器運動方向標志位為0表示負方向運動
}
else
{
distance_positive_flag=1; //位移測量傳感器運動方向標志位為1表示正方向運動
}
}
向數(shù)字傾角(角度)傳感器發(fā)送命令子程序
void sendserial(unsigned char *senddata,unsigned char len2)
{
uchar i;
ES0=0; //禁止中斷 for(i=0;i{
SFRPAGE=0x00;
SBUF0=*(senddata+i); //將數(shù)據(jù)送出
while(TI0==0); //發(fā)送標志位是否產(chǎn)生
TI0=0;
}
ES0=1; //允許中斷
}
結(jié)語
線路道岔電子檢測尺從方案的調(diào)研、論證和選取及電路的設(shè)計、軟件的控制等各個環(huán)節(jié),都充分考慮外界環(huán)境的各種可能的情況,對鋼軌軌距、水平度實現(xiàn)了高精確數(shù)字化測量,可以起到提前排除因軌道變化引起的行車安全隱患。該裝置的準確性和高速測量提高了鐵路的安全性,并降低了員工的勞動強度。
評論