CAN總線(xiàn)型智能渦輪流量計(jì)原理模塊設(shè)計(jì)
摘要:針對(duì)渦輪流量計(jì)的工作要求和CAN現(xiàn)場(chǎng)總線(xiàn)的應(yīng)用狀況,介紹了以STC89C52RD單片機(jī)為核心,采用渦輪流量計(jì)、壓力和溫度傳感器及CAN總線(xiàn)控制器等構(gòu)成的CAN總線(xiàn)型智能渦輪流量計(jì)的軟硬件設(shè)計(jì)。這種CAN總線(xiàn)型智能渦輪流量計(jì)能通過(guò)溫壓補(bǔ)償實(shí)現(xiàn)對(duì)氣體流量的準(zhǔn)確測(cè)量與現(xiàn)場(chǎng)顯示,可方便地與CAN總線(xiàn)網(wǎng)絡(luò)進(jìn)行掛接,實(shí)現(xiàn)基于CAN總線(xiàn)的遠(yuǎn)程監(jiān)測(cè)。
1、智能流量計(jì)硬件設(shè)計(jì):
系統(tǒng)硬件可分為流量信號(hào)采集、壓力信號(hào)采集、溫度信號(hào)采集、CAN通信接口、鍵盤(pán)與顯示等5大模塊,見(jiàn)圖1。硬件電路以單片機(jī)STC89C52RD為核心進(jìn)行外部接口擴(kuò)展設(shè)計(jì)。由于STC89C52RD為增強(qiáng)型51系列單片機(jī),內(nèi)部集成EEPROM、看門(mén)狗和電源監(jiān)控復(fù)位電路等功能模塊,特別適合于工控領(lǐng)域應(yīng)用[1]。
圖1 流量計(jì)硬件組成框圖
1.1、流量信號(hào)采集模塊:
智能流量計(jì)采用渦輪流量計(jì)作為傳感檢測(cè)裝置,測(cè)量的為體積流量,輸出為與流速成正比的脈沖信號(hào)。此信號(hào)比較微弱,要與單片機(jī)進(jìn)行接口實(shí)現(xiàn)流量信號(hào)的采集,必須要進(jìn)行信號(hào)的處理與轉(zhuǎn)換。圖2為流量信號(hào)檢測(cè)電路。渦輪流量計(jì)輸出的微弱電壓信號(hào)先進(jìn)行低通濾波,去除干擾,再進(jìn)行適當(dāng)?shù)姆糯?***后通過(guò)比較電路轉(zhuǎn)換成具有正負(fù)極性的方波信號(hào)送入單片機(jī)的P3.5(T1)端,實(shí)現(xiàn)頻率計(jì)數(shù),采集到流量信號(hào)。
為了獲取準(zhǔn)確的質(zhì)量流量,必須要在體積流量基礎(chǔ)上,實(shí)時(shí)進(jìn)行氣體密度的測(cè)量,而要得到它就要對(duì)壓力與溫度進(jìn)行實(shí)時(shí)測(cè)量,然后通過(guò)單片機(jī)計(jì)算處理得出氣體密度,實(shí)現(xiàn)溫壓補(bǔ)償功能。
圖2 流量檢測(cè)電路原理圖
1.2、壓力信號(hào)采集模塊:
系統(tǒng)中壓力信號(hào)的檢測(cè)選用壓阻式半導(dǎo)體壓力傳感器,其接口為兩輸入端口和兩輸出端口,輸出信號(hào)為與壓力成比例的微小電壓。圖3為壓力信號(hào)處理電路原理圖,恒流源LM334為壓力傳感器提供恒定的電流。AD620為差動(dòng)式儀表放大器,具有高差模增益、高共模抑制比及低輸出漂移等特性,特別適合對(duì)壓力傳感器微小信號(hào)的放大處理,只需外部的電位器VR1就可實(shí)現(xiàn)增益的調(diào)節(jié)。
圖3 壓力信號(hào)處理電路原理圖
經(jīng)過(guò)處理的信號(hào)必須進(jìn)行A/D轉(zhuǎn)換才能送入單片機(jī)。圖4為信號(hào)的采集接口電路,12位的A/D轉(zhuǎn)換器AD1674在單片機(jī)控制下,通過(guò)模擬開(kāi)關(guān)的配合實(shí)現(xiàn)壓力和溫度信號(hào)的采集[2]。
圖4 信號(hào)的采集接口電路原理圖
1.3、溫度信號(hào)采集模塊:
溫度的測(cè)量采用Pt100鉑電阻溫度傳感器,其信號(hào)檢測(cè)電路如圖5所示,Pt100兩端的電壓值是溫度的函數(shù)。LM334對(duì)Pt100和電位器VR2提供恒定電流,LM258實(shí)現(xiàn)Pt100兩端的電壓取樣與放大,輸出的電壓送入儀表放大器AD620進(jìn)行差動(dòng)放大,電位器VR3實(shí)現(xiàn)增益的調(diào)節(jié),輸出信號(hào)送入信號(hào)采集接口電路實(shí)現(xiàn)A/D轉(zhuǎn)換。
圖5 溫度信號(hào)檢測(cè)電路原理圖
1.4、CAN通信接口模塊:
CAN通信接口硬件電路如圖6所示。CAN通信接口模塊使用CAN總線(xiàn)控制器SJA1000和驅(qū)動(dòng)器PCA82C250[3]。
圖6 CAN總線(xiàn)接口電路原理圖
為了保證SJA1000與STC89C52RD之間時(shí)鐘同步,SJA1000的可編程CLKOUT時(shí)鐘輸出信號(hào)作為單片機(jī)的時(shí)鐘輸入。單片機(jī)通過(guò)控制SJA1000實(shí)現(xiàn)數(shù)據(jù)的接收和發(fā)送等通信任務(wù)。高速光電耦合器6N137為CAN控制器與82C250之間建立光電隔離,以實(shí)現(xiàn)總線(xiàn)上各節(jié)點(diǎn)間的電氣隔離。82C250的CANH和CANL引腳各通過(guò)1個(gè)5Ψ電阻與CAN總線(xiàn)相連,電阻可起到一定限流作用,保護(hù)82C250免受過(guò)流沖擊。CANH和CANL與地之間并聯(lián)了2個(gè)30pF的小電容,起到濾除總線(xiàn)上的高頻干擾和一定的防電磁輻射的能力。在2根CAN總線(xiàn)輸入與地之間分別接了一個(gè)防雷擊管,當(dāng)兩輸入端與地之間出現(xiàn)瞬變干擾時(shí),通過(guò)防雷擊管的放電可起到一定的保護(hù)作用[4]。
1.5、現(xiàn)場(chǎng)人機(jī)交互模塊:
現(xiàn)場(chǎng)人機(jī)交互模塊包括鍵盤(pán)輸入與LCD顯示部分接口設(shè)計(jì)。鍵盤(pán)輸入模塊主要用于儀表和CAN總線(xiàn)節(jié)點(diǎn)地址等系統(tǒng)參數(shù)的設(shè)置;LCD顯示模塊主要用于現(xiàn)場(chǎng)各種測(cè)量數(shù)據(jù)的顯示。
2、智能流量計(jì)軟件設(shè)計(jì):
智能流量計(jì)軟件設(shè)計(jì)采用了事件驅(qū)動(dòng)和模塊化的編程思想,通過(guò)主程序?qū)讉€(gè)關(guān)鍵標(biāo)志位進(jìn)行不斷查詢(xún),根據(jù)具體情況調(diào)用相應(yīng)的子程序,實(shí)現(xiàn)數(shù)據(jù)的采集、計(jì)算與通信的功能。
主要的子程序?yàn)?初始化子程序用于對(duì)系統(tǒng)I/O口、定時(shí)/計(jì)數(shù)器、SJA1000及液晶顯示等的初始化工作;定時(shí)器T0中斷服務(wù)子程序用于對(duì)流量檢測(cè)信號(hào)進(jìn)行頻率計(jì)數(shù)采集;A/D轉(zhuǎn)換子程序用于對(duì)AD1674的控制實(shí)現(xiàn)壓力與溫度信號(hào)采集;計(jì)算子程序根據(jù)采集到的流量、壓力與溫度信號(hào)實(shí)現(xiàn)質(zhì)量流量的實(shí)時(shí)計(jì)算功能;外部中斷0服務(wù)子程序用于中斷接收CAN網(wǎng)絡(luò)數(shù)據(jù);數(shù)據(jù)傳送子程序?qū)崿F(xiàn)流量等數(shù)據(jù)的CAN網(wǎng)絡(luò)上傳。
3、結(jié)束語(yǔ):
以STC89C52RD單片機(jī)為核心,用渦輪流量計(jì)、壓力和溫度傳感器、CAN總線(xiàn)控制器等設(shè)計(jì)了CAN總線(xiàn)型智能渦輪流量計(jì)。該流量計(jì)不僅能通過(guò)溫壓補(bǔ)償實(shí)現(xiàn)對(duì)現(xiàn)場(chǎng)氣體流量的準(zhǔn)確計(jì)量與顯示,而且能方便地與CAN總線(xiàn)網(wǎng)絡(luò)進(jìn)行掛接,實(shí)現(xiàn)基于CAN總線(xiàn)的遠(yuǎn)程監(jiān)測(cè)。這種CAN總線(xiàn)型智能渦輪流量計(jì)的開(kāi)發(fā),適合工業(yè)生產(chǎn)測(cè)控領(lǐng)域的現(xiàn)狀,對(duì)CAN現(xiàn)場(chǎng)總線(xiàn)的廣泛應(yīng)用具有推動(dòng)作用。