《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 通信與網(wǎng)絡(luò) > 業(yè)界動態(tài) > 基于MB90F462的智能家居數(shù)據(jù)采集卡設(shè)計

基于MB90F462的智能家居數(shù)據(jù)采集卡設(shè)計

2008-04-01
作者:姚雨迎1,, 張東來1,,秦海亮1,

  摘 要: 以Fujitsu的MB90F462為核心,闡述了適用于智能家居監(jiān)控系統(tǒng)的數(shù)據(jù)采集卡" title="數(shù)據(jù)采集卡">數(shù)據(jù)采集卡的系統(tǒng)結(jié)構(gòu)和基本功能,,并詳細介紹了信號輸入模塊、GSM短消息" title="短消息">短消息通信,、GPRS遠程數(shù)據(jù)傳輸和實時時鐘模塊的設(shè)計流程以及MB90F462的調(diào)試環(huán)境Accemic MDE的調(diào)試步驟和注意事項,。實踐表明,該數(shù)據(jù)采集卡使用方便,、可靠 ,,可普遍應(yīng)用于遠程監(jiān)控、遠程儀表數(shù)據(jù)讀取等場合,。
  關(guān)鍵詞: 智能家居 數(shù)據(jù)采集卡 SMS GPRS


  隨著人們對居住環(huán)境的舒適度,、便捷性和安全性需求的日益提高,,智能家居系統(tǒng)" title="智能家居系統(tǒng)">智能家居系統(tǒng)應(yīng)運而生。智能家居系統(tǒng)的核心功能是實現(xiàn)家用設(shè)備運行狀況的實時監(jiān)測和傳輸,,主要包括:安全防盜報警,;火警、水電,、煤氣泄漏等實時監(jiān)測和自動報警,;室內(nèi)溫度、濕度,、燈光自動調(diào)節(jié)和遙控等[1],。因此采集和傳輸各種設(shè)備的運行信息是保證智能家居系統(tǒng)正常運行的關(guān)鍵。MB90F462是Fujitsu公司生產(chǎn)的一款通用16位單片機,,最小指令周期僅為62.5ns,,適用于工業(yè)控制和高速實時數(shù)據(jù)處理等場合;同時,,該芯片具有多功能定時器和多脈沖發(fā)生器,,適用于交流感應(yīng)電機和直流無刷電機的控制。本文利用MB90F462豐富的片內(nèi)資源設(shè)計了一款智能家居系統(tǒng)的低速數(shù)據(jù)采集卡,。
1 系統(tǒng)結(jié)構(gòu)及功能概述
  根據(jù)智能家居系統(tǒng)在線設(shè)備比較多的特點和方便控制的需求,,數(shù)據(jù)采集卡應(yīng)具有足夠的輸入、輸出接口和遠程通信功能,?;贛B90F462的數(shù)據(jù)采集卡的系統(tǒng)結(jié)構(gòu)如圖1所示。系統(tǒng)按功能可分為以下幾個模塊:8路模擬量輸入,;8路數(shù)字量輸入,;GSM短信數(shù)據(jù)傳輸;RS-232,、RS-485通信,;GPRS數(shù)據(jù)傳輸;實時時鐘,;狀態(tài)指示,;EEPROM數(shù)據(jù)存儲。


