現(xiàn)場(chǎng)總線是用于現(xiàn)場(chǎng)儀表與控制系統(tǒng)和控制室之間的一種全分散、全數(shù)字化、智能、雙向、互連、多變量、多點(diǎn)、多站的通信網(wǎng)絡(luò)。can(controllerareanetwork,控制器局域網(wǎng))是德國bosch公司在80年代初為解決現(xiàn)代汽車中大量的控制與測(cè)試儀器之間的數(shù)據(jù)交換而提出的一種串行數(shù)據(jù)通信協(xié)議。can總線是上應(yīng)用zui廣泛的現(xiàn)場(chǎng)總線之一,由于采用了許多新技術(shù)以及*的設(shè)計(jì),與一般的通信總線相比,can總線的數(shù)據(jù)通信具有突出的性能,且可靠性、實(shí)時(shí)性和靈活性強(qiáng)。
近些年來,隨著超聲技術(shù)研究的不斷深入,再加上其具有的高精度、無損、非接觸等優(yōu)點(diǎn),超聲的應(yīng)用變得越來越普及。超聲波液位測(cè)量有許多優(yōu)點(diǎn):檢測(cè)元件可以不與被測(cè)介質(zhì)接觸,可測(cè)范圍廣;可測(cè)量低溫介質(zhì)的液位;壽命長(zhǎng);能夠定點(diǎn)和連續(xù)測(cè)液位;安裝維護(hù)方便。超聲波測(cè)量已成功應(yīng)用于江河水位、化學(xué)和制藥工業(yè)、食品加工、罐裝液位等多種領(lǐng)域。
1測(cè)量方法
超聲波脈沖回波法是液位測(cè)量中應(yīng)用較廣的一種方法,通過測(cè)量超聲波傳播時(shí)間來測(cè)量距離。超聲波脈沖回波檢測(cè)法的基本原理是:發(fā)射聲波換能器由脈沖信號(hào)激勵(lì)發(fā)出超聲波,通過傳聲媒介傳到被測(cè)液面,形成反射波;反射波再通過傳聲介質(zhì)返回到接收換能器,傳感器把聲信號(hào)轉(zhuǎn)換成電信號(hào),由儀表計(jì)算出超聲波從發(fā)射到接收所傳播的時(shí)間,再根據(jù)超聲波在介質(zhì)中傳播的速度,利用式(1)確定液位高度
式中:h表示探頭與容器底部的距離;l表示超聲波傳輸距離的50%;v表示超聲波聲速;t表示超聲波傳播時(shí)間;h即所測(cè)液面實(shí)際高度。
系統(tǒng)采用軟件濾波方式判斷超聲波回波信號(hào)的起始點(diǎn),使用ad轉(zhuǎn)換器將回波信號(hào)轉(zhuǎn)換為數(shù)字信號(hào)送到arm處理器,利用arm處理器較強(qiáng)的信號(hào)處理能力對(duì)回波信號(hào)進(jìn)行數(shù)字濾波、數(shù)值處理,確定超聲波傳播時(shí)間。
系統(tǒng)選用philips公司的lpc2119芯片作為控制運(yùn)算處理器。lpc2119是基于一個(gè)支持實(shí)時(shí)仿真和跟蹤的16/32位arm7tdmi-scpu,并帶有128kb嵌入的高速flash存儲(chǔ)器,具有高性能、低功耗的特點(diǎn)。lpc2119芯片內(nèi)部集成2個(gè)can控制器,符合can規(guī)范can2.0b、iso11898-1,可訪問32位寄存器和ram,單個(gè)總線數(shù)據(jù)波特率可達(dá)1mb/s,全局驗(yàn)收過濾器可識(shí)別幾乎所有總線的11和29位rx標(biāo)識(shí)符,驗(yàn)收過濾器為選擇的標(biāo)準(zhǔn)標(biāo)識(shí)符提供了fullcan-style自動(dòng)接收。
2系統(tǒng)硬件設(shè)計(jì)
2.1測(cè)量電路設(shè)計(jì)
測(cè)量電路的核心是超聲波發(fā)射及接收電路,設(shè)計(jì)為收發(fā)一體式,如圖1所示。使用lpc2119芯片內(nèi)部定時(shí)器0產(chǎn)生40khz的激勵(lì)脈沖,輸至nmos場(chǎng)效應(yīng)管q1的柵極。當(dāng)控制端po.22out為低電平時(shí),nmos場(chǎng)效應(yīng)管q1截止,pmos場(chǎng)效應(yīng)管q2的ugs接近零電壓,q2截止而輸出低電平;po.22out為高電平時(shí),q1導(dǎo)通,q2的柵極電壓由電阻分壓而得,使ugs小于其2v左右的門限電壓而使q2導(dǎo)通,輸出高電平。所以通過控制端,使發(fā)射電路產(chǎn)生正向高壓脈沖以激勵(lì)超聲波探頭。50v高電壓由ad公司生產(chǎn)的開關(guān)型dc-dc變換器adpllll提供。
在接收電路中使用二極管的鉗位作用防止高壓發(fā)射脈沖進(jìn)入接收電路。電路中的兩個(gè)肖特基二極管和限流電阻將輸入電壓限制在o.3v以內(nèi),但對(duì)較小的回波信號(hào)不起作用,實(shí)現(xiàn)了超聲波發(fā)射、接收電路一體化。電路需要對(duì)微弱的回波信號(hào)進(jìn)行放大,使用op27運(yùn)算放大器將回波信號(hào)放大200倍。電容c20濾掉回波信號(hào)中的直流成分。
系統(tǒng)采用數(shù)字濾波、數(shù)值處理的方法找超聲波的回波起點(diǎn),因此需要將放大后的回波信號(hào)進(jìn)行模數(shù)轉(zhuǎn)換。本系統(tǒng)采樣頻率定為1mhz,模數(shù)轉(zhuǎn)換電路使用德州儀器公司的8位高速a/d轉(zhuǎn)換器ads930。電路采用交流耦合連接方式。經(jīng)過a/d轉(zhuǎn)換后的回波信號(hào)送入運(yùn)算控制器進(jìn)行處理。
超聲波在空氣中的傳播速度會(huì)隨溫度的變化而變化,超聲波傳播速度c與環(huán)境溫度t的關(guān)系如式(2):
為了減少測(cè)量誤差,需要進(jìn)行溫度補(bǔ)償。系統(tǒng)采用dallas公司的一線式數(shù)字溫度傳感器dsl8b20芯片進(jìn)行溫度補(bǔ)償?,F(xiàn)場(chǎng)溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。使用dsl8b20進(jìn)行的溫度轉(zhuǎn)換,i/o線必須在轉(zhuǎn)換期間保證供電,系統(tǒng)采用外接電源方式給dsl8b20芯片供電。溫度補(bǔ)償采用查表法,首先建立溫度與聲速的二維關(guān)系表,處理器在讀出ds18b20測(cè)得的溫度值后進(jìn)行查表,得到當(dāng)時(shí)聲速。由于表格中的溫度點(diǎn)有限并且是離散分布的,采用小區(qū)間插值法以提高精度。軟件編程嚴(yán)格遵循一線總線讀寫時(shí)序。
2.2can總線通信接口設(shè)計(jì)
can總線通信接口由can總線控制器和can總線收發(fā)器組成,can控制器作為can總線的數(shù)據(jù)鏈路層,can總線收發(fā)器作為can總線的物理層。lpc2119內(nèi)部集成的can控制器作為can總線控制器,它具有完成can通信協(xié)議的全部必要特性。philips公司的can總線收發(fā)器pca82c250提供can總線控制器和物理傳輸線路之間的接口。電路如圖2所示。
系統(tǒng)選用tdl,rdl引腳can控制器。can總線收發(fā)器pca82c250的rs引腳接一斜率電阻r35用于選擇pca82c250的工作模式:高速、斜率控制和待機(jī)。r35短路接地可選擇高速工作方式;若rs引腳接高電平,則電路進(jìn)入低電平待機(jī)方式,發(fā)送器關(guān)閉,接收器轉(zhuǎn)入低電流,有利于降低系統(tǒng)功耗;在斜率控制下,電阻r35的大小可根據(jù)總線的通信速率適當(dāng)調(diào)整,一般在16~140kω之間。
系統(tǒng)使用高速光耦6n137和dc-dc電壓隔離模塊b0505s組成的隔離電路加強(qiáng)了電路的抗*力,確保can總線遭受嚴(yán)重干擾時(shí)能夠正常運(yùn)行。pca82c250的canh和canl引腳各自通過一個(gè)10ω的電阻與can總線相連,電阻起限流的作用,保護(hù)pca82c250免受過流的沖擊。在canh和canl與地之間并聯(lián)2個(gè)30pf的小電容,可以濾除總線上的高頻干擾并且具有一定的防電磁干擾的能力。在兩根can總線接入端之間并入瞬態(tài)電壓抑制二極管(tvs管),當(dāng)can總線串入干擾電壓時(shí)可通過tvs管的短路起到一定的過壓保護(hù)作用。
3系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件設(shè)計(jì)主要包括測(cè)量程序和通信程序兩部分。其中,測(cè)量程序的關(guān)鍵是對(duì)超聲波回波信號(hào)的處理;通信程序的關(guān)鍵是can總線控制器的初始化,數(shù)據(jù)的發(fā)送和接收。
3.1回波信號(hào)處理程序的設(shè)計(jì)
系統(tǒng)采用數(shù)字濾波方式對(duì)回波信號(hào)進(jìn)行處理,選用iir帶通濾波器進(jìn)行數(shù)字濾波,然后進(jìn)行數(shù)值處理,識(shí)別接收波形的起始點(diǎn)。系統(tǒng)設(shè)計(jì)通帶頻率范圍為[35khz,45khz],通帶波紋zui大衰減為o.01db,阻帶波紋zui小衰減為60db,采樣頻率為1mhz??捎酶咄暗屯ǜ鳛?階的帶通橢圓型濾波器來實(shí)現(xiàn)。系數(shù)為:b=(o.001o,-o.0076,0.0248,-0.0474,o.0584,-o.0474,o.0248,-0.0076,0.001o),a=(1.000o,-7.5792,25.3701,-48.9741,59.6238,-46.8775,23.2445,-6.647o,o.8395)。此濾波器極點(diǎn)均在單位圓內(nèi),濾波器是穩(wěn)定的。圖3是iir數(shù)字濾波器的幅度與相位特性曲線圖。
3.2通信程序的設(shè)計(jì)
通信程序的設(shè)計(jì)主要包括三部分:can控制器的初始化,can總線數(shù)據(jù)發(fā)送,can總線數(shù)據(jù)接收。通過編寫lpc2119芯片內(nèi)部can控制器寄存器來實(shí)現(xiàn)軟件通信功能。
can總線控制器只需要進(jìn)行少量的配置就可以進(jìn)行通信,其基本初始化流程如圖4所示。其中,硬件使能和配置引腳連接、軟件復(fù)位、設(shè)定通信波特率、配置驗(yàn)收過濾器、退出復(fù)位模式是必須的初始化部分。
can控制器初始化程序如下:
can控制器初始化后,可以進(jìn)行數(shù)據(jù)發(fā)送或接收。lpc2119內(nèi)部每個(gè)can控制器配有3個(gè)獨(dú)立的發(fā)送緩沖寄存器,在發(fā)送時(shí)根據(jù)情況選擇3個(gè)緩沖之一,把數(shù)據(jù)寫入緩沖區(qū),啟動(dòng)發(fā)送。若選擇*緩沖,程序如下:
can控制器根據(jù)can2.0b規(guī)范來對(duì)發(fā)送和接收錯(cuò)誤進(jìn)行計(jì)數(shù)、處理。
4結(jié)語
基于can總線智能超聲液位變送器選用高性能、低功耗的arm處理器芯片lpc2119;利用lpc2119芯片內(nèi)部的can控制器和can總線收發(fā)器pc-a82c250構(gòu)建性能優(yōu)異的can總線通信接口,信號(hào)傳輸可靠、實(shí)時(shí)、靈活;由一線式數(shù)字溫度傳感器dsl8b20芯片完成溫度補(bǔ)償功能。先進(jìn)的處理器加強(qiáng)了液位計(jì)的回波處理能力,采用數(shù)字濾波,提高了液位的測(cè)量精度。
來源: icbuy億芯網(wǎng)