带定位引擎的射频芯片--cc2431
cc2431是chipcon公司继cc2430之后推出的,带硬件定位引擎的符合zigbee/ieee 802.15.4技术的2.4 ghz射频系统,适合于各种zigbee相关的无线网络节点,包括调谐器、路由器和终端设备等。本文介绍了cc2431芯片的主要特点和应用领域,重点介绍了cc2431的定位引擎及其使用方法。
关键词 cc2431 定位引擎 zigbee
cc2431是ti公司推出的带硬件定位引擎的片上系统(soc)解决方案,能够满足低功耗zigbee/ieee 802.15.4无线传感器网络的应用需要。cc2431定位引擎基于rssi技术,根据接收信号强度与已知参考节点位置准确计算出有关节点位置,然后将位置信息发送给接收端。相比于集中型定位系统,rssi功能减小了网络流量与通信延迟,在典型应用中可实现3~5 m定位精度和0.25 m的分辨率。
1 cc2431的主要特点
cc2431片上系统(soc)由cc2430加上motorola公司基于ieee 802.15.4标准的无线定位引擎组成,具有2.4 ghz dsss(直接序列扩频)射频收发器核心和高效的8051控制器。其中,mcu包括存储器及其外围,其他模块提供电源管理、时钟分配和测试等重要功能。
cc2431的设计结合了8 kb的ram及强大的外围模块,并且有3种不同的版本。它们根据不同的闪存空间32 kb、64 kb和128 kb来优化复杂度与成本。cc2431的尺寸只有7 mm×7 mm的48脚封装,采用具有内嵌闪存的0.18 μm cmos标准技术。针对协议栈、网络和应用软件执行时对mcu处理能力的要求,cc2431包含一个增强型工业标准的8位8051微控制器内核,运行时钟为32 mhz。cc2431还包含一个dma控制器,可以减少8051微控制器内核对数据的传送操作,因此提高了芯片整体的性能。
在cc2431 8 kb静态ram中的4 kb是超低功耗sram。32 kb、64 kb或128 kb的片内flash块提供在线可编程非易失性存储器。cc2431集成了4个振荡器用于系统时钟和定时操作,以及用于用户自定义应用的外设;具有4个定时器,此外,还集成了实时时钟、上电复位、8通道8~14位adc等其他外设,并带有语音和定位跟踪引擎。cc2431的主要特点如下:
◇ 定位引擎能精确计算网络中节点位置;
◇ 具有高性能、低功耗的8051控制器核;
◇ 集成符合ieee 802.15.4标准的2.4 ghz rf无线收发机(具有工业领先的cc2420射频内核);
◇ 优良的无线接收灵敏度和强大的抗干扰能力;
◇ 128 kb可编程闪存,8 kb ram,4 kb带全部功耗模式数据保持功能;
◇ 强大的dma功能;
◇ 极少的外部元器件;
◇ 低电流损耗(微控制器运行于32 mhz时,接收和发射分别为27 ma和25 ma);
◇ 休眠模式时仅0.9 μa电流损耗,外部中断或rtc能唤醒系统;
◇ 待机模式下小于0.6 μa电流损耗,外部中断能唤醒系统;
◇ 低功耗模式与主动模式之间的快速切换;
◇ 硬件支持csma/ca功能;
◇ 较宽的电压范围(2.0~3.6 v);
◇ 数字化的rssi/lqi支持;
◇ 具有电池监测和温度传感器;
◇ 多达8路输入的8~14位模/数转换;
◇ 集成aes128安全协处理器;
◇ 带有2个功能强大的支持多组协议的usart;
◇ 集成看门狗定时器;
◇ 具有1个符合ieee 802.15.4规范的mac计时器,1个常规的16位计时器和2个8位计时器;
◇ 21个普通i/o引脚,其中2个具有20 ma的驱动能力;
◇ 支持硬件调试,具有强大灵活的开发工具。
2 cc2431的定位引擎操作
cc2431和cc2430是引脚兼容的,除定位引擎之外,cc2430的mcu和rf部分与cc2431完全相同。为避免重复,本文重点介绍cc2431的定位引擎。
定位引擎用于估算无线网络中节点的位置。通常参考节点坐标已知,其他需要估计坐标的节点为“盲节点”。进行定位估计时,定位引擎需要获得3~8个参考节点的坐标值以及其他测量参数,定位引擎计算后的输出是一个节点的估计坐标。在定位引擎运行之前,必须使能定位引擎寄存器loceng的第4位loceng.en。当要停止定位引擎运行时,应往loceng.en写入0关断引擎的时钟信号,从而降低cc2431的功耗。对定位引擎的操作主要就是对与定位引擎有关的寄存器的操作。下面详细说明各部分的操作。
2.1 参考坐标
定位引擎运行时需要3~8个参考坐标输入。参考坐标以m为单位表示各个参考节点的位置,其数值位于0~63.75,最高精度为0.25 m,以最低2位为小数部分,剩余6位为整数部分。参考坐标存放于rf寄存器refcoord中。在写入refcoord之前,寄存器loceng的第1位loceng.refld必须写入1,用于指示一组参考坐标将要被写入。一旦坐标写入过程开始(loceng.refld=1),8对坐标必须一次性写入。当定位引擎使用少于8个参考坐标时,要将未用的参考坐标写入0.0。
2.2 测量参数
定位引擎除了需要参考坐标外,还需要一组测量参数。这组参数由2个射频参数和8个rssi值组成。射频参数是数值a和n,用于描述网络操作环境。在全向模式下,射频参数a被定义为用dbm表示的距发射器1 m接收到的平均能量绝对值。若平均接收能量为-40 dbm,那么参数a被定为40。定位引擎期望参数a为30.0~50.0,精度为0.5。参数a用无符号定点数值给出,最低位为小数位,而其余各位为整数位,一个典型值为40.0。
射频参数n被定义为路径损失指数,它指出了信号能量随着到收发器距离的增加而衰减的速率。衰减与d-n成比例,这里,d是发射器和接收器之间的距离。实际写入定位引擎的参数n是一个可通过查表得到的整数索引值,如表1所列。
表1 参数n查询表
例如,通过测量得到n=2.98,查表得到最接近的有效值为3.000,相应的索引值是13。因此,整数13作为参数n写入到定位引擎中。参数n以[0,31]之间的整数索引写入定位引擎,索引用整数表示。如n=7,即写入000000111。n的典型值是13。rssi值是相应于一组参考坐标的rssi测量值。
rssi值为[-40 dbm,-95 dbm],精度为0.5 dbm,写入值中应去掉负号。如rssi的值为-50.35 db,则写入到定位引擎中为50.5。注意,未用的参考坐标必须用0.0作为rssi值写入。如果仅有部分参数写入,则定位引擎不能正确工作。
所有的测量参数应写入rf寄存器measparm中,在写入measparm之前寄存器loceng的第2位loceng.parld必须写入1,表示一组测量参数将被写入。一旦参数写入开始(loceng.parld=1),所有10个参数必须一次性全部写入。测量参数必须按[a,n,rssi0,rssi1,…,rssi7]顺序写入measparm寄存器,任何未使用的位必须写0。10个参数全部写完之后,loceng.parld必须写入0。
2.3 定位估计
参数坐标和测量参数写入之后,通过将寄存器loceng第0位loceng.run写入1,启动定位估计计算。通常,loceng.run被置1后的1 200个系统周期之后,loceng的第3位loceng.done被置1。此时,估计坐标可从locx和locy寄存器读出。定位引擎不产生任何中断请求。在新的结果被计算出来或下一次重新启动之前,估计坐标值在locx和locy中保持有效。cc2431定位引擎操作流程如图1所示。
图1 定位引擎操作流程
2.4 软件编程
下面介绍定位引擎操作的源代码。
void calcultepostition(loc_ref_node refnodes[loc_engine_node_capa],uint a_val,uint n_index,uint *locx,uint *locy) {
uint i;
//启动定位引擎
loc_disable();
loc_enable();
//使能loc_reference_load,准备写入参考坐标
loc_reference_load(true);
//写入参考坐标
for(i=0;i
refcoord=refnodes[i].x;
rercoord=refnodes[i].y;
}
//参考坐标写入完成
loc_reference_load(false);//使能loc_parameter_load,准备写入测量参数
loc_parameter_load(true);
measparm=a_val;
measparm=n_index;
for(i=0;imeasparm=refnodes[i].rssi;
}
//测量参数写入完成
loc_parameter_load(false);
//启动定位估计计算
loc_run();
//等待完成后读出坐标值
while(!loc_done());
*locx=locx;
*locy=locy;
//关闭定位引擎
loc_disable();
}
结语
本文主要介绍了带定位引擎的射频芯片cc2431,重点介绍了其定位引擎的使用方法。cc2431是一款真正的片上系统(soc)解决方案,它针对无线传感器网络zigbee/ieee 802.15.4,具有定位检测引擎,可以实现3 m左右或更高的定位精度,有效降低了zigbee节点成本;并且结合了市场领先的zstack zigbee协议软件,提供了市场上最具竞争力的zigbee解决方案。在未来几年内,其应用必将扩展到更多领域。
二极管为什么会发光
安费诺全面解析电动汽车电池连接系统
污水流量计的产品特点
智能农业灌溉系统解决方案,手机远程控制,一键灌溉大田
以MCU为核心的红外微电脑自动泵液器设计
带定位引擎的射频芯片--CC2431
室内甲醛污染 家里装修完怎样除甲醛最好
安霸是谁,提供什么样的产品?
火力发电厂用电高压系统电弧光保护设备
防逆流装置VIP-9654逆功率保护介绍
NVIDIA发布22财年第四季度报告 捷波发布N11系列迷你电脑
5G+工业物联网催生了边缘计算的快速增长
发动机技术—燃油压力传感器&增压压力传感器
C8051F00x与HCMS2964显示屏的串行接口
Peter Bauer辞去英飞凌首席执行官职务
华为发布全球首个基于5G室内数字系统的“5G+五星购物中心”
激光雷达的上游参与者详解
带你了解嵌入式C语言函数调用栈
人工智能出击:破解梵蒂冈神秘卷宗之谜
满足六级能效标准的24W适配器方案,这颗芯片是好帮手