基于ZigBee技术家庭网关的设计与实现

发布时间:2010-11-29 阅读量:2247 来源: 发布人:

【中心议题】

  • 提出了一种基于ZigBee技术的家庭网关
  • 给出了软硬件实现方案

【解决方案】

  • 硬件设计基于ARM9 STR912FW44X处理器
  • 移植μCOS-Ⅱ操作系统和无线射频收发模块cc2430搭建网关开发平台

0引言

随着计算机、通信技术、嵌入式技术、信息家电的飞速发展,越来越多的家庭要求建立家庭网络。家庭网关是整个家庭网络的核心,它主要实现接入Internet进行远程控制,以及连接家庭内部网络的功能。ZigBee是一种新的短距离无线通信技术,专为低速率、低功耗的无线互联应用而设计,非常适合控制类家庭内部网络的组建。

1系统构建概述

网关是建立在传输层以上的协议转换器,通常它连接两个或多个相互独立的网络,每接收一种协议的数据包后,在转发之前将它转换为另一种协议的格式。考虑到Zigbee节点的通信能力有限(数据速率仅为250 Kbps),为了减少网关协议转换自身的工作量,本网关选择了一款集成Ethernet接口的ARM9芯片来完成硬件系统的搭建。网关是本系统中核心部分,采用模块化的设计方案,如图1所示由硬件层、软件层、应用层构成,硬件层主要是以ARM9微处理器和无线收发模块cc2430为核心,完成对数据的采集和命令的发送,具体的设计参见后面的详述。软件层移植μC/OS-II实时操作系统内核和ZigBee协议栈达到对数据的实时采集和处理。应用层运行用户自行编写的应用程序,在本系统中主要是负责对家庭内部信息的采集并发送,根据不同的要求使用不同的智能传感器。

 

在网关系统中外扩ZigBee模块作为全功能设备(Full Function Device FFD);用智能传感器和ZigBee模块构成网络传感器节点作为简化功能设备(Reduced Funcation Device RFD)。由FFDRFD配置成ZigBee星型拓扑网络,如图2所示。

