www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 嵌入式 > 嵌入式硬件

 1.概述

  基于IEEE802.15.4標準的Zigbee傳感器網(wǎng)絡(luò)技術(shù)是一種短距離、低速率無線網(wǎng)絡(luò)技術(shù)。其低功耗、易部署等特性,使它在無線監(jiān)控、工業(yè)自動化、家居智能化等領(lǐng)域成了應(yīng)用研究的熱點。

  結(jié)合IP網(wǎng)絡(luò)技術(shù),可方便地實現(xiàn)對Zigbee監(jiān)測網(wǎng)絡(luò)的遠程監(jiān)控。通常的實現(xiàn)方式是在兩種異質(zhì)網(wǎng)絡(luò)的結(jié)合點(網(wǎng)關(guān)節(jié)點)上實現(xiàn)一個嵌入式的WebServer。對于多個Zigbee監(jiān)測網(wǎng)絡(luò),這種實現(xiàn)方式在集中監(jiān)管上存在一定的困難。

  本文給出了利用IBM的Websphere消息中間件技術(shù),對多個Zigbee監(jiān)測網(wǎng)絡(luò)進行遠程集中管理的實現(xiàn)方法。

  2.IBM中間件

  IBM的WebSphere消息中間件產(chǎn)品,根據(jù)功能、應(yīng)用對象的不同有不同的版本。WebSphere Connection Server Micro Edition,稱為微型消息代理,主要用于嵌入式的應(yīng)用,使用MQTT通信協(xié)議。

  MQTT是IBM開發(fā),在2001年發(fā)布的一個開放、輕型的消息傳輸協(xié)議,專門用于遠程傳感應(yīng)用等低帶寬的網(wǎng)絡(luò)通信,并支持發(fā)布/訂閱消息傳遞模式。

  消息中間件系統(tǒng)的基本元素是客戶端、消息和消息代理。在發(fā)布/訂閱消息傳遞模式中,發(fā)布者和訂閱者是客戶端,通過連接到消息代理在網(wǎng)絡(luò)中傳遞數(shù)據(jù)。發(fā)布者向消息代理發(fā)送特定主題的消息,訂閱者向消息代理訂閱特定主題的消息,發(fā)布者和訂閱者之間的連接由消息代理管理。當消息代理收到發(fā)布提供的消息后,由它向訂閱者傳遞所訂閱的消息。

  3.實現(xiàn)原理

  采用中間件技術(shù)后,整個系統(tǒng)結(jié)構(gòu)由兩層結(jié)構(gòu)變成了三層結(jié)構(gòu),如圖1所示。

