APP下载

基于AS3933的低频唤醒半主动式景点标签设计

2020-06-08彭胜敏

商丘职业技术学院学报 2020年1期
关键词:管脚景点天线

彭胜敏

(福州职业技术学院,福建 福州 350000)

景区采用的标签自助式导览系统可为游客提供全方位、个性化的导览服务,增强观众的参观体验.目前,大多数景点采用无源式或主动式有源标签等方式,为游客提供导览服务.但是,随着标签导览系统在景点的大量应用发现,游客使用无源标签时需要被动的在指定位置近距离感应标签,人性化差,而主动式标签则因其电池使用寿命较短,需频繁更换电池工不仅作量大而且给景区日常维护增加了负担.主动式标签的电池电量主要消耗在无线信号的发射上,标签全天每隔一定的时间向外发射无线信号,而标签仅在景区开放的8小时内,且有参观者靠近一定范围内才是有效工作时间,其余则是无意义的等待时间,白白耗费电能[1].针对以上问题,本文设计了一款低频唤醒半主动式标签,该标签采用低频唤醒,高频数据收发,且关闭了标签非工作时间无线信号的发射,能有效降低标签的耗电量,增加电池的使用寿命.

1 系统设计

标签固定放置在景区各参观点位置,当游客携带识别器靠近景点标签一定范围时,标签被激活.标签收发信息给游客携带的识别器,当景点附近没有游客时,标签处于睡眠省电状态.标签设计总体要求体积小、成本低,功耗小.因此,该标签采用低频唤醒、高频响应的双频通讯方式设计.低频唤醒功能主要是为了减少标签工作电流,降低标签功耗,从而延长电池寿命.高频响应主要是为高速收发数据用.该标签结构由主控MCU、低频接收模块和高频收发模块组成,如图1所示.具体工作过程是系统上电,配置好低频和高频模块后,该标签处于睡眠省电状态,当游客来到该标签一定范围时,携带的识别器收发的低频信号唤醒标签,标签通过高频收发相关信息数据给游客携带的识别器,达到景点识别的目的.

图1 半主动标签结构图

2 硬件设计

半主动式标签的硬件系统主要由3个模块组成:主控模块、低频接收唤醒模块和高频收发模块.

2.1 主控模块

综合考虑标签体积、成本和功耗,主控模块MCU采用Microchip公司的PIC16F690嵌入式微处理器.该处理器是20引脚8位 CMOS闪存单片机,具有超低功耗唤醒(ULPWU)功能,待机电流在3.0 V输入电压下小于1 mA,具有256 Byte的EEData,擦写次数达百万次,可用于存储掉电后仍需要保存的数据,芯片集成8 M内部振荡器,可以减少外部振荡器的使用.本系统采用QFN封装,体积仅为4 mm × 4 mm × 0.9 mm,并且集成同步串行端口,可用于与低频模块传输数据交互.标签的工作温度范围为 -40 -85 ℃,即使标签固定在露天阳光下也可正常工作.该模块在整个系统中主要负责初始化低频接收模块和高频收发模块以及接收低频唤醒、判断距离与高频nRF2401 数据收发等功能.

2.2 低频接收唤醒模块

为了能够检测到从各个方向发来的低频信号及时唤醒主控MCU,在设计低频输入模块时要求灵敏度要高.为此本模块采用Austriamicro公司3D-LF 唤醒接收器AS3933.此接收器芯片加载X、Y、Z三通道低频天线,可以检测到工作频率范围19 KHz-150 KHz及唤醒灵敏度80 μVrms的低频信号.AS3933在同类器件中首次提供了内置自动天线调谐器,可将天线调谐到所需的载波频率[2].其低功耗下的电流只有6 μA,工作温度范围为 -40-85 ℃ ,可以在户外正常工作,16管脚QFN(4 mmx4 mm)封装,便于标签小型化.

该模块电路图设计,如图2所示.此接收器芯片选用的外部晶振的频率为32.768 KHz,能精确产生芯片时钟信号.WAKE唤醒管脚接到主控MCU外部中断INT管脚上,唤醒时电平由低电平变成高电平,用于唤醒主控MCU. 此接收器芯片与主控MCU通过SPI串行方式通讯,用于配置AS3933和从AS3933获取数据.3路低频天线X、Y、Z分别与AS3933的LP2P、LP1P、LP3P管脚相连接.天线采用并联谐振方式,由电阻、电容、电感组成[3].天线布局及走线会影响系统整体的效果,故X、Y、Z轴天线在布局时需要相互垂直.根据并联谐振相关公式计算好C、R值后,使用Antenna Tuning功能调整谐振点时,必须要调整到125 KHz.采用3.0 V电源直接供电,电源纹波对AS3933芯片影响很大,需配滤波电容.

