站内搜索
发作品签到
专业版

#第八届立创电赛#基于GD32智能家居系统

工程标签

5.7k
0
0
4

简介

本工程基于梁山派(GD32F407),系统实时监测当前环境,并通过设定的模式进行自动或者手动对电机和执行元件控制,并实时将数据通过MQTT协议传输至阿里云,具有危险预警功能,提供多种友好的用户交互方式

简介:本工程基于梁山派(GD32F407),系统实时监测当前环境,并通过设定的模式进行自动或者手动对电机和执行元件控制,并实时将数据通过MQTT协议传输至阿里云,具有危险预警功能,提供多种友好的用户交互方式
第八届立创电子设计开源大赛

开源协议

GPL 3.0

(未经作者授权,禁止转载)
创建时间:2023-09-09 20:41:42更新时间:2023-10-10 09:42:38

描述

 

* 1、项目功能介绍

 

   随着人工智能逐渐普及,人们对智能家居的需求越来越大,智能家居越来越多出现在人们的生活当中,不仅给人们带来便捷和舒适的体验,帮人们提供专属的服务,由于手动窗帘需要手动进行操作,而且有一定的不便性,由于窗帘在比较靠上,所以添加有害气体传感器来避免危险的滞后,保障人员的安全性,因此设计出 基于GD32智能家居系统,将数据定时上传至阿里云物联网平台,将数据进行云存储。本系统提供多种不同的交互方式,便于用户选择适合的控制方式。 

具体功能如下:

(1)手动模式:用户可根据语音或者红外遥控的方式对电机进行控制,也可以用语音询问语音助手当前的室内温湿度、室内光照、室外天气的状态。

(2)自动模式:系统通过对光照和室外天气的采集进行数据处理,自动对窗帘进行打开和关闭的操作,无需用户的操作,其中光照的优先级最高,当光照高于设定值或者低于设定值时不再执行雨滴传感器的操作。

(3)危险预警:危险预警功能不在任何模式之中,当检测到有害气体时,蜂鸣器就会鸣叫,自动模式和遥控没有权限关闭蜂鸣器,当检测到用户语音指令后才能关闭蜂鸣器。

(4)数据上传:系统采集的数据会定时上传到阿里云物联网平台,其中时间是由定时器来进行控制,上传时间可根据用户的需求进行修改。

 

*2、项目属性

项目首次公开;项目为原创;项目暂时为在其他比赛中获奖;项目未在学校参加过答辩。

 

* 3、开源协议

GPL 3.0

 

请在竞赛阶段填写 ↓

 

*4、硬件部分

    绘制部分采用立创EDA专业版进行绘制:

1)温湿度传感器

     DHT11模块用于检测当前的温度、湿度。DHT11采用单总线协议,可将任意的IO口选作DHT11数据端口,但是注意的是DHT11的数据端口要接一个上拉电阻阻值可选(1k~10k)内即可或者让IO口上拉也可以(GD32F1系列的没有上拉这和功能)。本工程GD32通过
PD2DHT11相连。

    端口连接如下:

        VDD  --> 3.3V/5V

        DATA --> PD2

        NC   --> 悬空

        GND  --> GND

 2023-09-28_194653.png

2)无线模块

    ESP8266模块用于将传感器采集的数据进行上传和远程展示和控制。ESP8266通过串口跟GD32通信将ESP8266串口的TXGD32RX相连,再将ESP8266串口的RXGD32TX相连,两个串口是交叉相连才能通信,其中RST引脚是ESP8266的复位端口,通过给RST
脚持续20us的低电平即可实现ESP8266的复位。本工程GD32通过串口1ESP相连,

    32相连。

        端口连接如下:

            VDD  --> 3.3V

            RX   --> PB11

            TX   --> PB10

            RST  --> PD5

            GND  --> GND

   2023-09-28_200154.png

3)有害气体传感器

      MQ-9B毒性传感器感知烟雾和有害气体,避免得知危险信息的滞后性。当与烟雾接触时,如果晶粒间界处的势垒收到烟雾的调至面变化,就会引起表面导电率的变化。利用这一点就可以获得这种烟雾存在的信息。烟雾浓度越大导电率越大,输出电阻越低,则输
出的模拟信号就越大,由于MQ-9B模块D0为数字量、A0为模拟量,数字量比较简单只要获取D0的高低电平即可得知当前有没有烟雾。本工程GD32通过PC1连接A0PC2连接MQ-2D0既可以读取模拟量也可以读取数字量的数据。

         端口连接如下:

            VDD  --> 3.3V

            A0   --> PC1

            D0   --> PC2

            GND  --> GND


4)语音模块

       HLK-V20语音模块用于提供给用户友好的交互体验,HLK-V20支持150条本地指令离线识别,HLK-V20S支持50条本地指令离线识别,可自由定制唤醒词、命令词与应答播报词,具有丰富的外围接口。HLK-V20语音模块与GD32通过串口相互通信,与无线模块一样,
只不过语音模块通过串口2GD32连接通过指定的指令进行通信,其中还需要将语音模块的下载固件的端口B7B6引出来用于固件的下载。本工程GD32通过串口2ESP相连。

HLK-V20语音模块固件创建和下载:http://voice.hlktech.com/yunSound/public/toWebLogout

                             http://www.smartpi.cn/#/

         端口连接如下:

            VDD  --> 5V

            B3   --> PA2

            B2   --> PA3

            GND  --> GND


