摘要:本文所設(shè)計(jì)的系統(tǒng)可以測量標(biāo)準(zhǔn)軌距為1435mm軌道的水平度、軌距,可實(shí)現(xiàn)自動檢測、自動存儲。通過rs232接口與計(jì)算機(jī)數(shù)據(jù)通信后,可用軟件查詢分析所有測量數(shù)據(jù),并可打印報(bào)表。
引言
線路道岔電子檢測尺是列車運(yùn)行安全的重要保障,其主要用途是測量軌道的軌距、水平度,目的是為了預(yù)防因外界環(huán)境溫度的影響而使鋼軌狀態(tài)變形。此外,它也可消除人工機(jī)械式測量帶來的誤差大、工作效率低等不良因素,從而進(jìn)一步提高鐵路安全保障措施。
系統(tǒng)工作原理及硬件設(shè)計(jì)
線路道岔電子檢測尺的功能包括兩項(xiàng):軌距和水平度,該儀器的結(jié)構(gòu)如圖1所示,由數(shù)字傾角(角度)傳感器、高精度位移測量傳感器、單片機(jī)及外圍電路、橫尺、直擋、測量滑塊、和液晶顯示器等部分構(gòu)成。其中高精度位移測量傳感器和測量滑塊用于測量軌距。軌距由兩部分構(gòu)成,一部分是橫尺上的標(biāo)準(zhǔn)長度部分s1(該部分為固定值),另外一部分是以標(biāo)準(zhǔn)長度末端a點(diǎn)為起點(diǎn)的測量長度s2(該部分由高精度位移測量傳感器測量得到),總的軌距s=s1+s2??紤]到溫度的影響,單片機(jī)自帶溫度傳感器,用來補(bǔ)償溫度對測量數(shù)據(jù)的影響。橫尺上的數(shù)字傾角(角度)傳感器測量橫尺的水平度(角度),通過角度和軌距可測量左右軌的高差。液晶顯示部分顯示軌距、左右軌高差和時(shí)間等信息,相關(guān)數(shù)據(jù)可以保存在儀器中,也可通過rs232接口與計(jì)算機(jī)通訊讀出來形成匯總,在計(jì)算機(jī)中保存、打印相關(guān)數(shù)據(jù)。
線路道岔電子檢測尺主要通過位移傳感器和數(shù)字傾角(角度)傳感器對鋼軌的軌距、水平度進(jìn)行測量。傳感器信號通過rs232接口和特殊功能計(jì)數(shù)器后進(jìn)入單片機(jī),單片機(jī)計(jì)算出軌距后,再由傾角傳感器測量的傾角與軌距這兩組數(shù)據(jù),根據(jù)正弦函數(shù)算出兩軌道相差高度。單片機(jī)把這兩組數(shù)據(jù)與設(shè)定的門限值進(jìn)行比較來判斷測量點(diǎn)是否合格。液晶屏顯示輸出數(shù)據(jù)結(jié)果,鍵盤可以設(shè)定門限值、所測點(diǎn)的位置,并具備刪除和保存數(shù)據(jù)等功能。系統(tǒng)設(shè)計(jì)框圖見圖2。
數(shù)字傾角(角度)傳感器
數(shù)字傾角(角度)傳感器利用重力對流體的作用引起膜電位變化的原理而制成,是新型的慣性傳感器,它具有體積小、高靈敏度、線性好、壽命長、寬動態(tài)范圍、高穩(wěn)定性、*抗沖擊性等特點(diǎn)。
數(shù)字傾角(角度)傳感器通過rs232與單片機(jī)接口。紅線為電源輸入,黑線為地(rs232地與電源地共用),黃線為傳感器的rs232輸入,綠線為傳感器的rs232輸出。輸入電源電壓為7v-24v,推薦值9v。傳感器應(yīng)豎直安裝,安裝面與垂直面的夾角不大于2°。安裝示意圖見圖3。
c8051f060單片機(jī)
為了減少外圍器件、提高系統(tǒng)穩(wěn)定性,采用自帶溫度傳感器的c8051f060器件,它是*集成的混合信號系統(tǒng)級mcu芯片,使用cygnal的cip-51微控制器內(nèi)核,cip-51與mcs-51指令集*兼容。c8051f060內(nèi)部有1個(gè)smbus/i2c接口、2個(gè)具有增強(qiáng)型波特率配置的全雙工uart和1個(gè)增強(qiáng)型spi接口,每種串行總線*由硬件實(shí)現(xiàn),都能向cip-51產(chǎn)生中斷。c8051f060具有五個(gè)通用的16位定時(shí)器;具有6個(gè)捕捉/比較模塊的可編程計(jì)數(shù)器/定時(shí)器數(shù)組;具有片內(nèi)看門狗定時(shí)器、vdd監(jiān)視器、時(shí)鐘振蕩器。c8051f060是真正能獨(dú)立工作的片上系統(tǒng)。所有模擬和數(shù)字外設(shè)均可由用戶固件使能/禁止和配置。flash存儲器還具有在系統(tǒng)重新編程能力,可用于非易失性數(shù)據(jù)存儲,并允許現(xiàn)場更新8051固件。
c8051f060有大量的數(shù)字資源需要通過4個(gè)低端i/o端口p0、p1、p2和p3才能使用。p0、p1、p2和p3中的每個(gè)引腳既可定義為通用的端口i/o(gpio)引腳,又可以分配給一個(gè)數(shù)字外設(shè)或功能(例如:uart0或int1)。系統(tǒng)設(shè)計(jì)者控制數(shù)字功能的引腳分配,只受可用引腳數(shù)的限制。這種資源分配的靈活性是通過使用優(yōu)先權(quán)交叉開關(guān)譯碼器實(shí)現(xiàn)的。不管引腳被分配給一個(gè)數(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、定時(shí)器等)。端口引腳的分配順序從p0.0開始,可以一直分配到p3.7。當(dāng)交叉開關(guān)配置寄存器xbr0、xbr1、xbr2和xbr3中外設(shè)的對應(yīng)使能位被設(shè)置為邏輯1時(shí),交叉開關(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)的端口位)寫入時(shí)對這些引腳的狀態(tài)沒有影響。
c8051f060單片機(jī)的p0.0引腳被配置為uart0的tx0,p0.1引腳被配置為uart0的rx0,uart0用來與數(shù)字傾角(角度)傳感器進(jìn)行通訊。uart0是一個(gè)具有幀錯(cuò)誤檢測和地址識別硬件的增強(qiáng)型串行口。uart0可以工作在全雙工異步方式或半雙工同步方式,并支持多處理器通信。接收數(shù)據(jù)被暫存于一個(gè)保持寄存器中,這就允許uart0在軟件尚未讀取前一個(gè)數(shù)據(jù)字節(jié)的情況下開始接收第二個(gè)輸入數(shù)據(jù)字節(jié)。一個(gè)接收覆蓋位用于指示新的接收數(shù)據(jù)已被鎖存到接收緩沖器,而前一個(gè)接收數(shù)據(jù)尚未被讀取。對uart0的控制和訪問是通過相關(guān)的特殊功能寄存器即串行控制寄存器(scon0)和串行數(shù)據(jù)緩沖器(sbuf0)來實(shí)現(xiàn)的。用同一個(gè)sbuf0地址可以訪問發(fā)送寄存器和接收寄存器。讀sbuf0將自動訪問接收寄存器,而寫sbuf0自動訪問發(fā)送寄存器。uart0可以工作在查詢或中斷方式,它有兩個(gè)中斷源:一個(gè)發(fā)送中斷標(biāo)志ti0(scon0.1,數(shù)據(jù)字節(jié)發(fā)送結(jié)束時(shí)置位)和一個(gè)接收中斷標(biāo)志ri0(scon0.0,接收完一個(gè)數(shù)據(jù)字節(jié)后置位)。
c8051f060單片機(jī)的p0.2被配置為uart1的tx1,p0.3引腳被配置為uart1的rx1,uart1用來與上位pc機(jī)進(jìn)行通訊。對uart1的控制基本與uart0相同。
c8051f060單片機(jī)的p0.4被配置為外部中斷源(/int0)的輸入腳,接收位移傳感器的零點(diǎn)復(fù)位信號,減少由于多次來回運(yùn)動造成的累積測量誤差。/int0被配置為下降沿觸發(fā)輸入。
c8051f060單片機(jī)的p0.5被配置為定時(shí)器/計(jì)數(shù)器3的計(jì)數(shù)輸入腳(t3),接收位移傳感器的位移脈沖。p0.6被配置為定時(shí)器/計(jì)數(shù)器3計(jì)數(shù)方向控制腳(t3ex),用來判斷位移傳感器的移動方向。c/t3位被置1時(shí),將定時(shí)器配置為計(jì)數(shù)器方式(即在t3輸入引腳上的負(fù)跳變使計(jì)數(shù)器/定時(shí)器的寄存器加1或減1)。定時(shí)器配置寄存器中的減1使能位(dcen3)被置1,定時(shí)器可以向上或向下計(jì)數(shù)。當(dāng)dcen3=1時(shí),定時(shí)器的計(jì)數(shù)方向受t3ex引腳上的邏輯電平的控制。當(dāng)t3ex=1時(shí),計(jì)數(shù)器/定時(shí)器向上計(jì)數(shù);當(dāng)t3ex=0時(shí),計(jì)數(shù)器/定時(shí)器向下計(jì)數(shù)。t3ex必須在數(shù)字交叉開關(guān)中被使能并且被配置為數(shù)字輸入。
位移傳感器
采用dc20型光柵尺位移傳感器作為軌距測量工具。dc20型光柵尺采用雙層防護(hù)膠條密封,可保證*的密封性能。讀數(shù)頭滾動系統(tǒng)采用450式五軸承滾動系統(tǒng),保證光學(xué)感應(yīng)系統(tǒng)能長期穩(wěn)定地在光柵尺上順暢滑行以及它高等級的測量精度。
位移傳感器輸出信號波形見圖4。
調(diào)試電路
c8051f060的片內(nèi)jtag調(diào)試電路允許使用安裝在zui終應(yīng)用系統(tǒng)上的產(chǎn)品進(jìn)行非侵入式(不占用片內(nèi)資)、全速、在系統(tǒng)調(diào)試。該調(diào)試系統(tǒng)支持觀察并修改存儲器和寄存器,支持?jǐn)帱c(diǎn)、觀察點(diǎn)、單步及行和停機(jī)命令。在使用jtag調(diào)試時(shí),所有的模擬和數(shù)字外設(shè)都可全功能運(yùn)行。jtag接口使用mcu上的4個(gè)引腳(tms、tck、tdi、tdo)。
萬年歷時(shí)鐘芯片電路
每次測量后記錄測量時(shí)間,以便在上位pc機(jī)形成報(bào)表。ds1302是美國dallas公司推出的一種高性能、低功耗、帶ram的實(shí)時(shí)時(shí)鐘電路,它可以對年、月、日、周日、時(shí)、分、秒進(jìn)行計(jì)時(shí),具有閏年補(bǔ)償功能,工作電壓為2.5v~5.5v。ds1302內(nèi)部有一個(gè)31×8的用于臨時(shí)性存放數(shù)據(jù)的ram寄存器。采用三線接口與cpu進(jìn)行同步通信,并可采用突發(fā)方式一次傳送多個(gè)字節(jié)的時(shí)鐘信號或ram數(shù)據(jù)。
ds1302與cpu的連接需要三條線,即sclk(7)、i/o(6)、rst(5)。ds1302與cpu的連接如圖5所示。
eeprom電路
測量的數(shù)據(jù)保存在eeprom中。at24c512是atmel公司推出的具有i2c總線容量達(dá)512kbit(64k×8)的eeprom,該芯片的主要特性如下:存儲容量為65536byte;與100khz、400khz、1mhzi2c總線兼容;100000次編程/擦寫周期;單電源、讀寫電壓為1.8v~5.5v;esd保護(hù)電壓>4kv;數(shù)據(jù)可保存40年;寫保護(hù)功能,當(dāng)wp為高電平時(shí),進(jìn)入寫保護(hù)狀態(tài);cmos低功耗技術(shù),zui大寫入電流為3ma;128byte頁寫入緩存器;自動定時(shí)的寫周期;具有8引腳dip及20引腳soic封裝等多種封裝形式。eeprom電路見圖6。
rs232電平轉(zhuǎn)換電路
max232是單電源雙rs232發(fā)送/接受芯片,采用單一+5v電源供電,只需外接4個(gè)電容,便可構(gòu)成標(biāo)準(zhǔn)的rs232通信接口。單片機(jī)和計(jì)算機(jī)、數(shù)字傾角(角度)傳感器接口電路如圖7所示。圖中的c3、c4、c5、c6是電荷泵升壓及電壓反轉(zhuǎn)部分電路,產(chǎn)生v+、v-電源供eia電平轉(zhuǎn)換使用,c7是vcc對地去藕電容,其值均為0.1μf