圖1系統(tǒng)結(jié)構(gòu)

  底層為多個Zigbee監(jiān)測網(wǎng)絡(luò),負責監(jiān)測數(shù)據(jù)的采集。每個Zigbee監(jiān)測網(wǎng)絡(luò)有一個網(wǎng)關(guān)節(jié)點和若干的數(shù)據(jù)采集節(jié)點。監(jiān)測網(wǎng)絡(luò)采用星型結(jié)構(gòu),網(wǎng)關(guān)節(jié)點作為每個監(jiān)測網(wǎng)絡(luò)的基站。網(wǎng)關(guān)節(jié)點具有雙重功能,一是充當網(wǎng)絡(luò)協(xié)調(diào)器的角色,負責網(wǎng)絡(luò)的自動建立和維護、數(shù)據(jù)匯集;二是作為監(jiān)測網(wǎng)絡(luò)與中間層交互的接口,與中間層的消息代理傳遞消息。

  中間層為消息代理,完成消息的路由功能。分別接收管理應(yīng)用、網(wǎng)關(guān)節(jié)點發(fā)來的消息,然后進行轉(zhuǎn)發(fā),使管理應(yīng)用與監(jiān)測網(wǎng)絡(luò)的網(wǎng)關(guān)間實現(xiàn)數(shù)據(jù)交互。

  上層為管理應(yīng)用,作為人機接口,實時顯示各個Zigbee監(jiān)測網(wǎng)絡(luò)的監(jiān)測數(shù)據(jù);接收用戶的各種設(shè)置參數(shù)和控制命令。

  網(wǎng)關(guān)節(jié)點與管理應(yīng)用間的數(shù)據(jù)傳遞是雙向的,即網(wǎng)關(guān)節(jié)點接收到數(shù)據(jù)采集節(jié)點發(fā)來的監(jiān)測數(shù)據(jù)后,預處理后形成消息發(fā)給消息代理,由消息代理轉(zhuǎn)給管理應(yīng)用;管理應(yīng)用收到用戶的設(shè)置參數(shù)或控制命令后,形成消息傳遞給消息代理,再由消息代理發(fā)給網(wǎng)關(guān)節(jié)點。所以,它們即是消息的提供者,也是消息的使用者。

  發(fā)布/訂閱模型允許多個消息提供者向同一主題發(fā)布消息。因此,多個Zigbee監(jiān)測網(wǎng)絡(luò)通過其網(wǎng)關(guān)節(jié)點分別連接到消息代理,向同一主題發(fā)布有關(guān)監(jiān)測數(shù)據(jù)的消息。管理應(yīng)用通過訂閱同一個主題,就能獲得所有監(jiān)測網(wǎng)絡(luò)的監(jiān)測數(shù)據(jù)。

  另外,發(fā)布/訂閱模型還允許多個消息使用者訂閱同一個主題,消息代理會向不同的訂閱者廣播。因此,不同網(wǎng)關(guān)節(jié)點訂閱同一主題后,管理應(yīng)用只需向消息代理發(fā)送一條控制命令,多個監(jiān)測網(wǎng)絡(luò)的網(wǎng)關(guān)節(jié)點就能收到同一條控制命令。

  4. 具體實現(xiàn)

  4.1. 與消息代理間的消息傳遞

  通過MQTT協(xié)議實現(xiàn)管理應(yīng)用、監(jiān)測網(wǎng)絡(luò)中網(wǎng)關(guān)節(jié)點與中間層消息代理間的數(shù)據(jù)傳輸。

  首先需要對中間層的消息代理進行配置,主要包括:創(chuàng)建連接工廠、創(chuàng)建主題、創(chuàng)建激活規(guī)范等。

  在消息代理上需要創(chuàng)建兩個主題,一個用于傳遞監(jiān)測數(shù)據(jù),一個用于傳遞控制命令。不同監(jiān)測網(wǎng)絡(luò)的網(wǎng)關(guān)節(jié)點向監(jiān)測數(shù)據(jù)主題提供消息,管理應(yīng)用訂閱監(jiān)測數(shù)據(jù)主題。管理應(yīng)用向控制命令主題提供消息,不同的網(wǎng)關(guān)節(jié)點訂閱控制命令主題。

  網(wǎng)關(guān)節(jié)點、管理應(yīng)用作為客戶端,還需要編寫專門的消息收、發(fā)送模塊。雖然它們運行平臺不同,網(wǎng)關(guān)節(jié)點運行于嵌入式設(shè)備的Linux環(huán)境,管理應(yīng)用運行于臺式機的Windows環(huán)境,但它們實現(xiàn)的步驟和原理是一樣的。用MQTT庫實現(xiàn)消息的發(fā)布和訂閱模塊,主要包括以下幾個部分。

  一、連接 MQTT

  1) 生成連接字符串:指定消息代理主機的IP地址和MQTT分配的端口號,端口號缺省值為 1883;

  2) 設(shè)置連接屬性,包括客戶機的標識、訂閱類型、發(fā)送活動消息的間隔時間;

  3) 創(chuàng)建 MQTT 客戶機對象。

  二、向代理發(fā)布信息

  直接使用MQTT 提供的API函數(shù)publish,需要提供主題、消息、服務(wù)質(zhì)量等參數(shù)。

  三、向代理訂閱消息

  訂閱是由 MQTT 對象處理的,要求有兩個數(shù)組參數(shù)。分別是訂閱主題數(shù)組、服務(wù)質(zhì)量數(shù)組。這兩個數(shù)組是“索引關(guān)聯(lián)的”。

  主題數(shù)組是一個字符串對象數(shù)組,主題按層次結(jié)構(gòu)排列,并且通過“/”字符分隔。


  服務(wù)質(zhì)量數(shù)組是一個整數(shù)類型的數(shù)組。服務(wù)質(zhì)量的值可以為 0、1 和 2,根據(jù)具體的應(yīng)用設(shè)置。通常將服務(wù)質(zhì)量的值置為2,使消息僅傳遞一次,以減少傳輸開銷。

  四、接收來自代理的消息

  要使應(yīng)用能接收到訂閱的消息,必須創(chuàng)建一個回調(diào)處理函數(shù),并且在MQTT客戶端注冊。

  用MqttSimpleCallback 接口創(chuàng)建簡單接口的對象,并實現(xiàn)connectionLost 和 publishArrived兩個方法。

  當與代理的連接意外終止時,就調(diào)用 connectionLost 方法。如果出現(xiàn)這種情況,則此方法試圖重新連接到代理。如果 connectionLost 方法無法重新連接,則會拋出異常來通知客戶機重新連接失敗。

  publishArrived 方法通知系統(tǒng)訂閱主題的消息已到達客戶端。

  4.2. 與數(shù)據(jù)采集節(jié)點間的數(shù)據(jù)傳遞

  網(wǎng)關(guān)節(jié)點作為Zigbee監(jiān)測網(wǎng)絡(luò)與IP網(wǎng)絡(luò)的連接點,除了要與上一層的消息代理進行數(shù)據(jù)傳遞,還要與Zigbee監(jiān)測網(wǎng)絡(luò)中的數(shù)據(jù)采集節(jié)點間進行數(shù)據(jù)傳遞,獲得原始的監(jiān)測數(shù)據(jù)和向數(shù)據(jù)采集節(jié)點傳遞設(shè)置參數(shù)。

  4.2.1. 網(wǎng)關(guān)節(jié)點的硬件結(jié)構(gòu)

  網(wǎng)關(guān)節(jié)點的硬件結(jié)構(gòu)如圖2所示。主要分成兩大部分:系統(tǒng)運行的硬件平臺和IEEE802.15.4無線通信模塊。

