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

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

这是实际大小,请下载解压后核对。
上一篇:STM32F103之USB(一)
史海拾趣
|
Platform Settings->Build Options里只选择Enable Eboot Space in Memory 和 Enable Full Kernel Mode。如果要用到 KITL Debug,就需要选择 Enable CE Target Control Support, Enable KITL, Enable Kernel Debugger。(KITL 和 CS8900 driver 不能 ...… 查看全部问答> |
|
memory-mapped registers 的具体含义? RT TI DSP中memory-mapped registers是指实际在DSP中存在的寄存器还是仅在存储器中存在的呢? 小弟很菜,望各位大哥多多指教!… 查看全部问答> |
|
当波特率为19200,38400或者57600时,电脑接收到的数据正常,当用9600时,电脑接收到的数据有时候被分成两部分。 这会是什么原因,请指点。 图片.pdf (36.88 KB) 下载次数:63 2009-12-7 17: ...… 查看全部问答> |
|
前几天测了一下舵机。遇到了一点问题,没有达到预期的进度。程序很简单,电路可能会出问题。共地,分开供电。一通电,舵机转过一个小角度,这应该是上电脉冲的作用。给信号,没反应,可能是幅度不够,适当上拉一下就可以了。测试尽量不要用边缘宽度 ...… 查看全部问答> |




