- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE14 / NUMPAGES15
附件3:
基于QT的嵌入式智能家居监控系统
项目作者: 潘 垚(物联网31432),刘子闻(物联网31432),王旭晨(物联网31432),朱宗盛(物联网31531),吕 敏(物联网31431),
指导老师:邱晓荣 黄能耿
项目成果:完成基于QT的智能家居监控系统的软硬件架构,提供实物模型一套,软件源码和项目总结报告各一套。
摘 要
本项目的基于QT和友善之臂Smart210构建一个嵌入式智能家居监控系统,该系统的硬件设备主要有友善之臂Smart210、ZigBee WSN、GPRS DTU、IPCamera等,系统基于QT进行开发,具备实时温湿度显示和预制短信推送功能,该平台的研发有助于物联网智能家居服务平台方面的研究与发展,同时也为自己的毕业设计、毕业实践以及就业上岗打下良好的基础。
关键词:QT 嵌入式 智能家居
1. 需求分析
随着现代信息技术的飞速发展,数字信息技术和网络技术高度发达,借助各种计算机可以对各类信息进行处理。同时,这些计算机不再局限于以前的PC,而是包括形态各异、性能不同的各类嵌入式系统,嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。
温湿度监控系统是为了满足正常生产或日常生活中对人、设备或相关区域进行监控的需求而设计的。生产或生活中,有很多分布广泛的现场数据信息需要采集并传送到监测站中进行统一监控或管理。建立一个实时性强、覆盖面广、灵活性好的基于ARM的温湿度监控系统,可以在智能家居、智能农业等方面有广泛的应用,具有广阔的发展前景。
2. 系统设计
基于ARM的温湿度监控系统的系统设计分为两大部分:硬件设计和软件设计。
硬件设计部分
系统由协调器、带温湿度传感模块的路由器以及PC机组成。网络组建后,路由器采集数据后会将数据无线转发给协调器,协调器接收到数据后通过串口将数据发送给PC机,从而显示实时的温度和湿度。(PC机只是作为调试用,调试成功后将可执行文件下载到目标板上即可。)
软件设计部分
软件设计部分分为以下几步:界面设计、串口通信、温湿度数据采集和设备控制(加热器和加湿器的打开和关闭)。
3. 详细设计
基于ARM的温湿度监控系统设计的具体步骤:
解压Ubuntu1204Smart210的镜像文件,打开虚拟机,打开镜像文件。
打开超级终端,用root用户登录,输入qtcreator,打开qt程序。
按照图(1)将控件和界面搭建好,按照图(2)所示修改控件的名称。
图(1)
图(2)
分别在main.cpp、widget.cpp、widget.cpp中进行程序的设计。软件编写的主要思路及流程图如下:
中文字体设置
头文件的添加和相关宏定义
串口通讯设置
定义串行口接收和发送的数据结构
串行口初始化
初始化温湿度值及控制加热及风扇的当前值和状态
设定对串口进行监听以及关闭监听
向Zigbee网络发出获取网络的命令
等待Zigbee网络的返回数据(网络信息)
开始
开始
打开串口
串口是否打开成功?
关闭串口
获取网络
获取温湿度
数据获取成功?
结束
N
Y
Y
N
图(3)
连接硬件,将协调器和路由器对应的程序分别烧录进去,然后接上电源线,并且用USB转串线将协调器和PC机连接起来。
软件调试,将软件与硬件进行联调。调试成功后,将目标文件发送到目标板上运行。
4. 实施过程
中文字体设置
#includeQTextCodec
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTextCodec::setCodecForTr(QTextCodec::codecForName(UTF8));
Widget w;
w.show();
return a.exec();
}
头文件的添加和相关宏定义
#include widget.h
#include ui_widget.h
#include fcntl.h //驱动
#include termios.h //串口类
#include QMessageBox
#include stdio.h
#include QDebug
#include QStandardItemModel
#include QTimer
#include stdint.h
#define SUCCESS 0
#define FAIL 0
#define MAX_POINT 10
串口通讯设置
定义串行口接收和发送的数据结构
// 串口接收数据结构
typedef union
{
您可能关注的文档
- 0~3岁婴幼儿音乐启蒙教育婴幼儿的旋律感知07讲义婴幼儿旋律感知.docx
- 0~3岁婴幼儿音乐启蒙教育婴幼儿的音色感知04讲义婴幼儿的音色感知.docx
- 0~3岁婴幼儿音乐启蒙教育早期音乐教育的价值01讲义早期音乐教育的价值.docx
- 1+x培训与考核中心产品技术资料CA25G空调硬座客车.docx
- 1+x培训与考核中心电力机车司机教学方法.doc
- 1+x培训与考核中心企业文化展示南宁铁路局.docx
- 1+x培训与考核中心企业文化展示长沙机务段岳阳救援列车“三化”工作理念.docx
- 1+x培训与考核中心铁路机车电工TD-3-2-2.2.2.1.3-1-SS8B列车供电柜使用说明.doc
- 1-专业建设库南京工业nanjinggongye-2012年物联网技术应用专业人才培养方案0927(针对2012级物联网专业).doc
- 1-专业建设库南京工业nanjinggongye-2013年物联网技术应用专业人才培养方案详细.doc
文档评论(0)