圖2 網(wǎng)關(guān)節(jié)點的硬件結(jié)構(gòu)

  CPU選用AMD的 Au1550。它是一款多功能、高性能、低功耗、高集成度的網(wǎng)絡(luò)安全處理器。

  無線通信模塊采用飛思卡爾的MC13192。它實現(xiàn)了IEEE802.15.4物理層的數(shù)據(jù)傳輸,可以自動完成數(shù)據(jù)的校驗和封裝。

  Au1550與MC13192通過3線SPI接口、一個片選線和一個中斷請求線相連,完成數(shù)據(jù)傳輸和控制。

  4.2.2. 網(wǎng)關(guān)節(jié)點的軟件設(shè)計

圖3 網(wǎng)關(guān)節(jié)點軟件系統(tǒng)的結(jié)構(gòu)

  根據(jù)網(wǎng)關(guān)節(jié)點的功能,軟件系統(tǒng)主要完成兩個功能,一是負責網(wǎng)絡(luò)的建立和維護、匯集監(jiān)測網(wǎng)絡(luò)中的監(jiān)測數(shù)據(jù)、向數(shù)據(jù)采集節(jié)點發(fā)送設(shè)置參數(shù)。這一部分為實時部分,由內(nèi)核模塊實現(xiàn),運行于內(nèi)核態(tài);二是與遠程的消息代理之間的消息傳遞、原始監(jiān)測數(shù)據(jù)的預處理。這部分為非實時部分運行于用戶空間。

  當MC13192接收到IEEE802.15.4物理層的數(shù)據(jù)后,產(chǎn)生中斷請求觸發(fā)數(shù)據(jù)處理任務(wù)讀取,校驗正確后寫入FIFO中,用戶空間的應(yīng)用程序則定時讀取FIFO中的數(shù)據(jù),然后將原始數(shù)據(jù)形成文本格式的消息發(fā)送給消息代理。

  當用戶空間的應(yīng)用程序收到消息代理發(fā)來的控制消息后,轉(zhuǎn)換成控制命令字寫入FIFO中,內(nèi)核模塊中FIFO讀取任務(wù)則定時讀取FIFO的控制命令,形成MAC層的幀格式,通過SPI傳遞給MC13192。

  一、Au1550與MC13192間的數(shù)據(jù)傳輸

  MC13192與Au1550之間通過SPI進行數(shù)據(jù)傳輸。將SPI的通信模式設(shè)為主從方式,Au1550為主機,MC13192為從設(shè)備。數(shù)據(jù)的傳輸完全由主機Au1550通過片選信號控制完成。

  SPI數(shù)據(jù)幀由幀頭和數(shù)據(jù)組成。幀頭為8位,第一位為讀寫標志位,R/W=1表示讀操作(從到主),R/W=0表示寫操作(主到從)。低六位表示MC13192中寄存器的地址。

  MC13192設(shè)置成包傳輸模式,它就會將接收到的主機數(shù)據(jù)暫存到發(fā)送RAM中,當接收完成后再以包的形式發(fā)送出去。同樣,收到IEEE802.15.4數(shù)據(jù)幀后,存儲到接收RAM中,確定數(shù)據(jù)幀的長度、進行校驗和和鏈路質(zhì)量的計算,數(shù)據(jù)校驗正確后向主機發(fā)出中斷請求,請求主機將數(shù)據(jù)讀走。

  二、實時任務(wù)與非實時應(yīng)用間的數(shù)據(jù)傳輸

  實時任務(wù)與非實時應(yīng)用間采用FIFO進行數(shù)據(jù)傳遞。每一個FIFO都是在一個方向上傳送數(shù)據(jù)。要實現(xiàn)實時任務(wù)與非實時應(yīng)用間的雙向傳輸,需要建立兩個FIFO。一個FIFO用于實時任務(wù)向非實時應(yīng)用發(fā)送原始監(jiān)控數(shù)據(jù),一個FIFO用于接收非實時應(yīng)用的控制命令。

  在實時任務(wù)一側(cè),不管FIFO狀態(tài)是什么,任何讀寫入操作都是非阻塞的。因此,讀寫后都立即返回。在內(nèi)核模塊中FIFO通過rtf_create()來創(chuàng)建,rtf_put()向FIFO寫數(shù)據(jù), rtf_get()從FIFO讀數(shù)據(jù)。FIFO的讀過程由一個周期性的實時線程完成。

  從應(yīng)用程序一側(cè)來看,F(xiàn)IFO就像一個常規(guī)文件。因此,調(diào)用文件打開函數(shù)來獲得相關(guān)FIFO的指針,獲得指針后通過讀寫函數(shù)實現(xiàn)對FIFO的讀寫操作。數(shù)據(jù)的讀操作也由專門的線程用輪詢方式完成,數(shù)據(jù)的發(fā)送操作則直接用函數(shù)調(diào)用方式。

  5. 結(jié)束語

  本文給出基于中間件技術(shù)的分層體系結(jié)構(gòu),實現(xiàn)對多個Zigbee監(jiān)測網(wǎng)絡(luò)的集中管理的方法,并給出了數(shù)據(jù)傳遞、網(wǎng)關(guān)節(jié)點等關(guān)鍵技術(shù)的具體實現(xiàn)。這種方式有效地解決了星型拓撲結(jié)構(gòu)Zigbee監(jiān)測網(wǎng)絡(luò)監(jiān)測范圍受限的問題。通過增加監(jiān)測網(wǎng)絡(luò)的個數(shù)來擴大監(jiān)測范圍或多點分布式監(jiān)測,而且還不會影響到管理應(yīng)用。

  本文的創(chuàng)新點:利用基于中間件技術(shù)的分層體系結(jié)構(gòu),實現(xiàn)了對多個Zigbee監(jiān)測網(wǎng)絡(luò)的集中管理,有效地解決了星型拓撲結(jié)構(gòu)Zigbee監(jiān)測網(wǎng)絡(luò)監(jiān)測范圍受限的問題。星形拓撲結(jié)構(gòu)具有結(jié)構(gòu)簡單、易于部署的特點,而且節(jié)點間不需要路由,可以有效節(jié)省節(jié)點的能耗。增加監(jiān)測網(wǎng)絡(luò)的個數(shù)可以擴大監(jiān)測范圍,但存在對多個監(jiān)測網(wǎng)絡(luò)集中管理的問題?!?/p>

  參考文獻

  [1] Motorola.MC13192/MC13193 Reference Manual

  [2] LAN-MAN Standards Committee of the IEEE Computer Society. Wireless Medium Access Control (MAC) and Physical Layer (PHY) Specifications for Low-Rate Wireless Personal Area Networks (LR-WPANs), IEEE, 2003

  [3] IBM.Websphere Using Java,2004.

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動電源

