衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于TinyOS和nRF24E1無線通信模塊實現無線傳感器網絡的設計

電子設計 ? 來源:單片機與嵌入式系統應用 ? 作者:肖建榮;錢建生; ? 2020-07-14 08:03 ? 次閱讀

無線傳感器網絡是由大量低廉的微型傳感器節點組成的無線網絡,是目前國際上無線領域研究的熱點之一,應用前景非常好;而TinyOS是美國的伯克利大學開發的,為嵌入式無線傳感器網絡而設計的源碼開放的操作系統,它運行在每個網絡節點上,是其他上層應用和協議運行的前提。本設計以nRF24E1無線通信模塊為核心,基于無線傳感器網絡操作系統TinyOS,使用模塊化設計思路,實現了一個無線傳感器網絡。

1、無線傳感器網絡設計

1.1 系統構成概述

無線傳感器網絡由三類節點構成:一般采集所需要的信息無線終端節點;收集一般節點中的數據并進行存儲、處理、上傳的無線路由器節點;無線服務節點實現無線路由器節點處理中心并充當網關與其他外部網絡的連接。三類節點的硬件構成基本相同,每個傳感器節點具有數據采集、簡單的數據處理、短距離無線通信和自組網能力。

1.2總體設計框圖

無線傳感器網絡中三種節點硬件平臺的構建基本相同,其基本節點構成框圖如圖1所示。無線終端節點可去除顯示模塊、串口通信模塊和聲光報警單元,以節約節點的電能。

基于TinyOS和nRF24E1無線通信模塊實現無線傳感器網絡的設計

主控制部分裝載傳感器網絡操作系統,實現對各個模塊的驅動,并對各個模塊的數據進行處理;電源模塊為系統供電;無線通信模塊實現數據的無線傳輸功能;串行通信模塊可用于與上位機進行通信,也可用于進行系統配置;傳感器模塊利用傳感器采集數據,并進行數模轉換后交由主控制器處理;數據存儲模塊用于臨時或永久存儲系統數據備查。

2、系統的硬件實現

對于無線傳感器網絡硬件平臺的搭建,國內外很多學者提出,用MSP430或AT89C2051作為主控制器,結合無線收發模塊來實現。國內中科院杭州計算機所研制的gainz節點采用ATmega128處理器,再結合射頻收發芯片來實現,這樣做難以真正做到微型網絡節點,且成本難以控制。美國的伯克利大學研制的產品Mica2Dot節點采用自己設計的ASIC來實現,這需要足夠的技術力量和資金。本系統以nRF24E1無線通信模塊為核心。nRF24E1是一顆集成高速2.4 GHz無線收發內核的增強型51單片機,可實現51單片機的所有功能。這是一顆高性能單片機內核的高速1 Mbps單片無線收發芯片,所有高頻元件(包括電感振蕩器等)已經全部集成在芯片內部,使得產品一致性良好、性能穩定且不受外界影響;可跳頻,點對多點通信及無線檢錯,所有功能均在一個6 mm×6 mm的QFN36芯片上實現。由于nRF24E1系統自帶存儲空間有限,系統外加一個串行EEPROM 25xx320,用來存儲TinyOS操作系統。在具體實現時,將TinyOS編譯生成的系統文件轉換為hex文件格式,然后再用eeprep.exe轉換工具轉換為24E1格式的hex文件,用通用編程器將生成的24E1格式的hex文件寫入25xx320。25xx320是32 Kb,SPI接口串行。EEPROM。nRF24E1上電時先將外掛的25xx320的程序全部下載讀入內部的4 KB專用RAM區,然后開始執行程序。在批量生產時可以將程序掩模在nRF24E1中,將外掛的25xx320省掉,進一步降低成本,縮小節點體積。nRF24E1與25xx320的接口電路如圖2所示。

nRF24E1的具體外圍電路設計和其天線的設計可查閱nRF24E1的芯片手冊,并了解有關射頻電路設計和天線設計的相關知識。根據系統需要可以采用環形天線、單端天線或螺旋天線,良好匹配的元件和螺旋天線可使系統的平地可視通信距離高達800m,對于天線的設計,采用Aligent公司ADS(Advanced Design System)進行天線匹配。圖2中“天線”為單端50 歐姆天線。其layout的Top視圖如圖3所示。

顯示單元在無線路由節點和無線服務結點上使用,采用字符型液晶顯示屏1602C,實時顯示測量到的數據,并給出提示信息,使操作簡單,人機交互界面友好。聲光報警單元采用555作振蕩源,用單片機觸發振蕩源驅動電磁訊響器作為聲音指示器,發光二極管作為光指示裝置,從而組成聲光報警單元。遠程通信單元采用低電壓高速傳輸的:RS232收發器MAX3316(CAE),實現工業現場的實時監控。電源單元系統采用CR2450,3 V扣式電池,其在》2.8 V的條件下能提供大約530 mAh的能量(2l℃)。

3、系統的軟件實現

3.1 TinyOS概述

