智能家居控制系统的设计毕业论文
2020-02-19 20:38:08
摘 要
随着生活水平的提高,人们越来越注重家居生活的便捷性、智能性。这也让智能家居成为了家居发展的一种趋势。本文设计了一套基于STM32单片机的智能家居控制系统,可对家居设备以及TCP服务器进行远程控制,实现的主要功能有:家居照明控制、智能家电控制、家居温度调节、窗帘控制。
论文首先分析了系统需实现的功能,并设计了智能家居控制系统总体框架结构。然后根据设计需求,选择了主控单元芯片,确定各个功能模块的型号,设计了系统总体的硬件原理图。在此基础上,设计相应的驱动程序,完成系统总体软件设计。最后模拟用户正常使用智能家居系统的流程,进行系统的整体测试。经测试,本系统基本达到设计要求。
关键词:智能家居;STM32;驱动程序
Abstract
With the improvement of living standard, people pay more and more attention to the convenience and intelligence of home life. This also makes smart home become a kind of development trend. A smart home control system is designed based on STM32 single-chip microcomputer in this paper, by which home equipment and remote control of TCP server can be controlled. Some functions are realized, such as home lighting control, smart home appliance control, home temperature adjustment, curtain control.
First, the functions of the system are analyzed and the overall framework of the system is designed. Then the main control unit chip and the model of each functional module are determined according to the design requirements. The hardware system design is carried out. Based on it, the overall software and the corresponding driver are completed. At last the overall test of the system is carried out by simulating the smart home system used normally. It verified that the system can reach the design requirements.
Key Words:Smart Home; STM32; Driver
目录
第1章 绪论 1
1.1 研究背景、意义 1
1.2 国内外研究现状 1
1.2.1 国外研究现状 2
1.2.2 国内研究现状 2
1.3 研究的基本内容、目标 3
1.4 论文结构 3
第2章 系统总体设计 4
2.1 系统需求分析 4
2.2 系统框架结构 4
2.3 相关技术介绍 5
2.3.1 SPI串口通信 5
2.3.2 红外遥控技术 5
2.3.3 TCP协议 6
2.4 本章小结 6
第3章 系统硬件设计 8
3.1 STM32单片机及外围电路 8
3.1.1 主控单元 8
3.1.2 系统复位电路 9
3.1.3 调试下载电路 9
3.2 功能模块 10
3.2.1 OLED显示模块 10
3.2.2 红外遥控模块 11
3.2.3 继电器控制模块 12
3.2.4 电机驱动模块 13
3.3 WIFI通信模块 14
3.4 本章小结 15
第4章 系统程序设计 16
4.1 开发工具平台 16
4.2 各模块程序设计 16
4.2.1 OLED显示程序设计 16
4.2.2 红外遥控程序 16
4.2.3 WIFI通信程序 17
4.3 本章小结 18
第5章 系统测试 19
5.1 各模块功能测试 19
5.1.1 OLED显示测试 19
5.1.2 控制信号发送测试 20
5.1.3 WIFI通信模块测试 21
5.2 本章小结 21
第6章 总结与展望 22
6.1 总结 22
6.2 展望 22
参考文献 23
致 谢 24
第1章 绪论
1.1 研究背景、意义
随着无线通信、嵌入式系统与微控制等技术的飞速发展,微控制器更新换代越发频繁,高性能、低成本的ARM处理器迅速普及,更加智能化的生活成为可能,万物互联的物联网概念也逐渐渗透进我们的生活起居之中。物联网是指以互联网为基础,通过各种传感器,采集外界信息,经由事物与事物、事物与人,事物与网的联接。从而实现用户识别、统一管理与远程控制等功能[1]。而作为物联网扩张发展的重要方向,智能家居控制系统也应运而生、蓬勃发展。
智能家居控制系统是一个以房屋为平台,基于互联网和传感网络的信息交换媒介。综合利用网络通信技术、云服务器控制、传感器技术、嵌入式系统技术[2],将住宅家居的各个方面如灯光照明、温度调节、采光控制、家电控制等整合统一。与原来独立分离的家居设备相比,智能家居控制系统创造了一个更加舒适、便捷、智能化的家居生活,并且提高了信息交换速率,化被动为主动,赋予家居能动性、智能化,将原本封闭的系统开放、扩展,注入崭新的活力。
但同时,智能家居仍然处在成长环节,它在现实生活中的应用范围狭小,技术不够成熟,功能不够丰富,远远不能满足用户对人性化、高效化、智能化与交互化的家居生活的迫切需求。现行市场上的智能家居设备鱼龙混杂、种类繁多,看似烈火烹油、鲜花着锦,实则欠缺全国通用的标准、各品牌间不可兼容、性价比低、功能单调,一直难以普及,进入千家万户。因此,设计一套实用性强、性价比高、操作便捷、更加高效的智能家居控制系统有了现实意义。
1.2 国内外研究现状
目前,智能家居控制系统的产生发展大致可以划分为四个阶段:
一、家居自动化阶段,智能家居初具雏形,以能够自动化的管理用电设备为标志;
二、单品阶段,智能家居的初级阶段,各种智能家居产品广泛涌现,但是彼此之间互不联接、互不通信,不能组建成网络,以单品形式存在;
三、物联网阶段,真正意义上的智能家居,以万物互联的概念,整合碎片化的智能家居单品,成为一个系统,统一控制管理,实现家居生活的智能化;
四、人工智能阶段,进一步强化“智能性”,借助人工智能,通过大数据和云计算,实现对用户的生活行为、习惯的学习。
1.2.1 国外研究现状
在智能家居的研究应用方面,欧美国家一直处于发展前列。欧美国家对于智能家居的研究,都是以住宅为平台,从住宅的整体角度综合考虑,在住宅的营造之初,就将智能家居的概念赋予其中,住宅的建成就意味着智能家居系统的初步完成,与国内是截然不同的。
二十世纪九十年代,美国康涅狄格州建造了世界上第一幢智能家居住宅,标志着正式拉开了建设智能家居的帷幕。之后,美国、加拿大、澳大利亚、欧洲、东南亚等国家地区都相继推出了自己的智能家居解决方案。
目前,出现在市场上的主流智能家居解决方案主要有:
一、X-10系统[3],通过220V电力线载波的方式,传感器模块将用户指令转化成X-10信号,以电力线为平台传输,执行器接收信号控制设备,从而实现家居控制,无需额外布线。
二、EIB系统[4],采用分布式的总线拓扑结构,以串行通信的方式,传感器模块经由总线向多个执行器发送用户指令,实现智能化控制。但也存在施工要求繁复严苛,价格高昂等缺点。
三、8X系统[5],采用网络控制节点网关的总线方式,通过网关实现总线网络与节点间的通信,从而达到控制功能。8X系统预留端口,可以利用现有的智能家居产品对系统进行扩展,但系统构架本身较为死板,系统的灵活性不能满足用户需求。
近年来,微软、谷歌、苹果、三星等国外知名企业,也先后投身于智能家居研发的浪潮中,例如Motorola研发的“居所之门”、 IBM开发的“家庭主任”、 Microsoft推出的“梦幻之家”等。2014年,韩国LG的Home Chat是一款可以通过语音远程控制家电的应用软件。2014年,三星发布Smart Home,用户可以通过移动设备终端控制智能家居。2015年,苹果发布Home Kit,将智能家居控制系统集成到IOS操作系统中。2016年,谷歌推出Google Home,进一步拓展智能家居在智能化领域的发展。
1.2.2 国内研究现状
对比国外,国内对于智能家居的研究起步较晚。自1997年,国家提出针对小康住宅智能化的设计要求后,智能家居研究的序幕正式拉开。2012年,物联网被写入“十二五”发展规划,作为战略性新兴产业[6]。历年来,国家对智能家居控制领域高度重视,并出台各项政策,鼓励支持智能家居的快速发展。
目前,智能家居控制系统的主流产品有:清华同方“e-Home数字家园”、海尔“U-home”、小米智能产品系列等。
“e-Home数字家园”以家庭为中心,基于互联网,统合了家庭内部的数字化及社区的智能化。“U-home”包含一套完整的智能家居解决方案,实现跨平台、跨品牌的互通。小米发布一系列的智能家居产品,涵盖用户生活起居的方方面面,形成小米的战略生态圈,通过“米家”APP实现设备互联控制。华为正式发布了智能家居发展战略,与众多家居品牌合作,共同打造一个开放的智能家居生态……
1.3 研究的基本内容、目标
本论文主要针对智能家居控制系统部分展开研究,调查智能家居控制系统在国内外的发展趋势,研发一款以单片机为基础的家居控制系统。系统采用模块化设计,包含控制信号发送部分、状态显示部分、WIFI通信部分。
控制信号发送模块主要由智能开关控制系统、红外信号发射系统构成。通过WIFI实现智能家居各个模块与单片机、单片机与终端设备的通信和控制。能够通过网络接收远程终端的控制信号,并能按照信号的功能分类分别对家电进行控制,比如对家居灯的开关控制,对空调的开关,温度模式设置等。
智能家居系统需要在智能化和便捷性方面,满足人们的需求,如遥控家居照明灯的开关和亮度的调节,空调的开关和温度、工作模式的设置等。在系统设计中,应把握系统性能与成本间的平衡,在满足用户需求的同时,尽可能的获得高性价比。而且,要注意增强系统的延展性,选择国际通用的技术协议标准。保证用户能够在今后的生活中,利用现有的智能家居设备对系统功能进行扩展,延长系统服务寿命。
1.4 论文结构
本篇论文主要介绍了有关智能家居控制系统的设计、实现过程以及相关技术。全篇共分为六章,各章节内容如下:
第一章是绪论,主要介绍了智能家居控制系统的研究背景、研究意义、研究的基本内容、研究的目的,以及其在国内外的研究现状。
第二章是系统总体设计,分析了智能家居控制系统应该具备的功能,设计了系统的框架结构,并对涉及到的技术,SPI串口通信、红外遥控编码、TCP协议做了简单介绍。
第三章是系统硬件设计,详细介绍和分析了系统实现的硬件原理图,以及各个模块的工作特点、硬件连接。
第四章是系统软件设计,介绍了Keil MDK开发工具,分析了各个功能模块的驱动流程,使用方法。
第五章是系统测试,对系统组成的各个模块进行测试,检验其能否满足设计要求。
第六章是总结与展望,对系统设计、实现过程中的工作进行总结,并指出其中的不足。
第2章 系统总体设计
2.1 系统需求分析
在移动通信技术迅猛发展的时代,万物互联的物联网概念也渗透进人们的生活之中,人们对家居环境的要求也逐渐提高。智能家居控制系统就是为了满足这一需求而提出的,通过事物与事物、事物与人,事物与网的联接,从而实现用户识别、统一管理与远程控制,整合碎片化的智能家居产品,统一控制管理,实现家居生活的智能化、高效化。为了满足用户的需求,智能家居控制系统应该包含下列功能[7]:
一、家居照明控制:可以通过移动设备终端,如手机、平板等对室内照明灯进行开/关操作。相比传统的物理开关而言,照明智能控制更加方便快捷,只需在终端上一键操作,无需走到开/关面前。
二、智能家电控制:对家电设备的控制可以划分为两种:
(1)针对自带红外接收功能的家电,可以通过发射不同的红外编码信号直接控制,如空调、电视等;
(2)针对无红外接收功能的电器,可以通过加装智能插座(本文采用继电器进行模拟)控制家电的电源,如冰箱、饮水机等。
三、家居温度调节:可以通过移动设备终端,控制空调的开/关,工作模式的设置,温度设置,达到调节室内温度的目的。
四、家居采光控制:通过驱动步进电机的转动方向、转动速度、转动时间,来控制窗帘打开/关合,从而调节室内光线的照入。
2.2 系统框架结构
基于上述需求分析,本课题研究设计了一套智能家居控制系统,以STM32单片机为基础[8],整体采用模块化设计,包含控制信号发送部分、状态显示部分、WIFI通信部分。系统总体的框架结构如图2.1所示。本控制系统包含以下功能:家居电器控制、室内照明控制、室内采光控制等。
控制信号发送模块主要由智能开关控制系统、红外信号发射系统构成。智能开关控制系统用来控制无红外接收功能的电器,通过加装智能插座(本文采用继电器进行模拟),控制家电的电源开/关,如冰箱、饮水机等。照明系统也是同理。红外信号发射系统针对自带红外接收功能的家电,通过发送不同的红外编码信号控制其工作状态,如空调、电视等。状态显示部分是指将各个控制设备的工作状态呈现在OLED液晶显示屏上。通过WIFI实现智能家居各个模块与单片机、单片机与终端设备的通信和控制。STM32单片机通过TCP/IP协议与云服务器通信,移动终端登录云服务器后就可以向单片机下达控制指令。
图2.1 系统框架结构图
2.3 相关技术介绍
2.3.1 SPI串口通信
SPI,即串行设备接口(Serial Peripheral Interface),是一种全双工的、同时序的高效串行传输协议[9]。主要应用于MCU系统短程同步通信中。
SPI采用主从控制的工作方式,应用于一个主设备和多个从设备之间。需要4根数据线连接,分别是SDI(串行数据输入)/MISO(SPI总线主输入/从输出)、SDO(串行数据输出)/MOSI(SPI总线主机输出/从输入)、SCLK(实时时钟信号)、CS(设备片选信号)。
CS片选信号,控制设备启用与否,只用设备的片选信号有效时,SPI总线上对设备的操作才有意义。因此,通过CS片选信号,可以实现一根SPI总线上连接多个外围设备。
SCLK,发送实时时钟脉冲,保证主设备与从设备间在时序上一致,才能够进行串行通信。在一个SPI时钟周期内,设备会完成如下操作:
(1)主设备向SDO接口发送一位数据,从设备由SDO接口读取这位数据;
(2)从设备向SDI接口发送一位数据,主设备由SDI接口读取这一位数据。
整个过程通过移位寄存器来实现的。主设备和从设备各有一个移位寄存器,且二者连接成环。按SCLK时钟脉冲,数据以高位至低位的顺序依次移出主寄存器,移入从寄存器;同时依次移出从寄存器,移入主寄存器,相当于数据结构中的循环队列操作。当某个寄存器中的原来内容全部移出时,相当于完成了两个寄存器内容的交换。
2.3.2 红外遥控技术
红外遥控,是利用红外线进行数据传输,一般采用IRDA红外连接技术,从而实现短距离控制的通信技术。IRDA数据协议由物理层,链路接入层和链路管理层三个基本层协议组成。其工作原理:由编码信息对特定频率的方波进行PWM/PPM调制,产生输出信号,从而将二进制脉冲编码调制在方波上,经三极管缓冲放大后,控制红外发射管,发射红外信号。
红外调制发送协议有NEC协议、夏普协议、索尼SIRC协议等。应用最广泛的红外遥控编码协议是NEC Protocol的PWM(脉冲宽度调试)[10]。
NEC编码协议的指令格式为:8位同步码头(引导码),8位用户码,8位用户反码,8位数据码,8位数据反码,以高低位的顺序发送。为了增强传输的可靠性,方便校验,采用原码 反码的传输形式。
根据NEC协议标准,引导码由9ms左右的低电平和4.5ms左右的高电平组成,重复码由9ms左右的低电平和2.25ms左右的高电平组成。数据“1”由0.56ms左右的低电平和1.685ms左右的高电平组成,数据“0”由0.56ms左右的低电平和0.565ms左右的高电平组成.
2.3.3 TCP协议
TCP,即传输控制协议(Transmission Control Protocol),是一种双向连接的字节流通信方案[11],处于七层计算机网络OSI模型中的第四层,传输层,负责应用软件(如IE浏览器)和网络软件之间的通信。
TCP协议的运行可以划分为三个阶段:连接创建,数据传输和连接终止。
TCP协议建立一个连接过程,被称为“三次握手”。在创建连接的过程中,将会通过初始化许多参数来保持连接的可靠性。
在数据传输的过程中,数据传输的可靠性和有效性将通过许多机制来确保,例如:通过校验,检测错误;通过确认,检测丢包;通过序号,对收到的数据进行排序以检测重复;通过计时器,检测延时;流控制;拥塞控制;丢包的重传等。
连接终止时,采用“四次挥手”,在这个过程中,无论是客户端还是服务器,任何一端都可以主动的执行关闭。当客户端/服务器要停止连接,就需要向对方发送FIN,对方则回复ACK表示确认。TCP连接是全双工的,所以断开TCP链接时,需要每一端都终止连接,都发送FIN和回复ACK。
同时,TCP协议还提供TCP端口以进行互联网数据传输。
2.4 本章小结
以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。
相关图片展示: