版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
智能家居系统的设计与实现1绪论 [20]。单片机通过串口与蓝牙通信,手机APP连接蓝牙,对环境温湿度及门铃状态监测,对LED灯的挡位、风扇的挡位、垃圾桶等家居电器进行基本的控制。图2-1总体设计方案框图2.4系统工作流程图系统初始化,对系统进行检测,如果系统检测不存在异常,则系统读取温湿度传感器的数据和读取风扇、LED灯的状态数据,在OLED液晶显示屏上实时显示日期、时间、温湿度数据以及风扇和LED灯的状态数据,系统模拟防盗门铃报警,当按钮K1被按下时,蜂鸣器报警;当垃圾桶的红外模块检测到有人靠近垃圾桶时,垃圾桶打开。查看APP蓝牙是否连接成功,若连接成功,手机APP接收单片机发送过来的数据并实时刷新门铃状态、温湿度以及功能按钮的数据显示,如果APP接收到指令,判断是否有APP的功能按钮按下,控制LED灯的三个挡位调节和关闭、控制风扇的三个挡位调节和关闭以及控制窗帘的打开、停止、关闭的功能按钮,如果是,则实现对应的系统功能。系统工作流程图如图2-2所示。图2-2系统工作流程图3系统硬件设计本章节主要通过硬件设计思路方法、设备硬件组成以及主要单元设计进行开展。3.1硬件设计思路方法针对智能家居硬件电路设计思路:首先对系统电路要实现的功能进行了一个整体的规划,因为要实现对垃圾桶、窗帘、风扇、灯以及门铃的控制,所以在设计电路时需要考虑它们之间的电路是否会存在干扰和影响,还要对电路中器件的摆放进行整体的一个规划和设计,因为垃圾桶、窗帘、灯的控制需要外接模型,所以在电路设计时,需要设计接线柱,方便器件外接,电路中对门铃的一个设计是用按键和蜂鸣器进行模拟;对电路整体进行规划后,绘制电路原理图和生成PCB图;送至工厂打板,并进行器件的选用和焊接;对硬件电路的功能进行调试。3.2设备硬件组成根据智能家居系统所要实现的功能,为了更好的完成系统的各项指标,对系统中各个模块进行了详细分析,对所用的元器件进行了辩证选取后,确定了系统的最终使用的硬件和模块:STM32最小系统、蓝牙模块、OLED液晶显示屏、DC电源模块、DHT11温湿度传感器。3.3主要单元设计本小节主要围绕各电路模块原理和电路设计进行展开。3.3.1STM32F103C8T6主控电路STM32最小系统采用SWD调试接口设计的方式,SWD调试模式主要优点是:传输速度快、使用的I/O口少。因为STM32F103内部有个RTC电路,所以本电路设计中特意加入了纽扣电池,即使在断电的时候也可以给单片机供电,内部时钟依旧可以正常工作,这样就可以使OLED液晶显示屏上的日期时间只需修改一次程序就可以保证时间的准确性,不用每次给单片机上电的时候都要重新修改日期时间的初始化程序。主控电路如图3-1所示。图3-1STM32最小系统原理图3.3.2蓝牙模块电路本设计中蓝牙模块主要通过A2和A3串口与单片机STM32进行通信,通过串口通讯的两根数据线:U2_RX和U2_TX对数据进行异步通讯接收和发送,在本设计中蓝牙模块主要是接收手机APP的数据和发送单片机STM32的给出的数据指令,为了蓝牙模块更好的在电路电压为5V的状态下工作,蓝牙接口原理图如图3-2所示,在蓝牙模块加入一个100nF的稳压电容,因为在蓝牙模块对数据进行发送的时候需要一个大电流,可能此时电流会突然降落下来达不到数据发送时的电压,因此加一个稳压电容可以满足此时的蓝牙模块的工作状态。图3-2蓝牙接口原理图3.3.3显示模块电路本设计采用的是0.96寸的OLED纯蓝色液晶显示屏,不需要高电压供电,只需要提供3.3V的直流电压就可以工作。采用OLED显示模块实现单片机对一些数据的显示,智能家居控制系统可以直接在OLED显示屏上看到系统的日期、时间、温度、湿度信息以及LED灯和风扇的当前状态。OLED模块电路接口原理图如图3-3所示。图3-3OLED模块电路接口原理图3.3.4报警模块电路本设计所采用的报警模块电路如图3-4所示,电路设计中主要是由于三极管不需要正反转,但本身需要一定的限流,所以采用S8050三极管,其本身具有开关和驱动的特性,电路设计中还加入了300欧的电阻是为了防止三极管导通时有大电流回流到单片机,起到保护电路的作用。在智能家居设计中当K1按键模拟门铃被按下时发送指令给单片机,此时单片机就会通过指令使蜂鸣器报警提醒。图3-4报警模块电路原理图3.3.5DC电源电路系统在电源电路设计如图3-5所示,因为系统中STM32、蓝牙、报警模块电路、垃圾桶模块舵机、LED控制电路以及电机驱动模块电路都需要5V供电,所以对电源模块的设计是电源接口采用的是5V,以及采用一个串口调试和两个220uF电容,对电路起到滤波和稳压的作用,又因为电路中OLED模块、DHT11模块、红外模块以及独立按键模块电路需要3.3V供电,所以电路采用5V降3.3V给电路模块供电。图3-5DC电源模块原理图3.3.6温湿度检测模块电路本设计在环境温湿度检测这一方面采用的是DHT11,可以通过手机APP和显示屏查看实时的温湿度,根据这个数据可以选择合适的服装以及室内温度的调节,该模块在电路中所需要的电压是3.3V,通过单片机A0串口与DHT11接口DATA进行连接如图3-6所示。图3-6DHT11接口原理图3.3.7窗帘控制模块电路本设计在窗帘控制模块采用的硬件模块是TCRT5000红外循迹模块,它的距离检测范围是1mm~8mm,具有可调精密电位器可以用来调节该模块距离的检测范围。在窗帘的两端分别放置一个工作电压为3.3V的红外模块,红外传感器会将检测信息反馈给单片机,从而单片机控制直流电机转动来实现窗帘开和关的功能。窗帘红外接口原理图如图3-7所示。图3-7窗帘红外接口原理图3.3.8垃圾桶控制模块电路本系统在智能垃圾桶模块设计方面采用的主要硬件模块有舵机和红外模块,智能垃圾桶模块设计采用舵机来控制垃圾桶盖子的打开和关闭,通过PWM调制给舵机提供一定的脉冲宽度,可以控制舵机转动角度的大小。通过位置检测器判断舵机输出轴是否已经旋转一定的角度到达指定位置,从而通过改变PWM调制信号的脉冲宽度来改变舵机转动角度控制垃圾桶的打开和关闭。如果红外模块检测到垃圾桶前一直有人那么垃圾桶会持续保持打开状态,若检测到人来一下,自动打开,1.5秒后自动关闭。垃圾桶舵机、红外接口原理图如图3-8所示。图3-8垃圾桶舵机、红外接口原理图3.3.9电机驱动电路本设计采用了DRV8833直流电机驱动,因为智能家居系统设计与实现中有窗帘和风扇模块的实现功能,在实现窗帘和风扇的控制上需要用到直流电机对它们进行控制实现其功能,因此需要实现对电机正转和反转的控制,且电机驱动时需要一个大电流,因此需要外接一个驱动模块。DRV8833直流电机驱动采用MOS管驱动,将一些N沟道功率的MOSFET配置成H桥,DRV8833的每个H桥能够连续提供直流电机所需要的驱动电流,只有在较低的电压下,电流供应能力才会略有下降。DRV8833直流电机驱动原理图如图3-9所示。图3-9DRV8833直流电机驱动原理图3.3.10LED控制电路本系统LED控制模块电路采用一个P沟道MOS管3401A,当0电平时此电路中MOS管就会导通,相当于电路中一个开关作用,这时电路中LED处于我们设计中的3挡状态,所以加入一个200K的电阻拉高电路中的此处的电压,防止电路导通时,到LED灯的电流过大,消耗过多能量,通过该电路中的调制可以调节LED灯的亮度从而实现对LED灯一档、二档、三挡的挡位实现。同时电路中也加入了光电耦合元件,此处电路中使用光耦是为了把该电路与单片机隔离,同时电路中在单片机和光耦之间加入一个510R的电阻,作用是为了限流,对光耦起到一个保护作用。LED灯电路原理图如图3-10所示。图3-10LED控制电路原理图3.3.11独立按键电路本系统硬件电路设计时设计了K1、K2和K3按键,每个独立按键接了一个0.1u的电容和一个4.7k的上拉电阻,可以稳定电路的电压状态,起到限流的作用。该处0.1u的电容的作用是利用电容充电的时间使电路给单片机提供了足够的反应时间,所以电容和电阻在该电路中起到的作用是硬件消抖。电路设计的三个独立按键是预留的,我们用到了其中一个独立按键K1,来进行门铃的关闭和打开的模拟,当K1按键被按下的时,电路中蜂鸣器会报警提示我们门铃已经被打开,此时蜂鸣器会持续鸣叫3秒;如果一直按着按键K1蜂鸣器会一直鸣叫,当按键松开后,蜂鸣器会继续鸣叫3秒,达到一个模拟门铃被打开蜂鸣器报警的功能;用独立按键K2控制LED三个挡位的调节和关闭,单击按键K2一下LED亮一挡,单击按键K2两下LED亮二挡,单击按键K2三下LED亮三挡,长按按键K2关闭LED;用独立按键K3控制风扇三个挡位的调节和关闭,单击按键K3一下风扇转一挡,单击按键K3两下风扇转二挡,单击按键K3三下风扇转三挡,长按按键K3关闭风扇。独立按键原理图如图3-11所示。图3-11独立按键电路原理图4系统软件设计本章节主要通过软件的总体设计、APP主界面设计以及软件系统程序设计进行开展。4.1软件总体设计软件设计分为两部分:APP主界面设计;软件系统程序开发。4.2APP主界面设计手机APP主界面见图4-1,主要功能是状态显示和相应家居的控制。(1)APP主界面显示了此APP的名称:SmartHome、蓝牙连接状态;(2)APP可以显示室内的环境温湿度、门铃开关的状态;(3)APP可进行相关家居控制,点击APP上的功能按钮组件,可以控制LED灯的开关及三个挡位的调节、风扇的开关及三个挡位的调节以及垃圾桶的开关。图4-1系统APP主界面4.3软件系统程序设本小节主要围绕系统APP开发的步骤、智能家居系统基本模块程序设计展开。4.3.1系统APP开发的步骤智能家居系统手机APP开发的步骤框图如图4-2所示:(1)对系统硬件功能进行规划;(2)根据智能家居硬件功能对手机APP的UI界面进行合理的布局与实现;(3)APP连接蓝牙,对数据的发送和接收进行测试;(4)对智能家居的手机APP进行网络数据的发送和接收以及智能家居手机APP所实现功能代码进行编写和汇总;(5)调试智能家居手机APP的程序代码,进行程序BUG的修复;(6)生成APK程序包。图4-2APP程序开发框图4.3.2智能家居系统APP程序设计智能家居系统软件APP程序设计如图4-3所示,手机APP主要使用的是AndroidStudio开发平台,根据安卓系统的相对布局与表格布局对APP进行界面组件的排列,使用按钮控件和文本控件对智能家居系统APP温湿度、门窗状态、LED灯、风扇、垃圾桶以及窗帘的功能实现。系统先对蓝牙初始化,按下扫描蓝牙按钮,在弹出的蓝牙框中选择对应的蓝牙:SmartHomeJYH666,点击完成后,查看蓝牙是否连接成功,手机APP上会显示蓝牙的连接状态,蓝牙连接成功后,更新手机APP数据,判断手机APP是否有功能按钮按下,手机APP控制对应功能各模块的功能按钮实现对应功能,可控制LED灯的三个挡位和关闭、控制风扇三个挡位和关闭、控制垃圾桶的打开和关闭以及控制窗帘的打开、停止、和关闭。图4-3智能家居APP程序设计流程图4.3.3蓝牙通信模块程序设计智能家居系统蓝牙通信模块程序设计如图4-4所示,先对蓝牙通信进行程序初始化,如果程序没有异常,发送数据到手机APP,手机APP接收控制指令,根据接收到的数据指令系统对应实现相应的功能,如果程序检测异常将直接结束工作。图4-4蓝牙模块程序设计流程图4.3.4报警模块程序设计智能家居系统报警模块程序设计如图4-5所示,首先对蜂鸣器I/O口初始化,判断程序是否存在异常,程序在没有异常的情况下,对按键K1进行判断是否被按下,若按键K1被按下,则蜂鸣器报警,反之,蜂鸣器不报警,如果程序检测异常,则报警模块将直接结束工作。图4-5报警模块程序设计流程图4.3.5显示模块程序设计智能家居系统显示模块程序设计如图4-6所示,首先对OLED显示程序进行初始化,判断程序是否存在异常,程序在没有异常的情况下,判断显示屏显示的数据日期、时间、温湿度以及LED灯和风扇的状态是否有更新,如果有就更新对应数据状态。如果程序检测异常,则将直接结束。图4-6显示模块程序设计流程图4.3.6温湿度模块程序设计智能家居系统温湿度模块程序设计如图4-7所示,首先对温湿度传感器程序进行初始化,判断程序是否存在异常,程序在没有异常的情况下,读取温湿度数据。如果程序检测异常,则将直接结束。图4-7温湿度模块程序设计流程图4.3.7红外模块程序设计智能家居系统红外模块程序设计如图4-8所示,首先对红外传感器模块程序进行初始化,判断程序是否存在异常,程序在没有异常的情况下,判断是否有控制舵机或电机的指令,如果有就控制对应的系统功能。如果程序检测异常,则将直接结束。图4-8红外模块程序设计流程图5系统测试与分析本章节主要通过对电路输入输出、对STM32板、对DHT11温湿度检测模块、对LED灯、舵机、电机、时间显示各个模块进行测试分析以及整个系统的测试分析进行开展。5.1对电路输入输出测试本智能家居系统要正常工作,需要稳压电源电路稳定工作,为智能家居系统内其他模块提供稳定的电压:为OLED模块提供、DHT11温湿度模块提供(对比其他器件温湿度)、红外循迹模块提供、垃圾桶舵机提供、窗帘电机提供。首先在未接入电源的情况下、使用万用表测试,确保稳压电源电路通路和短路的情况,确保稳压电源电路正常工作。在确定正常连接后,先给稳压电源电路输入5V,经测试得输稳压电源电路输出稳定的电压值为3.3V电压输出如图5-1所示。图5-1电路电源输入输出电压5.2对STM32板进行测试对STM32板进行测试,用KeiluVision5软件测试,如图5-2所示,程序已经下载成功。使用简单代码进行串口通讯测试,如图5-3所示串口通讯正常。图5-2下载程序成功图图5-3串口通讯正常图5.3对温湿度检测模块进行测试在室内对进行温湿度的进行测量,在常温下测量温湿度的表5-1所示:温度相对误差的公式:测量值为:t℃实际值为:T℃相对误差为:θ%(5-1)湿度相对误差的公式:测量值为:rh%实际值为:RH%相对误差为:δ%(5-2)表5-1室内常温下温湿度测量温度(t)实际温度(T)相对误差(θ)测量湿度(rh)实际湿度(RH)相对误差(δ)22.30℃22.50℃22.55℃23.01℃23.30℃23.30℃23.00℃23.00℃23.00℃23.00℃23.00℃23.00℃3.0%2.0%0.2%0.4%1.0%1.0%58.90%58.30%58.85%59.20%59.05%58.95%59.00%59.00%59.00%59.00%59.00%59.00%0.1%1.1%0.2%0.3%0.8%1.6%在空调23℃下面测量的温湿度表格如表5-2所示:表5-2室内空调23℃下温湿度测量温度(℃)实际温度(℃)相对误差测量湿度(RH)实际湿度(RH)相对误差18.29℃18.29℃18.28℃18.28℃18.27℃18.25℃17.00℃17.00℃17.00℃17.00℃17.00℃17.00℃7.5%7.5%7.5%7.5%7.4%7.3%30.23%30.50%31.01%31.40%30.33%31.05%31.00%31.00%31.00%31.00%31.00%31.00%2.4%1.6%0.3%1.0%2.1%0.1%经过在室内常温下和空调23℃下表格中温湿度相对误差分析得:温度和湿度在常温下的相对误差均在5%以下,产生误差的原因是器件自身会照成一定的误差是不可避免的,而在空调的下的测量相对温度的相对误差较大一点,湿度相对误差不是很大,由于受空调的影响所以才会有所影响,但是误差范围还是可以接受的,所以证明温湿度模块是正常工作的。5.4对LED灯、电机和舵机模块进行测试通过用示波器抓舵机、LED灯、电机、它们三个模块工作的时候的波形,可以通过示波器看它们正常工作时的频率,由舵机正常工作时的波形图可以看出其正常工作频率为50Hz;由LED灯正常工作时的波形图可以得出其正常工作频率为1000Hz;由电机正常工作时的波形图可以看出其正常工作频率为50Hz。因此通过波形图可以看出三个模块均正常工作,它们对应的波形图:如图5-4所示、如图5-5所示、如图5-6所示:图5-4舵机正常工作的波形图图5-5LED灯正常工作的波形图图5-6电机正常工作的波形图5.5对时间显示模块进行测试每隔10分钟用模块时间与标准的北京时间对比一次,发现系统存在一个时间误差并保持53s的误差,分析产生时间误差的原因是在调试系统时,下载程序会延时一段时间,没有那么准确跟标准的北京时间对上,相对时间误差53s是系统不可避免会存在的,但也可以说明系统的OLED以及时钟是正常工作的调试过程中OLED正常工作如图5-7所示,时间对比如表5-3所示。表5-3时间对比表格OLED液晶屏显示时间标准北京时间时间误差(s)21/4/135:23:5021/4/135:33:5021/4/135:43:5021/4/135:53:5021/4/136:03:5021/4/136:13:5021/4/135:24:4321/4/135:34:4321/4/135:44:4321/4/135:54:4321/4/136:04:4321/4/136:14:43535353535353图5-7OLED正常工作图5.6对蓝牙模块进行测试通过手机APP连接蓝牙,对蓝牙模块进行测试,通过对系统防盗门铃模块模拟以及对手机APP打开或关闭垃圾桶模块调试如图5-8所示。APP可以对垃圾桶进行相关控制以及可以在APP实时看到门铃状态以及温湿度的显示说明APP及蓝牙模块均正常工作。APP正常工作界面如图5-9所示。图5-8APP控制垃圾桶调试图图5-9APP正常工作界面5.7对系统整体测试首先手机APP先连接蓝牙,先进行防盗门窗的模拟测试,按下按键,蜂鸣器报警,松开按键大概1.5s后,蜂鸣器停止报警,说明系统中防盗门窗这一块没有问题,能正常工作;在对垃圾桶进行测试,用手机APP和红外模块检测对垃圾桶进行打开和关闭测试,均能正常控制,说明系统智能垃圾桶这一模块能正常工作;用手机APP对LED灯、风扇、窗帘进行控制,均能进行正常工作。通过对各个功能模块进行测试说明整个智能家居系统是正常的且可以正常完成相应的功能实现。系统调试的图如图5-10所示。图5-10系统调试图6总结与展望本章节主要通过系统完成情况、系统设计中遇到的问题以及后续工作展望进行开展。6.1系统完成情况本智能家居系统在设计过程中广泛的应用了软硬件方面的知识,包括底层硬件电路的设计、蓝牙模块的使用、单片机程序设计、APP程序设计、APP界面设计。经过系统设计、调整以及测试后,本系统大致完成了以下指标:实现了OLED液晶显示屏显示系统日期、时间、温度、湿度、LED灯和风扇的当前状态;实现了DHT11温湿度传感器采集温湿度;实现了按键K1模拟门铃打开或关闭,实现防盗门铃警报功能,同时蜂鸣器报警;实现了APP实时显示温度和湿度;实现了APP和按键K2控制LED三个挡位的亮度调节;实现了APP和按键K3控制风扇三个挡位的风速调节;实现了APP控制垃圾桶打开或关闭;实现了APP控制窗帘的打开或关闭。6.2系统设计中遇到的问题在系统设计中遇到印象比较深的问题:智能风扇模块中电机的控制问题:因为电机采用的是PWM调制所以给的占空比过大,电机起始驱动不起来,需要手动转一下,但风扇的挡位可以看出明显效果;反之,电机转速过快,看不出挡位效果。解决方法:修改程序中电机PWM调制中的占空比,慢慢尝试找到一个临界值。智能垃圾桶中舵机角度控制问题:用舵机控制垃圾桶打开盖子的时候,有时候垃圾桶盖子会翻到后面。解决方法:调节舵机的角度给到适当的位置。6.3后续工作展望本系统采用STM32单片机、蓝牙、手机APP实现了系统设计的基本功能要求,我们可以通过手机APP连接蓝牙,在手机APP上看到室内的环境温湿度、门铃开关的状态以及可通过手机APP进行相关家居的控制,可以按下手机APP上的功能按钮实现家居相应的控制;本系统使用OLED液晶显示屏显示系统日期、时间、温度、湿度、LED灯和风扇的当前状态;本系统还模拟实现了防盗门铃。系统后续优化:调整APP界面的设计,使界面更加美观;用通信范围更广的云服务器来代替蓝牙;未来为了使智能家居系统更加完善,可以加入语音控制系统;对垃圾桶进行进一步的升级加入垃圾分类功能等。大学四年对理论知识的学习,在智能家居系统设计中得到实践,同时让学习的理论知识得到更好的检验。在毕业设计过程中发
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 规划普法责任制清单制度
- 证据规定中证明责任制度
- 财务部生产岗位责任制度
- 2026年四川托普信息技术职业学院单招职业适应性测试题库与答案详解
- 2026年武威职业学院单招职业适应性测试题库有答案详解
- 环保产业项目申报与审批流程手册(标准版)
- 2026年黑龙江商业职业学院单招综合素质考试题库与答案详解
- 2026年泉州海洋职业学院单招综合素质考试题库带答案详解
- 进一步夯实部门责任制度
- 通风岗位责任制考核制度
- 2025年健康管理师三级考试重点复习题及答案
- 2026年苏州工业职业技术学院高职单招职业适应性测试备考题库含答案解析
- 北森测评题库及答案2026
- 炎德·英才大联考湖南师大附中2026届高三月考试卷(五)英语试题(含答案详解)
- 2018沪G504 钢筋混凝土锚杆静压桩和钢管锚杆静压桩
- 2025年大理州州级机关统一公开遴选公务员参考试题(32人)附答案解析
- 三国演义三英战吕布课件
- 2026年苏州市职业大学单招职业技能测试模拟测试卷附答案
- 桥梁检测评定与加固技术课件 第2章 桥梁结构病害分析
- 2025-2026学年冀教版七年级英语上册(全册)知识点梳理归纳
- 消防自动报警系统培训
评论
0/150
提交评论