基于ZigBee和STM32的智能家居控制系统的设计与实现(五)–终结篇

基于ZigBee和STM32的智能家居控制系统的设计与实现(五)–终结篇说明首先祝贺自己顺利的完成了毕业答辩工作,想起整个过程还是挺让自己感动的。最后还被评为优秀毕业设计,虽然并没有什么luan用,但是,马上毕业了,还是挺让人怀念的。整个资料从第一篇博客说起就说会全部开源的,期间承蒙各位朋友的支持,给与资助,在此感谢了。虽然资料中私人信息删除了一些,但是不免有疏漏,所以有关个人信息还挺各位删除掉,小

大家好,又见面了,我是你们的朋友全栈君。

基于ZigBee和STM32的智能家居控制系统的设计与实现(五)–终结篇

说明

首先祝贺自己顺利的完成了毕业答辩工作,想起整个过程还是挺让自己感动的。最后还被评为优秀毕业设计,虽然并没有什么luan用,但是,马上毕业了,还是挺让人怀念的。整个资料从第一篇博客说起就说会全部开源的,期间承蒙各位朋友的支持,给与资助,在此感谢了。虽然资料中私人信息删除了一些,但是不免有疏漏,所以有关个人信息还挺各位删除掉,小弟在此谢谢了!

总结

下面简单介绍下系统使用到的一些资料和系统实现的功能。
开发系统:Windows10 64位
Ubuntu 14.04 32 位
软件版本:Qt 4.8.6
IAR .0
Altium Designer 13.0
工具链:arm-linux-gcc 4.4.3

系统实现的主要功能如下所示:

  1. STM32下位机
    (1) 应用了小型的嵌入式操作系统μC/OS-II;
    (2) 各个传感器的数据以多任务的形式获取,实时性很好;
    (3) 数据调试使用STM32串口1;
    (4) 数据的发送使用STM32的串口3,并以任务的形式进行打包发送,具体数据帧格式请看代码;
    (5) STM32接收数据采用终端方式,当有数据到来时会触发终端,进入数据接收解析过程,在此过程中会对数据的帧头等信息进行判断;
  2. Zigbee无线通信
    Zigbee部分其实没有太多功能,一句话概括就是一个串口透传功能!本来当初计划直接使用zigbee驱动各个传感器,然后组网后发送给协调器,考虑到既然学习了STM32,就利用上吧!其实这里完全可以直接使用zigbee,不使用STM32的。
    两套方案的编码工作其实早就已经完成了,思考了好久才决定采用STM32+zigbee方式,这样下来可以学到很多,尤其是μC/OS-II系统的移植,还是很深奥的,很值的以后继续深入的去学习。
  3. ARM上位机
    ARM上位机采用友善支臂的SMART210开发板,自己后续移植了Qt4.8。上位机主要实现了一下几个功能:
    (1) 模拟室内三个场景:卧室、客厅、厨房
    (2) 分别对这个三个场景下的温度,湿度以及烟雾浓度进行一个测量并显示;
    (3) 使用LED灯模拟室内照明灯;
    (4) 使用人体红外传感器进行检测是否有人(这个传感器有点不靠谱,最后取消了)
    (5) 当初计划添加视频监控,到了后期发现工作量太大,没有时间做了,所以就没有完成,这点以后会添加上去的。
    (6) 代码中使用了“liudianwu”分享的一些api,由于时间紧,所以直接拿来用了,在此感谢!
    (7) 代码重复率有点高,好几处的button样式是相同的,完全可以提取出来,在此请大家海涵。

资源说明

资源中主要包含了一下部分内容,各位可以先看下,是否是自己需要的。
这里写图片描述

  1. 其他资料
    其他资料中包含了Qt串口介绍,zigbee无线通信介绍以及STM32常见的API介绍。
  2. 硬件相关
    硬件相关中包含了STM32PCB的设计原理图,PCB图暂时么有!
  3. 源码
    源码中包含了本系统最终的3部分代码。(完整代码)

这里写图片描述

这是实际大小,请下载解压后核对。

资料下载地址

上位机界面源码地址:
http://download.csdn.net/detail/u013704336/9490337

如果没有积分可以到github 免费下载
https://github.com/kevinlq/SmartHome-Qt

全部资料地址:
http://download.csdn.net/detail/u013704336/9560355


如果想获取更多资料,关注微信公众号:devstone,回复关键词获取


如果你觉得还可以,请给个赞给与支持,谢谢。
这里写图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/127047.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 对象转json忽略空参「建议收藏」

    对象转json忽略空参「建议收藏」有时候我们在传json的时候需要过滤掉那些数据为空的参数,我们可以这样:JsonUtil.object2JSON(request,SerializerFeature.WriteDateUseDateFormat); 当然,也可以这样:JSON.toJSONString(request)这两种方式都需要添加阿里的jar包<dependency> <gr…

    2025年12月5日
    3
  • 5 . 4 . 3 架构

    5 . 4 . 3 架构

    2022年4月3日
    50
  • android 定时器的例子[通俗易懂]

    android 定时器的例子[通俗易懂]初始化timerHandler=newHandler();serverRefresh=newServerRefresh();1,启动定时器privatevoidsetRefresh(){   if(timerHandler!=null&&serverRefresh!=null){       timerHandler.postDe

    2022年7月25日
    8
  • pip镜像及升级

    pip镜像及升级pipinstallpi Upipconfigse index urlhttps pypi douban com simple 更新 python mpipinstallu 显示版本号 pipshowpip

    2025年10月20日
    2
  • 云服务器和虚拟主机哪个好?两者有什么优缺点?「建议收藏」

    云服务器和虚拟主机哪个好?两者有什么优缺点?「建议收藏」云服务器和虚拟主机哪个好?两者有什么优缺点?想必有好多网站站长和中小型企业都被这个问题所困惑。现在小杜就来讲一讲云服务器和虚拟主机分别的特征和差异,小杜我相信大家看完本文后,就不会再被这样的问题所困惑了。云服务器云服务类似于传统的独立主机一样,它有自身独立的IP和宽带资源的,而且云服务器自身带有防火墙等防御工具。可是它不同于传统的独立主机,它可以按照使用者的需求量来增加或是降低服务器的配置,而且可以按照所需所用租用,而且租用云主机建立网站的成本,比传统独立主机建立要低好多。优点:它有独立的IP,独立

    2022年6月25日
    25
  • eclipse注释快捷键失效问题

    eclipse注释快捷键失效问题先试一下是不是用错斜线了,不要用小键盘里的/,要用主键盘里的/,就是键盘上和问号在一起的那个斜shu线。因为Ctrl+小键盘里的/,对应的是另一个快捷方式。如果依然没用再去Window–>Preferences–>General–>keys中输入togglecomment查找注释快捷键,看一下对应的快捷键然后使用。如果觉得它定义的用着不爽,可以在Binding中自定义快捷方式。(个人建议:能不修改默认快捷方式就不要修改!!!)…

    2022年5月10日
    51

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号