TinyOS是一個基于事件的系統,其設計的主要目標是代碼量小、耗能少、并發性高,可適應不同的應用。它采用面向元件結構,確保快速響應和執行,同時減小了代碼量,以適應無線傳感器網絡嚴格的存儲空間需要。其操作系統、庫和程序服務程序是用nesC寫的。nesC是一種開發組件式結構程序、具有C語法風格的語言,其組件層次結構就如同一個網絡協議棧,底層的組件負責接收和發送原始的數據位,而高層的組件對這些數據進行編碼、解碼,更高層的組件負責數據打包、路由和傳輸數據。

3.2 系統節點的軟件框圖

無線路由節點和無線終端節點比無線終端節點多一個數據匯集和上傳的功能,其軟件設計流程如圖4所示。

3.3 傳感器網絡節點的實現

在TinyOS操作系統中,傳感器網絡節點的實現由moudules和configurations兩部分構成。其modules部分代碼如下:

在modules中提供StdControl接口,使用了Timer、ADC、StdControl、Leds接口。nesC程序中可以使用同一個接口的多個實例,ADCControl是StdControl的實例。

在configurations中不提供任何接口,使用Main、SenseM、LedsC、TimerC、Photo模塊,連接Main.StdControl接口到SenseM.StdControl和TimerC.StdControl,連接SenseM.ADC接口到Photo.ADC,連接SenseM.ADCControl到Photo.StdControl。參數化接口允許組件通過運行時或編譯時參數值使用多個該接口的實例provides。interface Timer[uint8_tid],unique(“Timer”)產生一個唯一的數字與Timer串關聯。

3.4 網絡數據報的分析

在基于TinyOS的傳感器網絡的網絡數據報文消息頭中包含group ID,使得多個節點可以共享同一個radio channel。group ID是一個8位數,其默認值是0x7D,使用DEFAULT_LOCAL_GROUP改變默認group ID,如EFAULT_LOCAL_GROUP=0x7E,此時就把group ID改為了0x7E。以下為傳感器網絡節點接收到的封裝包格式:

7E 41 0F FF FF 08 7D 5D 1D 44 44 11 44 11 44 44 OO 00 00 00 00 00 00 0000 00 00 00 00 00 00 00 00 00 00 OO 00 00 DO 5C 7E

封包用0x7E,接下來是0x41是指封包格式。0x41是P_PACKET_ACK,0x42是P_PACKET_NO_ACK。第3個字節是0x0F,是SeqNo.,是從0x0E開始,也就是13 DECIMAL,接下來的格式TinyOS文件有說明,最后兩個字節是0xSCD0,是CRC校驗。送出Packet之后,它會回送兩個信息:一個是2字節的封包,就是只有包含原本的packet type和SeqNo;另一個是P_PACKET_NO_ACK的格式的封包,和上面的格式一樣,不過SeqNo那個位不具有SeqNo的功能。

4、節點性能

該無線傳感器網絡節點工作電壓為1.9~3.6 V,發射電流約為11~13 mA,接收電流約19 mA,待機電流約3μA;工作在2.4 GHz頻段,共有125個頻道可用,滿足多點及跳頻通信需要。數據傳輸速率可達1 Mbps;可進行CRC校驗,外接9路10位ADC,采樣率達100 kbps,可配置的PWM,輸出UART、SPI等多種外設。平地無障礙物通信距離可達800 m,且節點性能穩定,對環境依賴比較小。

5、結 語

本文介紹了基于nRF24E1的系統硬件平臺的構建,以及傳感器網絡操作系統TinyOS的系統程序設計。該傳感器網絡能準確采集環境數據,實時組網上傳,且其網絡節點結構簡單,價格低廉,真正實現了微型無線傳感器網絡節點。

責任編輯:gt


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 傳感器
    +關注

    關注

    2553

    文章

    51390

    瀏覽量

    756582
  • 無線通信
    +關注

    關注

    58

    文章

    4604

    瀏覽量

    143884
  • 操作系統
    +關注

    關注

    37

    文章

    6892

    瀏覽量

    123742
