基于STM32单片机远程浇花花盆GSM短信浇水补光设计

1 系统功能介绍

本设计实现了一个 基于 STM32 单片机的远程浇花花盆 GSM 短信浇水补光系统。随着人们生活节奏的加快,很多家庭在养花种植过程中,常常因工作繁忙或出差而无法及时给植物浇水与补光。本系统结合传感器检测、自动控制与 GSM 短信远程通信,实现了花盆环境参数检测、自动浇水与补光、远程短信控制等功能,从而有效提高植物的养护效率和智能化水平。

系统主要功能如下:

  1. 环境参数检测与显示
    系统通过 DHT11 温湿度传感器和光照强度传感器实时检测花盆土壤湿度、环境温度和光照状态,并通过 LCD1602 液晶屏进行实时显示。

  2. 自动浇水与补光
    当湿度低于阈值(35%)时,系统自动启动继电器控制水泵浇水;当光照强度较低时,自动点亮高亮 LED 灯进行补光。

  3. 短信远程控制功能
    借助 SIM800A GSM 模块,用户可通过手机发送指令短信实现远程控制:

    • 发送 jiaoshui,系统启动继电器 1 打开水泵浇水,并返回 jiaoshui_ok 短信,浇水持续 1 分钟后关闭。
    • 发送 buguang,系统强制开启补光灯,并返回 buguang_ok 短信,持续 1 分钟后关闭。
    • 发送 get,系统将当前温湿度与光照信息通过短信返回,用户可远程查看植物环境数据。
  4. 本地与远程结合
    系统既能实现本地自动化控制,又能支持远程人工干预,保证植物在无人管理情况下依然能获得良好的生长环境。


2 系统电路设计

2.1 STM32 最小系统电路

本系统核心为 STM32F103C8T6,具有 ARM Cortex-M3 内核,主频 72MHz,片上资源丰富,特别适合需要多模块协同工作的项目。其主要功能包括:

  • 串口通信:与 DHT11、LCD1602、SIM800A、光照传感器通信;
  • GPIO 控制:继电器、水泵、LED 补光灯;
  • 定时器管理:用于浇水与补光的时间控制。

电路部分包括 电源电路、时钟电路、复位电路,保证主控系统稳定运行。


2.2 DHT11 温湿度传感器电路

DHT11 通过 单总线通信 与 STM32 连接,能够实时获取环境温度与湿度信息:

  • 湿度数据用于判断是否需要自动浇水;
  • 温度数据用于监测环境变化,作为远程返回数据的一部分。

2.3 LCD1602 液晶显示电路

LCD1602 通过并行方式(或 I2C 模块)与 STM32 相连,用于显示:

  • 当前温湿度;
  • 光照强度状态;
  • 系统工作状态(浇水、补光、待机等)。

2.4 光照强度检测电路

光照检测电路通过光敏电阻与电阻分压方式获取光照强度,输入 STM32 的 ADC 接口。

  • 当光照强度低于设定阈值时,自动开启补光灯。
  • 数据同时显示在 LCD1602 上,并可通过短信 get 获取。

2.5 继电器控制电路

继电器由 STM32 控制:

  • 继电器 1 控制水泵,实现浇水;
  • 继电器 2 控制高亮 LED 灯,实现补光。
    驱动部分通过 NPN 三极管和二极管保护电路,确保继电器稳定工作。

2.6 GSM 短信模块 SIM800A 电路

SIM800A 模块通过串口与 STM32 通信:

  • 接收用户手机发送的指令短信;
  • 解析指令后控制继电器执行动作;
  • 执行后发送反馈短信,如 jiaoshui_okbuguang_ok 等。

模块需要外接天线以增强信号,并通过专用 AT 指令集实现收发短信功能。


2.7 电源电路

系统供电采用 5V 输入,经过 AMS1117-3.3 稳压芯片提供 3.3V 电压,分别供给 STM32、DHT11、SIM800A、光照电路和 LCD1602,确保整机稳定运行。


3 程序设计

