• 易迪拓培训,专注于微波、射频、天线设计工程师的培养
首页 > 无线通信 > 技术文章 > 基于ZigBee网络的无线智能照明系统设计

基于ZigBee网络的无线智能照明系统设计

录入:edatop.com     点击:

4 功能实现

4.1 上电启动

系统上电后,首先进行一系列初始化功能,包括对液晶显示屏、按键、CC2480模块、定时器及UART接口进行初始化。初始化完成后,系统会启动组建网络的功能。对于协调器,首先会发送StartZBNwk(COORDINATOR,NWKpanID)函数向CC2480中写入指令以启动ZigBee协议栈。其中,COORDINATOR是器件类型,表示此器件作为协调器使用;NWKpanID是此网络的网络ID。路由器进行同样的操作,不同的是函数中设备类型参数为ROUTER[5]。

协议栈启动后,系统会利用GetDeviceInfo(DEVICE_

SHORT_ADDR)函数来获取CC2480通过UART向ARM核发送的设备信息。其中,DEVICE_SHOR_ADDR参数是CC2480模块的16位短地址。获取地址成功后,系统会将信息显示在液晶屏上,完成上电启动过程。

4.2 组网绑定

上电启动完成后,系统进入组网绑定状态。首先系统会调用ZB_APP_REGISTER_REQUEST()函数对ZigBee寄存器写入配置,命令代码为Cmd 0:0x26、Cmd1:0x0a;然后会调用ZgBeeAllowBind()函数发出允许绑定的命令,命令代码为Cmd 0:0x26、Cmd1:0x02。

允许绑定后,路由器会调用menudis()函数进行绑定。此函数进行的操作如下:首先扫描按键以获取用户输入的所要绑定的协调器的地址,然后调用ZgBeeZDOFindIEEE(bindAddr,0,2)函数来寻找网络中的物理地址。其中,bindAddr就是所要绑定得到的协调器的地址,参数0代表获取1个地址,参数2代表索引个数。

获得地址后,系统调用ZgBeeBind(1,add)函数进行绑定并将绑定结果显示在液晶显示屏上,从而完成组网绑定的功能[6-10]。其中命令代码为Cmd 0:0x66、Cmd1:0x01。

4.3 数据传输及调光

系统完成组网后即可进行数据传输和调光。系统采用ZgBeeSendData()函数来进行数据传输,此函数包含的主要参数有目的地址、命令类型和数据,命令代码为Cmd 0:0x66、Cmd1:0x03。而目的地址与数据均通过键盘扫描用户输入来写入寄存器。

对于调光功能的实现,本文采用PWM调制方式,即通过输出不同占空比的方波进行不同情景模式的调光。具体实现方式:采用while循环中内嵌1个case语句实现。while循环负责检查是否有外部命令到来,每一个case分支对应1个情景模式,当设备接收到调光命令后,根据命令中的有关情景模式的数据进入到相关的case分支中产生相应的PWM信号,当检查到外部命令来临时,则跳出该分支进入相应的分支产生新的情景模式。对于PWM信号的产生有多种方式,本文利用循环计时的实现方法,即通过利用不同长短的延时来输出0和1实现不同占空比的方波。基本计算方法如下:单位延时为晶振的1/12,则系统在进行[(方波周期/单位延时)×占空比]个延时后输出1,在进行[(方波周期/单位延时)×(1-占空比)]个延时后输出0,如此进行反复循环即可实现PWM功能。

5 实验结果

ZigBee模块对LED的调光控制采用PWM调制方式,即通过输出3路不同占空比的方波实现对LED的RGB分量的调节,形成不同颜色的光。在本实验中采用事先设定好情景模式,根据用户按下不同的情景按键输出不同的PWM波形来实现LED的情景照明。实验结果输出占空比分别为25%、57%、70%的方波,如图3所示。

本文针对目前智能家居照明发展趋势,提出了一种基于ZigBee和ARM处理器的智能家居照明系统设计方案,实现了系统控制和智能调光功能,为以后的研究打下了一定的基础。

来源:维库开发网

上一篇:LTE基站性能测试解决方案(一)
下一篇:MIMO技术及其在3G中的应用

手机天线设计培训教程详情>>

手机天线设计培训教程 国内最全面、系统、专业的手机天线设计培训课程,没有之一;是您学习手机天线设计的最佳选择...【More..

射频和天线工程师培训课程详情>>

  网站地图