本發(fā)明涉及的是一種在用電采集終端上實(shí)現(xiàn)標(biāo)準(zhǔn)mbus協(xié)議接口用來(lái)采集水表、熱量表、氣表數(shù)據(jù)的方法,具體涉及一種基于mbus標(biāo)準(zhǔn)協(xié)議接口模塊采集水、熱、氣表的方法,屬于用電信息采集領(lǐng)域。
背景技術(shù):
我國(guó)正處于自動(dòng)化樓宇建設(shè)事業(yè)蓬勃發(fā)展的時(shí)期,遠(yuǎn)程抄表系統(tǒng)作為其中重要的一環(huán),正朝著自動(dòng)化及智能化方向發(fā)展;mbus(儀表總線(xiàn))總線(xiàn)作為一種通訊方式,以其高性?xún)r(jià)比,在水熱測(cè)量?jī)x表中得到了廣泛的應(yīng)用,大大推動(dòng)了遠(yuǎn)程抄表系統(tǒng)的發(fā)展。
目前,許多集成電路制造商提供了mbus接口芯片,如德州儀器的tss721;這些芯片在mbus通信類(lèi)設(shè)備中得到了廣泛的應(yīng)用,但對(duì)于一些對(duì)成本敏感的設(shè)備,采用這類(lèi)芯片無(wú)疑會(huì)增加設(shè)備制造成本。
目前,各類(lèi)智能測(cè)量?jī)x表中均采用單片機(jī)控制設(shè)備運(yùn)行,而大部分單片機(jī)中都具備adc(模數(shù)轉(zhuǎn)換器)模塊,因此,本文提出一種利用單片機(jī)(stm32f407)的adc功能,配合外部mbus接口電路,實(shí)現(xiàn)與水熱表的mbus通信。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提出一種基于mbus標(biāo)準(zhǔn)協(xié)議采集水、熱、氣表的方法,其目的旨在方便與具備mbus接口的水、熱、氣表進(jìn)行通信。
本發(fā)明的技術(shù)解決方案:基于mbus標(biāo)準(zhǔn)協(xié)議采集水、熱、氣表的方法,該方法利用了基于mbus標(biāo)準(zhǔn)協(xié)議接口模塊,基于mbus標(biāo)準(zhǔn)協(xié)議接口模塊的結(jié)構(gòu)包括單片機(jī)、模數(shù)轉(zhuǎn)換器、發(fā)送電路單元、接收電路單元;其中,單片機(jī)串口的發(fā)送引腳與發(fā)送電路的輸入引腳相連,模數(shù)轉(zhuǎn)換器的模擬量輸入引腳與接收電路的發(fā)送引腳相連,模數(shù)轉(zhuǎn)換器的輸出引腳與單片機(jī)串口的輸入引腳相連,發(fā)送電路的輸出引腳和水、熱、氣表mbus接口的輸入引腳相連,水、氣、熱表mbus接口的輸出引腳和接收電路的輸入引腳相連。
本發(fā)明的優(yōu)點(diǎn):
1)將基于mbus標(biāo)準(zhǔn)接口協(xié)議用于低壓電力線(xiàn)載波抄表終端,使得用電信息采集可以方便的抄讀mbus接口水表、熱表、氣表等;其電路帶動(dòng)負(fù)載多,抗干擾能力強(qiáng)、電路結(jié)構(gòu)簡(jiǎn)單,在惡劣的情況下也能保證數(shù)據(jù)正常接收和發(fā)送;
2)接收電路采用ad值采樣來(lái)解析數(shù)據(jù),在軟件實(shí)現(xiàn)方便也不復(fù)雜,可選的單片機(jī)硬件要求也不高,即時(shí)通信失敗短時(shí)間能恢復(fù),保證數(shù)據(jù)可靠;
3)不采用專(zhuān)用的mbus接口芯片,而采用以stm32f407為中心,配合簡(jiǎn)易的外圍電路來(lái)模擬mbus數(shù)據(jù)收發(fā),實(shí)現(xiàn)與從站的通信,因?yàn)榻邮胀鈬娐泛?jiǎn)化,降低了成本,有一定的經(jīng)濟(jì)效益。
附圖說(shuō)明
附圖1是本發(fā)明的整個(gè)產(chǎn)品框架原理示意圖。
附圖2是本發(fā)明的應(yīng)用原理示意圖。
附圖3是發(fā)送電路單元的結(jié)構(gòu)示意圖。
附圖4是接收電路單元的結(jié)構(gòu)示意圖。
附圖5是adc的輸入引腳電壓波形。
附圖6是從站發(fā)送的報(bào)文波形圖。
附圖7是整個(gè)算法的工作流程圖。
具體實(shí)施方式
基于mbus標(biāo)準(zhǔn)協(xié)議采集水、熱、氣表的方法,該方法利用了基于mbus標(biāo)準(zhǔn)協(xié)議接口模塊,基于mbus標(biāo)準(zhǔn)協(xié)議接口模塊的結(jié)構(gòu)包括發(fā)送電路單元、接收電路單元;其中,單片機(jī)串口的發(fā)送引腳與發(fā)送電路的輸入引腳相連,模數(shù)轉(zhuǎn)換器的模擬量輸入引腳與接收電路的發(fā)送引腳相連,模數(shù)轉(zhuǎn)換器的輸出引腳與單片機(jī)串口的輸入引腳相連,發(fā)送電路的輸出引腳和水、氣、熱表mbus接口的輸入引腳相連,水、熱、氣表mbus接口的輸出引腳和接收電路的輸入引腳相連。
所述的發(fā)送電路單元包括電阻、電容、肖基特二極管、穩(wěn)壓二極管、npn三極管、p道溝場(chǎng)效應(yīng)管,同時(shí)外部接入直流28v和12v電源,mcu發(fā)送端輸入高電平時(shí),發(fā)送電路輸出28v,mcu發(fā)送端輸入低電平時(shí),發(fā)送電路輸出12v,通過(guò)控制單片機(jī)發(fā)送引腳達(dá)到向外輸出數(shù)據(jù)的目的;其中,r19為5ω電流采樣電阻,作用是將電流信號(hào)轉(zhuǎn)化為電壓信號(hào),這個(gè)采樣電阻會(huì)跟著負(fù)載的不同r19上的壓降會(huì)有所不同,并傳送給接收電路;當(dāng)mbus發(fā)送高電平信號(hào)時(shí),v5導(dǎo)通,vgs(場(chǎng)效應(yīng)管的柵極與源極間電壓)電壓為
所述接收電路單元包括采樣電阻、電容、運(yùn)算放大器;外部接入直流5v電源,電壓信號(hào)經(jīng)過(guò)放大、偏置后,通過(guò)模數(shù)轉(zhuǎn)換器輸入到單片機(jī)的接收引腳;在mbus發(fā)送電路中,mbus接收端輸入電流信號(hào)為0~20ma,采樣電阻上的mbus0-(遠(yuǎn)程抄表系統(tǒng)接收端)幅值為
所述接收電路單元中有隔直電容c90,隔直電容c90將mbus總線(xiàn)上因?yàn)殪o態(tài)電流造成的直流偏置信號(hào)隔除,電阻r76、r77、r46構(gòu)成運(yùn)放直流偏置電路,直流偏置電壓為
算法作為mbus數(shù)據(jù)功能的一部分,其作用是將模擬信號(hào)轉(zhuǎn)化為數(shù)字信號(hào),所述接收電路單元和以下算法相互配合工作:根據(jù)mbus總線(xiàn)協(xié)議,主站通過(guò)檢測(cè)總線(xiàn)上是否出現(xiàn)11-20ma脈沖電流確定接收“0”還是“1”,當(dāng)有脈沖時(shí),表示“0”,否則為“1”,結(jié)合接收電路,當(dāng)adc檢測(cè)到至少0.5v的電壓跳變時(shí)表示“0”,否則為“1”。
經(jīng)測(cè)試,adc的輸入引腳電壓波形如圖5所示;整個(gè)從站發(fā)送報(bào)文波形如圖6所示,從圖中可以看出,輸入電壓逐步下移,但電壓跳變值保持穩(wěn)定。
根據(jù)上述接收電壓波形特點(diǎn),整個(gè)算法的原理如下:當(dāng)主站發(fā)送數(shù)據(jù)前,檢測(cè)總線(xiàn)上空閑時(shí)的電壓值,并作為接收時(shí)判斷起始位的參考電壓值;數(shù)據(jù)發(fā)送完成后,對(duì)接收數(shù)據(jù)進(jìn)行解析,得到正確數(shù)據(jù)供單片機(jī)使用;
具體解析過(guò)程如圖7所示:在adc看門(mén)狗模式中設(shè)置預(yù)期的閾值上限值,使能adc中斷,啟動(dòng)adc采樣;當(dāng)總線(xiàn)電壓變高,并超過(guò)閾值上限時(shí),則會(huì)觸發(fā)adc中斷;在adc中斷服務(wù)程序中,關(guān)閉adc中斷,并啟動(dòng)定時(shí)器中斷,中斷周期為半個(gè)bit位的時(shí)間,用來(lái)采集起始位的電壓值,在定時(shí)器中斷服務(wù)程序中,計(jì)算電壓值,比參考值電壓大0.5v以上則視為數(shù)據(jù)起始位,并啟動(dòng)周期為1個(gè)bit位時(shí)間的定時(shí)器中斷,采集數(shù)據(jù)位,校驗(yàn)位及停止位的電壓值;否則,重新檢測(cè)起始位。
為了避免信號(hào)中噪聲的影響,對(duì)于起始位及后面的數(shù)據(jù)位、校驗(yàn)位、停止位中的每個(gè)bit,在其傳輸過(guò)程中均多次采樣,采樣次數(shù)因波特率的變化而變化,然后采用中位值平均濾波算法處理采集到的數(shù)據(jù),得到一個(gè)可靠的電壓值。
為了能夠自適應(yīng)不同的負(fù)載,mbus主站每次發(fā)送數(shù)據(jù)前,采集電壓值作為參考值,并在隨后接收的過(guò)程中,將檢測(cè)到的每個(gè)bit電壓值與參考值作比較,并將此電壓值作為新的參考值,與下一個(gè)bit電壓值作比較。通過(guò)計(jì)算電壓值的變化來(lái)判斷bit位值,能夠保證在不同的負(fù)載下,均能正確接收從站的數(shù)據(jù)。
所述mbus為遠(yuǎn)程抄表系統(tǒng)儀表總線(xiàn),vgs為場(chǎng)效應(yīng)管是柵極與源極間電壓、ttl為邏輯電平、mbus0tx為遠(yuǎn)程抄表系統(tǒng)發(fā)送端、mcu為單片機(jī)、adc為模數(shù)轉(zhuǎn)換器。