程序设计分为以下几个模块:主程序框架、温湿度采集与处理模块、LCD 显示模块、光照检测模块、继电器控制模块、GSM 短信通信模块、定时器管理模块。


3.1 主程序框架

#include "stm32f10x.h"
#include "dht11.h"
#include "lcd1602.h"
#include "relay.h"
#include "gsm.h"
#include "adc.h"
#include "timer.h"

uint16_t humidity, temperature, light;
uint8_t sms_buffer[64];

int main(void)
{
    SystemInit();
    LCD_Init();
    DHT11_Init();
    GSM_Init();
    Relay_Init();
    ADC_Init();
    Timer_Init();

    while(1)
    {
        // 读取传感器数据
        DHT11_Read(&temperature, &humidity);
        light = ADC_Read();  

        // 显示数据
        LCD_ShowNum(0,0,temperature,2);
        LCD_ShowNum(1,0,humidity,2);
        LCD_ShowNum(0,10,light,4);

        // 自动控制
        if(humidity < 35) Relay_On(1);  
        if(light < 2000) Relay_On(2);   

        // 短信处理
        if(GSM_ReceiveSMS(sms_buffer))
        {
            GSM_CommandProcess(sms_buffer);
        }
    }
}

3.2 温湿度采集与处理

void DHT11_Read(uint16_t *temp, uint16_t *humi)
{
    // 读取 DHT11 数据
    if(DHT11_GetData(temp, humi) == SUCCESS)
    {
        // 数据有效
    }
}

3.3 光照检测模块

uint16_t ADC_Read(void)
{
    ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 1, ADC_SampleTime_55Cycles5);
    ADC_SoftwareStartConvCmd(ADC1, ENABLE);
    while(!ADC_GetFlagStatus(ADC1, ADC_FLAG_EOC));
    return ADC_GetConversionValue(ADC1);
}

3.4 继电器控制模块

void Relay_On(uint8_t id)
{
    if(id == 1) GPIO_SetBits(GPIOB, GPIO_Pin_0); // 控制水泵
    if(id == 2) GPIO_SetBits(GPIOB, GPIO_Pin_1); // 控制补光
}

void Relay_Off(uint8_t id)
{
    if(id == 1) GPIO_ResetBits(GPIOB, GPIO_Pin_0);
    if(id == 2) GPIO_ResetBits(GPIOB, GPIO_Pin_1);
}

3.5 GSM 短信通信模块

void GSM_CommandProcess(char *cmd)
{
    if(strstr(cmd,"jiaoshui"))
    {
        Relay_On(1);
        GSM_SendSMS("jiaoshui_ok");
        Delay_ms(60000);
        Relay_Off(1);
    }
    else if(strstr(cmd,"buguang"))
    {
        Relay_On(2);
        GSM_SendSMS("buguang_ok");
        Delay_ms(60000);
        Relay_Off(2);
    }
    else if(strstr(cmd,"get"))
    {
        char buf[64];
        sprintf(buf,"T:%d H:%d L:%d",temperature,humidity,light);
        GSM_SendSMS(buf);
    }
}

3.6 定时器管理模块

用于定时浇水和补光时间控制,避免设备长时间运行造成损坏。

void Timer_Init(void)
{
    // 配置 TIM2,定时 1ms 中断
}

4 总结

本设计基于 STM32F103C8T6 单片机,实现了远程浇花花盆智能管理系统,具有以下优势:

  1. 自动化管理:通过传感器实时监测湿度和光照,自动执行浇水与补光操作。
  2. 远程操控:通过 GSM 短信控制,用户即使在外地也能随时掌握花盆状态并执行操作。
  3. 智能反馈:执行操作后返回确认短信,保证用户及时了解系统状态。
  4. 扩展性强:系统可进一步加入土壤温度传感器、空气质量监测模块,实现更完善的智能花盆管理。
  5. 应用前景广阔:适用于家庭、办公室、温室等场所,尤其适合经常出差或工作繁忙的用户。

本系统有效结合了传感器技术、自动控制、GSM 短信通信和单片机控制,展现了 物联网与智能家居技术在绿色生活中的应用价值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值