版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第5章 無線傳感器網(wǎng)絡(luò)通信技術(shù) 5.1藍(lán)牙技術(shù)5.2 GPRS技術(shù)5.3 ZigBee技術(shù)5.4WiFi技術(shù)5.5 無線自組織網(wǎng)絡(luò)技術(shù)5.1藍(lán) 牙 技 術(shù)5.1.1 藍(lán)牙技術(shù)概述藍(lán)牙(Bluetooth)技術(shù)是由愛立信、諾基亞、Intel、IBM 和東芝五家公司于1998年5月共同提出開發(fā)的。藍(lán)牙技術(shù)的本質(zhì)是設(shè)備間的無線連接,主要用于通信與信息設(shè)備。近年來,在電聲行業(yè)中也開始使用藍(lán)牙技術(shù)。一般情況下,藍(lán)牙的工作范圍在10m半徑之內(nèi),在此范圍內(nèi),可進(jìn)行多臺設(shè)備間的互聯(lián)。但對于某些產(chǎn)品,設(shè)備間甚至遠(yuǎn)隔100m也照樣能建立藍(lán)牙通信與信息傳遞。藍(lán)牙技術(shù)的特點主要有:(1) 采用跳頻技術(shù),數(shù)據(jù)包短,抗信
2、號衰減能力強(qiáng);(2) 采用快速跳頻和前向糾錯方案以保證鏈路穩(wěn)定,減少同頻干擾和遠(yuǎn)程傳輸噪聲;(3) 使用2.4GHz ISM頻段,無需申請許可證;(4) 可同時支持?jǐn)?shù)據(jù)、音頻、視頻信號;(5) 采用FM調(diào)制方式,降低了設(shè)備的復(fù)雜性。5.1.2藍(lán)牙協(xié)議棧體系結(jié)構(gòu)在藍(lán)牙系統(tǒng)中,為了支持不同應(yīng)用,需要使用多個協(xié)議,這些協(xié)議按層次組合在一起,構(gòu)成了藍(lán)牙協(xié)議棧。藍(lán)牙協(xié)議棧能使設(shè)備之間互相定位并建立連接,通過這個連接,設(shè)備間能通過各種各樣的應(yīng)用程序進(jìn)行交互和數(shù)據(jù)交換。完整的藍(lán)牙協(xié)議體系結(jié)構(gòu)如圖5.1所示。藍(lán)牙技術(shù)規(guī)范包括Core和Profiles兩大部分。Core是藍(lán)牙的核心,主要定義了藍(lán)牙的技術(shù)細(xì)節(jié);P
3、rofiles部分定義了在藍(lán)牙的各種應(yīng)用中的協(xié)議棧組成,并定義了相應(yīng)的實現(xiàn)協(xié)議棧。 圖5.1 藍(lán)牙協(xié)議棧體系結(jié)構(gòu) 按照各層協(xié)議在整個藍(lán)牙協(xié)議體系中所處的位置,藍(lán)牙協(xié)議可分為底層協(xié)議、中間層協(xié)議和高層協(xié)議三大類。1藍(lán)牙底層協(xié)議藍(lán)牙底層協(xié)議實現(xiàn)藍(lán)牙信息數(shù)據(jù)流的傳輸鏈路,是藍(lán)牙協(xié)議體系的基礎(chǔ),它包括鏈路管理協(xié)議(LMP)、基帶(BB)和藍(lán)牙天線收發(fā)器(RF)。1) 鏈路管理協(xié)議(Link Manager Protocol,LMP)鏈路管理協(xié)議是在藍(lán)牙協(xié)議棧中的一個數(shù)據(jù)鏈路層協(xié)議。LMP執(zhí)行鏈路設(shè)置、認(rèn)證、鏈路配置和其他協(xié)議;鏈路管理器發(fā)現(xiàn)其他遠(yuǎn)程鏈路管理器(LM)并與它們通過鏈路管理協(xié)議進(jìn)行通信。鏈
4、路管理協(xié)議負(fù)責(zé)藍(lán)牙各設(shè)備間連接的建立。首先,它通過連接的發(fā)起、交換、核實進(jìn)行身份認(rèn)證和加密;其次,它通過設(shè)備間協(xié)商以確定基帶數(shù)據(jù)分組的大小;另外,它還可以控制無線部分的電源模式和工作周期,以及微微網(wǎng)內(nèi)各設(shè)備的連接狀態(tài)。2) 基帶(Base Band)基帶層在藍(lán)牙協(xié)議棧中位于藍(lán)牙射頻層之上,主要包括基帶協(xié)議(Base Band Protocol),它同射頻層一起構(gòu)成了藍(lán)牙的物理層?;鶐拥闹饕δ馨ǎ?1) 鏈路控制,比如承載鏈路連接和功率控制這類鏈路級路由;(2) 管理物理鏈路,即SCO鏈路和ACL鏈路;(3) 定義基帶分組格式和分組類型,其中SCO分組有HV1、HV2、HV3和DV等類型,
5、而ACL分組有DM1、DH1、DM3、DH3、DM5、DH5、AUXl等類型;(4) 流量控制,通過STOP和GO指令來實現(xiàn);采用1/3比例前向糾錯碼、2/3比例前向糾錯碼以及數(shù)據(jù)的自動重復(fù)請求ARQ (Automatic Repeat Request)方案實現(xiàn)糾錯功能;(5) 其他功能,如處理數(shù)據(jù)包、尋呼、查詢接入和查詢藍(lán)牙設(shè)備等。3) 藍(lán)牙天線收發(fā)器(RF)藍(lán)牙天線收發(fā)器主要包括射頻協(xié)議(Radio Frequency Protocol)。藍(lán)牙射頻協(xié)議處于藍(lán)牙協(xié)議棧的最底層,主要包括頻段與信道安排、發(fā)射機(jī)特性和接收機(jī)特性等,用于規(guī)范物理層無線傳輸技術(shù),實現(xiàn)空中數(shù)據(jù)的收發(fā)。藍(lán)牙工作在24GH
6、z ISM頻段,此頻段在多數(shù)國家無需申請運營許可。在信道安排上,系統(tǒng)采用跳頻擴(kuò)頻技術(shù),抗干擾能力強(qiáng)、保密性好。藍(lán)牙SIG(Special Interest Group)制定了兩套跳頻方案,其一是分配79個跳頻信道,每個頻道的帶寬為1MHz,其二是23信道的分配方案,1.2版本以后的藍(lán)牙規(guī)范目前已經(jīng)不再推薦使用第二套方案。2藍(lán)牙中間層協(xié)議藍(lán)牙中間層協(xié)議完成數(shù)據(jù)幀的分解與重組、服務(wù)質(zhì)量控制、組提取等功能,為上層應(yīng)用提供服務(wù),并提供與底層協(xié)議的接口,此部分包括主機(jī)控制器接口協(xié)議、邏輯鏈路控制與適配協(xié)議、串口仿真協(xié)議、電話控制協(xié)議、電纜替代協(xié)議和服務(wù)發(fā)現(xiàn)協(xié)議。1) 主機(jī)控制器接口協(xié)議(Host Con
7、troller Interface Protocol,HCI)藍(lán)牙HCI是位于藍(lán)牙系統(tǒng)的邏輯鏈路控制與適配協(xié)議層和鏈路管理協(xié)議層之間的一層協(xié)議。HCI為上層協(xié)議提供了進(jìn)入鏈路管理器的統(tǒng)一接口和進(jìn)入基帶的統(tǒng)一方式。在HCI的主機(jī)和HCI主機(jī)控制器之間存在若干傳輸層,這些傳輸層是透明的,只需完成傳輸數(shù)據(jù)的任務(wù),不必清楚數(shù)據(jù)的具體格式。藍(lán)牙的SIG規(guī)定了四種與硬件連接的物理總線方式,即四種HCI傳輸層:USB、RS232、UART和PC卡。2) 邏輯鏈路控制與適配協(xié)議(L2CAP)邏輯鏈路控制與適配層協(xié)議是藍(lán)牙系統(tǒng)中的核心協(xié)議,它是基帶的高層協(xié)議,可以認(rèn)為它與鏈路管理協(xié)議并行工作。L2CAP為高層提
8、供數(shù)據(jù)服務(wù),允許高層和應(yīng)用層協(xié)議收發(fā)大小為64 KB的L2CAP數(shù)據(jù)包。L2CAP只支持基帶面向無連接的異步傳輸(ACE),不支持面向連接的同步傳輸(SCO)。L2CAP采用了多路技術(shù)、分割和重組技術(shù)以及組提取技術(shù),主要提供協(xié)議復(fù)用、分段和重組、認(rèn)證服務(wù)質(zhì)量、組管理等功能。3) 串口仿真協(xié)議(RFCOMM)串口仿真協(xié)議在藍(lán)牙協(xié)議棧中位于L2CAP協(xié)議層和應(yīng)用層協(xié)議層之間,基于ETSI標(biāo)準(zhǔn)TS 07.10,在L2CAP協(xié)議層之上實現(xiàn)了仿真9針RS232串口的功能,可實現(xiàn)設(shè)備間的串行通信,從而對現(xiàn)有使用串行線接口的應(yīng)用提供了支持。4) 電話控制協(xié)議(Telephony Control Protoc
9、ol Spectocol,TCS)電話控制協(xié)議位于藍(lán)牙協(xié)議棧的L2CAP層之上,包括二元電話控制協(xié)議(TCS BIN)和一套電話控制命令(AT Commands)。其中,TCS BIN定義了在藍(lán)牙設(shè)備間建立話音和數(shù)據(jù)呼叫所需的呼叫控制信令;AT Commands則是一套可在多使用模式下用于控制移動電話和調(diào)制解調(diào)器的命令,它是在ITU.TQ.931的基礎(chǔ)上開發(fā)而成的。TCS層不僅支持電話功能(包括呼叫控制和分組管理),同樣可以用來建立數(shù)據(jù)呼叫,呼叫的內(nèi)容在L2CAP上以標(biāo)準(zhǔn)數(shù)據(jù)包形式運載。電話控制協(xié)議主要有:(1) 二元電話控制協(xié)議。二元電話控制協(xié)議是面向比特的協(xié)議,它定義了藍(lán)牙設(shè)備間建立語音和
10、數(shù)據(jù)呼叫的控制信令,定義了處理藍(lán)牙TCS設(shè)備群的移動管理進(jìn)程。(2) AT命令集電話控制協(xié)議。在ITU2T V. 250和ETS300 916(GSM 07.07)的基礎(chǔ)之上,SIG定義了控制多用戶模式下移動電話、調(diào)制解調(diào)器和可用于傳真業(yè)務(wù)的AT命令集。5) 電纜替代協(xié)議(RFCOMM)電纜替代協(xié)議實際上包含在射頻通信協(xié)議(Radio Frequency Communications Protocol, RFCOMM)之中。RFCOMM是基于ETSI 07.10規(guī)范的串行線仿真協(xié)議,它在藍(lán)牙基帶協(xié)議上仿真RS-232控制和數(shù)據(jù)信號,為使用串行線傳送機(jī)制的上層協(xié)議(如OBEX)提供服務(wù)。 6)
11、服務(wù)發(fā)現(xiàn)協(xié)議(Service Discovery Protocol,SDP)服務(wù)發(fā)現(xiàn)協(xié)議是藍(lán)牙技術(shù)框架中至關(guān)重要的一層,它是所有應(yīng)用模型的基礎(chǔ)。任何一個藍(lán)牙應(yīng)用模型的實現(xiàn)都是利用某些服務(wù)的結(jié)果。在藍(lán)牙無線通信系統(tǒng)中,建立在藍(lán)牙鏈路上的任何兩個或多個設(shè)備隨時都有可能開始通信,僅僅是靜態(tài)設(shè)置是不夠的。藍(lán)牙服務(wù)發(fā)現(xiàn)協(xié)議就確定了這些業(yè)務(wù)位置的動態(tài)方式,可以動態(tài)地查詢到設(shè)備信息和服務(wù)類型,從而建立起一條對應(yīng)所需要服務(wù)的通信信道。3藍(lán)牙高層協(xié)議藍(lán)牙高層協(xié)議包括對象交換協(xié)議、無線應(yīng)用協(xié)議、音頻協(xié)議、點對點協(xié)議、傳輸控制協(xié)議、用戶數(shù)據(jù)協(xié)議、因特網(wǎng)協(xié)議等。1) 對象交換協(xié)議(Object Exchange Pr
12、otocol,OBEX)OBEX是由紅外數(shù)據(jù)協(xié)會(IrDA)制定用于紅外數(shù)據(jù)鏈路上數(shù)據(jù)對象交換的會話層協(xié)議。藍(lán)牙SIG采納了該協(xié)議,使得原來基于紅外鏈路的OBEX應(yīng)用有可能方便地移植到藍(lán)牙上或在兩者之間進(jìn)行切換。OBEX是一種高效的二進(jìn)制協(xié)議,采用簡單和自發(fā)的方式來交換對象。2) 無線應(yīng)用協(xié)議(Wireless Application Protocol,WAP)無線應(yīng)用協(xié)議由無線應(yīng)用協(xié)議論壇制定,是由移動電話類的設(shè)備使用的無線網(wǎng)絡(luò)定義的協(xié)議。WAP融合了各種廣域無線網(wǎng)絡(luò)技術(shù),其目的是將互聯(lián)網(wǎng)內(nèi)容和電話債券的業(yè)務(wù)傳送到數(shù)字蜂窩電話和其他無線終端上。選用WAP可以充分利用為無線應(yīng)用環(huán)境開發(fā)的高層應(yīng)
13、用軟件。3) 音頻協(xié)議藍(lán)牙音頻(Audio)是通過在基帶上直接傳輸SCO分組實現(xiàn)的,目前藍(lán)牙SIG并沒有以規(guī)范的形式給出此部分。雖然嚴(yán)格意義上來講它并不是藍(lán)牙協(xié)議規(guī)范的一部分,但也可以視為藍(lán)牙協(xié)議體系中的一個直接面向應(yīng)用的層次。4) 點對點協(xié)議(PPP)PPP是IETF(Internet Engineering Task Force)制定的,在藍(lán)牙技術(shù)中,它運行于RFCOMM之上,完成點對點的連接。5) UDP/TCP/IPUDP/TCP/IP也是由IETF制定的,是互聯(lián)網(wǎng)通信的基本協(xié)議,在藍(lán)牙設(shè)備中使用這些協(xié)議是為了與互聯(lián)網(wǎng)連接的設(shè)備進(jìn)行通信。5.1.3藍(lán)牙網(wǎng)關(guān)1藍(lán)牙網(wǎng)關(guān)的功能藍(lán)牙網(wǎng)關(guān)用于辦
14、公網(wǎng)絡(luò)或物聯(lián)網(wǎng)內(nèi)部的藍(lán)牙移動終端,可通過無線方式訪問局域網(wǎng)以及Internet,跟蹤、定位辦公網(wǎng)絡(luò)內(nèi)的所有藍(lán)牙設(shè)備,并在兩個屬于不同匹配網(wǎng)的藍(lán)牙設(shè)備之間建立路由連接,并在設(shè)備之間交換路由信息。藍(lán)牙網(wǎng)關(guān)的主要功能包括:(1) 實現(xiàn)藍(lán)牙協(xié)議與TCP/IP協(xié)議的轉(zhuǎn)換,完成辦公網(wǎng)絡(luò)內(nèi)部藍(lán)牙移動終端的無線上網(wǎng)功能。 (2) 在安全的基礎(chǔ)上實現(xiàn)藍(lán)牙地址與IP地址之間的地址解析,它利用自身的IP 地址和TCP端口來唯一地標(biāo)識辦公網(wǎng)絡(luò)內(nèi)部沒有IP地址的藍(lán)牙移動終端,比如藍(lán)牙打印機(jī)等。 (3) 通過路由表來對網(wǎng)絡(luò)內(nèi)部的藍(lán)牙移動終端進(jìn)行跟蹤、定位,使得辦公網(wǎng)絡(luò)內(nèi)部的藍(lán)牙移動終端可以通過正確的路由,訪問局域網(wǎng)或者另
15、一個匹配網(wǎng)中的藍(lán)牙移動終端。(4) 在兩個屬于不同匹配網(wǎng)的藍(lán)牙移動終端之間交換路由信息,從而完成藍(lán)牙移動終端通信的漫游與切換。在這種通信方式中,藍(lán)牙網(wǎng)關(guān)在數(shù)據(jù)包路由過程中充當(dāng)中繼作用,相當(dāng)于藍(lán)牙網(wǎng)橋。2藍(lán)牙移動終端(MT)藍(lán)牙移動終端是普通的藍(lán)牙設(shè)備,能夠與藍(lán)牙網(wǎng)關(guān)以及其他藍(lán)牙設(shè)備進(jìn)行通信,從而實現(xiàn)辦公網(wǎng)絡(luò)內(nèi)部移動終端的無線上網(wǎng)以及網(wǎng)絡(luò)內(nèi)部文件、資源的共享。藍(lán)牙移動終端各個功能模塊的關(guān)系如圖5.2所示。圖5.2 功能模塊關(guān)系 如果目的端位于單位內(nèi)部的局域網(wǎng)或者Internet,則需要通過藍(lán)牙網(wǎng)關(guān)進(jìn)行藍(lán)牙協(xié)議與TCP/IP協(xié)議的轉(zhuǎn)換。如果該MT沒有IP地址,則由藍(lán)牙網(wǎng)關(guān)來提供,其通信方式為MTB
16、GMT。如果目的端位于辦公網(wǎng)絡(luò)內(nèi)部的另一個匹配網(wǎng),則通過藍(lán)牙網(wǎng)關(guān)來建立路由連接,從而完成整個通信過程的漫游,其通信方式為MTBGM_MT(主移動終端)MT。采用藍(lán)牙技術(shù)也可使辦公室的每個數(shù)據(jù)終端互相連通。例如,多臺終端共用1臺打印機(jī),可按照一定的算法登錄打印機(jī)的等待隊列,依次執(zhí)行。5.1.4藍(lán)牙系統(tǒng)的結(jié)構(gòu)及組成1藍(lán)牙網(wǎng)絡(luò)的結(jié)構(gòu)微微網(wǎng)是實現(xiàn)藍(lán)牙無線通信的最基本方式。每個微微網(wǎng)只有一個主設(shè)備,一個主設(shè)備最多可以同時與七個從設(shè)備同時進(jìn)行通信。多個藍(lán)牙設(shè)備組成的微微網(wǎng)如圖5.3所示。散射網(wǎng)(Scatternet)是多個微微網(wǎng)相互連接所形成的比微微網(wǎng)覆蓋范圍更大的藍(lán)牙網(wǎng)絡(luò),其特點是不同的微微網(wǎng)之間有互連
17、的藍(lán)牙設(shè)備,如圖5.4所示。 圖5.3 多個藍(lán)牙設(shè)備組成的微微網(wǎng) 圖5.4 多個微微網(wǎng)組成的散射網(wǎng) 2藍(lán)牙系統(tǒng)的組成藍(lán)牙系統(tǒng)由無線單元、鏈路控制單元和鏈路管理器三部分組成。1) 無線單元 藍(lán)牙是以無線LAN的IEEE802.11標(biāo)準(zhǔn)技術(shù)為基礎(chǔ)的,使用2.45GHz ISM全球通自由波段。藍(lán)牙天線屬于微帶天線,空中接口是建立在天線電平為0dBm基礎(chǔ)上的,遵從FCC(美國聯(lián)邦通信委員會)有關(guān)0dBm電平的ISM頻段的標(biāo)準(zhǔn)。當(dāng)采用擴(kuò)頻技術(shù)時,其發(fā)射功率可增加到100mW。頻譜擴(kuò)展功能是通過起始頻率為2.402GHz、終止頻率為2.480GHz、間隔為1MHz的79個跳頻頻點來實現(xiàn)的。其最大的跳頻速率
18、為1660跳/s。系統(tǒng)設(shè)計通信距離為10cm10m,如增大發(fā)射功率,其距離可長達(dá)100m。2) 鏈路控制單元 鏈路控制單元(即基帶)描述了硬件基帶鏈路控制器的數(shù)字信號處理規(guī)范?;鶐ф溌房刂破髫?fù)責(zé)處理基帶協(xié)議和其他一些低層常規(guī)協(xié)議。 (1) 建立物理鏈路。微微網(wǎng)內(nèi)的藍(lán)牙設(shè)備之間的連接建立之前,所有的藍(lán)牙設(shè)備都處于待命(Standby)狀態(tài)。此時,未連接的藍(lán)牙設(shè)備每隔1.28s就周期性地“監(jiān)聽”信息。每當(dāng)一個藍(lán)牙設(shè)備被激活,它就將監(jiān)聽劃給該單元的32個跳頻頻點。跳頻頻點的數(shù)目因地理區(qū)域的不同而異(32這個數(shù)字只適用于使用2.4002.4835GHz波段的國家)。作為主藍(lán)牙設(shè)備首先初始化連接程序,如
19、果地址已知,則通過尋呼(Page)消息建立連接;如果地址未知,則通過一個后接尋呼消息的查詢(Inquiry)消息建立連接。在最初的尋呼狀態(tài),主單元將在分配給被尋呼單元的16個跳頻頻點上發(fā)送一串16個相同的尋呼消息。如果沒有應(yīng)答,則主單元按照激活次序在剩余16個頻點上繼續(xù)尋呼。從單元收到從主單元發(fā)來的消息的最大延遲時間為激活周期的2倍(2.56s),平均延遲時間是激活周期的一半(0.6s)。查詢消息主要用來尋找藍(lán)牙設(shè)備。查詢消息和尋呼消息很相像,但是查詢消息需要一個額外的數(shù)據(jù)串周期來收集所有的響應(yīng)。(2) 差錯控制?;鶐Э刂破饔腥N糾錯方式:1/3比例前向糾錯(1/3 FEC)碼用于分組頭;2/
20、3比例前向糾錯(2/3FEC)碼用于部分分組;數(shù)據(jù)的自動請求重發(fā)方式(ARQ)用于帶有CRC(循環(huán)冗余校驗)的數(shù)據(jù)分組。差錯控制用于提高分組傳送的安全性和可靠性。 (3) 驗證和加密。藍(lán)牙基帶部分在物理層為用戶提供保護(hù)和信息加密機(jī)制。驗證基于“請求響應(yīng)”運算法則,采用口令/應(yīng)答方式,在連接進(jìn)程中進(jìn)行,它是藍(lán)牙系統(tǒng)中的重要組成部分。它允許用戶為個人的藍(lán)牙設(shè)備建立一個信任域,比如只允許主人自己的筆記本電腦通過主人自己的移動電話通信。 加密采用流密碼技術(shù),適用于硬件實現(xiàn)。它被用來保護(hù)連接中的個人信息。密鑰由程序的高層來管理。網(wǎng)絡(luò)傳送協(xié)議和應(yīng)用程序可以為用戶提供一個較強(qiáng)的安全機(jī)制。 3) 鏈路管理器鏈
21、路管理器(LM)軟件模塊設(shè)計了鏈路的數(shù)據(jù)設(shè)置、鑒權(quán)、鏈路硬件配置和其他一些協(xié)議。鏈路管理器能夠發(fā)現(xiàn)其他藍(lán)牙設(shè)備的鏈路管理器,并通過鏈路管理協(xié)議(LMP)建立通信聯(lián)系。鏈路管理器提供的服務(wù)項目包括:發(fā)送和接收數(shù)據(jù)、設(shè)備號請求(LM能夠有效地查詢和報告名稱或者長度最大可達(dá)16位的設(shè)備ID)、鏈路地址查詢、建立連接、驗證、協(xié)商并建立連接方式、確定分組類型、設(shè)置保持方式及休眠方式。5.1.5 藍(lán)牙配對實踐在PC上,安裝配置Vmware Workstation+Fedora Core 9+MiniCom/Xshell+ARM- LINUX交叉編譯開發(fā)環(huán)境,在UP-CUP IOT-6410-型嵌入式物聯(lián)網(wǎng)
22、綜合實驗平臺上,實現(xiàn)藍(lán)牙模塊主從配對通信,在網(wǎng)關(guān)系統(tǒng)中通過對串口編程來實現(xiàn)讀取藍(lán)牙模塊獲取的溫濕度傳感器數(shù)據(jù)。1藍(lán)牙通信藍(lán)牙技術(shù)規(guī)定每一對設(shè)備之間進(jìn)行藍(lán)牙通信時,必須一個為主角色,另一為從角色,才能進(jìn)行通信。通信時必須由主端進(jìn)行查找,發(fā)起配對,鏈接成功后,雙方即可收發(fā)數(shù)據(jù)。理論上,一個藍(lán)牙主端設(shè)備可同時與7個藍(lán)牙從端設(shè)備進(jìn)行通信。一個具備藍(lán)牙通信功能的設(shè)備,可以在兩個角色間切換,平時工作在從模式,等待其他主設(shè)備來連接,需要時再轉(zhuǎn)換為主模式,向其他設(shè)備發(fā)起呼叫。一個藍(lán)牙設(shè)備以主模式發(fā)起呼叫時,需要知道對方的藍(lán)牙地址、配對密碼等信息,配對完成后,可直接發(fā)起呼叫。本節(jié)配對實踐使用的是HC06藍(lán)牙模塊
23、,具體如下:(1) 主從藍(lán)牙模塊各1個。(2) 主模塊有配對清除按鍵。(3) 從模塊配有單片機(jī)和溫濕度傳感器,另可外接一個任意種類的傳感器模塊。 (4) 主模塊可與嵌入式網(wǎng)關(guān)通過串口通信,從模塊則獨立工作,只從系統(tǒng)吸取電源。系統(tǒng)HC06藍(lán)牙模塊上電初始化后自動匹配模塊,主藍(lán)牙模塊可以通過與嵌入式網(wǎng)關(guān)的串口完成數(shù)據(jù)透傳功能,默認(rèn)串口波特率為9600b/s,且主從模塊都支持部分特定的AT指令進(jìn)行配置。默認(rèn)出廠時候藍(lán)牙模塊已經(jīng)設(shè)置完成。從模塊上電匹配成功后,會自動向主模塊發(fā)送溫濕度傳感器數(shù)據(jù),由從模塊端單片機(jī)程序控制。HC06藍(lán)牙模塊組支持簡單的特定的AT串口指令控制其部分屬性,如測試命令、波特率設(shè)
24、置、藍(lán)牙名稱、匹配密碼等,詳細(xì)說明參見本書提供的硬件說明書中的模塊手冊部分。2關(guān)鍵代碼分析HC06藍(lán)牙模塊組中,主模塊與嵌入式網(wǎng)關(guān)系統(tǒng)通信,默認(rèn)UP-CUP IOT-6410-型實驗平臺上連接Cortex-A8網(wǎng)關(guān)設(shè)備的/dev/s3c2410_serial2串口設(shè)備,波特率為9600。因此,可以建立一個監(jiān)聽串口的線程來處理藍(lán)牙主模塊發(fā)送到從藍(lán)牙的模塊溫濕度傳感器數(shù)據(jù)信息。1) 監(jiān)聽串口的線程啟動程序int ComPthreadMonitorStart(void) gBTStatusFlag =0 x0; gBTDatas = 0 x0; tty_init(&bt_fd, /dev/s3c24
25、10_serial2,BT_BAUDRATE); /初始化藍(lán)牙串口通信設(shè)備 sa.sa_handler = SigChild_Handler; sa.sa_flags = 0; sigaction(SIGCHLD,&sa,NULL); /* handle dying child */ pthread_mutex_init(&mutex, NULL); pthread_create(&th_kb, NULL, KeyBoardPthread, 0); pthread_create(&bt_rev, NULL, BlueToothRevPthread, 0); /建立藍(lán)牙串口監(jiān)聽線程 return
26、 0;從藍(lán)牙模塊從設(shè)備發(fā)送過來的傳感器數(shù)據(jù)有一定的格式,默認(rèn)藍(lán)牙從設(shè)備發(fā)送的數(shù)據(jù)格式為:BB FF 06 00 03 DATA3 DATA2 DATA1 DATA0檢驗和其中DATA3(高字節(jié)) DATA2(低字節(jié))為濕度數(shù)據(jù)2個字節(jié),DATA1(高字節(jié)) DATA0(低字節(jié))為溫度數(shù)據(jù)2個字節(jié)。網(wǎng)關(guān)系統(tǒng)獲取到溫濕度數(shù)據(jù)后還需要進(jìn)行相應(yīng)轉(zhuǎn)換才可以得到有效的溫濕度數(shù)據(jù)。2) 監(jiān)聽串口線程處理函數(shù)void* BlueToothRevPthread(void * data) printf(bluetooth rev pthread.n); struct timeval tv; fd_set rfds
27、; tv.tv_sec=15; tv.tv_usec=0; int nread; int i,j,ret,datalen; unsigned char buffBUFSIZE=0,; unsigned char databufBUFSIZE=0,; ret = 0; /pthread_detach(pthread_self(); while (STOP=FALSE) tv.tv_sec=10; tv.tv_usec=0; FD_ZERO(&rfds); FD_SET(bt_fd, &rfds); ret = select(1+bt_fd, &rfds, NULL, NULL, &tv); if
28、(ret 0) /printf(bt select wait.n); if (FD_ISSET(bt_fd, &rfds) gBTStatusFlag = 0 x01;/ any data of uart can flag its status. nread=tty_read(bt_fd,buff, 1); buffnread=0; if(buff0=0 xBB) nread=tty_read(bt_fd,buff, 1); buffnread=0; if(buff0=0 xFF) nread=tty_read(bt_fd,buff, 1); buffnread=0; if(buff0=0 x
29、06) nread=tty_read(bt_fd,buff, 1); buffnread=0; if(buff0=0 x00) nread=tty_read(bt_fd,buff, 1); buffnread=0; if(buff0=0 x03)/獲取4字節(jié)溫濕度數(shù)據(jù)nread=tty_read(bt_fd,databuf, 4); buffnread=0; HandleBlueToothData(databuf, 4); /處理溫濕度數(shù)據(jù),轉(zhuǎn)換成有效數(shù)據(jù)顯示 else /printf(not tty bt_fd.n); else if(ret = 0) printf(bt read wait
30、 timeout!n); gBTStatusFlag = 0 x00; else/ ret 0 & 0 = humi = 100 & calcret) tlen = sprintf(pTemp, “%d.%d”,(int)temp,(int)(temp-(int)temp)*10); hlen = sprintf(pHumi, “%d.%d”,(int)humi,(int)(humi-(int)humi)*10); printf(“temp=%sthumi=%sn”,pTemp,pHumi);/打印有效溫濕度數(shù)據(jù) /free(pTemp); /free(pHumi);更詳細(xì)的處理流程和實驗步驟
31、,可參見隨書資源中的實驗源代碼和實驗指導(dǎo)書。5.2 GPRS 技 術(shù)5.2.1 GPRS概述1GPRS簡介GPRS為通用分組無線業(yè)務(wù)(General Packet Radio Service)的簡稱,是歐洲電信協(xié)會GSM系統(tǒng)中有關(guān)分組數(shù)據(jù)所規(guī)定的標(biāo)準(zhǔn)。GPRS具有充分利用現(xiàn)有的網(wǎng)絡(luò)、資源利用率高、始終在線、傳輸速率高、資費合理等特點。與GSM CSD業(yè)務(wù)不同的是,GPRS業(yè)務(wù)以數(shù)據(jù)流量計費,而GSM CSD業(yè)務(wù)則以時間計費,GPRS這一計費方式更適應(yīng)數(shù)據(jù)通信的特點。此外,GPRS業(yè)務(wù)的速度較GSM CSD業(yè)務(wù)也將有很大提高,GPRS可提供高達(dá)115kb/s的傳輸速率(最高值為171.2kb/s
32、),下一代GPRS業(yè)務(wù)的速度可以達(dá)到384kb/s。GPRS一個較大的優(yōu)勢是能夠充分利用現(xiàn)有的GSM網(wǎng),可以使運營商在全國范圍內(nèi)推出此項業(yè)務(wù)。目前,通過便攜式電腦,GPRS用戶能以與ISDN(Integrated Services Digital Network,綜合業(yè)務(wù)數(shù)字網(wǎng))用戶一樣快的速度上網(wǎng)瀏覽,同時也使一些對傳輸速率敏感的移動多媒體應(yīng)用成為可能。GPRS用戶只有在發(fā)送或接收數(shù)據(jù)期間才占用資源,這意味著多個用戶可高效率地共享同一無線信道,從而提高了資源的利用率。同時,用戶只需按數(shù)據(jù)通信量付費,而無需對整個鏈路占用期間付費。實際上,GPRS用戶可能連接的時間長達(dá)數(shù)小時,卻只需支付相對低廉
33、的連接費用,可使用戶的使用費用大大降低。GPRS通信模塊就是為使用GPRS服務(wù)而開發(fā)的無線通信終端設(shè)備??蓱?yīng)用到遠(yuǎn)程數(shù)據(jù)監(jiān)測系統(tǒng)、遠(yuǎn)程控制系統(tǒng)、自動售貨系統(tǒng)、無線定位系統(tǒng)、門禁保安系統(tǒng)、物質(zhì)管理系統(tǒng)等系統(tǒng)集成中。2GPRS的特點GPRS是一種基于GSM系統(tǒng)的無線分組交換技術(shù),提供端到端的、廣域的無線IP連接。GPRS充分利用共享無線信道,采用IP Over PPP實現(xiàn)數(shù)據(jù)終端的高速、遠(yuǎn)程接入。作為現(xiàn)有GSM網(wǎng)絡(luò)向第三代移動通信演變的過渡技術(shù)(2.5G),GPRS在許多方面都具有顯著的優(yōu)勢。GPRS有下列特點:(1) 可充分利用現(xiàn)有資源中國移動全國范圍的電信網(wǎng)絡(luò)GSM,方便、快速、低建設(shè)成本地為
34、用戶數(shù)據(jù)終端提供遠(yuǎn)程接入網(wǎng)絡(luò)的部署。(2) 傳輸速率高。GPRS數(shù)據(jù)傳輸速度可達(dá)到57.6kb/s,最高可達(dá)到115170kb/s,完全可滿足用戶應(yīng)用的需求,下一代GPRS業(yè)務(wù)的速度可以達(dá)到384kb/s。(3) 接入時間短。GPRS接入等待時間短,可快速建立連接,平均為2s。(4) 提供實時在線功能“alwaysonline”,用戶將始終處于連線和在線狀態(tài),這將使訪問服務(wù)變得非常簡單、快速。(5) 按流量計費。GPRS用戶只有在發(fā)送或接收數(shù)據(jù)期間才占用資源,用戶可以一直在線,按照用戶接收和發(fā)送數(shù)據(jù)包的數(shù)量來收取費用,沒有數(shù)據(jù)流量的傳遞時,用戶即使掛在網(wǎng)上也是不收費的。5.2.2 GPRS無線
35、通信實踐1SIM900 GPRS模塊硬件SIM900 GPRS模塊硬件是SIMCOM公司推出的新一代GPRS模塊,主要為語音傳輸、短消息和數(shù)據(jù)業(yè)務(wù)提供無線接口。SIM900集成了完整的射頻電路和GSM的基帶處理器,適合于開發(fā)一些GSM/GPRS的無線應(yīng)用產(chǎn)品,如移動電話、PCMCIA無線MODEM卡、無線POS機(jī)、無線抄表系統(tǒng)以及無線數(shù)據(jù)傳輸業(yè)務(wù),應(yīng)用范圍十分廣泛。SIM900模塊的詳細(xì)技術(shù)指標(biāo)請參閱相關(guān)的硬件說明文檔及datasheet手冊。SIM900提供標(biāo)準(zhǔn)的RS-232串行接口,用戶可以通過串行口使用AT命令完成對模塊的操作。串行口支持以下通信速率: 300,1200,2400,480
36、0,9600,19200,38400,57600,115 200(起始默認(rèn))。當(dāng)模塊上電源啟動并報出RDY后,用戶才可以和模塊進(jìn)行通信,模塊的默認(rèn)速率為115200,可通過AT+IPR=命令自由切換至其他通信速率。在應(yīng)用設(shè)計中,當(dāng)MCU需要通過串口與模塊進(jìn)行通信時,只用三個引腳:TXD、RXD和GND。其他引腳懸空,建議RTS和DTR置低。SIM900模塊提供了完整的音頻接口,應(yīng)用設(shè)計只需增加少量外圍輔助元器件,主要是為MIC提供工作電壓和射頻旁路。音頻分為主通道和輔助通道兩部分??梢酝ㄟ^AT+CHFA命令切換主副音頻通道。音頻設(shè)計應(yīng)該盡量遠(yuǎn)離模塊的射頻部分,以降低射頻對音頻的干擾。本擴(kuò)展板硬
37、件支持兩個語音通道,主通道可以插普通電話機(jī)的話柄,輔助通道可以插帶MIC的耳麥。當(dāng)選擇為主通道時,有電話呼入時板載蜂鳴器將發(fā)出鈴聲以提示來電。但選擇輔助通道時來電提示音樂只能在耳機(jī)中聽到。蜂鳴器是由GPRS模塊的BUZZER引腳加驅(qū)動電路控制的。GPRS模塊的射頻部分支持GSM900/DCS1800雙頻,為了盡量減少射頻信號在射頻連接線上的損耗,必須謹(jǐn)慎選擇射頻連線。應(yīng)采用GSM900/DCS1800 雙頻段天線,天線應(yīng)滿足阻抗50W和收發(fā)駐波比小于2的要求。為了避免過大的射頻功率導(dǎo)致GPRS模塊的損壞,在模塊上電前應(yīng)確保天線已正確連接。模塊支持外部SIM卡,可以直接與3.0V SIM卡或者1
38、.8V SIM卡連接。模塊自動監(jiān)測和適應(yīng)SIM卡類型。對用戶來說,GPRS模塊實現(xiàn)的就是一個移動電話的基本功能,該模塊正常的工作是需要電信網(wǎng)絡(luò)支持的,需要配備一個可用的SIM卡,在網(wǎng)絡(luò)服務(wù)計費方面和普通手機(jī)類似。216C550芯片介紹S5PV210處理器通過CPLD邏輯單元控制連接在外部總線上的16C550芯片,北京博創(chuàng)的物聯(lián)網(wǎng)實訓(xùn)平臺(UP-CUP IOT-A8-型)的網(wǎng)關(guān)部分設(shè)備使用16C550芯片擴(kuò)展串口來實現(xiàn)控制GPRS功能單元電路。其中16C550芯片連接在S5PV210處理器的BANK1,地址空間為0 x8800 00000 x8F00 0000。另外,S5PV210處理器定義的B
39、ANK1空間地址為16位,低八位有效。CPLD譯碼表如表5.1所示。16C550功能單元連接如圖5.5所示。16C550使用處理器的外部中斷13(XEINT13/GPH1_5)。 表5.1 CPLD譯碼表 圖5.5 16C550原理圖 3GPRS通信模塊的AT指令集GPRS模塊和應(yīng)用系統(tǒng)是通過串口連接的,控制系統(tǒng)可以發(fā)給GPRS模塊AT命令的字符串來控制其行為。GPRS模塊具有一套標(biāo)準(zhǔn)的AT命令集,包括一般命令、呼叫控制命令、網(wǎng)絡(luò)服務(wù)相關(guān)命令、電話本命令、短消息命令、GPRS命令等。詳細(xì)信息可參考GPRS/SIM300的應(yīng)用文檔。1) 一般命令A(yù)T命令字符串功能描述如下:AT+CGMI:返回生
40、產(chǎn)廠商標(biāo)識。AT+CGMM:返回產(chǎn)品型號標(biāo)識。AT+CGMR:返回軟件版本標(biāo)識。ATI:發(fā)行的產(chǎn)品信息。ATE:決定是否回顯輸入的命令。value=0表示關(guān)閉回顯,value=1表示打開回顯。AT+CGSN:返回產(chǎn)品序列號標(biāo)識。AT+CLVL?:讀取受話器音量級別。AT+CLVL=:設(shè)置受話器音量級別,level的范圍為0100,數(shù)值越小則音量越輕。AT+CHFA=:切換音頻通道。state=0為主音頻通道,state=1為輔助音頻通道。AT+CMIC=,:改變MIC增益,ch=0為主MIC,ch=1為輔助MIC;gain的范圍為015。2) 呼叫控制命令A(yù)TDxxxxxxxx;:撥打電話號碼
41、xxxxxxxx,注意最后要加分號,中間無空格。ATA:接聽電話。ATH:拒接電話或掛斷電話。AT+VTS=:在語音通話中發(fā)送DTMF音,dtmfstr舉例:“4,5,6”為456三字符。3) 網(wǎng)絡(luò)服務(wù)相關(guān)命令A(yù)T+CNUM=?:讀取本機(jī)號碼。AT+COPN:讀取網(wǎng)絡(luò)運營商名稱。AT+CSQ:信號強(qiáng)度指示,返回接收信號強(qiáng)度指示值和信道誤碼率。4) 電話本命令(略)5) 短消息命令A(yù)T+CMGF=:選擇短消息格式。mode=0為PDU模式,mode=1為文本模式。建議采用文本模式。AT+CSCA?:讀取短消息中心地址。AT+CMGL=:列出當(dāng)前短消息存儲器中的短信。stat參數(shù)空白為收到的未讀短
42、信。AT+CMGR=:讀取短消息。index為所要讀取短信的記錄號。AT+CMGS=xxxxxxxxCR Text Ctrl+Z:發(fā)送短消息。xxxxxxxx為對方手機(jī)號碼,回車后接著輸入短信內(nèi)容,然后按Ctrl+Z發(fā)送短信。Ctrl+Z的ASCII碼是26。AT+CMGD=:刪除短消息。index為所要刪除短信的記錄號。6) GPRS命令(本實驗僅實現(xiàn)基本功能,GPRS命令請參考手冊)4GPRS通信模塊應(yīng)用的關(guān)鍵代碼在本實驗中創(chuàng)建了兩個線程:發(fā)送指令線程keyshell和GPRS反饋讀取線程gprs_read。下面介紹GPRS通信模塊應(yīng)用的關(guān)鍵代碼。(1) 循環(huán)采集鍵盤的信息,若為符合選項的
43、內(nèi)容就執(zhí)行相應(yīng)的功能函數(shù)。以按鍵按下“1”為例:get_line(cmd);/采集按鍵if(strncmp(1,cmd,1)=0) /如果為“1”printf(nyou select to gvie a call, please input number:)fflush(stdout);/立即輸出串口緩沖區(qū)中的內(nèi)容get_line(cmd);/繼續(xù)讀取按鍵輸入的電話號碼gprs_call(cmd, strlen(cmd); /調(diào)用具體的實現(xiàn)函數(shù)printf(ncalling); /顯示相應(yīng)的提示信息(2) gprs_call實現(xiàn):void gprs_call(char *number, int
44、 num) /tty_ write串口寫函數(shù)tty_write(ATD, strlen(ATD); /發(fā)送撥打命令A(yù)TD,詳見AT命令tty_write(number, num); /發(fā)送電話號碼tty_write(;r, strlen(;r); /發(fā)送結(jié)束字符usleep(200000); /進(jìn)行適當(dāng)?shù)难訒r(3) gprs_hold實現(xiàn):void gprs_hold() tty_writecmd(AT, strlen(AT); tty_writecmd(ATH, strlen(ATH);/發(fā)送掛機(jī)命令A(yù)TH(4) gprs_ans實現(xiàn):void gprs_ans() tty_writecmd
45、(at, strlen(at); tty_writecmd(ata, strlen(ata);/發(fā)送接聽命令A(yù)TA(5) gprs_msg實現(xiàn):/發(fā)送短信void gprs_msg(char *number, int num) char ctl=26,0;/*定義固定短信字符串*/ char text=Welcome to use up-tech embedded platform!; tty_writecmd(AT, strlen(AT); usleep(5000); tty_writecmd(AT, strlen(AT); tty_writecmd(AT+CMGF=1, strlen(AT
46、+CMGF=1);/發(fā)送修改字符集命令 tty_write(AT+CMGS=, strlen(AT+CMGS=); /發(fā)送發(fā)短信命令,具體格式見手冊 tty_write(, strlen(); tty_write(number, strlen(number); tty_write(, strlen(); tty_write(;r, strlen(;r); tty_write(text, strlen(text); tty_write(ctl, 1); /“Ctrl+Z”的ASCII碼 usleep(300000);(6) 主函數(shù)main.c分析:int main(int argc,char*
47、argv) int ok; pthread_t th_a, th_b; void * retval; if (argc 1) /*命令行參數(shù)設(shè)置串口波特率,默認(rèn)為9600*/baud=get_baudrate(argc, argv); /*初始化16C550串口*/ tty_init();/*建立鍵盤及gprs_read監(jiān)聽線程*/ pthread_create(&th_b, NULL, gprs_read, 0); pthread_create(&th_a, NULL, keyshell, 0); while(!STOP) usleep(100000); tty_end(); exit(0)
48、;更詳細(xì)的處理流程可參見隨書資源中的實驗源代碼。5.3 ZigBee技術(shù)5.3.1 ZigBee技術(shù)概述ZigBee使用2.4 GHz波段,采用跳頻技術(shù)。它的基本速率是250kb/s,當(dāng)降低到28kb/s時,傳輸范圍可擴(kuò)大到134m,并獲得更高的可靠性。另外,它可與254個節(jié)點聯(lián)網(wǎng),可以比藍(lán)牙更好地支持游戲、消費電子、儀器和家庭自動化應(yīng)用。ZigBee技術(shù)具有如下主要特點:(1) 數(shù)據(jù)傳輸速率低:只有10250kb/s,專注于低傳輸應(yīng)用。(2) 功耗低:在低耗電待機(jī)模式下,兩節(jié)普通5號干電池可使用6個月以上。這也是ZigBee的支持者一直引以為豪的獨特優(yōu)勢。(3) 成本低:因為ZigBee數(shù)據(jù)
49、傳輸速率低,協(xié)議簡單,所以大大降低了成本; 積極投入ZigBee開發(fā)的Motorola和Philips均已在2003年正式推出芯片。Philips預(yù)估,應(yīng)用于主機(jī)端的芯片成本和其他終端產(chǎn)品的成本比藍(lán)牙更具價格競爭力。(4) 網(wǎng)絡(luò)容量大:每個ZigBee網(wǎng)絡(luò)最多可支持255個設(shè)備,也就是說每個ZigBee設(shè)備可以與另外254臺設(shè)備相連接。(5) 有效范圍?。河行Ц采w范圍為1075m,具體依據(jù)實際發(fā)射功率的大小和各種不同的應(yīng)用模式而定,基本上能夠覆蓋普通的家庭或辦公室環(huán)境。(6) 工作頻段靈活:使用的頻段分別為2.4GHz、868MHz(歐洲)及915MHz(美國),均為免執(zhí)照頻段。根據(jù)ZigBe
50、e聯(lián)盟目前的設(shè)想,ZigBee將應(yīng)用于PC外設(shè)(鼠標(biāo)、鍵盤、游戲操控桿)、消費類電子設(shè)備(TV、VCR、CD、VCD、DVD等設(shè)備上的遙控裝置)、家庭內(nèi)智能控制(照明、煤氣計量控制及報警等)、玩具(電子寵物)、醫(yī)護(hù)(監(jiān)視器和傳感器)、工控(監(jiān)視器、傳感器和自動控制設(shè)備)等非常廣闊的領(lǐng)域。1ZigBee網(wǎng)絡(luò)配置低數(shù)據(jù)速率的WPAN中包括兩種無線設(shè)備:全功能設(shè)備(FFD)和精簡功能設(shè)備(RFD)。其中,F(xiàn)FD可以和FFD、RFD通信,而RFD只能和FFD通信,RFD之間是無法通信的。RFD的應(yīng)用相對簡單,例如在傳感器網(wǎng)絡(luò)中,它們只負(fù)責(zé)將采集的數(shù)據(jù)信息發(fā)送給它的協(xié)調(diào)點,并不具備數(shù)據(jù)轉(zhuǎn)發(fā)、路由發(fā)現(xiàn)和路
51、由維護(hù)等功能。RFD占用資源少,需要的存儲容量也小,成本比較低。在一個ZigBee網(wǎng)絡(luò)中,至少存在一個FFD充當(dāng)整個網(wǎng)絡(luò)的協(xié)調(diào)點,即PAN協(xié)調(diào)點,ZigBee中也稱作ZigBee協(xié)調(diào)點。一個ZigBee網(wǎng)絡(luò)只有一個PAN協(xié)調(diào)點。通常,PAN協(xié)調(diào)點是一個特殊的FFD,它具有較強(qiáng)大的功能,是整個網(wǎng)絡(luò)的主要控制者,負(fù)責(zé)建立新的網(wǎng)絡(luò)、發(fā)送網(wǎng)絡(luò)信標(biāo)、管理網(wǎng)絡(luò)中的節(jié)點以及存儲網(wǎng)絡(luò)信息等。FFD和RFD都可以作為終端節(jié)點加入ZigBee網(wǎng)絡(luò)。此外,普通FFD也可以在它的個人操作空間(POS)中充當(dāng)協(xié)調(diào)點,但它仍然受PAN協(xié)調(diào)點的控制。ZigBee中每個協(xié)調(diào)點最多可連接255個節(jié)點,一個ZigBee網(wǎng)絡(luò)最多可
52、容納65 535個節(jié)點。2ZigBee網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)ZigBee網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)主要有三種:星型網(wǎng)、網(wǎng)狀(Mesh)網(wǎng)和混合網(wǎng)。圖5.6 ZigBee拓?fù)浣Y(jié)構(gòu)星型網(wǎng)如圖5.6(a)所示,它是由一個PAN協(xié)調(diào)點和一個或多個終端節(jié)點組成的。PAN協(xié)調(diào)點必須是FFD,負(fù)責(zé)發(fā)起建立和管理整個網(wǎng)絡(luò),其他的節(jié)點(終端節(jié)點)一般為RFD,分布在PAN協(xié)調(diào)點的覆蓋范圍內(nèi),直接與PAN協(xié)調(diào)點進(jìn)行通信。星型網(wǎng)通常用于節(jié)點數(shù)量較少的場合。圖5.6 ZigBee拓?fù)浣Y(jié)構(gòu) Mesh網(wǎng)如圖5.6(b)所示,它一般是由若干個FFD連接在一起形成的,它們之間是完全的對等通信,每個節(jié)點都可以與它的無線通信范圍內(nèi)的其他節(jié)點通信。M
53、esh網(wǎng)中,一般將發(fā)起建立網(wǎng)絡(luò)的FFD節(jié)點作為PAN協(xié)調(diào)點。Mesh網(wǎng)是一種高可靠性網(wǎng)絡(luò),具有“自恢復(fù)”能力,它可為傳輸?shù)臄?shù)據(jù)包提供多條路徑,一旦一條路徑出現(xiàn)故障,則存在另一條或多條路徑可供選擇。Mesh網(wǎng)可以通過FFD擴(kuò)展網(wǎng)絡(luò),組成Mesh網(wǎng)與星型網(wǎng)構(gòu)成的混合網(wǎng),如圖5.6(c)所示?;旌暇W(wǎng)中,終端節(jié)點采集的信息首先傳到同一子網(wǎng)內(nèi)的協(xié)調(diào)點,再通過網(wǎng)關(guān)節(jié)點上傳到上一層網(wǎng)絡(luò)的PAN協(xié)調(diào)點?;旌暇W(wǎng)適用于覆蓋范圍較大的網(wǎng)絡(luò)。 3ZigBee組網(wǎng)技術(shù)ZigBee中,只有PAN協(xié)調(diào)點可以建立一個新的ZigBee網(wǎng)絡(luò)。當(dāng)ZigBeePAN協(xié)調(diào)點希望建立一個新網(wǎng)絡(luò)時,首先掃描信道,尋找網(wǎng)絡(luò)中的一個空閑信道來
54、建立新的網(wǎng)絡(luò)。如果找到了合適的信道,則ZigBee協(xié)調(diào)點會為新網(wǎng)絡(luò)選擇一個PAN標(biāo)識符(PAN標(biāo)識符是用來標(biāo)識整個網(wǎng)絡(luò)的,所選的PAN標(biāo)識符必須在信道中是唯一的)。一旦選定了PAN標(biāo)識符,就說明已經(jīng)建立了網(wǎng)絡(luò),此后,如果另一個ZigBee協(xié)調(diào)點掃描該信道,這個網(wǎng)絡(luò)的協(xié)調(diào)點就會響應(yīng)并聲明它的存在。另外,這個ZigBee協(xié)調(diào)點還會為自己選擇一個16bit的網(wǎng)絡(luò)地址。ZigBee網(wǎng)絡(luò)中的所有節(jié)點都有一個64bit的IEEE擴(kuò)展地址和一個16 bit的網(wǎng)絡(luò)地址,其中,16bit的網(wǎng)絡(luò)地址在整個網(wǎng)絡(luò)中是唯一的,也就是802.15.4中的MAC短地址。ZigBee協(xié)調(diào)點選定了網(wǎng)絡(luò)地址后,就開始接受新的節(jié)點
55、加入其網(wǎng)絡(luò)。當(dāng)一個節(jié)點希望加入該網(wǎng)絡(luò)時,它首先會通過信道掃描來搜索其周圍存在的網(wǎng)絡(luò)。如果找到了一個網(wǎng)絡(luò),它就會進(jìn)行關(guān)聯(lián)過程加入網(wǎng)絡(luò),只有具備路由功能的節(jié)點可以允許別的節(jié)點通過它關(guān)聯(lián)網(wǎng)絡(luò)。如果網(wǎng)絡(luò)中的一個節(jié)點與網(wǎng)絡(luò)失去聯(lián)系后想要重新加入網(wǎng)絡(luò),它可以進(jìn)行孤立通知過程重新加入網(wǎng)絡(luò)。網(wǎng)絡(luò)中每個具備路由器功能的節(jié)點都維護(hù)一個路由表和一個路由發(fā)現(xiàn)表,它可以參與數(shù)據(jù)包的轉(zhuǎn)發(fā)、路由發(fā)現(xiàn)和路由維護(hù),以及關(guān)聯(lián)其他節(jié)點來擴(kuò)展網(wǎng)絡(luò)。ZigBee網(wǎng)絡(luò)中傳輸?shù)臄?shù)據(jù)可分為三類: 周期性數(shù)據(jù),如傳感器網(wǎng)中傳輸?shù)臄?shù)據(jù),這類數(shù)據(jù)的傳輸速率根據(jù)不同的應(yīng)用而確定; 間歇性數(shù)據(jù),如電燈開關(guān)傳輸?shù)臄?shù)據(jù),這類數(shù)據(jù)的傳輸速率根據(jù)應(yīng)用或者外部
56、激勵而確定; 反復(fù)性的、反應(yīng)時間低的數(shù)據(jù),如無線鼠標(biāo)傳輸?shù)臄?shù)據(jù),這類數(shù)據(jù)的傳輸速率是根據(jù)時隙分配而確定的。為了降低ZigBee節(jié)點的平均功耗,ZigBee節(jié)點有激活和睡眠兩種狀態(tài),只有當(dāng)兩個節(jié)點都處于激活狀態(tài)才能完成數(shù)據(jù)的傳輸。在有信標(biāo)的網(wǎng)絡(luò)中,ZigBee協(xié)調(diào)點通過定期地廣播信標(biāo)為網(wǎng)絡(luò)中的節(jié)點提供同步;在無信標(biāo)的網(wǎng)絡(luò)中,終端節(jié)點定期睡眠、定期醒來,除終端節(jié)點以外的節(jié)點要保證始終處于激活狀態(tài),終端節(jié)點醒來后會主動詢問它的協(xié)調(diào)點是否有數(shù)據(jù)要發(fā)送給它。在ZigBee網(wǎng)絡(luò)中,協(xié)調(diào)點負(fù)責(zé)緩存要發(fā)送給正在睡眠的節(jié)點的數(shù)據(jù)包。5.3.2 基于ZigBee技術(shù)的煙霧傳感器應(yīng)用實踐在北京博創(chuàng)的UP-CUP I
57、OT-6410-實驗平臺上,利用ZIGBEE模塊上CC2430的I/O中斷,基于IAR開發(fā)環(huán)境設(shè)計程序來監(jiān)測煙霧傳感器的狀態(tài)。1CC2430芯片的主要特點CC2430芯片延用了以往CC2420芯片的架構(gòu),在單個芯片上整合了ZigBee射頻(RF)前端、內(nèi)存和微控制器。它使用1個8位MCU(8051),具有128KB可編程閃存和8KB的RAM,還包含模擬數(shù)字轉(zhuǎn)換器(ADC)、幾個定時器(Timer)、AES128協(xié)同處理器、看門狗定時器、32kHz晶振的休眠模式定時器、上電復(fù)位電路、掉電檢測電路以及21個可編程I/O引腳。CC2430芯片采用0.18m CMOS工藝生產(chǎn),工作時的電流損耗為27m
58、A;在接收和發(fā)射模式下,電流損耗分別低于27mA或25mA。CC2430的休眠模式和轉(zhuǎn)換到主動模式的超短時間的特性,特別適合那些要求電池壽命非常長的應(yīng)用。 高性能和低功耗的8051微控制器核。 集成符合IEEE 802.15.4標(biāo)準(zhǔn)的2.4GHz的RF無線電收發(fā)機(jī)。 優(yōu)良的無線接收靈敏度和強(qiáng)大的抗干擾性。 在休眠模式時僅0.9A的流耗,外部的中斷或RTC能喚醒系統(tǒng);在待機(jī)模式時少于0.6 A的流耗,外部的中斷能喚醒系統(tǒng)。 硬件支持CSMA/CA功能。 較寬的電壓范圍(2.03.6 V)。 數(shù)字化的RSSI/LQI支持和強(qiáng)大的DMA功能。 具有電池監(jiān)測和溫度感測功能。 集成了14位模/數(shù)轉(zhuǎn)換的A
59、DC。 集成AES安全協(xié)處理器。 帶有2個強(qiáng)大的支持幾組協(xié)議的USART,以及1個符合IEEE 802.15.4規(guī)范的MAC計時器、1個常規(guī)的16位計時器和2個8位計時器。 強(qiáng)大和靈活的開發(fā)工具。2硬件接口原理1)ZigBee(CC2430)模塊LED硬件接口ZigBee(CC2430)模塊LED硬件接口如圖5.7所示。ZigBee(CC2430)模塊硬件上設(shè)計有兩個LED燈,用來編程調(diào)試使用,分別連接CC2430的P1_0、P1_1兩個I/O引腳。從原理圖上可以看出,兩個LED燈共陽極,當(dāng)P1_0、P1_1引腳為低電平時,LED燈點亮。圖5.7 ZigBee(CC2430)模塊LED硬件接口
60、 2) 煙霧傳感器模塊硬件接口廣譜氣體感器模塊與ZigBee(CC2430)模塊硬件接口如圖5.8所示。系統(tǒng)配套的紅外傳感器,與ZigBee模塊的IO/INT排針相連,紅外模塊的信號線與ZigBee模塊的P1_2 IO引腳相連。因此,需要在代碼中將該引腳配置成中斷輸入模式,以監(jiān)測煙霧傳感器的狀態(tài)。圖5.8 煙霧傳感器與ZigBee接口 3CC2430寄存器及中斷1) CC2430的P1口寄存器CC2430處理器P1口的相關(guān)寄存器主要有P1DIR方向寄存器、P1INP端口輸入配置寄存器、PICTL中斷使能和中斷觸發(fā)模式寄存器,如表5.2表5.6所示。2) CC2430的中斷相關(guān)寄存器CPU有18
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版新員工試崗期職業(yè)發(fā)展規(guī)劃與實施合同3篇
- 應(yīng)急預(yù)案與突發(fā)事件類型
- 電子行業(yè)產(chǎn)品維修培訓(xùn)總結(jié)
- 建筑與市政工程質(zhì)量安全巡查的背景
- 托育防恐防暴安全教育
- 交通運輸行業(yè)促銷策略評估
- 二零二五版外貿(mào)實習(xí)實訓(xùn)基地建設(shè)合同3篇
- 二零二五年度環(huán)保設(shè)備委托托管合作協(xié)議3篇
- 《學(xué)校心理輔導(dǎo)》課件
- 二零二五年度居間服務(wù)合同范本6篇
- 《論語》學(xué)而篇-第一課件
- 《寫美食有方法》課件
- 學(xué)校制度改進(jìn)
- 各行業(yè)智能客服占比分析報告
- 年產(chǎn)30萬噸高鈦渣生產(chǎn)線技改擴(kuò)建項目環(huán)評報告公示
- 心電監(jiān)護(hù)考核標(biāo)準(zhǔn)
- (完整word版)申論寫作格子紙模板
- 滾筒焊縫超聲波探傷檢測報告
- 古典芭蕾:基本技巧和術(shù)語
- DB43-T 2612-2023林下竹蓀栽培技術(shù)規(guī)程
- 質(zhì)量檢驗人員管理及綜合業(yè)務(wù)管理知識培訓(xùn)課件
評論
0/150
提交評論