• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于Arduino 的ZigBee 無線傳感節(jié)點的硬件設計

    2015-08-26 06:39:40張雁琳
    電子設計工程 2015年24期
    關鍵詞:傳感串口單片機

    張雁琳

    (北京工業(yè)大學 北京100124)

    無線傳感器網絡是物聯(lián)網底層網絡的重要技術形式[1],它綜合了傳感器技術、信息處理技術和無線通信等技術[2]。 無線傳感器網絡節(jié)點作為無線傳感網絡的基本組成部分,它的性能優(yōu)劣及實用性關系到整個網絡的工作效率和工作成本,因此高性能低成本的無線傳感節(jié)點成為無線傳感網絡設計的關鍵。 目前傳統(tǒng)的無線傳感節(jié)點主要有兩種類型:一種是封裝好直接購買可用的節(jié)點如Micaz、TelosB 節(jié)點;另一種是在特定芯片如CC2430、CC2530 上自主設計制作的節(jié)點。 前一種節(jié)點性能佳,但價格較貴且可定制性差,后一種節(jié)點,雖價格便宜,但開發(fā)工作量大,且可擴展的接口少[2]。

    Arduino 是近年來快速流行起來的一種控制器[3],其硬件電路的核心是一個AVR 芯片, 整塊電路板在功能上與單片機開發(fā)板類似, 但是Arduino 板要比單片機開發(fā)板在功能上強大很多。 ZigBee 是一種短距離無線通信技術,它可以很好地解決物聯(lián)網中最后100 m 的通信問題[4],并且已經廣泛地應用于智能交通、智能醫(yī)療、智能家居和工業(yè)自動化當中。 本文針對現(xiàn)有的無線傳感網絡節(jié)點的發(fā)展現(xiàn)狀,從硬件角度著手,設計了一種基于Arduino 的ZigBee 無線傳感節(jié)點,它將Arduino 軟硬件開源、接口豐富、容易上手、價格低廉、可根據(jù)應用需求實現(xiàn)個性化系統(tǒng)設計等特性與ZigBee 技術傳輸延時較低、復雜度低、容量高、功率消耗極低、成本低廉等特性結合到一起,實現(xiàn)更具有實用性和更適用于物聯(lián)網的無線傳感網絡節(jié)點。

    1 硬件整體設計

    無線傳感網絡節(jié)點硬件電路包括處理器模塊、傳感器模塊、無線通信模塊及電源模塊。 其中,電源部分為整個節(jié)點提供能量,其余3 個均是耗能模塊[5]。 本文采用Arduino Uno R3功能板的電路作為硬件設計的基礎電路板,并結合實際需求在該電路基礎上進行組成部件的刪減和功能模塊的增加。Arduino Uno R3 是Arduino USB 接口系列的最新版本。 其上的所有參考設計均是基于AVR 芯片ATmega328 的, 二者的管腳是兼容的。

    節(jié)點的各個模塊中, 處理器模塊采用單片機ATmega 328P-PU 作為CPU 對傳感數(shù)據(jù)進行采集、處理和傳輸,單片機ATmega16U2-MU 作為轉換芯片實現(xiàn)USB 接口數(shù)據(jù)與處理器串口數(shù)據(jù)的對接。 傳感器模塊設為接口模式,沒有直接選定傳感器并將該傳感器連接到電路中。 傳感器模塊接口包括數(shù)字信號接口和模擬信號接口。無線通信模塊采用Digi 公司生產的XBee ZB 模塊,XBee ZB 模塊通過RX、TX 串口與單片機進行數(shù)據(jù)通信。電源模塊采用電池供電和USB 供電協(xié)作模式,為了避免電池供電和USB 供電同時接入電路產生沖突, 采用FDN340P 場效應管來實現(xiàn)電池供電和USB 供電模式的自動切換。 此外,節(jié)點還通過硬件輔助的形式控制傳感模塊和無線通信模塊的工作狀態(tài), 以降低節(jié)點的工作能耗。無線傳感網絡節(jié)點硬件系統(tǒng)結構框圖如圖1 所示。

    圖1 無線傳感網絡節(jié)點硬件系統(tǒng)結構框圖Fig. 1 Structure diagram of the wireless sensor node hardware circuit system

    2 模塊設計

    2.1 處理器模塊

    節(jié)點硬件系統(tǒng)處理器模塊的元器件選型主要是基于Arduino Uno R3 功能板。 Arduino Uno R3 電路板的主控芯片是ATmega328P-PU,USB 轉串口芯片是ATmega16U2-MU。單片機ATmega328P-PU 是一款高性能低功耗的AVR 微控制器,它的工作電壓是1.8~5.5 V,片上包含32 kB 的Flash、1 kB 的EEPROM 以及2 kB 的SRAM,有6 個模擬輸入接口,有14 個數(shù)字輸入輸出接口且數(shù)字接口中有6 個PWM 模擬輸出接口,晶振頻率是16 MHz。 這款單片機能夠完全滿足傳感節(jié)點的處理器需求。 該單片機的外圍電路中, 需要在5 V電源與管腳reset 之間連接一個110 歐姆的電阻, 因為Arduino Uno R3 提供自動復位設計, 可以通過在主機上運行相應程序進行自動復位,但本節(jié)點的復位模式設計為外部電路觸發(fā)復位模式,所以需在管腳reset 位置進行電路修改。 另外,需要在ATmega328P-PU 的XTAL1、XTAL2 引腳之間接尺寸小、可靠性能佳的陶瓷振蕩子CSTCE16M0V53-R0,而不是接普通的16 M 晶振。 負責USB—串口數(shù)據(jù)轉換功能的AVR芯 片ATmega16U2-MU 內 置 有 支 持USB2.0 的USB 控 制 裝置,它支持數(shù)據(jù)的全速轉換,有控制、批量、中斷以及同步這4種工作模式。ATmega16U2-MU 外接16 MHz 晶振,以此給芯片的內部PLL 提供參考時鐘, 使得內部PLL 可以為USB 全速轉換提供需要的48 MHz ±0.25%參考時鐘。 ATmega16U2-MU 的PD2(RXD1)引腳接單片機ATmega 328P-PU 的TXD輸出串口,PD3(TXD1)接單片機ATmega 328P-PU 的RXD 輸入串口, 以提供TTL 電壓水平的串口收發(fā)信號。 另外,ATmega16U2-MU 芯片的D-引腳接USB 接口的數(shù)據(jù)線D-,D+引腳接USB 接口的數(shù)據(jù)線D+。

    2.2 傳感器模塊

    為了增強無線傳感節(jié)點的復用性,傳感器模塊電路設計中,未包含傳感器元件,而是采用接口形式連接傳感器元件,并為其提供工作電路。 物聯(lián)網中常用的傳感器元件按輸出信號類型可分為模擬傳感器和數(shù)字傳感器,因此節(jié)點傳感器接口需包含這兩種數(shù)據(jù)接口。 節(jié)點傳感器數(shù)字信號接口和模擬信號接口直接由處理器模塊核心芯片ATmega328P-PU 的數(shù)字輸入輸出口和模擬輸入口引出。 ATmega328P-PU 共有14個數(shù)字輸入輸出接口, 本節(jié)點的設計中, TXD、RXD 數(shù)字接口作串口,有兩路數(shù)字接口作串口狀態(tài)燈控制口,有一路數(shù)字接口作無線通信模塊工作模式控制口,有一路數(shù)字接口作傳感器工作模式控制口,還有一路數(shù)字接口作電源能量監(jiān)測控制口, 因此節(jié)點傳感器模塊中的傳感器數(shù)字接口共有7個,模擬數(shù)字接口共有6 個。 常用的傳感器模塊如DHT11 溫濕度模塊、HX711 稱重傳感器模塊、BH1750FVI 光照度傳感器模塊等,均可通過該通用接口與節(jié)點進行連接。

    為了降低無線傳感節(jié)點的能耗,本節(jié)點設計傳感器數(shù)據(jù)進行周期性采集,即傳感器在采集一段時間的環(huán)境信息后進入休眠狀態(tài), 再經過固定的休眠時間后返回到工作狀態(tài),從而降低傳感器元件對電源能量的消耗。 這里的傳感器工作模式切換設計為單片機接口控制傳感器模塊電源通斷模式。 單片機接口控制電源通斷功能通過三極管S8550 驅動電路作開關、繼電器HK4100F 作負載來實現(xiàn)。 三極管S8550 是一種常用的普通三極管,它是一種低電壓、大電流、小信號的PNP型硅材料三極管。 繼電器HK4100F 是一種價格低廉的6 管腳電子控制器件,實際上是一種利用較小電流來控制較大電流的“自動開關”,它能夠在電路中提供自動調節(jié)、安全保護和轉換電路等功能,主要由鐵芯、線圈、銜鐵和觸點簧片組成。 當電路在線圈兩端加上一定電壓后,線圈會流過一定的電流,從而產生電磁效應,于是銜鐵在電磁吸引力的作用下克服彈簧的反彈拉力與鐵芯吸合,從而使繼電器的內部動觸點與靜觸點(常開觸點)導通;當線圈兩端斷電后,線圈的電磁吸引力消失, 銜鐵會在彈簧的反作用力下回到原來的位置,從而使繼電器的內部動觸點與原來的靜觸點(常閉觸點)導通,由此實現(xiàn)了外部電路的導通和切斷。

    單片機接口控制傳感器模塊電源通斷具體的電路連接情 況 為, 三 極 管S8550 的 基 極 經4.7 kΩ 電 阻 與 單 片 機ATmega328P-PU 的一路數(shù)字接口連接, 發(fā)射極與繼電器HK4100F 內部線圈的一個外部引腳連接,集電極接地。 繼電器HK4100F 常閉觸點的外部引腳接地, 常開觸點的外部引腳接傳感器的工作電源正極。 當單片機引腳輸出高電平時,三極管截止,繼電器線圈兩端無電位差,繼電器銜鐵釋放,常閉觸點導通,即傳感器電源關閉;當單片機引腳輸出低電平時,三極管飽和導通,繼電器銜鐵吸合,常開觸點閉合,即傳感器電源開啟。 三極管截止瞬間,繼電器線圈中的電流無法突變?yōu)榱?,兩端會產生一個電壓較高的感應電動勢,有可能會擊穿三極管,因此需要在繼電器線圈兩端并聯(lián)一個常見的反向耐電壓為100 V 的小信號二極管1N4148,以釋放瞬間感應電動勢,如此,既保護了三極管,也消除了感應電動勢對其他電路的干擾。 單片機接口控制HK4100F 線圈通斷電路原理如圖2 所示。

    圖2 單片機接口控制HK4100F 線圈通斷電路原理圖Fig. 2 Circuit diagram of how microcomputer interface control the HK4100F coil

    2.3 無線通信模塊

    本節(jié)點的無線通信模塊采用的是美國Digi 公司生產的XBee ZB 模塊,該模塊按照ZigBee 協(xié)議設計并把ZigBee 協(xié)議內置進片內Flash, 其內部包含有全部的工作外圍電路以及完整的ZigBee 協(xié)議棧,雖然體型小,但卻是一個功能完善的ZigBee 收發(fā)器(具備接收器和發(fā)射器),它的工作模式是雙向半雙工式,可交替地發(fā)送或接收數(shù)據(jù)[6]。 XBee ZB 模塊只需少量的功耗便可進行可靠的遠端數(shù)據(jù)傳輸。 該模塊的室內傳輸距離為40 米,室外傳輸距離為120 米,發(fā)射功率為3 dBm,具有AT 和API 兩種配置模式且擁有專門的PC 端配置軟件XCUT,可直接在PC 端對模塊進行發(fā)射功率、信道等網絡拓撲參數(shù)的配置,使用起來簡單快捷[7]。 XBee ZB 模塊通過DOUT和DIN 與處理器模塊中的單片機串口進行通信,DOUT 接單片機ATmega328P-PU 的RXD 引腳,DIN 接TXD 引腳。 該模塊的工作模式共有5 種,分別是空閑模式、發(fā)送模式、接收模式、命令模式和睡眠模式。 當XBee ZB 模塊沒有接收或發(fā)送數(shù)據(jù)時,模塊進入空閑模式;當串行接收緩沖區(qū)內的串行數(shù)據(jù)已接收并打包準備好時,模塊自動退出空閑模式準備發(fā)送數(shù)據(jù), 進入發(fā)送模式; 當天線接收到一個合法的RF 數(shù)據(jù)包時,該數(shù)據(jù)將會轉送到串口發(fā)射緩沖區(qū)內,模塊進入接收模式;當命令模式字符序列形成時,模塊進入命令模式;當接收到休眠觸發(fā)時, 模塊進入睡眠模式,XBee ZB 僅支持終端節(jié)點睡眠模式觸發(fā), 且有管腳休眠和周期休眠兩種觸發(fā)模式。睡眠模式可大大降低模塊的能耗,XBee ZB 模塊的管腳休眠觸發(fā)機制是:當休眠控制管腳Sleep_RQ 處于高電平狀態(tài)時,模塊開啟睡眠模式;管腳處于低電平狀態(tài)時,模塊關閉睡眠模式。 本節(jié)點設計使用單片機數(shù)字輸出口控制來實現(xiàn)XBee ZB 模塊的正常工作模式與睡眠模式之間的切換, 電路連接上,ATmega328P-PU 的一路數(shù)字接口引腳與XBee ZB 模塊的Sleep_RQ 管腳連接以控制Sleep_RQ 管腳的電平狀態(tài),再以軟件程序進行輔助, 設置XBee ZB 模塊進行周期性休眠,從而降低節(jié)點無線通信模塊的能耗。 節(jié)點無線通信模塊電路連接框圖如圖3 所示。

    2.4 電源模塊

    圖3 無線通信模塊電路連接框圖Fig. 3 Structure diagram of wireless communication module circuit

    節(jié)點正常工作所需要的電壓有5 V 和3.3 V。 Arduino Uno R3 電路中有3 種供電方式, 并且能夠自動選擇供電方式,這3 種供電方式分別是:外部直流電源通過電源插座供電、USB 接口供電以及電池連接電源連接器的GND 和VIN引腳供電,其中,電源插座供電和電池供電的輸入電壓范圍為7~12 V。本節(jié)點在Arduino Uno R3 供電原理基礎上選擇鋰電池供電和USB 接口供電兩種模式共同提供5 V 工作電壓,節(jié)點電路的另一路工作電壓3.3 V 則由穩(wěn)壓管LP2985-33DBVR 通過對5 V 電壓進行轉換獲得。 電源模塊電路中5 V 電壓供電方式的自動選擇通過場效應管FDN340P 實現(xiàn),F(xiàn)DN340P 是一種P 溝道增強型絕緣柵場效應晶體管,具有輸入電阻高、噪聲小、功耗低、動態(tài)范圍大、無二次擊穿現(xiàn)象、安全工作區(qū)域寬等特點。 節(jié)點電源供電電路中,一路鋰電池輸入VIN 連接到穩(wěn)壓管NCP1117ST50T3G 的輸入端,另一路經二分之一分壓電路分壓后連接到電壓比較器的正輸入端V+,電壓比較器的負輸入端V-連接的參考電壓為3.3 V。 電壓比較器的輸出Vo 與場效應管FDN340P 的柵極連接,USB電源線與場效應管FDN340P 的漏極相連接, 場效應管的源極作為電壓輸出端并與5 V 電源線連接。 當電源模塊僅有鋰電池供電時,5 V 電源直接由穩(wěn)壓管NCP1117ST50T3G 輸出;當電源模塊僅有USB 供電時,V+<V-,Vo 輸出零電位, 場效應管的漏極與源極導通, 此時5 V 電源由USB 電源線USBVCC 提供; 當USB 和鋰電池同時供電時,V+>V-,Vo 輸出高電位,F(xiàn)DN340P 的柵極和源極之間的電位差為0, 場效應管關斷,USB 供電截止,僅鋰電池供電。 另外,USB 電源線信號并不與FDN340P 場效應管的漏極直接連接, 而是在二者之間連接了一個自恢復保險絲MF-MSMF050-2(500 mA),MF-MSMF050-2 是一種可重置的保險絲, 它能夠為電路提供過電保護,當通過保險絲的電流超過500 mA 時,保險絲斷開連接,從而保護了USB 電路。 電源模塊供電電路框圖如圖4 所示。

    圖4 電源模塊供電電路框圖Fig. 4 Diagram of power module’s power supply circuit

    實際應用中,節(jié)點的供電電源多是鋰電池,節(jié)點的正常工作依賴于鋰電池,因此電池余量的對實時監(jiān)測就顯得格外重要[8]。本節(jié)點使用DS2438 智能鋰電池監(jiān)測芯片作為監(jiān)測鋰電池電池剩余容量的硬件裝置。 DS2438 為電池組提供了一系列有用的功能,包括有唯一的標識電池組的序列號,有內置的數(shù)字溫度傳感器因此電池組不再需要接熱敏電阻,有測量電池電壓和電流的內置A/D 轉換器,有記錄電池電流流入流出總量的集成電流累加器,有運行時間記錄器,還有40 字節(jié)的非易失EEPROM,主要用于儲存電池的一些重要參數(shù)如電池化學類型、電池容量、電池充電方式以及電池組裝日期。DS2438 芯片能夠自動采集當前電池的充放電狀態(tài)、溫度、電流、電壓以及剩余電量等數(shù)據(jù),并存放到片上存儲器中。 本節(jié)點中,DS2438 芯片的DQ 引腳與單片機的一路數(shù)字接口相連接,當芯片滿足工作條件時,開始進行電池信息采樣,等到DS2438 芯片采樣完成后,單片機再讀取DS2438 的片上電流累加寄存器(ICA)中的數(shù)值并進行相應的數(shù)據(jù)處理,即可得到無線傳感節(jié)點供電鋰電池的當前剩余電量值。

    3 結束語

    節(jié)點設計實現(xiàn)了以Arduino 開源平臺為基礎以ZigBee技術進行數(shù)據(jù)傳輸?shù)臒o線傳感節(jié)點硬件系統(tǒng)。 并分別給出了硬件系統(tǒng)處理器模塊、傳感器模塊、無線通信模塊以及電源模塊各部分的設計方法,從硬件選型到具體設計思路都一一作了闡述。 該硬件系統(tǒng)具備低能耗、可連接通用傳感器、有電源電壓檢測功能等特點。 此設計方案成本低廉、性能較高、經濟適用,符合設計初衷,且具有良好的應用前景,可應用于物聯(lián)網中,為監(jiān)測物聯(lián)網環(huán)境參數(shù)提供了高性能低成本的無線傳感節(jié)點設計方案。

    [1] 錢志鴻,王義君. 面向物聯(lián)網的無線傳感器網絡綜述[J].電子與信息學報,2013,35(1):215-227.

    [2] 梅海彬,張明華,黃冬梅. 基于無線傳感器網絡的實時近海環(huán)境監(jiān)測系統(tǒng)設計[J]. 計算機應用與軟件,2015,32(1):110-113.

    [3] 渠淼,牛國鋒,冒張霄,等. 基于Arduino的智能環(huán)境監(jiān)控系統(tǒng)設計[J]. 微型機與應用,2014,33(20):83-85.

    [4] 錢志鴻,朱爽,王雪. 基于分簇機制的ZigBee混合路由能量優(yōu)化算法[J]. 計算機學報,2013,36(3):485-493.

    [5] 尹晶晶,吳怡之. 一種低功耗無線瓦斯傳感器節(jié)點硬件電路的設計[J]. 電子設計工程,2013,21(13):67-69.

    [6] 劉湞. 無線傳感器網絡監(jiān)測覆蓋空洞[D]. 江蘇: 南京大學,2013.

    [7] 張錦濤,張翰宗,張文德. 基于低功耗自組傳感網智能路燈監(jiān)控系統(tǒng)的設計實現(xiàn)[J]. 電子測試,2013(10):13-14.

    [8] 王琢,吳細秀,魏洪濤,等. 基于DS2438的電池剩余電量監(jiān)測系統(tǒng)的實現(xiàn)[J]. 微型機與應用,2012,31(14):24-26.

    猜你喜歡
    傳感串口單片機
    《傳感技術學報》期刊征訂
    新型無酶便攜式傳感平臺 兩秒內測出果蔬農藥殘留
    淺談AB PLC串口跟RFID傳感器的通訊應用
    基于單片機的SPWM控制逆變器的設計與實現(xiàn)
    電子制作(2019年13期)2020-01-14 03:15:28
    基于單片機的層次漸變暖燈的研究
    電子制作(2019年15期)2019-08-27 01:12:10
    基于單片機的便捷式LCF測量儀
    電子制作(2019年9期)2019-05-30 09:42:02
    IPv6與ZigBee無線傳感網互聯(lián)網關的研究
    電子制作(2018年23期)2018-12-26 01:01:26
    USB接口的多串口數(shù)據(jù)并行接收方法探索
    基于藍牙串口適配器的GPS接收機與AutoCAD的實時無線通信
    地礦測繪(2015年3期)2015-12-22 06:27:26
    Microchip推出兩個全新PIC單片機系列
    科技| 杭锦后旗| 福贡县| 昌江| 延长县| 太原市| 嘉兴市| 浦江县| 湘潭市| 九龙县| 清涧县| 恭城| 昌黎县| 木兰县| 吉安县| 洪江市| 泌阳县| 四会市| 太保市| 黄陵县| 错那县| 镇原县| 施甸县| 苍梧县| 沾益县| 平乐县| 湾仔区| 南岸区| 长乐市| 海林市| 顺义区| 囊谦县| 平顶山市| 富宁县| 铅山县| 崇信县| 玉山县| 曲阜市| 平潭县| 武平县| 麟游县|