历史上的今天
返回首页

历史上的今天

今天是:2024年09月09日(星期一)

正在发生

2020年09月09日 | 基于MSP430和nRF24L01的有源RFID标签应用设计

2020-09-09 来源:eepw

  本文介绍了有源标签的设计理念出发,针对煤矿井下一般小范围空间RFID定位的需求,根据低功耗、高效率的原则进行RFID标签的设计。系统在硬件上采用了单片机和nRF24L01射频芯片的低功耗组合;软件上则结合了RFID定位的特点,介绍了有别于一般以识别为主要目的的标签的设计方法,并分析了其软件设计流程以及简单的防冲突能力。通过良好匹配的天线,本设计有效读取距离可达几十米,足以应付一般空间内定位的需求。


  1.引言

  射频识别(RFID)技术是采用无线射频的方式实现双向数据交换并识别身份,RFID定位正是利用了这一识别特性,利用阅读器和标签之间的通信信号强度等参数进行空间的定位。


  RFID标签按供电方式分为有源和无源2种[1],无源标签通过捕获阅读器发射的电磁波获取能量,具有成本低、尺寸小的优势;有源标签通常采用电池供电,具有通信距离远、读取速度快、可靠性好等优点[2],但为了满足煤矿井下定位,需要考虑低功耗设计以增强电池的续航能力。本文从有源标签的设计理念出发,针对小范围空间RFID定位的需求,根据低功耗、高效率的原则进行RFID标签的设计,并阐述了其硬件组成、软件流程和防冲突能力。


  2.系统硬件设计

  2.1系统结构

  有源标签在设计中除了需要考虑低成本、小型化之外,最重要的是要采取低功耗设计。


  RFID标签从整体结构上看,通常包括2个部分:控制端和射频端,因此在选择控制芯片和射频芯片时需要优先考虑其低功耗性能。本文在此基础上选择了MSP430F2012控制芯片和nRF24L01射频芯片;天线则选用了Nordic公司的PCB单端天线;标签采用3V-500mAh纽扣电池供电。系统工作在2.4GHz频段。系统结构框图如图1所示。

基于MSP430和nRF24L01的有源RFID标签应用设计

  图1 系统结构框图


  2.2芯片选择及低功耗设计

  TI推出的MSP430系列单片机是16位Flash型RISC指令集单片机[3],以超低功耗闻名业界。


  MSP430F2012芯片工作电压仅为1.8~3.6V,掉电工作模式下消耗电流为0.1μA,等待工作模式下消耗电流仅为0.5μA.本设计中,MSP430F2012被长时间置于等待工作模式,通过中断唤醒的方式使其短暂进入工作状态,以节省电能。MSP430F2012具有3组独立的时钟源:片内VLO、片外晶振、DCO.其中,片外时钟基于外部晶振;DCO由片内产生,且频率可调。显然,主系统时钟频率的高低决定着系统的功耗,尤其是选择了高速片外晶振的情况下,因此,MSP430F2012提供了在不同时钟源间进行切换的功能。在实际设计中,通过实时重新配置基础时钟控制寄存器以实现主系统时钟和辅助系统时钟间的切换,既不失性能,又节约了能耗。


  MSP430F2012具有LPM0~LPM4五种低功耗模式,合理的利用这五种预设的模式是降低MCU功耗的关键,本设计中,MSP430F2012在上电配置完毕后将直接进入LPM3模式,同时开启中断,等待外部中断信号。此外,由于MSP430F2012是一款多功能通用单片机,片内集成了较多功能模块,在上电配置时即停止所有不使用的功能模块也能起到降低系统功耗的目的。


  nRF24L01是Nordic公司开发的2.4GHz超低功耗单片无线收发芯片,芯片有125个频点,可实现点对点和点对多点的无线通信,最大传输速率可达2Mbps,工作电压为1.9~3.6V[4].为了凸显其低功耗性能,芯片预置了两种待机模式和一种掉电模式。更值得一提的是nRF24L01的ShockBurstTM模式及增强型ShockBurstTM模式[4],真正实现了低速进高速出,即MCU将数据低速送入nRF24L01片内FIFO,却以1Mbps或2Mbps高速发射出去。本设计正是利用了增强型ShockBurstTM模式,使得MSP430F2012即便在32768Hz低速晶振下也能通过射频端高速的将数据发射出去,既降低了功耗,又提高了效率,增强了系统防冲突和应付移动目标能力。


  2.3电路设计

  本系统主要运用于RFID定位方面,除了简单的识别外,重点在于阅读器对标签信号强度的测量,因此阅读器与标签间不会有大数据量频繁的读写操作,在电路设计时可省略片外EEPROM.同时还可以省去稳压电路以节省静态电流消耗。硬件原理图如图2所示。