图2 AS3933低频接收电路

2.3 高频收发模块

为了提高传输数据量和速度,该高频收发模块采用nRF2401芯片.nRF2401是单片射频收发芯片,工作于2.4 GHz-2.5 GHz的ISM频段,输出功率和通信频道可通过程序进行配置.该芯片功耗低,以-5 dBm的功率发射时,工作电流只有10.5 mA[4],在接收模式时工作电流只有18 mA,在关机模式下,工作电流为900 nA左右. 该芯片电源电压范围为1.9 V-3.6 V,且芯片内部设置有专门的稳压电路.nRF2401芯片把频率合成器、调制器和数模转换器等集成在芯片内部,所以外围电路简单.

该模块电路图设计,如图3所示.nRF2401芯片的PWR_UP 、CE、DATA、CLK1和CS与主控MCU相接.nRF2401芯片有2个通道,按照景点标签设计要求只使用通道1收发数据,所以CLK2时钟脚接地.上电后,该模块先处于关机模式,当模块需要收发数据时,通过配置PWR_UP、CE、CS管脚状态,使nRF2401处于配置模式,然后通过配置命令使nRF2401处于收发模式,此时模块才可收发数据.为了使标签设计小型化及降低标签成本,该模块不采用外接单体天线,采用PCB天线,布局采用倒F型天线IFA.IFA天线布局把3D天线设计成了PCB板上的2D走线,既能降低成本,也能满足收发数据距离要求.

图3 高频收发电路

3 软件设计

3.1 总体设计

景点标签软件设计包含三个部分,主要是系统初始化、低频AS3933唤醒、高频nRF2401数据收发.标签主流程图,如图4所示.

图4 标签主流程图

系统上电后,初始化所有模块,主要包括主控MCU16F690管脚端口设置、nRF2401高频模块初始化、低频AS3933模块初始化,接着是主控MCU处于睡眠模式、高频收发模块处于关机模式、AS3933低频模块处于监听模式.此时,如果游客携带识别器进入到一定范围内,低频模块AS3933收到唤醒数据,拉高WAKE管脚电压,主控MCU被唤醒,开始处理数据信息,并根据RSSI的值判断距离,如果在5 m以内,唤醒nRF2401模块,收发标签数据信息,发送完毕后,系统再次进入睡眠模式.

3.2 低频唤醒模块

低频唤醒芯片AS3933上电初始化完成后,按照系统配置要求处在监听模式,如果收到固定设置的低频模式数据,AS3993判断正确,则AS3933拉高WAKE管脚电压唤醒主控MCU,主控MCU通过SPI方式读取RSSI值判断距离的远近,距离在5 m以内时,准备收发高频数据.AS3933的初始化和RSSI数据的获取都是主控MCU通过SPI方式与AS3933芯片 R0-R19共20个寄存器交互来完成的.

AS3933处在监听模式后,其被唤醒的模式有两种,方式一是载波信号(Carriner Burst)+数据(Data)+唤醒信号(WAKE管脚电压拉高);方式二是载波信号(Carriner Burst)+前导(Preamble)+模式(Pattern)+数据(Data)+唤醒信号(WAKE管脚电压拉高).由于本系统景点标签放置在户外,信号错杂,系统为了防止标签被误唤醒,故采用方式二.详细唤醒过程,如图5所示.

图5 AS3933方式二唤醒格式

在系统设计中发现,要正确唤醒AS933需要注意以下事项:

1) AS3933使用的是外部32.768 Hz时钟,载波信号设置为125 KHz,Tclk=1s/32.768 KHz = 30.5 μs,Tcarr= 1 s/125 k= 8 μs.因此,载波信号长度需要满足:16 Tclk + 16 Tcarr = 16*30.5 μs + 16*8 μs = 616 μs < 载波信号长度<155 Tclk= 4727.5 μs.

2) 要在载波信号(Carrier Burst)和前导(Preamble)之间插入一位数据(Separation bit),其长度是半个曼彻斯特码元的长度,不能遗漏.

3) 前导(Preamble)和模式(Pattern)总长度有限制.当模式(Pattern)为16位时,总长度不能大于30个曼彻斯特码元,即PAT_16bit_time≤30*8us=240μs;当模式(Pattern)为32位时,总长度不能大于46个曼彻斯特码元,即 PAT_32bit_time ≤46*8us=368μs.

4) 曼彻斯特编码收发:1为下降沿跳变,0为上升沿跳变.

确定好系统频率和唤醒方式后,AS3933寄存器的初始化达到设计要求是关键.本系统AS3933寄存器初始化设置如表1所示.

