基于Android和ZigBee的智能家居系统设计.docVIP

基于Android和ZigBee的智能家居系统设计.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Android和ZigBee的智能家居系统设计.doc

基于Android和ZigBee的智能家居系统设计   摘 要:在未来世界的家居生活中,智能家居是不可扭转的趋势,它使得人们的生活更加便利、舒适和安全。根据人们实际生活的需求,结合Android平台、ZigBee无线传感技术与ARM技术,设计与实现了智能家居控制系统,该系统可以实现家用电器的开关,窗帘、窗户或者帷幕等电机开关的控制,还可以采集环境信息,具有家庭安防的功能。实践表明:本系统操作简单,性能稳定,易于升级和维护。   关键词:智能家居;ZigBee;Android   中图分类号:TP273.5;TN925   随着智能家居热潮在世界范围内的日渐兴起,随着中国电子技术的飞速发展、人们生活水平的不断提高以及智能电子技术在生活中的广泛应用,智能家居已经成为未来家居装饰潮流发展的最新方向。人们对家居的要求早已不只是物理空间,人们更进一步关注的是一个安全、舒适、方便的居家环境。家居智能化也在这种形势下应运而生了。智能家居系统相关技术正朝着一下几个方面发展:组网技术由有线向无线发展,硬件平台性能日益提高,设计事项功能模块化及系统平台智能化,远程控制实现多样化,个性化。   1 系统总体设计   本智能家居系统由ARM Cortex-M3内核的STM32系列处理器、一个CC2530协调器节点、若干温湿度传感器节点、若干继电器开关节点等组成,功能模块中的各个节点采集温度、湿度、继电器开关的状态通过ZigBee协议与协调器进行数据传输、存储及命令的传送。   2 Zigbee无线网络的建立   ZigBee网络主要通过2个步骤完成组建:网络初始化和终端节点加入网络。当ZigBee节点完成了网络初始化工作后,协调器会周期性的发送信标帧,只有ZR或者ZED节点接收到信标帧,才能够建立网络,从而进行数据的发送与接收。ZigBee网络组网流程如图1所示:   当节点成功组网后,ZED将在指定的报告周期时间内,通过zb_SendData Request原语向ZC发送状态数据包。ZC通过RS-232接口将数据包转发到Android模块,然后通过Socket将数据包传递到用户终端。   3 Android智能终端软件设计与实现   当ZigBee无线传感器网络建立完成后,用户还不能如愿的获取环境信息与进行家居控制,这时就需要设计一款界面友善、人性化、功能丰富的人机界面软件,在考察了现阶段各种智能家居网络上位机选用情况后,本文决定使用智能终端作为上位机。又考虑到目前Android平台占智能终端大部分市场份额的实际情况,所以,最终决定在Android平台上编写应用以实现智能家居系统的采集与控制。软件的具体结构如图2所示。   从软件设计的角度出发,要实现Android智能终端充当本系统上位机,最主要的两个需要解决的问题是:Android智能终端与ZigBee协调器之间的串口通信;Android智能终端之间通过GPRS网络的Socket通信。   3.1 Android终端与ZigBee协调器端口通信   Android终端作为智能家居的控制器,解决Android设备和ZigBee网络中的网元通信是关键问题。在ZigBee网络中,Android设备和ZigBee协调器可通过相应的端口连接以实现它们之间的通信,不同的Android设备可能端口不同,但是对端口的获取和操作的过程是一样的,首先要在HAL层获取到某个端口的ID,在Linux中,HAL层驱动是在Linux文件系统的dev文件夹下,只需要加载相应的驱动文件,就可以获取到相应的端口;然后,在控制台设置这个端口的读写权限,打开这个端口;最后,根据需要传输的数据格式,使用相应的输入输出流传输和接收数据,当程序完成操作后关闭相应的端口,以免数据溢出。   系统中的ZigBee节点采用了串口作为编译、调试与通信端口,Android终端主控制器S3C2410与无线收发芯片CC2530之间采用异步串口的方式进行通信。S3C2410片内集成有USART,简单设置后即可工作于异步模式。异步数据格式和ZigBee通信协议帧相同。   3.2 Android终端之间Socket通信   当Android终端通过串口接收到来自ZigBee协调器的数据后,用户只能在本地的Android终端上获取环境信息发送控制命令,为了实现用户远程登录本系统,本文又引入了第二个Android终端,其中本地终端作为数据的收集者通过无线通信公网建立Socket连接将数据转发给异地终端,异地终端也可以通过相同的Socket连接将控制命令发送给本地终端,然后再由本地终端通过串口传输至ZigBee协调器,从而实现对ZigBee网络中设备的控制。   4 系统运行效果与分析   为了验证智能家居网络的有效

文档评论(0)

lmother_lt + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档