- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于zigbee的远程灯光控制系统.
《无线传感器网络》课程大作业报告
基于zigbee的远程灯光控制系统
姓 名:
学 院: 电气与信息工程学院
专业班级: 物联网工程
指导老师:
成 绩:
重庆科技学院
二零一五年十二月
目 录
1 设计内容和要求 1
1.1 课题任务 1
1.2 课题要求 1
1.2.1 PC端设置LED闪烁周期 1
1.2.2 终端节点分为两组且PC端分别控制 1
1.2.3 PC设置两组LED闪烁周期 1
1.2.4 PC查询LED的状态 1
2 总体设计思路 2
2.1 系统功能 2
2.2 模块关系 2
2.3 程序框图 2
3 功能模块图 4
3.1 功能模块图 4
3.2 各模块实现的功能 4
3.2.1 PC端设置LED闪烁周期代码 4
3.2.2终端节点分为两组且PC端分别控制代码 5
3.2.3 PC设置两组LED闪烁周期实验部分代码 6
3.2.4 PC查询LED的状态部分实验代码 6
4 系统调试及测试 8
4.1 PC端设置LED闪烁周期实验结果显示 8
4.2 终端节点分为两组且PC端分别控制实验结果显示 8
4.3 PC设置两组LED闪烁周期实验结果显示 9
4.4 PC查询LED的状态实验结果显示 9
5 总结 10
6 致谢 11
7 参考文献 12
1 设计内容和要求
课题任务
本系统是基于zigbee网络的远程灯光控制系统,PC连接协调器实现远程控制不少于3个终端节点上的LED灯的熄灭。
课题要求
1.2.1 PC端设置LED闪烁周期
PC端通过广播的方式控制加入了该协调器的所有路由器的灯的闪烁周期,且闪烁周期可以设置为1s、2s、3s。
1.2.2 终端节点分为两组且PC端分别控制
将路由器分成两个组,组名分别为Group1和Group2,组号分别为0x0001和0x0002,。Group1有两个路由器节点,第一个节点称为G1D1,第二个节点称为G1D2;Group2有一个路由器节点,称为G2D1。
PC端可以通过组播的方式控制每一组的终端节点的亮灭可单独控制每一个节点的亮灭通过组播的方式分别控制PC端查询各个节点当前的状态
2 总体设计思路
2.1 系统功能
该系统的功能主要有:
在PC上通过串口输入控制指令控制LED灯的亮灭。
路由器节点分为两组,PC端可以分别控制每组终端节点上LED的熄灭。
在PC上通过串口输入指令可以分组的设置两组LED闪烁的周期。
在PC上通过串口输入指令查询终端节点上LED的状态。
2.2 模块关系
图 2.1 模块关系图
2.3 程序框图
图 2.2 程序流程图
3 功能模块图
3.1 功能模块图
图 3.1功能模块图
3.2 各模块实现的功能
osal_memcpy(buf,pkt-cmd.Data,osal_strlen(G1D2ON)+1);
HalLcdWriteString(buf, HAL_LCD_LINE_4);
if(osal_memcmp(buf,FREQ1S,osal_strlen(FREQ1S)+1))
{
a=2;
HalLedBlink(HAL_LED_2,0,50,1000) ;
}
if(osal_memcmp(buf,FREQ2S,osal_strlen(FREQ2S)+1))
{
a=2;
HalLedBlink(HAL_LED_2,0,50,2000) ;
}
if(osal_memcmp(buf,FREQ3S,osal_strlen(FREQ3S)+1))
{
a=2;
HalLedBlink(HAL_LED_2,0,50,3000) ;
}
3.2.2终端节点分为两组且PC端分别控制代码
将路由器分成两个组,组名分别为Group1和Group2,组号分别为0x0001和0x0002,。Group1有两个路由器节点,第一个节点称为G1D1,第二个节点称为G1D2;Group2有一个路由器节点,称为G2D1。
PC端可以通过组播的方式控制每一组的终端节点的亮灭可单独控制每一个节点的亮灭 GenericApp_Group.ID = 0x0001;
GenericApp_G[0] = 6;
osal_m
文档评论(0)