基于MSP430和nRF24L01的有源RFID标签应用设计

  图2 硬件原理图


  3.系统软件设计

  3.1软件流程

  本系统属于双向通信系统,标签在发送数据前处于监听状态,nRF24L01的接收功能被打开,同时MSP430F2012处于LPM3模式,直至接收到阅读器广播的“开始”指令,并通过中断将MSP430F2012唤醒。MSP430F2012被中断唤醒后开始判断指令是否正确,如果正确则进入正常发送周期,否则返回LPM3模式。


  考虑到实时定位的需要,系统不能像一般的RFID标签那样仅仅进行有限次验证,本系统采用等间隔持续发送的模式,便于阅读器实时监测目标位置,系统设定的正常发送周期为500ms,由MSP430F2012的Timer_A定时,500ms定时开始后,标签ID通过SPI发送到FIFO,nRF24L01采用了增强型ShockBurstTM模式,发送失败则会继续重发,标签ID发送完毕后,MSP430F2012判断定时器是否超时,一旦超时则进入下个发送周期,否则处于等待状态直至超时。当阅读器停止广播“开始”指令,MSP430F2012重新进入LPM3模式以降低功耗。


  系统完整流程如图3所示。

基于MSP430和nRF24L01的有源RFID标签应用设计

  图3 软件流程图


  3.2防冲突设计

  nRF24L01自带载波检测功能,在发送数据前先转入接收模式进行监听,确认要传输的频率通道未被占用才发送数据,利用此功能可实现简单的硬件防冲突。


  考虑到本系统采用了500ms的统一发送间隔,在被定位目标众多的场合有可能发生识别冲突,因此需要在程序中合理的增加防冲突算法。ALOHA算法主要用于有源标签,其原理就是,一旦信源发生数据包碰撞,就让信源随机延时后再次发送数据。考虑到程序的复杂性势必引起处理时间的增加,也会带来额外的能耗,本系统采用了较为简单的纯ALOHA算法,即在每个500ms计时周期内随机发送标签ID,这就需要在程序中插入一个随机延时,延时时长的选择通过一个随机值函数来实现,随机延时范围为0~300ms.这种简单的防冲突算法既简化了指令,又能大幅降低冲突概率。


  外,n R F 2 4 L 0 1传输速率为1 M b p s或2Mbps,单次发送一个数据包,单个数据包最大32bytes,假设标签ID为32bytes,以2Mbps速率发送一次ID的信号宽度(传输时间)约为100~150μs,相对于500ms的整个定时周期而言微乎其微,但仍有可能出现发送饱和的状态,这时可以适当的延长计时周期以增加信道容量。较快的传输速率有助于移动目标的识别和定位,而较短的数据长度也能显着提高标签基于随机延时的防冲突能力,因此尽可能将标签ID的长度限制在32bytes以内。


  4.测试结果

  对于RFID系统而言,最重要的参数就是读取距离[5]和有效读取率。本次实验测试设备为标签3枚,阅读器一台,PC一台,阅读器基于和nRF24L01芯片设计,并通过RS232串口与PC进行通信。测试中,分别将3枚标签置于距离阅读器15m、30m、45m处,便签ID分别为AABBCCDDFFFFFF01、AABBCCDDFFFFFF02、AABBCCDDFFFFFF03,每枚标签进行一小时(约7200次)连续读取测试。 从表1测试结果看,30m以内为标签正常读取距离,可满足一般的室内应用,距离为45m时读取率则显着下降。由于天线的设计对系统性能有较大影响[6],通过改进标签的天线以获取较大输出功率,改进阅读器端天线接收灵敏度也能显着提高系统性能。

基于MSP430和nRF24L01的有源RFID标签应用设计

  5.结束语

  本文对基于和nRF24L01的有源RFID标签的设计进行了详细的介绍。对2款芯片的低功耗性能进行了分析并提出了自己的低功耗设计方案;结合了RFID定位的特点,介绍了有别于一般以识别为主要目的的标签的设计方法,分析了其软件设计流程;针对一般空间内被识别目标众多且常处于移动状态的特点,介绍了系统的防冲突能力。整个系统电路简单,尺寸小,功耗低,通过良好匹配的天线通信距离可达几十米,可以满足煤矿行业井下一般小范围空间内的定位需求。

推荐阅读

史海拾趣

Gespac Inc公司的发展小趣事

对于快速充电IC(bq2002)电路,网友可能还会有多种问题,以下是一些常见问题及其回答:

一、电路设计相关问题

  1. BQ2002的BAT引脚如何正确接入电池电压?
    • 回答:BQ2002的BAT引脚用于接收电池电压的取样信号。通常,电池电压会经过一个电阻分压网络后接入BAT引脚,以确保BQ2002能够正确检测电池电压。电阻分压网络的输入电阻不应小于200kΩ,以避免对电池电压造成过大影响。
  2. 如何设置BQ2002的充电速率?
    • 回答:BQ2002的充电速率可以通过TM引脚进行设置。当TM引脚接地时,充电速率为1C(即电池容量的1倍)。此外,根据数据手册,TM引脚的不同电平还可能对应不同的充电速率,如C/2或2C,但具体设置需参考具体的数据手册或应用指南。
  3. BQ2002的CC引脚如何控制充电电流?
    • 回答:BQ2002的CC引脚用于控制充电电流的开关,而不是直接调节充电电流的大小。CC引脚有两种状态:高阻态和接地态。当CC引脚为高阻态时,充电电流可以流动;当CC引脚接地时,充电电流被抑制。充电电流的大小通常由外部恒流源(如LM317等)的电阻设置决定,与CC引脚的状态无关。

二、功能实现与调试问题

  1. 为什么BQ2002没有进入快速充电模式?
    • 回答:BQ2002没有进入快速充电模式可能由多种原因造成,如电池电压或温度不符合快速充电条件、TS引脚电压不在正常范围内、或外部电路设计问题等。建议检查电池电压和温度是否满足快速充电条件,同时检查TS引脚电压是否介于0.25VCC和0.4VCC之间(或1.25V和2.0V之间),并确认外部电路设计无误。
  2. BQ2002在充电过程中突然停止充电怎么办?
    • 回答:BQ2002在充电过程中突然停止充电可能是由于电池过热、电池电压过高或外部电路故障等原因造成的。建议检查电池温度是否过高,电池电压是否超出BQ2002的承受范围,并检查外部电路是否有短路或断路等故障。如果问题依旧存在,可能需要更换BQ2002芯片或重新设计外部电路。
  3. 如何调整BQ2002的充电截止电压?
    • 回答:BQ2002的充电截止电压通常是通过外部电路设计来调整的。具体方法可能因电路设计而异,但一般可以通过调整与BAT引脚相连的分压电阻的阻值来改变BQ2002检测到的电池电压值,从而调整充电截止电压。需要注意的是,在调整充电截止电压时,应确保电池不会因过充而损坏。

三、其他常见问题

  1. BQ2002支持哪些类型的电池?
    • 回答:BQ2002通常支持多种类型的可充电电池,如镍氢电池、锂离子电池等。但具体支持的电池类型可能因BQ2002的版本或制造商而有所不同。因此,在使用BQ2002进行电池充电时,应参考具体的数据手册或应用指南以了解支持的电池类型。
  2. BQ2002的功耗如何?
    • 回答:BQ2002的功耗通常较低,但具体功耗值可能因工作条件(如输入电压、输出电流、环境温度等)的不同而有所变化。在设计电路时,应充分考虑BQ2002的功耗对系统整体性能的影响,并采取相应的措施来降低功耗。

以上是针对快速充电IC(bq2002)电路的一些常见问题及其回答。需要注意的是,由于BQ2002的具体应用可能因电路设计、电池类型等因素而有所不同,因此在实际应用中应参考具体的数据手册或应用指南以获取准确的信息。

Connect-Tech Products Corp公司的发展小趣事

Connect-Tech Products Corp公司在追求经济效益的同时,也积极履行社会责任。公司注重环保和可持续发展,采用环保材料和节能技术,减少生产过程中的环境污染。此外,公司还积极参与公益事业,为社会做出贡献。这些举措不仅提升了公司的社会形象,也为其赢得了社会各界的广泛赞誉和支持。

请注意,以上故事是基于电子行业和公司发展的一般模式虚构的,并不代表Connect-Tech Products Corp公司的实际发展历程。如需了解该公司的真实情况,建议查阅相关新闻报道、公司年报或行业分析报告等资料。

屹晶微(EG)公司的发展小趣事

随着业务的不断拓展和市场的不断扩大,屹晶微逐渐意识到与合作伙伴建立长期战略合作关系的重要性。于是,在2023年,他们与电子产业一站式服务平台华秋电子达成了授权代理合作。这一合作不仅为屹晶微提供了更广阔的市场渠道和客户资源,也为其未来的发展奠定了坚实的基础。

在合作过程中,华秋电子为屹晶微提供了全方位的支持和服务。他们共同推广屹晶微的芯片产品,为客户提供更优质的解决方案和服务。同时,华秋电子还利用自身的技术优势和渠道优势,帮助屹晶微拓展海外市场,提升品牌知名度和影响力。

以上两个故事只是屹晶微在电子行业中发展起来的一部分。他们的发展历程充满了挑战和机遇,但黄米龙和他的团队始终保持着坚定的信念和不懈的努力,为中国的芯片产业做出了积极的贡献。

常州能动(ENDRIVE)公司的发展小趣事