通过构建ZigBee技术的家庭网关,可使系统具有如下功能:(1RFD通过外接不同传感器,能够感知不同物理量,如温湿度、光照等;(2)RFD通过传感器模块持续采集监控对象的物理参量,如果超过系统设定阈值,能够通过RFD实时地向远端用户发送报警;(3)能周期性地接收到发送过来的监测数据,并实时传送给用户;(4)用户能够通过FFD,查询某个RFD的监测数据。

2系统硬件设计

系统的硬件平台是以内部集成以太网MACARM9微处理器STR912FW44为核心,CC2430ZigBee无线收发模块,数据FLASH存储器为FM25H20,以太网收发芯片STE100P和具有触摸屏的LCD显示功能T240320-BF等模块组成。如图3所示。

 

其中STR912FW44X作为硬件系统的主控芯片,它是意法半导体(ST Microelectronics)推出的基于ARM966E-S内核,片内集成FlashUSBCAN、以太网MACADCRTCDMA等接口的高性能ARM9 SOC,最高主频可达96Mhz;

ZigBee射频收发芯片CC2430具有高性能和低功耗的8051微控制器核,集成符合IEEE802.15.4标准的2.4GHzRF无线收发机,工作频带范围是2.42.4835GHz,采用O-QPSK调制方式,接受灵敏度-94dB·m,抗邻频道干扰能力39dB,另外还具有电池监测和温度监测功能,集成14位模/数转换及AES-128安全协处理器,工作时的电流损耗为27mA

FM25H20Ramtron半导体公司生产的具有2M存储容量的Flash存储芯片,在网关中用于保存网络故障状态下的信息和节点断电前的基本信息。

以太网PHY层芯片采用ST意法半导体公司的STE100P,它是一个单端的物理层收发器,具有半双工和全双工模式,实现了全部的10/100M以太网物理层功能;

T240320-BF是一款带触摸屏2.4英寸的TFT彩色液晶显示屏,分辨率达到320×240,完成显示功能,其控制器是ILI9320

3嵌入式网关软件设计

3.1μCOS-Ⅱ下的LwIP移植

μC/OS-II是一个抢占式的实时多任务内核操作系统,具有开放源码、可固化、可剪裁、高稳定性和可靠性等特点。

目前国内外对μC/OS-II的相关研究已有很多,其在STR912处理器上的移植在此不再赘述。

LwIP协议在设计时为了适应不同的操作系统,没有在代码中使用和某一个操作系统相关的系统调用和数据结构,而是在LwIP和操作系统之间增加了一个操作系统的封装层,该封装层主要完成系统的初始化、任务的同步、时间管理和内存管理的功能。另外LwIP协议栈在设计的时候就考虑到了将来的移植问题,因此,它把所有的与硬件、操作系统、编译器等有关的部分全部独立出来,放在.\scr\arch目录下因此,LwIP在μC/OS-II下的移植过程,也就是修改这个目录下的文件,其它的文件一般不做修改。需要修改和自己编程实现的是以下几部分:

*STR912IAR编译器相关的include文件;

*μC/OS-II模拟层相关代码编写;

*与μC/OS-II相关的一些结构和函数;

*lib_arch中库函数的实现;

*STR912网络驱动程序编写。

完成以上代码移植的工作后,LwIP就可以顺利运行在μC/OS-II下。由于在μC/OS,没有线程(thread)的概念,只有任务(Task)。它提供了创建新任务的系统API调用OSTaskCreate,因此只要把OSTaskCreate封装一下,就可以实现sys_thread_new。需要注意的是LwIP中的thread并没有

 

μC/OS-II中优先级的概念,实现时要由用户事先为LwIP中创建的线程分配好优先级。

3.2μCOS-Ⅱ下的ZigBee协议栈的实现

在网关系统中利用TI公司提供的免费Z-STACK协议栈,将Z-STACK协议栈移植到CC2430中充分发挥CC2430的性能和特色。CC2430通过UART接口与STR912进行数据的通讯。ZigBee协议栈的开发主要是应用框架层(AF层)和应用支持子层(APS层)的修改并添加自己的驱动程序,网络层是以库的形式提供,通过调用接口函数可以加入网络和查询网络的状态,MAC层和物理层也不用改动。由于在zigbee协议中自带操作系统层(OSAL层),除了初始化一些必要的变量,整个zigbee的启动都是以任务的方式完成启动。

主要的程序如下所示

int main(void)

{

osal_int_disable(INTS_ALL);//关闭所有的中断

zmain_ram_init();//初始化内存单元

HalDriverInit();//初始化HAL驱动

osal_nv_init(NULL);//初始化操作系统非易失性存储

ZMacInit();//初始化MAC

osal_init_system();//初始化操作系统

osal_int_enable(INTS_ALL);//打开所有中断

osal_start_system();启动操作系统

}

当启动操作系统之前,操作系统就初始化所要建立的任务,下面是建立任务的函数,这个函数传递的参数包括:初始化函数的句柄,事件处理函数的句柄,事件的优先级。

void osalAddTasks(void)

{

osalTaskAdd(Hal_Init,Hal_ProcessEvent,

OSAL_TASK_PRIORITY_LOW);

 

osalTaskAdd(macTaskInit,macEventLoop,

OSAL_TASK_PRIORITY_HIGH);

osalTaskAdd(nwk_init,nwk_event_loop,

OSAL_TASK_PRIORITY_MED);

osalTaskAdd(APS_Init,APS_event_loop,

OSAL_TASK_PRIORITY_LOW);

osalTaskAdd(GetwayApp_Init,GetwayApp_ProcessEvent,

OSAL_TASK_PRIORITY_LOW);

}

在这里首先的任务是Hal_Init,因为它主要完成硬件初始化的工作;下面依次启动的是MAC层任务,网络层任务,应用支持子层,zigbee设备层等任务的初始化工作,最后是应用程序。这种初始化的过程符合协议栈由低级向高级的进阶,当调用osal_start_system()之后,系统就自行的调用各个函数。整个流程如图4所示。

4结语

文章重点介绍zigbee协议栈的特点和应用,通过ARM9构建的网关平台,可以很好的发挥zigbee在家庭网关中的优势,具有很广阔的应用前景。通过实验可以证明,本系统可以满足家庭网关的控制要求,在传感器的设计上还有一定的扩展功能,能够满足不同要求的改进。技术创新点:采用集成Ethernet(MAC)接口的ARM9芯片STR912作为核心扩展设计了一个Zigbee网关,它很好地克服了传统网关架构下Zigbee传输速率的瓶颈,降低了资源和处理时间消耗,提高实时处理能力。该网关设计思路、技术实现新颖,、具有较强的实用性。

相关资讯
“中国芯”逆袭时刻:新唐携7大新品打造全场景AIoT解决方案矩阵

在万物互联与智能化浪潮席卷全球的今天,新唐科技以颠覆性创新奏响行业强音。4月25日,这场历时10天、横跨七城的科技盛宴在深圳迎来高潮,以"创新驱动AI、新能源与车用科技"为主题,汇聚全球顶尖行业领袖,首次公开七大核心产品矩阵,展现从芯片设计到智能生态的全链条创新能力,为半导体产业转型升级注入新动能。

半导体先进制程技术博弈:台积电、英特尔与三星的差异化路径

在2025年北美技术研讨会上,台积电正式宣布其A14(1.4nm)工艺将于2028年量产,并明确表示无需依赖ASML最新一代High NA EUV光刻机。这一决策背后,折射出全球半导体巨头在技术路线、成本控制和市场竞争中的深层博弈。

嵌入式主板EMB-3128:轻量级边缘计算的工业级解决方案

随着AIoT技术的快速落地,智能设备对高性能、低功耗嵌入式硬件的需求持续攀升。华北工控推出的EMB-3128嵌入式主板,搭载Intel® Alder Lake-N系列及Core™ i3-N305处理器,以高能效比设计、工业级可靠性及丰富的接口配置,成为轻量级边缘AI计算的理想选择。该主板支持DDR5内存、多模态扩展接口及宽温运行环境,可广泛应用于智能家居、工业自动化、智慧零售等场景,助力产业智能化升级。

从ASMI财报看行业趋势:AI芯片需求爆发如何重塑半导体设备市场?

作为全球半导体沉积设备领域的龙头企业,荷兰ASM国际(ASMI)近日发布2024年第一季度财报,展现强劲增长动能。财报显示,公司当季新增订单额达8.34亿欧元(按固定汇率计算),同比增长14%,显著超出市场预期的8.08亿欧元。这一表现主要受益于人工智能芯片制造设备需求激增与中国市场的战略性突破,同时反映出半导体产业技术迭代与地缘经济博弈的双重影响。

车规级SerDes国产替代提速:解析纳芯微NLS9116/NLS9246技术优势与市场潜力

随着汽车智能化加速,车载摄像头、激光雷达、显示屏等传感器数量激增,数据传输带宽需求呈指数级增长。传统国际厂商基于私有协议(如TI的FPD-Link、ADI的GMSL)垄断车载SerDes市场,导致车企供应链弹性不足、成本高企。2025年4月,纳芯微电子发布基于HSMT公有协议的全链路国产化SerDes芯片组(NLS9116加串器与NLS9246解串器),通过协议解耦、性能优化与供应链自主可控,为ADAS、智能座舱等场景提供高性价比解决方案,标志着国产车规级芯片从“跟跑”迈向“并跑” 。