STM32项目设计:基于stm32的智能家居系统设计

文章目录

项目资料链接:https://pan.baidu.com/s/1nghgsyOM_isTMALuWKXfgA
提取码:gk4p
哔哩哔哩视频:https://www.bilibili.com/video/BV1vi4y117L1?spm_id_from=333.999.0.0
实物购买链接:https://m.tb.cn/h.fqk4lIh?tk=qqL32iqP0Px

STM32项目设计:基于stm32的智能家居系统设计

; 一、项目功能概述

1、OLED显示温湿度、空气质量,并可以设置报警阈值
2、设置4个继电器开关,分别控制灯、空调、开关、风扇
3、设计一个离线语音识别系统,可以语音控制打开指定开关、并且可以显示识别命令词到OLED屏上
4、OLED实时显示4个继电器的状态
5.设计了一种低功耗切换电路,可以通过语音控制使系统进入低功耗模式,进入低功耗模式后,语音可以再次唤醒系统,重新开始正常工作。

[En]

5. Design a low-power switching circuit, which can be controlled by voice to make the system enter the low-power mode, and after entering the low-power mode, the voice can wake up the system again and start working normally again.

语音控制具体描述:

语音回答动作”小爱同学””我在””打开灯””开灯””请开灯”灯已打开动作: 打开灯继电器开关,OLED 屏显示识别的命令词,并且更改继电器显示的状态”关闭灯””关灯””请关灯”灯已关闭动作: 关闭灯继电器开关,”打开空调””开空调”空调已打开动作: 打开空调继电器开关,”关闭空调”空调已关闭”动作: 关闭空调继电器开关,。。。。。。。。。

二、项目原理图

(一)最小系统

STM32项目设计:基于stm32的智能家居系统设计

(二)供电

STM32项目设计:基于stm32的智能家居系统设计
(三)传感器
STM32项目设计:基于stm32的智能家居系统设计
(四)语音模块
STM32项目设计:基于stm32的智能家居系统设计
(五)继电器模组

STM32项目设计:基于stm32的智能家居系统设计

(六)按键蜂鸣器

STM32项目设计:基于stm32的智能家居系统设计
(七)低功耗开关
STM32项目设计:基于stm32的智能家居系统设计

; 三、程序设计


 int main(void)
 {
    u16 key;
    int adc,cnt=0;
    float volt;
    delay_init();
    NVIC_Configuration();
    BEEP_Init();
    OLED_Init();
    OLED_Clear();
    uart_init(115200);
    printf("欢迎使用化作尘智能家居系统\r\n");
    KEY_Init();
    LED_Init();
    TIM3_Int_Init(500-1,720-1);
    DEV_Init();

    OLED_ShowCHinese(8,0,50);
    delay_ms(200);
    OLED_ShowCHinese(24,0,51);
    delay_ms(200);
    OLED_ShowCHinese(40,0,52);
    delay_ms(200);
    OLED_ShowCHinese(56,0,39);
    delay_ms(200);
    OLED_ShowCHinese(72,0,40);
    delay_ms(200);
    OLED_ShowCHinese(88,0,48);
    delay_ms(200);
    OLED_ShowCHinese(104,0,49);
    delay_ms(200);

    OLED_ShowNum(0,2,201908,6,16);
    OLED_ShowNum(48,2,384176,6,16);

        OLED_ShowCHinese(40,4,53);
        OLED_ShowCHinese(56,4,54);
        OLED_ShowCHinese(72,4,55);

        delay_ms(1500);

        OLED_Clear();
        OLED_Dis_Menu();
    while(1)
    {
        if(cnt++ ==1000)
        {
            cnt = 0;
            LED0=!LED0;
            adc =   Get_Adc_Average(0,5);
            volt = adc*3.3/4096;
            air = pow((3.4880*10*volt)/(5-volt),(1.0/0.3203));
            printf("air :%d\r\n",air);

            DHT11_Read_Data( &temp, &humi);
            if(last_temp!=temp || last_humi!=humi)
            {
                OLED_Dis_DHT(temp,humi,air);
            }
        }
        key = Key_GetValue();
        if(key)
        DealKeyVal(key);
        if(!KEY1_IO())
        {
                printf("%d\r\n",GetTime());
        }
        if(temp>Max_temp || humi>Max_humi || air>Max_air)
        {
            if(cnt<500)BEEP=1;
            else if(cnt<1000)BEEP=0;
        }else BEEP=0;

        delay_ms(1);
    }

}

四、扩展功能

(1)根据环境温湿度和空气状况自动控制智能家居设备

[En]

(1) automatic control of smart household equipment according to ambient temperature, humidity and air conditions

(2)优化界面,增加更多系统设置、报警设置、家居控制模式选择、智能开关模式

[En]

(2) optimize the interface, add more system settings, alarm settings, home control mode selection, intelligent switch mode

(3)在智能家居模式中增加定时开关

[En]

(3) add timing switch to smart home mode

(四)添加蓝牙或WIFI模块
(五)设计手机APP控制
(6)增加更多语音控制功能

[En]

(6) add more voice control functions

五、项目展示:

STM32项目设计:基于stm32的智能家居系统设计

Original: https://blog.csdn.net/mbs520/article/details/122618458
Author: 化作尘
Title: STM32项目设计:基于stm32的智能家居系统设计

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/526984/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球