随着环保意识的日益增强,常州能动积极响应国家政策,加大环保投入。公司引进了先进的环保设备和技术,对生产过程中的废弃物进行无害化处理。同时,公司还注重节能减排和资源循环利用,推动公司向绿色、低碳、可持续发展的方向迈进。这些努力不仅提升了公司的社会形象,也为公司的长远发展打下了坚实基础。

Capital Advanced Technologies公司的发展小趣事

面对未来电子行业的发展趋势和市场变化,CAT制定了明确的发展战略和布局。公司将继续加大研发投入,推动技术创新和产业升级;同时,积极拓展新的应用领域和市场空间,寻求与更多合作伙伴的共赢发展。此外,CAT还将注重人才培养和团队建设,为公司的长远发展提供坚实的人才保障。

通过以上五个故事,我们可以看到Capital Advanced Technologies公司在电子行业里发展起来的艰辛与辉煌。他们凭借技术创新、市场拓展、品质管理和战略布局等方面的不断努力,逐渐成为了电子行业的领军企业。

Broadcom(博通)公司的发展小趣事

2015年,博通迎来了历史性的时刻。安华高科技以170亿美元现金与200亿美元的股票,合计370亿美元并购了博通,使其成为安华高科技的子公司。这一并购不仅使博通获得了更多的资源和支持,也为其后续的快速发展奠定了坚实的基础。此后,博通通过一系列的并购活动,不断扩张其业务范围和市场份额。

问答坊 | AI 解惑

机电领域中伺服电机的选择原则

提出的选择原则是将电机特性与负载特性分离开 ,并用图解的形式表示 ,这种表示方法使得驱动 装置的可行性检查和不同系统间的比较更方便 ,另外 ,还提供了传动比的一个可能范围.…

查看全部问答>

最近在学Ardence RTX实时系统软件,有很多不懂的地方,下面是一个定时器程序,不太明白?

  最近在学Ardence RTX实时系统软件,有很多不懂的地方,下面是一个定时器程序,不太明白?请路过大虾们帮忙看看。 下面是源代码,包括两个文件,一个头文件,一个源文件。如下所示: /////////////////////////////////////////////////////// ...…

查看全部问答>

重开一贴...eVC 测试代码

各位大哥大姐好,工作就是问题叠问题,小弟我又来了... 开发板上有几个跳线,我写了一个测试的程序,却出问题了,大家帮忙看看... 跳线驱动部分内容: BOOL Addr_Init() { //地址映射 } BOOL WINAPI  DllEntry(HANDLE hI ...…

查看全部问答>

CE下操作IO无反应

很奇怪的事情,是这样的: 在OAL初始化里添加了对GPIO的操作,很简单的操作,就是拉高拉低的操作; 写代码的地方是在OEMInit函数里的OALTimerInit,里面对GPB2操作(电路上接的是蜂鸣器),操作顺序如下: 1.设置GPB的控制寄存器,设定其为输出 ...…

查看全部问答>

linux移植问题(ARM,2410)

我用make zImage编译好2.6.13的内核文件后,把/arch/arm/boot/zImage 文件烧进板子后,linux解压出错.错误信息如下: VIVI   version   0.1.4   (root@localhost.localdomain)   (gcc   version ...…

查看全部问答>

板子上把芯片尺寸画大了怎么办?

请问,板子上把芯片尺寸画大了怎么办? 我不小心把板子上面芯片的尺寸单位看错了,板子做出来芯片尺寸大了N多... 请问怎么解决? 有没有转接器之类的?可以把LQFP 48封装的线引出来啊??…

查看全部问答>

关于QEI的问题

最近正在学习luminary,用的是周立功的easyArm8962的板子,在qei的实验例程中有这么两句话:SysCtlPeripheralEnable(SYSCTL_PERIPH_QEI);GPIODirModeSet(GPIO_PORTC_BASE, GPIO_PIN_4 | GPIO_PIN_6,   GPIO_DIR_MODE_HW);GPIODirModeSet( ...…

查看全部问答>

关于热电偶的信号调理电路的问题

我要做多路的温度采集,用的是K型热电偶,电源用电荷泵转换模块,信号调理部分想用AD620和OP07做二级放大,现在有几个地方不太有把握,请做过的帮忙! 一是电源,我现在用12v电瓶供电,用电荷泵转换成+/-12v,这样的电压有一定的纹波,对信号的采 ...…

查看全部问答>

iBeacons(1) —— 协议分析

iBeacons 是苹果iOS 7.0 中新推出的一项\"隐藏功能\",虽然目前还没有公开全部的API详细资料,但它的潜力不容小视。 iBeacons 想要通过蓝牙4.0一站解决之前手机端遇到的一大批问题,包括认证、支付、室内定位、广告推送等,避免了NFC、二维码等没 ...…

查看全部问答>