tag 标签: nrf905

相关博文
  • 热度 8
    2015-7-16 17:29
    1469 次阅读|
    0 个评论
    ZQ-CC2500PA模块可适用于多种无线通讯应用,如超低功耗无线收发器、无线传感网络、家庭和楼宇自动化、高级抄表架构(AMI)、无线计量、无线报警和安全系统等。
  • 热度 14
    2015-3-24 13:24
    1065 次阅读|
    0 个评论
      随着计算机技术的迅速发展,电子信息技术越来越快地普及到各行各业的应用中去。传统的物流信息采集工作方式是通过工作人员将票物进行核对,然后将票上的数据输入到计算机中。这一过程费时费力,并且可能由于各种人为过失造成各种各样错误数据的存在,影响所采集信息的可靠性。而自动识别技术利用计算机进行自动识别,增加了输入的灵活性与准确性,使人们摆脱繁杂的统计识别工作,并且大大提高了物流信息采集的工作效率。目前,由沃尔玛、麦德隆等大超市一手推动的RFID应用,为零售业带来包括降低劳动力成本、商品的可视度提高,降低因商品断货造成的损失,减少商品偷窃现象等好处。其可应用的过程包括:商品的销售数据实时统计,补货,防盗等。本文利用RFID技术,用FPGA芯片与NRF905搭建了无线通信系统,成功的实现了无线收发数据。    1 系统设计   1.1 RFID简介   RFID(Radio Frequency Identification,射频识别技术)是利用无线电波对记录媒体进行读/写。射频识别的距离可达几十厘米至几米,且根据读/写的方式,可以输入数千字节的信息,同时,还具有极高的保密性。射频识别技术适用的领域:物料跟踪、运载工具和货架识别等要求非接触数据采集和交换的场合,要求频繁改变数据内容的场合尤为适用。如香港的车辆自动识别系统驾易通,采用的主要技术就是射频技术。射频技术在其他物品的识别自动化管理方面也得到了较广泛的应用。   如图1所示即为本无线系统的整个构架,由控制模块,SPI模块以及天线模块构成。其中对SPI模块的配置由控制模块通过Wishbone总线来完成,并且对天线模块的配置,模式转换,收发数据等操作均由控制模块通过SPI总线来完成。下面将就各个部分进行说明。    1.2 天线模块(NRF905收发模块)   1.2.1 NRF905介绍   NRF905是挪威Nordic公司推出的单片射频发射器芯片,工作电压为1.9~3.6 V,32引脚QFN封装,工作于433/868/915MHz三个ISM频道。可以自动完成处理字头和CRC(循环冗余码校验)的工作,可由片内硬件自动完成曼彻斯特编码/解码,使用SPI接口与微控制器通信,配置方便,功耗低,以-10 dBm的输出功率发射时电流只有11 mA,在接收模式时电流为12.5 mA。   NRF905有ShockBurst接收与ShockBurst发送两种工作模式;掉电和SPI编程与Standby和SPI编程两种节电模式。其ShoekBurst工作模式的特点是自动产生前导码和CRC,可以通过SPI接口进行编程配置。NRF905的工作模式由对TRX_CE,TX_EN,PWR_UP的设置来设置,见表1。    1.2.2 NRF905配置与工作过程   nRF905的所有配置都通过SPI接口进行。SPI接口由5个寄存器组成,一条SPI指令用来决定进行什么操作。SPI接口只有在掉电模式和Standby"模式是激活的。   其中SPI接口的5个寄存器分别为:   (1)状态寄存器:寄存器包含数据就绪DR和地址匹配AM状态。   (2)RF配置寄存器:寄存器包含收发器的频率、输出功率等配置信息。   (3)发送地址:寄存器包含目标器件地址,字节长度由配置寄存器设置。   (4)发送有效数据:寄存器包含发送的有效Shock Burst数据包数据,字节长度由配置寄存器设置。   (5)接收有效数据:寄存器包含接收到的有效ShockBurst数据包数据,字节长度由配置寄存器设置。在寄存器中的有效数据由数据准备就绪DR指示。   ShoekBurst技术使nRF905能够提供高速的数据传输,而不需要高速控制器来进行数据处理或时钟覆盖。通过将与RF协议有关的高速信号处理放到芯片内,nRF905提供给应用控制器一个SPI接口,速率由微控制器自己设定的接口速度决定。nRF905通过ShockBurst工作模式在RF以最大速率进行连接时降低数字应用部分的速度来降低在应用中的平均电流消耗。在ShockBurst RX(接收)模式中,地址匹配AM和数据准备就绪DR信号通知控制器一个有效的地址和数据包已经各自接收完成。在ShockBurst TX(发送)模式中,nRF905自动产生前导码和CRC校验码,数据准备就绪DR信号通知控制器数据传输已经完成。    1.3 SPI模块   1.3.1 SPI总线介绍   SPI(Serial Parallel Bus)总线是Motorola公司提出的一个同步串行外设接口,容许CPU与各种外围接口器件,以串行方式进行通信。它使用4条线:串行时钟线(SCK)、主机输入/从机输出线(MISO)、主机输出/从机输入线(MOSI)、低电平有效的使能信号线(SS)。这样,仅需3~4根数据线和控制线即可扩展具有SPI接口的各种I/0器件。   SPI总线模式的数据是以字节为单位进行传输的(一次传输可以传多个字节),每字节为8位,每个命令或者数据块都是字节对齐的(8个时钟的整数倍)。数据按位传输,高位在前,地位在后,为全双工通信,数据传输速度总体来说比I2C总线要快,速度可达到每秒几兆比特。SPI接口是以主从方式工作的,这种模式通常有一个主器件和一个或多个从器件。在本文设计的无线通信系统中,由FPGA实现的SPI总线接口模块为主机,NRF905的SPI模块为从机。   SPI时序模式的选择:   SPI接口有4种不同的数据传输时序,取CPOL和CPHL这两位的组合。CPOL是用来决定SCK时钟信号空闲时的电平;CPOL=O,空闲电平为低电平,CPOL=1时,空闲电平为高电平。CPHA是用来决定采样时刻的,CPHA=0,在每个周期的第一个时钟沿采样;CPHA=1,在每个周期的第二个时钟沿采样。   图2为NRF905的SPI接口的时序图,由此本文设计的SPI工作模式是在CPOL=O,CPHA=O这种时序下。    1.3.2 SPI硬件设计   图3是本文无线通信系统中SPI模块的结构图,该系统中的SPI主要由时钟生成模块,SPI寄存器组,SPI功能配置的模块组成,并且通过Wishbone总线与控制器相连,具体设计如下:   时钟生成模块:由于SPI模块是基于FPGA来实现的,而FPGA外部提供的时钟较快(50 MHz或100 MHz),不适合与NRF905的SPI接口进行通信(1 Hz~10 MHz),所以需要分频来使时钟慢下来。但是至于几分频是由SPI功能配置模块来完成的。其次由于SPI协议指出数据可在上升沿或下降沿触发,所以还需要对时钟的上升沿或下降沿进行鉴别(也称抓沿程序),这个功能也由这个模块完成。   SPI寄存器模块:这个模块实现的是一个由16个8位寄存器组成的128位的寄存器组,也就是说通过SPI接口一次性可收发8~128位的串行数据。具体操作由SPI功能配置模块来完成。   SPI功能配置模块:这个模块相当于一个SPI控制器,通过对其寄存器的配置来决定时钟的分频数,收发数据位数,时钟上升沿或下降沿传输数据等,而对这些寄存器的配置是由控制模块完成的。下面就配置寄存器做一些简要说明。   首先介绍控制寄存器:   控制寄存器第O位go:是否开始发送。   控制寄存器第1位rx_negedge:接收数据是下降沿还是上升沿。   控制寄存器第2位tx_negedge:发送数据是下降沿还是上升沿。   控制寄存器第3~9位char_len:发送数据的位数(因为SPI是全双工的,所以这实际上也是接收数据的位数)。   控制寄存器第10位lsb:是从高位发送还是地位发送。   控制寄存器第11位ie:读写完成之后是否发送中断信号。   控制寄存器第12位ass:是否自动产生片选信号。   分频寄存器:spi_divider_sel。   状态寄存器:spi_ctrl_sel。   数据寄存器O:spi_tx_sel 。   数据寄存器1:spi_tx_sel 。   数据寄存器2:spi_tx_sel 。   数据寄存器3:spi_tx_sel 。   片选信号寄存器:spi_ss_sel。    1.4 控制模块   对于控制模块来说,其实现方法是利用基于Verilog语言的有限状态机来实现,相当于一条一条的指令来控制SPI模块接收发送数据。控制模块分成三个独立的部分即接收控制模块、发送控制模块及NRF905配置模块。其中接收与发送控制模块分别包含对SPI进行配置的状态。下面对接收控制模块的设计进行说明。图4即为Debussy综合出的状态机转换图。   为了完成无线通讯而设计的状态较多,比较复杂,故只对比较重要的状态做些简要说明。idle空闲状态,完成对端口进行初始化寄存器清零;config_div状态,对时钟进行分频(定义sclk);configwb_in状态,定义传输数据的位数以及是上升沿收发还是下降沿收发,wb_inl,wb_in2,wb_in3,wb_in4,这四个状态就是通过Wishbone总线接口对SPI配置要写的数(每一个状态对应一个寄存器);configspi_out状态,开始传送数据;done状态,片选置高数据传送完成;readeonfigreg_prel状态,设定发送数据位数;readconfigreg(读寄存器控制字位数)状态,通过Wishbone总线接口对SPI配置读命令字;readconfigreg_out状态,设定发送/接收数据位;alldone状态,片选置高完成配置数据读取的过程。   该设计考虑到验证配置过程的正确性,故特意设定了读寄存器配置数据的状态,ehangemode就是接收状态,当接收完成后(DR=1)进入eh-angmodee状态,把收到的数据读出来。然后再回到readeonfigreg_prel状态,等待新的传输数据。    2 系统验证   该设计最后进行了板级验证,FPGA开发板与NRF905的PCB板构成这个验证系统。FPGA芯片的采用Xilinx公司的XC2V1000,所用的综合工具是Synplify,前仿真与后仿真用来查看波形的工具是Modelsim,所用到的布局布线工具与下载工具是ISE10.1集成的iMPACT,而板级测试用来查看波形的工具是Chipseope。   在下载之前对本设计进行了充足的功能仿真,用Verilog编写了SPI从机模仿NRF905的SPI接口与SPI主机进行通信,确保能够完成预先设定的功能。   下载是将配置文件下载到具体的FPGA芯片中。本文系统中采用的是JTAG下载方式,下载工具使用Xilinx ISE的集成工具iMPACT。在下载之前进行了管脚绑定其目的就在于能够将设计的输入/输出端口约束在FPGA芯片的合适的引脚上,以方便对其进行分析和调试并与外界I/O进行相连。下面即为本设计中相应的管脚约束文件中的相关内容。   下载完成后,依照管脚绑定将FPGA开发板与NRF905的PCB相连,图5即为无线收发的PCB连接图。   这只是其中一端,在这里假定为接收端,那么另外还有一样的互连PCB板作为发送端。右边的PCB板为FPGA用来实现SPI模块与控制模块。左上倒凸字形的小PCB板即为NRF905,左边的PCB板起到了连接FPGA与NRF905的左右,并给NRF905提供电源。   系统建立起来后,下一步是最终的板级验证。图6为用Chipscope得到的波形图。mosi与miso分别是发送端与接收端SPI总线上的信号。从图中可以看出数据基本吻合,由此表明设计的以FPGA控制NRF905的无线通信系统能够正常工作。    3 结语   本文实现了以FPGA控制NRF905的无线通信系统,通过对系统的建立与仿真测试以及板级验证,证明了无线通信系统能够正常工作,而且无线系统通信距离可达100 m,基本完成了无线系统通信的要求,充分说明该设计系统的实用性。
  • 热度 17
    2014-8-26 20:12
    1717 次阅读|
    2 个评论
    之前用的无线模块之一,接触过的无线模块挺多的。短距离的2401.长距离大功率的SI4432 。还有ADI有一款免费的申请样片ADF70XX来着。这个没玩过。有兴趣的可以自己申请来玩玩。 这里简单的说下NRF905.这个大家估计都很熟悉。是目前楼主我记忆中比较大功率的无线模块了。可达10dbm.但是灵敏度不行。虽然也很高。相比某些芯片灵敏度不能和别人比的。另外NRF905和NRF903是一个家族的。但是903更贵。因为他指标更高。905自己试过。看文档上说的是传输距离可到1000M.但是自己真是倒了1000米时候不能通信了。 这不能全部怪罪于芯片。虽然说是这么说能传输这么远。这是理论的。但是实际上可能牺牲了其他的指标来取代这个传输距离。而数据手册确实为了努力实现这个指标而牺牲了其他的指标。这就和我们不能把所有的东西都尽可能做到完美!就好比你喜欢一个对象。但是你要求人家漂亮,温柔,贤惠,还会煮饭。并且有文凭。但是当你看到这样的人时候他看上你的几率估计不大吧?  指标这东西和我们生活中的许多东西原理一样!!有舍必须有得。 1000距离没成功。但是10多层楼上到楼下是成功的。另外2懂大楼的顶层也是成功 的(估计有几百米吧) 另外。NRF905如下: (1) 433Mhz  开放 ISM  频段免许可证使用       (2)  最高工作速率 50kbps ,高效 GFSK 调制,抗干扰能力强,特别适合工业控制 场合       (3) 125  频道,满足多点通信和跳频通信需要       (4)  内置硬件 CRC  检错和点对多点通信地址控制       (5)  低功耗 1.9 - 3.6V  工作,待机模式下状态仅为 2.5uA        (6)  收发模式切换时间    650us        (7)  模块可软件设地址,只有收到本机地址时才会输出数据(提供中断指示 ) ,可 直接接各种单片机使用,软件编程非常方便       (8) TX Mode:  在 +10dBm 情况下,电流为 30mA; RX Mode: 12.2mA      (9)  标准 DIP 间距接口,便于嵌入式应用   422.4~473.5MHz工作频段 512个通讯频道,满足多点通讯、分组、跳频等应用需求,通道切换时间≤6us 发射功率可设置为:10dBm、6dBm、-2dBm和-10dBm 通过SPI接口与MCU连接 支持50kbps传输速率 ShockBurst传输模式,自动生成前导码和CRC校验码 工作电压范围:1.9V~3.6V,待机模式下电流仅为12.5μA nRF905片内集成了电源管理、晶体振荡器、低噪声放大器、频率合成器功率放大器等模块,曼彻斯特编码/解码由片内硬件完成,无需用户对数据进行曼 彻斯特编码,因此使用非常方便。 结构图: 另外内部模式什么的太多了。说多了反而觉得烦。其实说白了就是个SPI通信。寄存器设置对了就通信而言没什么大问题。这里不做介绍。 另外这板子设计了MSP430+串口。
  • 热度 15
    2013-12-20 08:26
    822 次阅读|
    0 个评论
             无线传感器网络是计算机技术、传感器技术和网络通信技术相结合的产物。它由大量随机分布的、具有实时感知、无线通信和自组织能力的传感器节点组成 。随着无线技术的高速发展,无线传感器网络越来越多地走进人们的视野中。与有线技术相比,无线技术具有成本低、体积小、省去复杂的布线等优点。但是由于现有的无线传感器节点大都采用电池供电,放置地点随机变动,随时可能出现节点中断的情况,通信能力十分有限,需要经常性的人工维护。因此,无线传感器网络节点要具有自组织、中断自我修复的功能,需要设计合适的通信协议和路由算法,以提高系统通信的可靠性。为此,本文采用无线射频芯片nRF905和STC12系列单片机设计了一种无线传感器节点,并且在典型自组织网络的通信协议-动态源路由协议DSR(Dynamic Source Routing) 的基础上,针对路由维护算法做出改进,设计出一种易于实现且实用性高的通信协议,实现了自组织和多跳传输数据的无线通信系统。 1节点硬件设计 节点分为协调器节点和普通节点,普通节点带有传感器,负责采集需要的数据并组成网络,协调器节点负责整个网络的控制和数据的汇总、分析、处理等。 STC12LE5410AD单片机是单时钟/机器周期(1T)的兼容8051内核单片机,是高速、低功耗的新一代8051单片机,指令代码完全兼容传统8051,而速度快8~12倍,内部集成硬件高速SPI(Serial Peripheral Interface)接口、2 KB EEPROM、A/D转换模块和MAX810专用复位电路。工作电压2.4~3.8 V,因此可用电池工作,并可长时间工作。器件在少于6 μs的时间内可以从低功耗模式迅速唤醒。STC12LE5410AD的超小封装、高度集成、精简外部电路可设计出更小的节点,超低的价格可以大规模铺设传感器节点。STC12LE5410AD单片机的这些特征,非常适合应用在无线传感器网络中。 1.2射频收发器件nRF905 nRF905由挪威Nordic公司生产,是一个为433/868/915 MHz-ISM(工业、科学、医疗)频段设计的单片无线收发芯片,32脚QFN封装,工作电压为1.9~3.6 V,最大发射功率为10 dBm。该收发芯片由频率合成器、接收解调器、功率放大器、晶体振荡器和调制器组成,片内自动完成曼彻斯特编码/解码。nRF905有两种活动(TX/RX)模式和两种节电模式。活动模式之间转换时间小于550 μs,活动模式与节电模式之间的转换时间小于650 μs。 nRF905通过SPI与微控制器通信,自动处理字头和循环冗余码校验(CRC)。当进行数据发送时,只需将配置寄存器信息、所要发送的数据和接收地址送给nRF905,它就会自动完成数据打包(加字头和CRC校验码)和发送。接收数据时,nRF905自动检测载波并进行地址匹配,接收到正确数据后自动移去字头、地址和CRC校验码,再通过SPI将数据传送到微控制器。 1.3硬件连接设置 STC单片机通过内部集成的硬件高速串行外设接口SPI与nRF905连接,最快可达3 Mb/s,比软件模拟SPI方式快30倍左右,大大减少了程序执行时间,提高了网络的吞吐率。同时在设计协调器节点与PC上位机软件通信程序时,利用STC单片机1T时钟的优势,设置串口波特率使用的定时器12倍速方式,使串口波特率提高至115 200 b/s,提高了协调器节点的反应速度,减少了等待时间,提高了系统的吞吐率。 2节点软件设计 本系统的软件设计分为协调器节点Connector软件和普通节点Node软件的设计,其中协调器节点作为整个网络系统的主节点,起着控制全网络的作用,通过PC机的上位机软件,可以对协调器进行接收和发送命令及数据,从而实现对整个系统网络的控制。而每个普通节点也预留通信接口,可以在需要的时候与其他设备相连接。 由于本系统实现自组织网络的需要,在物理层中为每个节点(包括协调器和普通节点)定义了相同的物理地址,实现全网的广播功能。在网络层为每个节点分配唯一的网络地址,通过软件判断接收数据的目的节点是否是本机。 图2为节点自组织流程图。当网络中增加一个新节点,新节点上电初始化后,首先会向协调器发送路由请求RREQ请求加入网络,并打开定时器;协调器收到RREQ后,记录新节点信息,并通过反路由发送应答信号ACK至源节点;如果新节点在设定的时间内收到ACK信号,表示加入网络成功,并且记录本节点至协调器的路由信息;如果在设定的时间内没有收到ACK信号,那么重新发送路由请求RREQ至协调器,如此循环直至收到ACK信号。如果重发次数达到设定的上线,仍没有收到ACK信号,则进行全网广播RREQ,并打开定时器,等待返回RREP命令;在设定时间后进行重新广播RREQ,直到到达重发上限。新节点收到RREP表示加入网络成功,同时保存RREP命令帧中的路由信息。 2.1路由协议 现有无线网状网络的路由协议通常可分为:表驱动式路由协议和按需路由协议。前者需要网络中的每个节点维护一张或多张路由表,以记录到其他节点的路由,增加了路由开销。而按需路由协议——动态源路由协议(DSR)使用了源路由,每一个数据分组的帧头中包含整条路由的信息,中间节点不需要维持当前的路由信息,分组自己带有路由信息,按需路由的特性避免了周期性路由广播和邻居节点的检测。 DSR协议包括两个过程:路由发现和路由维护。路由发现过程使用泛洪路由(Flooding Routing)。为了减少路由发现过程的开销,每一个节点都包括一个缓存器,存放最近学到的和用过的路由信息。路由维护过程是源节点用来检测网络拓扑是否发生变化的机制。若拓扑发生变化、源路由发生中断,源节点就会收到路由错误信息。其他节点收到路由错误信息后删除中断路由,并且重新发起广播寻找路由。 本系统中的路由协议采用DSR协议,并对DSR协议进行一些改进。 (1)每个节点中到达目的节点含有最多两个路由缓存。 (2)查到中断节点后先检查本节点中有无到中断节点下级节点的信息,若有,则直接使用此路由,若无,则立即广播发送RRER。 (3)所有节点收到RRER后,检查是否含有终端路由,有则删除中断路由。 系统通信协议格式如表1所示。其中,FRAME_TYPE表示命令帧类型,SOURCE_ADDR表示源地址,FIRE_ADDR表示目的地址,MID表示路由节点地址,REMIAN表示最大跳数下剩余跳数,MAX表示最大跳数,DATA表示要传输的数据,ODD代表奇校验。 2.2程序设计 2.2.1广播 在广播RREQ时,为了避免广播冲突,利用nRF905的载波检测多路访问机制CSMA/CA,发送前先进入接收模式,监听该信道是否空闲。如果检测到CD信号为高,则表示该信道被占用,根据退避延时一段时间,再检测CD信号是否为高。 而根据检测,数据包接收的时间大致为20 μs,时隙为60 μs,加上程序运行的时间,定义短帧空间SIFS和时隙分别为50 μs及100 μs,分散帧空间DIFS为SIFS加2个时隙即250 μs。CSMA/CA程序流程如图3所示,定义NB、CW和BE。 后退次数(NB):NB的初始值为0,当设备有数据要传送时,经过一段后退时间(2BE-1)×100 μs后,检测CD,若检测到信道忙,则会再一次产生倒退时间。此时NB值会加1,NB值最大定义为4。当信道在经过4次的后退延迟时间后仍为忙,则放弃此次的传送,以避免过大开销。 尝试次数(CW):循环判断当前频道是否空闲,当判断到了一定次数后该频道依然空闲则跳出循环,开始传送数据,设初值为2。 后退指数(BE):初值设为2。 本设计中,CD信号为高时必须通过切换至standby模式来使CD信号复位,以保证下次CD信号的检测。 根据nRF905模块的时序可知,模块从standby模式切换至接收或发送模式的时间为650 μs,发送和接收模式之间的切换需要550 μs,切换时间远大于时隙及DIFS的值。因此,BE设置为2,最大为4。 2.2.2数据传输 在进行数据传输时,源节点首先检查自己的缓存中是否有到目的节点的路由信息,如果没有,则先进行路由发现,与广播模式相同。如果有至目的节点的路由信息,则根据路由信息,先发送数据请求命令RTS。当目的节点接收到返回的允许发送命令CTS信号时,则表示已经建立了数据传输通道,由请求节点开始传输数据,传输完毕后,由目的节点发送DATA_ACK给源节点,表示数据发送完毕。其工作流程如图4所示。 2.2.3路由修复 数据传输时,每个节点收到数据后,都要先回复应答ACK信号给其前一个节点,再转发至下一个中继节点,节点中设置超时定时器,约等待1 633 μs ACK信号,前一个节点没有收到ACK,则重发数据,设置重发次数为3。假若重发3次都没有收到ACK信号,则判断下一个节点为中断节点。查询缓存路由中是否有其他到达中断节点下游节点的信息,有则使用这个备用路由,无则广播发送RERR给所有包含中断节点路由的源节点,每个节点在收到该RERR后,就会从它的路由缓存中删除所有包含该中断节点的路由。 路由修复示例如图5所示。节点0需要发送数据给节点5,节点0中含有到节点5的路由信息,0→1→2→5;节点0开始发送RTS,每个节点收到RTS后返回给前一个节点ACK,表示路由无中断;假若节点1没有收到ACK,重发3次后仍没有ACK返回,则判断节点2是中断节点;这时查询节点1中有无到达节点5的路由,发现1→3→4→5,则按照此路由继续发送RTS;当节点1返回DATA_ACK,表示数据传输完成,延迟10×跳数(ms)后,广播发送RRER,收到RRER的每个节点查询本节点是否含有中断路由,有则从路由缓存中删除包含中断节点的路由。 3试验结果 试验网络系统由10个普通节点和1个协调器节点组成,采用人工随机安放的方式把所有节点放置在约200 m的空旷地带。首先,把协调器节点通过串口与主控PC机连接,打开上位机控制软件,并给协调器节点上电;随后在随机放置普通节点的同时一一打开节点的电源。 通过上位机软件可以清楚地看到,每当有新节点加入网络(打开电源),上位机会实时显示出新加入节点的地址和路由信息,并且通过反向路由返回应答信号给新节点,表示成功加入网络。当所有节点都加入网络后,可以通过上位机软件看到整个网络中各个节点的路由信息,并且可以对每个节点或多个节点进行远程控制。 为了实时监测到每个节点的运行情况,每个节点程序都加入定时扫描程序,定时时间1 min,检测节点本身在1 min内是否为空闲状态,如果是空闲状态,则向协调器节点发送节点信号,保证本链路无中断;协调器在一定时间周期内,检测接收到的每个节点信号,如果缺少某个节点的信息,则由协调器发送检测信号给这个节点,寻找中断节点并进行路由维护。也可以直接通过主控电脑的上位机软件手动发送检测信号给每个节点,从而检测每个节点的运行情况。 nRF905的空中传输速率峰值为100 kb/s,有效传输速率为50 kb/s。 通过上位机软件对整个网络进行连续数据传输试验,测试在本协议下的网络吞吐率。测试条件:200 m空旷地带,分别测试一个节点至10节点网络中点对点,1跳、2跳、3跳情况下的吞吐率,数据包大小32 B。传输要求一个包到达目的节点后返回到应答表示传输完成,其吞吐率计算 如下: 测得的网络吞吐率如图6所示。可以看出,网络中进行点对点的数据传输,吞吐率约为16 kb/s,并且随着节点数的增多,影响很小;随着跳数的增加,网络吞吐率降低,但是网络中节点数量增多,同时节点传输几率增加,因此逐渐趋于稳定值。最后在网络设定最大跳数(3跳)、10个节点网络的情况下,网络吞吐率约为4 kb/s。 通过实验测得数据表明,在短距离的无线通信网络中,该系统可以稳定可靠地运行,数据传输率高,网络吞吐率完全可以达到一般的无线传感器网络的要求。并且该系统具有良好的扩展性、移植性和实用性,可广泛运用于温度、湿度、光传感器采集数据、能量监测及电路控制等技术。
  • 热度 16
    2013-9-30 20:57
    911 次阅读|
    0 个评论
       0 引 言   高压开关柜是发电厂和变电站的重要电器设备,其内部通常有六组动静触头和多处母排接头。由于这些连接部件长期处于高电压、大电流的工作状态,只要触头或接头的接触电阻有微小的增大,都将引起触头或接头处温度升高,如果没有及时处理,将会产生恶性循环,最终导致烧毁高压开关柜,甚至直接影响电力系统正常供电而造成巨大的经济损失。因此,对高压开关柜中触头和接头的温度进行实时监测,对于保障高压开关柜的安全运行,乃至电网的正常运转具有十分重要意义。   在高电压、大电流环境下,实现温度的在线监测需要解决高压隔离和抗强电磁干扰的难题。现有高压开关触头温度在线监测技术主要有多种:   (1)在母排接头和开关触点的表面涂一层随温度变化而改变颜色的材料(如感温腊),通过观察其颜色变化来大致确定温度范围。这种方法准确度低、可读性差,不能进行定量和实时测量,方法原始并对员工的要求高。   (2)利用红外测量仪,操作人员定时手持仪器对准母排接头和高压开关触点进行测量。这种方法在0~200℃之间的温度值误差小、准确度高,但是,仍然无法做到实时测量,而且价格高、光学器件在高压场合使用不便。   (3)采用光纤的方式,这种方法具体实现又分为两种,一种是采用光纤光栅温度传感器,另一种是仅利用光纤传输温度信号,两者都利用了光纤耐高压、抗腐蚀、抗电磁干扰等优点,该技术的最大缺陷是被测高压带电体与测量设备需要通过光纤连接,因此不能解决污闪的问题,严格地说该技术的安全性值得商榷;本文采用无线通信技术使温度变送器与数据集中显示器之间实现无线数据传输,可不改变开关柜内部的物理结构,就很好地解决高压隔离的问题,同时采用低功耗设计和屏蔽技术解决由此带来了温度变送器使用寿命和抗强电磁干扰的问题。    1 系统结构简介   本系统结构如图1所示,由若干无线温度变送器(以下简称变送器)、数据集中显示器(以下简称DI)、监控中心的上位机和通信链路四部分组成。变送器贴附于母排接头表面和接近开关触头的触臂上,变送器通过无线通信方式将温度数据传送给DI;DI安装于高压开关柜面板上,收集来自各变送器的温度数据并进行处理、存储、显示和实现相应的报警控制功能,所有DI通过RS 485总线与监控中心的上位机构成分布式监测系统。    2 变送器设计   2.1 硬件电路设计   变送器的结构如图2所示,主要由MCU、温度传感器、无线模块nRF905、电源电路和包裹有屏蔽层和绝缘层的外壳组成。变送器采用PIC16LF628A单片机作为处理器,该处理器具有抗电磁干扰能力强、低功耗、体积小等特点。温度传感器选用DS18B20,其测量范围为-55~125℃,精度±0.5℃,通过单总线传送数字温度信号,具有使用简单、可靠、体积小等优点。   变送器电路设计如图3,温度传感器U3的输出连接到单片机的RB5引脚,U3的地连接到单片机的RB4引脚,用于控制温度传感器工作状态,当单片机进入休眠时,停止温度传感器工作,以降低功耗;无线模块U4选用nRF905无线链路控制器设计,用于在变送器和DI之间建立无线数据传输通道,通过SPI接口与单片机连接。为了确保变送器可靠运行,必须保证变送器和无线模块电源电压的稳定,采用3.6 V的高效锂电池经电容C1~C6滤波后给变送器供电。    2.2 软件设计   变送器主要执行温度采集、数据处理和数据传送工作。为了保证变送器能可靠工作5年以上,变送器的低功耗设计是本系统的一项关键技术,除了硬件上选用低功耗元器件外,重点是变送器的工作机制。主程序流程如图4所示,主程序运行一次循环后进入休眠,采用单片机硬件“看门狗”唤醒机制,1 s唤醒一次,对看门狗复位次数进行计数,由计数值可得到时间的累加,在一定时间间隔内(约5 s)启动温度传感器并采回其数据。   其中数据采集模块包含温度采集控制算法和温度采集。由于温度传感器的转换时间较长(约1 s),分为两步采集:第一步启动并开始转换;第二步读取温度并置相关标志。有采集标志时,单片机在第一次唤醒执行第一步,在第二次唤醒执行第二步,这样单片机大部分时间处于休眠状态,以降低功耗。当不进行采集时,通过抬高温度传感器的地,关断其工作电源,进一步降低温度传感器消耗的功耗。   其中数据处理模块包含温度数据处理和数据传送。数据处理流程如图5所示,当前温度若超标或与之前一次的温度数据比较差值(温升)超标,变送器立即向DI发送最新温度值;否则,直到采集达到12次,再向主机发送温度值,即60 s发送一次,这样设计的目的是为了让DI判断变送器是否在线,又能降低变送器功耗。数据传送中包含载波检测、数据发送和发送超时处理,载波检测可以防止处于同一频道的多个变送器同时发送数据引起的冲突。    2.3 无线通信协议 设计   无线通信容易受到干扰,发送的数据越长受到干扰的程度越大,同时功耗也越大,所以设计中遵循的原则是:即要满足应用需求又要保证数据的可靠和低功耗。对变送器无线模块的配置:可配置频道达170个,频道的选择与DI地址绑定,就可以确保各个DI所组成的网络不冲突;工作频段为433 MHz;发射功率为-10 dBm,实测传送距离可达50 m,已满足现场应用需求;为了提高稳定性,开启自动重发功能;发送和接收地址都为1 B,发送和接收字节都为4 B;禁止参考时钟输出,以降低功耗;CRC校验为8 b模式;虽然无线数据包中已经包含了地址匹配和CRC校验,但是为了数据传输更可靠,数字帧中加入DI地址和变送器地址作为数据包的识别码;则变送器发送至DI无线数据包格式如表1所示。    2.4 低功耗设计   变送器中功耗最大的是无线模块,其他器件耗电量很小,而且大部分时间工作在休眠状态下。当nRF905处于接收状态时,工作电流约为9 mA;处于发送状态时,工作电流约为12.5 mA(输出功率为-10 dBm时)。如果无线模块一直运行,那么电池很快就会被耗尽。为了降低功耗,同时又保证数据通信畅通,根据系统对温度测量的需求,变送器只发送数据不接收数据,无数据发送时,无线模块进入休眠状态,无线模块休眠时功耗小于2μA;发送数据采用间歇式工作,当温度数据无异常,1 min上传一次数据,当温度数据异常时,立即上传数据;无线模块的休眠至开始发送数据时间tstart-up0.2 ms,前导码发送时间tpreamble0.2 ms,无线数据包长度N all="6" B,传输速率BR=50 Kb/s,数据发送完毕至无线模块休眠时间toff0.2 ms,则发送一次数据包时间Tsend为:   无线模块的平均工作电流(μAh)=发送电流·Tsend·次数+休眠功耗=12.5×1.46×60/3 600+2=2.31μAh   单片机休眠时功耗小于2μA,变送器的静态平均电流小于4.31μA,因此若变送器平均工作电流以5μh计算:   使用时间(年)=电池容量(Ah)/365(天)/24 h/平均电流(μAh)×1 000 000=1/365/24/5×1 000 000△22.8(年)   因此,理论计算用1 Ah的电池可供变送器工作22.8年。   经实测,变送器发送一次数据的总时间T总=唤醒时间+Tsend+进入休眠时间=1.6 ms,发送数据时的电流为14 mA,静态时的平均电流为5.5μA,则1 Ah的电池可供变送器工作19年,已满足设计需求。    2.5 抗电磁干扰设计   变送器贴附于母排接头表面和接近开关触头的触臂上,而母排或触臂上有大电流流过,会形成较大的电磁场,对变送器造成很大的电磁干扰,因此,必须采取一定的屏蔽措施来保证变送器的可靠运行。变送器的实物剖面图如图6所示,除天线外接,其他所有电路包装于一屏蔽的盒内,最大程度减少电磁辐射对变送器的干扰;温度传感器贴附在导热片上,变送器的导热片一面贴于被测量的监测点上,盒内空间全部灌胶;为了提高绝缘性能,用热缩管包裹整个变送器。    3 数据集中显示器(DI)的设计   DI主要完成对各变送器的数据收集、处理、存储、LCD显示、报警信号输出和与监控中心通信等功能。其结构如图7所示,处理器选用具有ARM7内核的32位高性能微处理器LPC2136;存储模块用于存储系统的配置信息和各种数据;实时时钟为系统提供精确时间;ID设置用于设置本机ID;无线模块nRF905实时侦听是否有变送器的数据;电源适配器将220 V市电转换成+12 V和+5 V,给DI供电;RS 485用于与监控中心的PC机通信;系统报警输出所需的声光报警经继电器隔离实现;LCD人机交互用于显示当前各变送器的温度数据信息和DI的重要信息,现场用户可执行输入、输出操作,如变送器信息查询和设置,DI运行日志查询和配置等。为了实现对各种功能方便可靠操作,软件设计上移植了实时性较好的μC/OS-Ⅱ作为操作系统。    4 应用效果   监控中心PC机客户端软件监控主界面如图8所示,从图中可以看出实时刷新温度值均在33℃左右。图9为DI管理界面,可修改DI的基本信息、控制信息和配置信息;图10为历史数据查询曲线图,为高压柜101的A相接触点250条历史记录曲线。    5 结 语   本系统结合现场应用条件,采用锂电池供电和无线数据传输方式,并且采取了绝缘和抗电磁干扰措施,很好地解决了高低压隔离、低功耗和抗强电磁干扰的技术难题,使本系统在可靠性、扩展性、成本低和安装维护方便等方面均具有突出优势,可广泛应用于高电压环境的温度在线监测领域。