2 主要功能模塊的設(shè)計
2.1 信號輸入模塊
  在智能家居系統(tǒng)中,,需要采集的數(shù)據(jù)信息包括空氣溫度,、濕度、燈光的調(diào)節(jié)和水,、電,、煤氣、煙,、火等報警信息,,按照信號的性質(zhì)可分為模擬量數(shù)據(jù)和數(shù)字量數(shù)據(jù)兩類,。該數(shù)據(jù)采集卡可支持的輸入電平有5V、3.3V,、RS-232和RS-485接口,。
  MB90F462帶有8路8/10位精度可選的A/D" title="A/D">A/D通道,可供輸入8路傳感器的模擬量信號,。對于溫度,、濕度、燈光,、水流量等信息,,可通過相應(yīng)的傳感器將設(shè)備的實時數(shù)據(jù)通過A/D通道采集到管理中心。由于該系統(tǒng)數(shù)據(jù)量不大,,軟件設(shè)計采用查詢的方式來檢查各路A/D的采樣完成標志,,并讀入數(shù)據(jù)至管理中心的計算機中。A/D采樣需要設(shè)置的寄存器包括:ADER,、ADCS1,、ADCS0、ADCR1和ADCR0,。A/D轉(zhuǎn)換共有四種可選模式:單步轉(zhuǎn)換模式1(運行時允許重復激活),、單步轉(zhuǎn)換模式2(運行時不允許重復激活)、連續(xù)轉(zhuǎn)換模式(運行時不允許重復激活),、停止轉(zhuǎn)換模式(運行時不允許重復激活),。
  對于設(shè)備的報警信息和一些特殊的開關(guān)量,利用MB90F462的8路外部中斷" title="外部中斷">外部中斷對數(shù)字量輸入信號進行觸發(fā)或脈沖計數(shù),。由于外部中斷和GPIO管腳是復用的,,所以使用外部中斷時必須設(shè)置相應(yīng)的管腳為輸入。每兩個外部中斷共用一個中斷控制寄存器,,使用外部中斷時需要設(shè)置的寄存器有ICRXX、ENIR,、ELVR和EIRR,。中斷信號的觸發(fā)信號電平可以為高電平、低電平,、上升沿或下降沿,。使用外部中斷之前和中斷處理完成后要清除標志位。
2.2 短消息通信模塊
  為了更方便地服務(wù)于用戶,,智能家居系統(tǒng)采用GSM短消息(SMS)服務(wù)來實現(xiàn)遠程報警和遙控功能,,用戶通過個人移動電話即可監(jiān)測家用設(shè)備的實時狀態(tài)和報警信息,同時還可通過發(fā)送短消息遠程控制某個設(shè)備的開關(guān),。SIEMENS公司的GSM無線模塊TC35具有可靠的數(shù)據(jù),、語音,、短消息服務(wù)和傳真四種數(shù)據(jù)傳輸功能。該模塊的工作電壓為3.3~5.5V,,可以工作在900MHz和1800MHz兩個頻段,,所在頻段功耗分別為2W(900MHz)和1W(1800MHz)。TC35的數(shù)據(jù)接口采用串行異步收發(fā),,符合ITU-T RS-232接口電路標準,,工作在CMOS電平。數(shù)據(jù)接口配置:8位數(shù)據(jù)位,、1位停止位,、無校驗位,可以在300bps~115Kbps的波特率下運行,,支持的自動波特率為4.8~115Kbps(14.4Kbps和28.8Kbps除外)[2],。
  在進行短信通信之前,通過在/IGT管腳輸出一電壓下降沿激活GSM模塊,,待模塊穩(wěn)定之后,,設(shè)置短信服務(wù)中心號碼和數(shù)據(jù)格式,并進行短信收發(fā),、刪除,、查詢等操作。GSM的短消息程序設(shè)計流程如圖2所示,,用于SMS通信的AT指令如表1所示,。

?

?


2.3 GPRS通信模塊
  與傳統(tǒng)的GSM相比,GPRS通信的特點是終端可移動,、接入時間短,、傳輸速度快、按流量計費,、可接入Internet網(wǎng),、時時在線[2]等。GPRS網(wǎng)絡(luò)使用TCP/IP協(xié)議棧進行組網(wǎng),,可以實現(xiàn)與Internet網(wǎng)絡(luò)的無縫連接,,但是在傳輸時數(shù)據(jù)格式應(yīng)該符合TCP/IP協(xié)議棧的數(shù)據(jù)包格式。GPRS網(wǎng)絡(luò)為實現(xiàn)點對點通訊,,在數(shù)據(jù)鏈路層上使用PPP協(xié)議,,物理層上使用串口通信。因此,,實現(xiàn)基于GPRS的數(shù)據(jù)傳輸系統(tǒng)時需要對數(shù)據(jù)進行打包,,并需要在數(shù)據(jù)鏈路層上實現(xiàn)PPP協(xié)議[3]。基于TCP/IP專用模塊的GPRS遠程數(shù)據(jù)傳輸?shù)牧鞒倘鐖D3所示,。
  基于TCP/IP專用模塊的移動終端主要由數(shù)據(jù)獲取模塊(數(shù)據(jù)采集卡),、數(shù)據(jù)打包模塊和數(shù)據(jù)發(fā)送模塊組成。數(shù)據(jù)打包模塊采用ConnectOne公司生產(chǎn)的Iconnector模塊,數(shù)據(jù)發(fā)送模塊采用SIEMENS公司生產(chǎn)的具有GPRS功能的GSM手機模塊MC35,。在Iconnector內(nèi)部的Flash中存儲有Internet協(xié)議棧,,支持PPP、IP,、UDP,、TCP、DNS,、SMTP,、POP3、HTTP,、FTP,、Telnet等幾乎所有的網(wǎng)絡(luò)協(xié)議。通過AT+i指令設(shè)置并控制Iconnector,以實現(xiàn)數(shù)據(jù)的打包,。Iconnector有兩個標準的RS-232串行接口,,在標有Modem字樣的一端與MC35相連接,在另外標有Device字樣的一端與數(shù)據(jù)采集卡相連接,。用于GPRS數(shù)據(jù)傳輸?shù)腁T+i指令如表2所示,。