在工業(yè)自動化蓬勃發(fā)展的當下,工業(yè)電機作為核心動力設(shè)備,其驅(qū)動電源的性能直接關(guān)系到整個系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動勢抑制與過流保護是驅(qū)動電源設(shè)計中至關(guān)重要的兩個環(huán)節(jié),集成化方案的設(shè)計成為提升電機驅(qū)動性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機 驅(qū)動電源

LED 驅(qū)動電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個照明設(shè)備的使用壽命。然而,在實際應(yīng)用中,LED 驅(qū)動電源易損壞的問題卻十分常見,不僅增加了維護成本,還影響了用戶體驗。要解決這一問題,需從設(shè)計、生...

關(guān)鍵字: 驅(qū)動電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動電源的公式,電感內(nèi)電流波動大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計 驅(qū)動電源

電動汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動汽車的核心技術(shù)之一是電機驅(qū)動控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機驅(qū)動系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動汽車的動力性能和...

關(guān)鍵字: 電動汽車 新能源 驅(qū)動電源

在現(xiàn)代城市建設(shè)中,街道及停車場照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進步,高亮度白光發(fā)光二極管(LED)因其獨特的優(yōu)勢逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動電源 LED

LED通用照明設(shè)計工程師會遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動電源的電磁干擾(EMI)問題成為了一個不可忽視的挑戰(zhàn)。電磁干擾不僅會影響LED燈具的正常工作,還可能對周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動電源

開關(guān)電源具有效率高的特性,而且開關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機重量也有所下降,所以,現(xiàn)在的LED驅(qū)動電源

關(guān)鍵字: LED 驅(qū)動電源 開關(guān)電源

LED驅(qū)動電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動電源
關(guān)閉