语音模块

(5)蜂鸣器模块

    本工程采用有源自激型蜂鸣器:直流电源输入经过振荡系统的放大取样电路在谐振装置作用下产生声音信号,外围线路添加多个电阻和一个NPN三极管进行电流进行放大。只需要接上任意IO口即可。本工程GD32通过PD6与蜂鸣器相连.

         端口连接如下:

            Buzzer  --> PD6


  蜂鸣器.png

(6)光敏传感器

        光敏电阻工作原理是基于内光电效应。光照愈强,阻值就愈低,随着光照强度的升高,电阻值迅速降低,亮电阻值可小至1KΩ以下。光敏电阻对光线十分敏感,其在无光照时,呈高阻状态。光敏电阻的特殊性能,随着科技的发展将得到极其广泛应用。我
们通过读取光敏电阻的阻值就可以判断当前的光线强度了。本工程GD32通过端口复用ADC功能和光敏电阻相连。

         端口连接如下:

            Light_ADC  --> PF8


  光敏电阻.png

(7)雨滴传感器

       雨滴传感器是一种传感装置,主要用于检测是否下雨及雨量的大小,当雨滴传感器检测到雨滴时,其电阻值就会发生变化,我们可通过获取它的电阻值来判断是否有雨。本工程GD32通过端口复用ADC功能和雨滴传感器相连(因雨滴传感器一般放置在户外,
本工程将以HC-XH端子引出,立创商城编号 C7429634)。

         端口连接如下:

            Rain  --> PF6


雨滴.png

(8)0.96OLED

        oled显示屏采用IIC通信协议。IIC通信引脚为有两个,一个时钟引脚SCLOLEDGD32的同步引脚,一个SDA引脚为OLEDGD32的数据引脚,IIC不但节约引脚其通信速度快,是主流的通信方式。其作用主要显示板载传感器当前的状态和数据,方便调试和供用
户查看。本工程GD32通过PA8PC9连接OLED,选这两个引脚主要是IIC既可以通过软件模拟IIC时序也可以通过GD32自带的硬件IIC进行通信,这两个引脚可以使用硬件IIC进行通信。

         端口连接如下:

            VDD  --> 3.3V/5V

            SCL   --> PA8

            SDA   --> PC9

            GND  --> GND


oled.png

(9)NEC红外接收

            NEC协议采用脉冲间隔的方式编码每一位数据,用不同数据位的时间间隔来表示不同的逻辑位。与众多单总线IC的通信方式很相似。

    NEC编码的载波频率为38KHz,对应的单脉冲周期约等于26.3us

    接收的第一个8位为地址码,第二个8位为地址反码,第三个8位为指令码,第四个8位为指令反码。

    通过接收遥控器发送的红外光的时间来接收的数据,当接受到红外光就会拉低OUT引脚,GD32通过中断的方式接收数据即可。

    本工程GD32通过PF7与红外接收的OUT引脚相连。


  红外.png

(10)步进电机驱动

        L9110S是一块直流电机驱动电路,该产品为电池供电的玩具、低压或电池供电的控制应用提供了一种集成直流马达驱动电路内部集成了采用MOS管设计的H桥驱动电路,主要应用于驱动通用直流电机。用于驱动窗帘电机的运转,两个驱动芯片驱动一个电机。
本工程GD32通过PG12A_FORPG10A_BAKPB9B_FORPB6B_BAK和电机芯片

 

电机采购链接:https://item.taobao.com/item.htm?spm=a1z09.2.0.0.4be02e8dpoBqfX&id=642594293054&_u=72t4uge55e33

电机.png            

(11)12V 转 5V

这个电路可将直流12V转换成5V直流电,可直接给开发板供电,降压芯片采用LDO类型降压芯片,并添加二极管防止反向电压,还有一个开关用于控制通断。                 16v转5v.png

 

 

*5、软件部分

    本项目采用Keil5进行软件编程,一下展示程序流程图和整体结构:

    (1)整体结构:主控通过串口给ESP8266模块发送AT指令连接上阿里云物联网平台,定时将数据上传到阿里云物联网平台。主控通过不定时获取语音模块数据和红外模块数据对以下外设进行控制,定时对传感器进行数据读取和刷新,其中定时采用定时器进行时间计数,时间要求严格的在定时器中刷新,对于时间不严格的采用标志位进行刷新。

 

                  l8RjgYtSQKC56LQ5aLWDCJV8NysBAdbh8vIIzppo.png

         (2)流程图介绍:系统首先进行所有的外设进行初始化,随后等待ESP8266连接WIFI。首先主控会进行模式判断,在手动控制下会根据读取语音模块和红外模块的数据进行对外设进行控制。自动模式下根据光照和雨滴传感器进行数据的判断对外设进行控制。危险预警功能和手动模式和自动模式相互并不联系。所有外设的数据都会定时的刷新。

                       

 

*6、BOM清单

对应器件清单如下:

电阻均采用0805封装,100UF电容采用1206封装。

hZLvY0pETB3zYt3dOuWBaijaepOfI6J2t9FMIy1t.png

 

*7、大赛LOGO验证

 

(1)正面图:

(2)反面图

 

* 8、演示您的项目并录制成视频上传

 

 

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
1
立创电赛演示视频.mp4
49
2
BOM_Board1_1_PCB1_1_2023-10-09_20231009204509.pdf
40
3
代码.rar
133
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

评论

全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航