收藏 人收藏

    評論

    相關推薦

    基于nRF24E1無線耳麥的設計與實現

    本文設計并實現了一種基于nRF24E1無線耳麥。本設計具有抗干擾能力強、保密性好、音質好、成本較低等優點。其室內傳輸距離在30米左右,從而減少電腦對人體的輻射,并且不影響家庭其他成員的休息與工作。##系統軟件設計
    發表于 05-29 10:32 ?3948次閱讀

    無線通信模塊

    無線溫度傳感器應用設計基于NRF2401模塊無線PC控制臺應用設計   基于NRF2
    發表于 08-06 16:29

    基于TinyOS的嵌入式無線傳感器網絡設計

    傳感器連接。  2.3 通信模塊  無線收發模塊主要完成傳感器節點之間、節點與
    發表于 11-15 16:15

    基于nRF24E1無線鍵盤應用

    作者:鄭啟忠 朱宏輝 耿四軍nRF24E1 收發是Nordic VLSI推出的系統級射頻芯片。采用先進的0.18μm CMOS工藝、6×6mm的36引腳 QFN封裝,以nRF2401 RF芯片結構
    發表于 07-22 07:11

    基于nRF24E1無線耳麥有什么優點?

    介紹了一種基于nRF24E1的應用于家用電視及個人電腦的無線耳麥,詳細闡述了無線耳麥的硬件設計方法,說明了語音發送和接收的工作原理,并給出了軟件設計的主要工作流程。
    發表于 08-30 07:14

    無線傳感器網絡的普通節點和網關節點怎么實現

    的限制。以此超低功耗單片機MSP430為核心,結合無線收發模塊nRF24E1,對無線傳感器網絡
    發表于 10-18 07:28

    如何構建基于TinyOS無線傳感器網絡

    本設計以nRF24E1無線通信模塊為核心,基于無線傳感器網絡操作系統
    發表于 06-01 06:07

    nRF24E1編程下載板相關程序

    nRF24E1編程下載板相關程序 nRF24E1編程下載板是我們自行開發的簡易無線通信模塊nRF24E1的在線下載板,使用方便。
    發表于 02-24 14:18 ?60次下載

    單片2.4GHz無線收發芯片nRF24E1的應用

    nRF24E1是Nordic公司推出的一顆嵌入了高性能單片機內核的高速1Mbps單片無線收發芯片。
    發表于 03-11 13:20 ?2013次閱讀
    單片2.4GHz<b class='flag-5'>無線</b>收發芯片<b class='flag-5'>nRF24E1</b>的應用

    系統芯片nRF24E1及其在無繩電話中的應用

    ?摘要:首先,簡要介紹系統級RF收發芯片nRF24E1的各個功能模塊及其特性。然后,分析無繩電話的工作原理,介紹怎樣用nRF24E1在無繩電話中實現話音信號的
    發表于 03-11 13:33 ?1324次閱讀
    系統芯片<b class='flag-5'>nRF24E1</b>及其在無繩電話中的應用

    系統級RF收發芯片nRF24E1及其在無線鍵盤中的應用

    系統級RF收發芯片nRF24E1及其在無線鍵盤中的應用 nRF24E1收發是Nordic VLSI推出的系統級射頻芯片。采用先進的0.18μm CMOS工藝、6×6mm的36引腳
    發表于 11-04 09:24 ?1260次閱讀
    系統級RF收發芯片<b class='flag-5'>nRF24E1</b>及其在<b class='flag-5'>無線</b>鍵盤中的應用

    基于nRF24E1無線耳麥的設計

    介紹了一種基于nRF24E1的應用于家用電視及個人電腦的無線耳麥,詳細闡述了無線耳麥的硬件設計方法,說明了語音發送和接收的工作原理,并給出了軟件設計的主要工作流程。
    發表于 06-21 11:36 ?2535次閱讀
    基于<b class='flag-5'>nRF24E1</b><b class='flag-5'>無線</b>耳麥的設計

    基于nRF24L01的通用無線通信模塊設計

    基于nRF24L01的通用無線通信模塊設計
    發表于 01-04 15:25 ?64次下載

    基于nRF24E1傳感器網絡系統構建及TinyOS程序設計

    ,它運行在每個網絡節點上,是其他上層應用和協議運行的前提。本設計以nRF24E1無線通信模塊為核心,基于無線
    的頭像 發表于 01-16 09:36 ?2217次閱讀
    基于<b class='flag-5'>nRF24E1</b>的<b class='flag-5'>傳感器</b><b class='flag-5'>網絡</b>系統構建及<b class='flag-5'>TinyOS</b>程序設計

    nRF24L01無線通信模塊使用簡介

    nRF24L01無線通信模塊使用簡介(STC51)nRF24L01研一課設做過一個基于nRF24L01的
    發表于 11-23 17:51 ?48次下載
    <b class='flag-5'>nRF24</b>L01<b class='flag-5'>無線通信</b><b class='flag-5'>模塊</b>使用簡介
    百家乐官网博娱乐网提款速度快不| 香港六合彩资料| 百家乐官网如何破解| 百家乐赌博论坛博客| 菲律百家乐官网太阳城| 大发888怎么代充| 24楼层风水| 百家乐官网代打公司| 淘宝博百家乐的玩法技巧和规则| 百家乐官网赌场玩法技巧| 棋牌室高尔夫娱乐场| 立即博百家乐现金网| 百家乐官网技巧和规律| 威尼斯人娱乐城进不了| 24山吉凶视频| 娱乐城百家乐官网打不开| 大发888在线娱乐合作伙伴| 366百家乐娱乐城| 百家乐官网百家乐官网视频游戏世界 | 网上百家乐作弊不| 来博百家乐官网现金网| 网上老虎机游戏| 百家乐是如何骗人的| 百家乐官网桌出租| 海王星开户| 新濠峰百家乐的玩法技巧和规则| 任你博百家乐官网娱乐城| 百家乐官网单跳投注法| 大发888娱乐城官方下载安装| 百家乐足球投注网哪个平台网址测速最好 | 大发888私网开户| 足球百家乐网上投注| 百家乐官网视频造假| 西乌| 全讯网3344111.com| 太阳城百家乐168| 百家乐官网入庄闲概率| 百家乐官网算号软件| 德州扑克牌型| 狮威百家乐娱乐城| 百家乐太阳城小郭|