2.4 實時時鐘模塊
  為了合理有效地管理各個用戶的數(shù)據(jù),特別是一些報警數(shù)據(jù),,應(yīng)該記錄其出現(xiàn)的實時時間,。該數(shù)據(jù)采集卡采用了美國DALLAS公司推出的一種高性能、低功耗,、帶RAM的實時時鐘芯片DS1302,,它可以對年、月,、日,、周日、時,、分,、秒進行計時,具有閏年補償功能,;DS1302與CPU同步串行通訊,接口只需三根線:/RST,、I/O,、SCLK;一次可以讀寫1個字節(jié)數(shù)據(jù)或31個字節(jié)的字符串;共有七個數(shù)據(jù)寄存器,,即秒,、分鐘、小時,、日期,、月份、周和年份寄存器,;命令字的地址從80H~8DH,,奇數(shù)為讀,偶數(shù)為寫,;一個時鐘周期由下降沿開始,,上升沿結(jié)束;寫入數(shù)據(jù)時,,在時鐘的上升沿期間數(shù)據(jù)必須保持有效,,讀出數(shù)據(jù)時,在時鐘的下降沿期間數(shù)據(jù)有效,;如果/RST輸入低電平,,中止所有的數(shù)據(jù)傳輸并且I/O呈高阻態(tài);數(shù)據(jù)輸入/輸出的時序是首先寫入一個字節(jié)的命令字節(jié)(讀或?qū)懀?,后面緊跟8個時鐘周期讀出/寫入一個字節(jié)的數(shù)據(jù),。
  雖然DS1302的功耗很小,但是如果要長時間保證時鐘正常,,最好選用小型充電電池或0.1F以上的超級電容作為備用電源,。如果斷電時間較短,可以用漏電較小的普通電解電容器代替,。DS1302在第一次加電后必須進行初始化操作,,之后即可按正常方法調(diào)整時間。
  此外,,系統(tǒng)還配置了RS-232,、RS-485接口和EEPROM數(shù)據(jù)存儲器,方便與其他設(shè)備的連接,,并實現(xiàn)掉電數(shù)據(jù)保護功能,。