相关资源
  • 所需E币: 5
    时间: 2023-8-14 10:30
    大小: 80.21KB
    上传者: 物联创客
    本资源内容概要:这是基于51单片机的DHT11温湿度采集NRF905无线传输设计,包含了C语言程序源代码(keil软件打开)。本资源适合人群:单片机爱好者、电子类专业学生、电子diy爱好者。本资源能学到什么:可以通过查看电路学习电路设计原理,查看代码学习代码编写原理。本资源使用建议:建议使用者需要具备一定电子技术基础,掌握一些常用元器件原理,例如三极管、二极管、数码管、电容、稳压器等。了解C语言基础设计原理,能看懂基础的电路图,具备一定的电路图软件使用能力。
  • 所需E币: 5
    时间: 2023-8-14 10:29
    大小: 88.98KB
    上传者: 物联创客
    本资源内容概要:这是基于51单片机的温度烟雾采集NRF905无线传输设计,包含了C语言程序源代码(keil软件打开)。本资源适合人群:单片机爱好者、电子类专业学生、电子diy爱好者。本资源能学到什么:可以通过查看电路学习电路设计原理,查看代码学习代码编写原理。本资源使用建议:建议使用者需要具备一定电子技术基础,掌握一些常用元器件原理,例如三极管、二极管、数码管、电容、稳压器等。了解C语言基础设计原理,能看懂基础的电路图,具备一定的电路图软件使用能力。
  • 所需E币: 5
    时间: 2023-8-11 17:33
    大小: 80.05KB
    上传者: 物联创客
    本资源内容概要:这是基于51单片机的温度采集NRF905无线传输设计,包含了C语言程序源代码(keil软件打开)。本资源适合人群:单片机爱好者、电子类专业学生、电子diy爱好者。本资源能学到什么:可以通过查看电路学习电路设计原理,查看代码学习代码编写原理。本资源使用建议:建议使用者需要具备一定电子技术基础,掌握一些常用元器件原理,例如三极管、二极管、数码管、电容、稳压器等。了解C语言基础设计原理,能看懂基础的电路图,具备一定的电路图软件使用能力。
  • 所需E币: 5
    时间: 2023-8-11 17:33
    大小: 80.31KB
    上传者: 物联创客
    本资源内容概要:这是基于51单片机的水位检测NRF905无线传输设计,包含了C语言程序源代码(keil软件打开)。本资源适合人群:单片机爱好者、电子类专业学生、电子diy爱好者。本资源能学到什么:可以通过查看电路学习电路设计原理,查看代码学习代码编写原理。本资源使用建议:建议使用者需要具备一定电子技术基础,掌握一些常用元器件原理,例如三极管、二极管、数码管、电容、稳压器等。了解C语言基础设计原理,能看懂基础的电路图,具备一定的电路图软件使用能力。
  • 所需E币: 5
    时间: 2023-8-10 15:33
    大小: 76.74KB
    上传者: 物联创客
    本资源内容概要:这是基于51单片机的外部中断计数NRF905无线传输设计,包含了C语言程序源代码(keil软件打开)。本资源适合人群:单片机爱好者、电子类专业学生、电子diy爱好者。本资源能学到什么:可以通过查看电路学习电路设计原理,查看代码学习代码编写原理。本资源使用建议:建议使用者需要具备一定电子技术基础,掌握一些常用元器件原理,例如三极管、二极管、数码管、电容、稳压器等。了解C语言基础设计原理,能看懂基础的电路图,具备一定的电路图软件使用能力。
  • 所需E币: 0
    时间: 2023-4-20 14:27
    大小: 7.2MB
    上传者: 木头1233
    基于NRF905无线传输模块射频发设计包含原理图及源程序
  • 所需E币: 1
    时间: 2023-4-6 13:54
    大小: 238.22KB
    上传者: 张红川
    nrf905无线收发芯片原理及设计实现.pdf
  • 所需E币: 1
    时间: 2023-4-6 14:03
    大小: 238.22KB
    上传者: 张红川
    nrf905无线收发芯片原理及设计实现.pdf
  • 所需E币: 1
    时间: 2023-3-25 09:54
    大小: 271.2KB
    上传者: 张红川
    基于nRF905模块的AT89S单片机无线收发系统设计.pdf
  • 所需E币: 0
    时间: 2022-9-26 22:59
    大小: 181.76KB
    上传者: czd886
    射频芯片nRF905在烟气脱硫系统中的应用
  • 所需E币: 1
    时间: 2022-3-28 16:49
    大小: 9.2MB
    上传者: Argent
    NRF905中文参考资料
  • 所需E币: 1
    时间: 2022-1-10 18:48
    大小: 7.22MB
    上传者: Argent
    nrf905射频发送电路图和C程序源代码
  • 所需E币: 5
    时间: 2022-1-6 09:22
    大小: 369.16KB
    上传者: ZHUANG
    基于nRF905的嵌入式智能家居无线网络系统设计
  • 所需E币: 1
    时间: 2021-3-18 11:31
    大小: 167.27KB
    上传者: zendy_731593397
    针对无线通信在测控领域的优越性,基于无线射频收发器nRF905芯片,采用分层结构,利用特殊的通信协议实现了一种传输可靠、扩展方便、使用灵活的无线数据传输系统。该系统可广泛应用于工业控制、数据采集等多个领域
  • 所需E币: 2
    时间: 2021-3-9 17:20
    大小: 4.52MB
    上传者: Argent
    本人收集了一些有关毕业设计及产品设计资料,有智能台灯,消防智能电动机设计,无线语音遥控智能车设计等课题设计,是许多在校学子毕业设计所需的参考性资源,热衷于单片机开发的网友也可了解了解,欢迎下载阅览。
  • 所需E币: 0
    时间: 2021-3-8 21:18
    大小: 3.84MB
    上传者: czd886
    基于nRF905的车辆身份无线管理系统
  • 所需E币: 0
    时间: 2021-3-8 21:18
    大小: 145.65KB
    上传者: czd886
    基于nRF905的教学楼信息管理系统
  • 所需E币: 0
    时间: 2020-12-28 21:30
    大小: 234.4KB
    上传者: stanleylo2001
    nRF905无线收发芯片的应用
  • 所需E币: 0
    时间: 2020-12-25 12:12
    大小: 750.79KB
    上传者: czd886
    基于ARM和nRF905组网的智能家居系统设计
  • 所需E币: 5
    时间: 2020-12-20 22:01
    大小: 469.49KB
    上传者: zendy_731593397
    基于nRF905芯片的无线呼号系统设计与实现