




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
V本设计中使用的微控制器是STM32F103C8T6。为了简化和简化编程,采用C语言进行编程,采用Keil软件进行编译,通过ESP8266模块与手机APP机智云物联网平台的服务器连接,来实现机智云APP对插座上用电器的远程控制[12]。插座开始工作时,首先会对STM32和ESP8266模块进行初始化,确保硬件正常运行。初始化包括RTC定时模块、温度传感器模块、继电器模块、OLED显示模块等。软件设计框图见图5-1所示。插座开始工作时,各个模块初始化,插座可以迅速连接到WiFi网络,并与远程服务器建立通信,也可以开启近距离语音控制。图5-1软件设计框图语音控制模块,主要是通过口令模式来完成,即LD3320进行处理判断,使用口令来实现语音控制插座上的继电器开关状态。当语音控制模块检测到用户唤醒口令时,检测该口令是否正确。接收检测为语音模块识别预设密码后的“识别模式”,如开灯、关灯、定时十分钟、定时一小时,则会根据指令执行相应的操作REF_Ref10093\r\h[13]。staticvoidaudio_process(void){if(audio_flag){audio_flag=0;dev_mode=AUDIO_MODE;;printf("cmd=%d\r\n",audio_cmd);switch(audio_cmd){caseDA_KAI_CHA_ZUO:currentDataPoint.valueswitch=1;RELAY1_ON();break;caseGUAN_BI_CHA_ZUO:currentDataPoint.valueswitch=0;RELAY1_OFF();break;caseDING_SHI_SHI_FEN_ZHONG:currentDataPoint.valuesw_timer=10;gizwits_time_change(currentDataPoint.valuesw_timer,&switch_time1);currentDataPoint.valueswitch=1;RELAY1_ON();break;caseDING_SHI_YI_XIAO_SHI:currentDataPoint.valuesw_timer=60;gizwits_time_change(currentDataPoint.valuesw_timer,&switch_time1);currentDataPoint.valueswitch=1;RELAY1_ON();break;}}}OLED使用的主要显示原理是在STM32内部建立一个缓存,然后每次使用时只改变STM32上的缓存,改变后将STM32上的缓存数据写入一次STM32的GRAM中。这里的OLED显示屏主要显示智能插座的英文表达,显示定时的时分秒、继电器的状态和实时显示温度。staticvoidoled_display_process(void){ if(!connected){ OLED_ShowString(16,0,"Smartsocket",16); OLED_ShowString(4,2,"S1:::",16);OLED_ShowNum(32,2,switch_time1.hours,2,16);OLED_ShowNum(64,2,switch_time1.mins,2,16);OLED_ShowNum(96,2,switch_time1.seconds,2,16); if(currentDataPoint.valueswitch)OLED_ShowString(4,4,"status:open",16); elseOLED_ShowString(4,4,"status:close",16); OLED_ShowString(4,6,"temp:C",16); OLED_ShowNum(48,6,currentDataPoint.valuetemperatur,2,16); } else { OLED_ShowString(16,0,"Smartsocket",16); OLED_ShowString(4,2,"connecting",16); OLED_ShowString(4,4,"",16); OLED_ShowString(4,6,"",16); }}定时模块主要是进行倒计时设计,倒计时的开关分为时分秒,通过设定的时间,在OLED显示屏上显示并且进行倒计时,在时间设定内,继电器为开的状态;超过设定时间,继电器自动断开。struct_timeswitch_time1={.hours=0,.mins=0,.seconds=0};staticvoidclock_process(void){time_process(&switch_time1,currentDataPoint.valueswitch);if(dev_mode==AUDIO_MODE)return; if(switch_time1.hours||switch_time1.mins||switch_time1.seconds) { if(currentDataPoint.valueswitch==0x01) { RELAY1_ON(); } else{RELAY1_OFF();} } else { RELAY1_OFF(); currentDataPoint.valueswitch=0; }}对于这一模块的处理主要分为温度检测和蜂鸣器报警。定时器一秒读一次温度值。当温度在规定范围内时,插座上的继电器正常工作,蜂鸣器关闭。当温度超过预设温度时,继电器断开,蜂鸣器鸣响。温度检测代码: if(timsvr_1000ms_time)//1000ms {clock_process()oled_display_process();temperature=DS18B20_Get_Temp();currentDataPoint.valuetemperatur=temperature/10;printf("temperature=%d\r\n",currentDataPoint.valuetemperatur);beep_alarm_process(currentDataPoint.valuetemperatur); timsvr_1000ms_time=0;if(!connected){led_flash=!led_flash;if(led_flash){LED_ON();}else{LED_OFF();}} }蜂鸣器报警代码:staticvoidbeep_alarm_process(uint32_ttemp){if(temp>ALARM_TEMPERATURE){currentDataPoint.valuealarm=true;currentDataPoint.valueswitch=false;currentDataPoint.valuesw_timer=0;gizwits_time_change(currentDataPoint.valuesw_timer,&switch_time1);BEEP_ON();}else{BEEP_OFF();currentDataPoint.valuealarm=false;}}本章是从软件的角度上,阐述了各个模块的器件型号,介绍了各个模块以及主程序的功能实现,大致分析每个模块的核心代码。方便读者更容易理解本设计功能和复杂度,为读者对本系统的优化做了充足准备。本章主要介绍了关于WiFi型智能插座设计的实物从焊接调试到功能调试到最后指标测试分析。详细的描述分析了整个实物从无到有的设计过程。准备好所有元件和烙铁,然后按照设计好的电路原理图开始用孔板进行焊接。合理安排穿孔板上所有元件的位置和接线,确保焊接过程顺利进行。用胶带暂时固定,然后用烙铁开始焊接。首先焊接STM32插排,然后分别焊接各个模块,最后按照接线图将各个模块用电缆连接起来,避免虚焊或短路。图6-1为焊接实物图。图6-1焊接实物图使用编程器将编译好的软件烧录到STM32单片机中,然后给电子设备使用220V电源。然后打开电源开关,检查OLED能否正常工作。如果显示正常,则说明显示器电路正常。然后看看其他模块是否正常,看看屏幕上是否有输出。如果显示正常,则编程完成。如果出现问题,必须找出问题所在并逐一解决。焊接测试完成后,进行功能调试。首先,打开电源,开机后,当所有模块的显示灯均亮时,表示各个模块电路正常。这时我们可以看到,OLED屏幕分为四行。依次显示智能插座的英文表达、预定时间、继电器开关状态、实时温度。下图6-2为插座上电后图。图6-2插座上电后图WiFi远程控制测试:安装并打开机智云APP,打开相应的WiFi权限;打开智能插座的开关,进行配网;此时OLED显示屏上出现“connecting”;打开APP,输入智能插座的网络“XPG-GAgent-4B1A”,输入密码:123456789;成功配网后,需断电退出配网模式,再上电;APP显示智能插座功能页面;即可开始进行远程控制插座。如图6-3所示。图6-3APP界面图定时测试:在插座完成配网后,通过手机APP对插座实行定时设置;按照自己的意愿,在APP页面上定下需要的时间,这时的继电器的绿灯会亮,智能插座OLED显示屏上开始进行倒计时;时间一到,继电器会立即断开,显示红灯。APP上显示插座关闭。温度异常报警测试:设置的温度阈值是28℃,低于28℃,OLED显示屏上会显示实时温度;在温度传感器附近营造一个大于28℃的环境,此时蜂鸣器会报警,继电器立即断开,OLED显示屏上所有的状态都归零,处于关闭状态。语音控制测试:通电后,对着智能插座说“打开插座”,继电器的绿灯会亮即打开,这时OLED显示屏上的继电器状态会显示“open”;对着智能插座说“关闭插座”,继电器红灯亮及关闭,这时OLED显示屏上的继电器状态会显示“close”;对着智能插座说“定时十分钟”“定时一个小时”继电器的灯会做出反应,OLED显示屏也会进行相应的倒计时,定时的时间一到,继电器断开。经过测试,所有的模块都能实现自身的功能,完成了本设计的最初设想方案。WiFi型智能插座在功能测试完毕后,还需要对它的指标调试结果进行分析,主要分为以下几个方面:连接稳定性:对于智能插座在连接WiFi网络上电后,插座与网络连接时间T≤3s,连接成功后,在没有断开电情况下,中途关闭插座后再打开插座,网络依旧连接,即插座稳定性正常。响应速度:智能插座对远程指令的响应速度,在远程指令下达后,插座对于定时oled显示模块、继电器模块及语音控制模块做出反应时间为T≤1s;插座能够在短时间内响应用户的控制指令,响应速度正常,控制正常。功能稳定性:在长时间上电过程中,远程控制、定时任务、设备状态反馈,语音控制正常,即插座功能稳定性正常。功耗与发热:插座在工作状态下,用电流表测试经过的电流,计算出插座功率,功率正常,即功耗正常且没有出现存在过高的发热问题。兼容性:将智能插座连接不同的网络,插座正常使用,兼容性完好。本设计完成了开题报告中的基本功能,在定时功能上直接采用了STM32内部模块,使得整个设计成本更低。在实际情况下运行情况良好,虽然与目前市面上的智能插座的功能相比是小巫见大巫,但胜在操作简单易懂、成本低以及功耗低,以此作为本设计的特色。本部分主要介绍与WiFi智能插座设计主题相关的工作,并为插座未来的功能提供建议。本次课题对于WiFi型智能插座的设计就结束了。所设计的硬件和软件都能相互配合实现设计的功能,功能指标数据也比较精准达标。智能插座已经可以实现继电器的定时设置、语音控制、WiFi远程控制,同时也可以通过温度传感器来实现继电器温度异常报警。在整个做实物设计过程中,也会遇到一些问题,如在语音控制花费的时间比较多,主要是由于查阅资料过于少,过于理想化,导致最终语音功能没能达到用两级指令进行控制用电器。虽然整个过程既有成功的喜悦,也有对问题的关心,但通过不断地找出问题、消除点,所有的问题都一一得到解决。同时,我学到了很多关于设计电路和分析电路问题的知识。并且通过这次设计,我对C编程语言有了更多的学习和巩固。很多时候我会发现自己在这个过程中学到的知识有所欠缺,需要在以后的工作中努力。Jingjing
Z,Fang
C.
Research
on
Control
System
of
Intelligent
Socket
based
on
Internet
of
Things[C]//Institute
of
Management
Science
and
Industrial
Engineering.Proceedings
of
2019
4th
International
Workshop
on
Materials
Engineering
and
Computer
Sciences(IWMECS
2019).Francis
Academic
Press,2019:528-533.彭勇福.WiFi智能插座在生活应用中的探讨[J].日用电器2019(3):14-17.虞刚杰,郝文嘉,董世元等.基于Wi-Fi的智能插座安全管理系统设计
[J].
电工技术,
2023,
(08):
20-23+30.
DOI:10.19768/ki.dgjs.20
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年地面气象单要素观测仪项目合作计划书
- 2025贵州铜仁职业技术学院引进博士研究生15人考前自测高频考点模拟试题及完整答案详解
- 2025内蒙古精神卫生中心招聘13名急需紧缺合同制人员考前自测高频考点模拟试题及一套完整答案详解
- 2025年核试验反应堆及其配套产品项目合作计划书
- 2025年4月18日四川内江市招聘会岗位考前自测高频考点模拟试题(含答案详解)
- 2025汉中市南郑区投资控股集团有限公司招聘(4人)模拟试卷及答案详解(全优)
- 2025年鹤岗萝北县公开招聘农垦社区工作者26人考前自测高频考点模拟试题及答案详解(全优)
- 2025年浙江大学医学院附属儿童医院招聘眼科劳务派遣特检1人模拟试卷及答案详解(历年真题)
- 股份合同协议书的范本6篇
- 2025黑龙江哈尔滨市五常市万宝学校9大岗位招聘28人考前自测高频考点模拟试题附答案详解
- 侵权法考试题及答案
- 第二章 有理数及其运算 单元试卷(含答案)2025-2026学年北师大版七年级数学上册
- 2025年11月中国质量协会质量专业能力考试精益现场管理工程师复习题及答案
- 印刷厂生产报表编制细则
- 幼儿防触电安全知识培训课件
- 仪表阀门培训课件
- 抗凝药物用药护理
- 短视频文化现象辩论稿
- 校园活动摄影技巧
- 《诗经·卫风·淇奥》课件
- 2025年Oqc上岗试题及答案
评论
0/150
提交评论