3 Accemic MDE調(diào)試
  Accemic MDE是目前市場上能夠調(diào)試Fujitsu 16LX系列不帶仿真器的單片機的首選工具,其監(jiān)控內(nèi)核與應(yīng)用程序是并行運行的,,所以了解其監(jiān)控內(nèi)核的工作方式非常重要,。使用Accemic MDE進行調(diào)試應(yīng)嚴格按照如下步驟進行:
  (1)在啟動Accemic之前按以下步驟連接硬件(勿接電源)
  (a)將MB90F462置為編程狀態(tài),即MD0,、MD1,、MD2、P00、P01分別設(shè)為ON(=0),、OFF(=1),、OFF、ON,、 ON,。
  (b)用串行電纜連接目標板的Bootloader-UART和PC機的COM 端口,(對于MB90460系列,,UART0為Bootloader-UART),。
  (c)給目標板加電。
  (2)啟動Accemic調(diào)試環(huán)境
  (a)打開preference|systerm菜單,,設(shè)置CPU類型,、封裝形式、工作時鐘,、倍頻數(shù),、通訊波特率、復位線路和COM端口號等,。
  (b)按下“Download Monitor”按鈕導入監(jiān)控內(nèi)核,;
  (c)使目標系統(tǒng)處于復位狀態(tài),將單片機切換到工作狀態(tài),,即MD0,、MD1、MD2,、P00,、P01分別設(shè)為OFF、OFF,、ON,、X、X,。
  (d)退出復位狀態(tài),,此時可以通過監(jiān)控內(nèi)核訪問目標系統(tǒng)。
  (e)按下“Connect”按鈕開始連接調(diào)試,。
  (3)Accemic MDE調(diào)試注意事項
  (a)調(diào)試前將位于Accemic MDE的安裝目錄C:programsAccemicMDEinclude下的文件“monitor.asm”添加到用戶工程中,;如果要使用目標信息功能,要在應(yīng)用程序中包含“monitor.h”文件(與monitor.asm在同一目錄下),。
  (b)如果 Bootloader-UART未使用外部時鐘,,不要使用改變PLL時鐘寄存器的功能。PLL時鐘可以通過“start.asm”中的設(shè)置來修正,,確保其中CLOCKSPEED的設(shè)置為NOCLOCK,。
  (c)調(diào)試時不能改變 Bootloader-UART中斷級別及Bootloader-UART的寄存器設(shè)置,,注意在文件“vectors.c”中不要覆蓋Bootloader-UART的中斷級別。
  (d)如果要使用看門狗定時器,,需要開啟Accemic MDE的看門狗定時器自動更新功能,即在程序中調(diào)用acc_WatchdogEnable( )函數(shù),。
  (e)調(diào)試中為了讓Monitor能夠進入中斷服務(wù)程序中的斷點,,必須滿足兩個條件:一是在程序中允許中斷,即調(diào)用__EI( )函數(shù),;二是中斷服務(wù)程序的中斷級別高于7(因為Bootloader-UART的中斷級別是7),。
  (f)MB90F462帶有兩個UART,其中UART0是BootloaderUart,,用于在線調(diào)試和燒錄程序,,也可以和用戶程序復用。復用時需要調(diào)用Accemic MDE中定義的函數(shù)acc_KernelUART(1),,參數(shù)默認值為1,,表示UART0用作正常的用戶程序通信;參數(shù)默認值為0,,表示UART0用作調(diào)試接口,,用戶程序中沒有用到UART0時不需要調(diào)用此函數(shù)。
  綜上所述,,該數(shù)據(jù)采集卡提供8路模擬量輸入及8路開關(guān)量輸入接口,,具備兩路RS-232接口,支持RS-485,、RS-232,、3.3V、5V等多種輸入電平,,可以實現(xiàn)現(xiàn)場數(shù)據(jù)采集和遠程傳輸,,遠程通訊及傳輸方式有GPRS和SMS;而且可以對現(xiàn)場設(shè)備實行遠程開關(guān)量控制,。該數(shù)據(jù)采集卡傳輸與協(xié)議轉(zhuǎn)換透明化,,使用方便、可靠,,而且配備系統(tǒng)配置和維護接口,,方便現(xiàn)場維護,可普遍應(yīng)用于遠程監(jiān)控,、遠程儀表數(shù)據(jù)讀取等場合,。
參考文獻
1 曾志永, 凌振寶, 王 君. 基于GSM技術(shù)的智能家居系統(tǒng)的設(shè)計. 電子技術(shù)應(yīng)用,2005,;(9):31~33
2 馬 鑫. 基于GPRS的數(shù)據(jù)傳輸系統(tǒng)研究與應(yīng)用.哈爾濱工業(yè)大學碩士學位論文,,2005
3 Xenakix C, Merakox L. On Demand Network-wide VPN deployment in GPRS. IEEE Network, 2002,;(11):28~37
4 MC35 hardware interface description. SIEMENS Mobile,2002
5 TC35/TC37 Hardware interface description, SIEMENS Mobile. 2001
6 User and reference manual for ACCEMIC MDE. Accemic GmbH Co. KG, 2002

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,,并不代表本網(wǎng)站贊同其觀點,。轉(zhuǎn)載的所有的文章、圖片,、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有,。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認版權(quán)者。如涉及作品內(nèi)容,、版權(quán)和其它問題,,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,,避免給雙方造成不必要的經(jīng)濟損失,。聯(lián)系電話:010-82306118;郵箱:[email protected],。