表1 系统AS3933寄存器初始表

当主控MCU被唤醒后,MCU先通过低频信号获取发送来的ID,当判断此ID与系统ID匹配后,系统接着读取AS3933寄存器R10、R11、R12三个通道数字RSSI(接收信号强度指示)值,根据值的大小判断距离,RSSI与距离之间的关系满足式(1):

d=10(ABS(RSSI)-A)/(10*N)(N为传播常数)

(1)

由于环境、器件、生产等原因,会造成每个标签RSSI的值在同等距离下稍有不同,需要修正.这就要求在生产标签时,把标签固定在标定位置1 m处,学习RSSI的值作为标定值,然后把标定值存储在主控MCU的EEData中.

由于参观者游览景点时速度比较慢,对于标签获取RSSI的值可以采用式(2)多次测量求平均值来提高测量精度,式(2)如下:

(2)

程序实现代码如下:

for(uint_8 i=0; i< n;i++)
{
if(Rsii[ch][i] >= Max) //判断最大值
Max = Rsii[chx][i];
If(Rsii[ch][i] <= Min) //判断最小值
Min = Rsii[chx][i];
Sum += Rsii[ch][i];
}
return (Sum - Max - Min)/(n-2); // 返回平均值

3.3 高频收发模块

高频收发模块用于传输景点ID等信息.此部分软件主要有两个,一个是主控MCU对nRF2401 芯片寄存器的初始化配置,另一个是数据收发模块.nRF2401有两种通信模式:Direct Mode(直接模式)和ShockBurstTM Mode(突发模式).本系统采用ShockBurstTM Mode(突发模式),此模式使用芯片内部的先入先出堆栈区,数据可从低速微控制器送入,高速发射出去.其发射的地址和校验码由硬件自动添加.因此,程序编制更加简单,并且稳定性更高[5].

nRF2401的初始化是通过CS、CLK1和DATA三个引脚配合及SPI接口传输配置18个寄存器后完成的.在配置模式下,注意保证CE=0(低电平),PWR_UP =1(高电平).配置字从MSB最高位开始,依次送入nRF2401.

高频收发的数据,系统定义了协议,协议设计如表2所示:

表2 高频数据收发协议

数据收发模块发射流程如下:

1) 配置 CONFIG 寄存器.

2) 主控MCU把CE管脚设置高电平(时间大于10 μs),使nRF2401可进行Enhanced Shock Burst TM发射.

3) MUC通过SPI接口传输需要收发的数据包给nRF2401.

4) 主控配置nRF2401的CE管脚为低电平,此时nRF2401开始无线收发数据.

5) 发射完成后,nRF2401 进入空闲状态.

4 功耗控制

半主动式标签采用CR2302纽扣电池供电.为了减少更换电池周期,功耗控制尤为重要.主要采取的措施有:

1)系统上电,初始化所有模块后,主控CPU处于睡眠模式,高频收发模块处于关机模式,低频处于监听模式.

2)在有效距离内低频唤醒主控MCU后,需要高频收发数据时才打开高频模块,收发完毕后,关闭高频模块.

3)主控MCU在睡眠情况下,开启外部INT中断后,其他未用的IO全部设置成输出状态.

4)AS3933低频接收模块3D天线耗电量比较大,在不影响客户体验情况下,让3D天线间歇工作,尽可能节约电源.

5 系统测试

随意选取8个标签,测试其低频唤醒距离、高频数据收发距离和休眠下功耗.测试数据如表3所示.

表3 标签测试数据表

表3中测试数据说明,低频AS3933唤醒距离可以稳定达到5 m以上,高频nRF2401 的传输距离可以稳定达到85 m以上,完全满足景点标签的距离要求.标签在休眠状态下功耗电流小于11 μA,能极大节省电池电量.

6 结语

本系统设计的标签采用AS3933低频唤醒、高频nRF2401数据收发完成交互功能.测试后该标签低频可靠唤醒达5 m,休眠状态下功耗电流低于11 μA,大大延长了标签使用时间.通过对标签的综合测试,验证了该标签软硬件设计合理,达到了所预期的系统功能的要求.

猜你喜欢

管脚景点天线
具有共形能力的阻抗可调天线
面向DSP+FPGA通用处理架构检测的硬件系统设计
一种异步FIFO的Read/Write Data Flow Through功能测试方法∗
打卡名校景点——那些必去朝圣的大学景点
ETC相控阵天线与普通天线应用对比分析
英格兰十大怪异景点
ALLESS转动天线射频旋转维护与改造
基于图像处理的异型电子元器件管脚偏移误差检测方法研究
没有景点 只是生活
景点个股表现