基于M―BUS的趣低功耗數(shù)據(jù)采集系統(tǒng)
摘 要:介紹一種基于超低功耗單片機的數(shù)據(jù)采集系統(tǒng)的設(shè)計與實現(xiàn);具體闡述該系統(tǒng)的工作原理、主要特點、總體設(shè)計、硬件電路和軟件流程設(shè)計。該系統(tǒng)以TI公司的16位Flash型MSP430Fx44x系列單片機為核心,以根據(jù)韋根德效應制成的零功耗磁敏傳感器作為采集前端,選用M-BUS總線進行數(shù)據(jù)傳輸,適用于遠傳抄表的數(shù)據(jù)采集。
關(guān)鍵詞:超低功耗 數(shù)據(jù)采集 單片機 M-Bus 總線
引 言
隨著社會的迅速發(fā)展,智能小區(qū)逐漸進人人們的生活,而自動抄表系統(tǒng)是智能小區(qū)的重要功能之一。在水、電、氣管理方面,采用自動抄表技術(shù),不僅能節(jié)約人力資源,更重要的是可提高抄表的準確性,減少因估計或謄寫而造成帳單出錯的現(xiàn)象,使水、電、氣管理部門能及時準確獲得數(shù)據(jù)信息。另外用戶不再需要與抄表者預約上門抄表時間,還能迅速查詢帳單,所以這種技術(shù)越來越受到用戶歡迎。
針對目前市場上自動抄表系統(tǒng)價格不菲的現(xiàn)狀,設(shè)計一種由零功耗磁敏傳感器產(chǎn)生脈沖信號,利用MSP430系列超低功耗單片機的捕獲功能捕獲信號的數(shù)據(jù)采集系統(tǒng)。該采集系統(tǒng)價格相對低廉,性能可靠,適用于水、煤氣、電表的遠傳采集;數(shù)據(jù)傳輸總線選用M-BUS,傳輸速度快、距離遠、可靠性高。
1 工作原理
該數(shù)據(jù)采集系統(tǒng)是對傳統(tǒng)電表、水表、氣表抄表系統(tǒng)加以改進,使其適合遠傳抄表。以普通的煤氣表為例,選擇在基表最后一級齒輪處加一磁鐵(不算顯示部分的逐級傳遞齒輪)。該級齒輪每轉(zhuǎn)1圈,都要撥動顯示部分的逐級傳遞齒輪8次,而每撥1次是O.001立方米,所以,該級齒輪每轉(zhuǎn)1圈,共計0.008立方米。的煤氣。也就是最后一級齒輪每轉(zhuǎn)125圈,即撥動顯示部分的逐級傳遞齒輪1000次,煤氣表的顯示部分的計數(shù)為1立方米。而當小磁鐵經(jīng)過零功耗磁敏傳感器表面時產(chǎn)生脈沖信號,利用MSP430單片機的捕獲功能捕獲到信號,引起中斷,數(shù)據(jù)存儲區(qū)地址1自加1;若加到150,地址2自加1,地址1清零。存儲區(qū)地址2中的數(shù)據(jù)就是煤氣表基表的數(shù)據(jù)。當總線要求單片機傳輸數(shù)據(jù)時,單片機先確定是否可以傳輸數(shù)據(jù)。若可以,將地址2中的數(shù)據(jù)寫入發(fā)送緩存,一位位地將數(shù)據(jù)發(fā)送出去;若不可以,等單片機空閑時再發(fā)送數(shù)據(jù)。
2 主要特點
該數(shù)據(jù)采集系統(tǒng)主要具有以下特點:
①采用零功耗磁敏傳感器作為采集前端,工作時無須使用外加電源,且無觸點、耐腐蝕、防水,壽命很長。
②采用MSP430系列單片機中的MSP430F449作為數(shù)據(jù)處理芯片,性能優(yōu)良,價格低廉。
③采用M-BUS(Meter-BUS)總線進行數(shù)據(jù)傳輸,傳輸距離遠,速度快,可靠性高。
④采集電路功耗很低,可采用鋰電池供電或采用M-BUs總線供電。
3 數(shù)據(jù)采集系統(tǒng)的軟硬件設(shè)計
3.1設(shè)備選型
選用的TI公司16位FIash型MSP430系列超低功耗類型的單片機,特別適合于電池應用的場合或手持設(shè)備。在超低功耗方面,該單片機能夠?qū)崿F(xiàn)在1.8~3.6 V電壓、1 MHz的時鐘條件下,耗電電流在O.1~400 μA之間;在片內(nèi)外設(shè)方面,含有P0~P6七個I/O口、2個定時器(Timer_A、Timer_B)、1個看門狗、內(nèi)部集成2 KB的ROM和60 KB的RAM,可10萬次重復編程;MSP430系列單片機均為工業(yè)級的產(chǎn)品,運行環(huán)境溫度為-40~+85℃;在價格方面,MSP430系列單片機一般只有幾十元。總之,MSP430系列單片機的性價比不錯,完全能夠滿足系統(tǒng)開發(fā)的需要。
在遠傳抄表系統(tǒng)中,有多種傳感器可被選用,常用的有光電傳感器和霍爾傳感器。光電傳感器和霍爾傳感器工作時,都需要供電,電流一般為毫安級。這將導致供電電池的極大耗費。對于煤氣表來說,在基表中通電還會引起安全方面的問題。選用零功耗磁敏傳感器,工作時無須使用外加電源,適用于微功耗儀表,在遠傳抄表系統(tǒng)中是一種較好的采集用傳感器。
零功耗磁敏傳感器是通過韋根德效應制成的,故又名韋根德傳感器,是利用磁性雙穩(wěn)態(tài)功能合金材料中的磁疇在磁場中的運動特性制作而成的。當外磁場發(fā)生變化時,磁疇磁化方向瞬間發(fā)生翻轉(zhuǎn),而當外磁場撤離后,它又瞬間恢復到原有的磁化方向,由此在合金材料周圍的檢測線圈中會感應出電脈沖信號,實現(xiàn)磁電轉(zhuǎn)換。
M-BUS總線是歐洲新型總線結(jié)構(gòu)――儀表總線,由德國Paderborm大學的Ziegler教授和德國Techem AG公司以及德國的Texas Intrument公司共同開發(fā)的,采用新的儀表總線和相關(guān)技術(shù)的數(shù)據(jù)采集系統(tǒng),具有以下特點:①可采用普通3的雙絞線電纜連接及任意總線拓撲結(jié)構(gòu)(星形、樹形等),使系統(tǒng)布線施工簡單、擴展靈活。②最大的總線長度可以達到l km(波特率≤9600 bps時)。③系統(tǒng)的每一個標記具有惟一的地址碼,方便管理。④雙絞線同時完成數(shù)據(jù)通信和提供表具的電源,可為用戶提供3種供電方式(遠程供電、電池和遠程供電以及運用光耦合后單一的電池供電)。⑤系統(tǒng)可實現(xiàn)300~9600 bps半雙工異步通信。通信媒介可采用普通雙絞線,總線極性可互換,并可以通過中繼器擴大網(wǎng)絡(luò)或系統(tǒng)的覆蓋范圍。⑥每個M-BUS系統(tǒng)都有一個電平轉(zhuǎn)換器。該轉(zhuǎn)換器提供RS232或者RS485接口,以實現(xiàn)與中心計算機的通信。該系統(tǒng)最多可以連接250個用戶表,如圖1所示。
3.2硬件電路設(shè)計
基于MSP430F449單片機的數(shù)據(jù)采集系統(tǒng)電路原理圖分為兩個部分:數(shù)據(jù)采集模塊和通信模塊。
(1)數(shù)據(jù)采集模塊
數(shù)據(jù)采集器,是為準確采集三表數(shù)據(jù)而設(shè)計的,如圖2所示,包括晶振電路、電源電路、傳感器電路等。
①晶振電路。圖1中提供了高速和低速2個晶振電路,可輸出3種不同頻率的時鐘給單片機內(nèi)部的不同模塊。用戶可用高速晶體產(chǎn)生頻率較高的MCLK供給CPU,以滿足高速的數(shù)據(jù)運算需要;也可以在不需要CPU工作時關(guān)閉高速晶體;而對于實時時鐘,可用低速晶體產(chǎn)生頻率較低的ACLK供給。
②電源電路。MSP430F449單片機的工作電壓在1.8~3.6 V之間,工作電流在0.1~400 µA之間。本電路中,工作電壓為3 V,可由鋰電池或M-BUS總線為單片機供電。
③復位電路。單片機的復位電路接在94引腳處。
④傳感器電路。經(jīng)過試驗,零功耗磁敏傳感器可直接接到單片機的捕獲端口TAl。當裝在煤氣表齒輪上的小磁鐵經(jīng)過傳感器表面時,產(chǎn)生脈沖信號,利用單片機的捕獲功能捕獲信號。為確保傳感器采集數(shù)據(jù)的準確性,圖1中加入了低功耗運算放大器LM358以放大傳感器的脈沖信號。采集端口P1.2處的電壓為高電壓,等于Vcpu(3 V)。當三級管C9018基級電壓大于0.7 v時,采集端口P1.2被拉低,單片機計數(shù)。通過實驗,每當小磁鐵經(jīng)過傳感器1次,單片機的地址1就增計數(shù)1次。
(2)通信模塊
通信模塊即單片機和總線集中器之間的數(shù)據(jù)傳輸電路,如圖3所示。TSS721A是美國德州儀器公司1999年初生產(chǎn)的一種用于M-Bus的專用收發(fā)器芯片。其內(nèi)含的接口電路可以調(diào)節(jié)儀表總線結(jié)構(gòu)中主從機之間的電平,可通過光電耦合器等隔離器件與總線連接。該收發(fā)器由總線供電,對從機不增加功率需求;外形采用16腳雙列直插封裝,將整個數(shù)據(jù)發(fā)送功能集于一體。其特點如下:①滿足國際ENl434-3標準;②具有動態(tài)電平識別的接收邏輯;③通過電阻可調(diào)接收電流;④無極性連接;⑤防掉電功能;⑥可提供3.3 V穩(wěn)壓源;⑦支持遠程供電;⑧半雙工下波特率可達9600 bps;⑨支持UART協(xié)議;⑩從機可由總線或后備電池供電。該芯片上有8位撥段開關(guān),用來設(shè)置總線上表具的惟一地址。而作為Master的主機存儲各采集器模塊的地址,并根據(jù)主控機的請求將采集模塊的數(shù)據(jù)抄上來。集中器設(shè)置各采集模塊的分頻系數(shù)和各表的量綱和倍率。
為了布線方便,采用異步串行通信。所選取的MSP430F449微處理器內(nèi)部含有2個USART模塊(USART0和USART1)。該模塊內(nèi)部包含波特率設(shè)置部分、接收部分、發(fā)送部分以及接口部分。波特率設(shè)置模塊的時鐘來源于內(nèi)部時鐘或外部輸入時鐘,由SSEL1和SSEL0選擇,以決定最終進入模塊的頻率。時鐘信號BRCLK送入1個15位的分頻器,通過一系列的硬件控制,最終輸出移出和移人的兩個移位寄存器使用的移位時鐘BITCLK,信號波特率的設(shè)置由分頻因子N和所需的波特率(9600 bps)來決定,數(shù)據(jù)的傳送或接收主要是通過一個移位寄存器。接收時移位寄存器將接收來的數(shù)據(jù)流組合滿一個字節(jié),就保存到接收緩存URXBUF;發(fā)送時,將發(fā)送緩存UTXBUF內(nèi)的數(shù)據(jù)一位一位地送到發(fā)送端口。
TSS721A的8位撥段開關(guān)用來設(shè)置總線上表具的惟一地址。上位機通過尋址的方式來實現(xiàn)和微處理器MSP430F448之間的通信。每次主機對某一地址呼叫,只有地址像相符的從機才可以識別呼叫并做出相應的響應。所采用的通信協(xié)議是半雙工通信協(xié)議。
3.3 軟件設(shè)計
MSP430的開發(fā)軟件較多,這里使用的是IAR公司的集成開發(fā)環(huán)境:IAR Embedded workbench嵌入式工作臺以及調(diào)試器C-SPY。利用MSP430單片機的捕獲功能,測試單片機能否準確捕獲到來自傳感器的信號。程序流程如圖4所示。
首先,對單片機進行初始化,定義單片機時鐘、上升沿捕獲、傳輸方式和輸入輸出端口設(shè)置等工作。然后開發(fā)中斷程序,一旦有允許中斷請求,CPU被喚醒,進入活動模式,執(zhí)行中斷服務程序,執(zhí)行完畢,系統(tǒng)返回到中斷前的狀態(tài),繼續(xù)低功耗模式。如圖4所示,運行完主程序后,系統(tǒng)進入低功耗模式,如出現(xiàn)中斷1,CPU被喚醒,并將RAM中某一地址的數(shù)據(jù)自加1;如出現(xiàn)中斷2,CPU被喚醒,通過傳輸線路可以將RAM中某一地址的數(shù)據(jù)傳輸給PC的串口界面。如出現(xiàn)中斷1和中斷2同時出現(xiàn)的特殊情況,通過實驗,中斷1的優(yōu)先級高于中斷2,即先執(zhí)行完中斷服務1后,再執(zhí)行中斷服務2。
4 結(jié) 論
從采集數(shù)據(jù)的安全性和可靠性兩個方面著手,選用新型傳感器和低功耗MSP430系列單片機,設(shè)計出了用于遠傳抄表的數(shù)據(jù)采集系統(tǒng)。該系統(tǒng)采用M-BSU總線進行數(shù)據(jù)傳輸。在M-UBS調(diào)試器軟件環(huán)境下的實驗結(jié)果表明,采集部分捕獲信號準確率高,電路設(shè)計和軟件設(shè)計合理,而且價格相對便宜,具有很好的應用前景。
評論