时间:2024-08-31
付文新,王洪丰
山东省德州市德城区二屯镇中学,山东 德州 253000
在物联网环境下,相关人员在很多情况下需要实时掌握某个设备或地点的环境温湿度,文章设计了一款基于STM32F103C8T6 单片机和DHT11 温湿度传感器的环境温湿度智能采集系统,可实现通过Wi-Fi 热点、局域网或互联网在手机端实时查看温湿度传感器所在环境的温湿度,为搭建物联网提供技术支持。
以STM32F103C8T6 单片机为核心,采用TCP(socket)网络传输协议,通过ESP8266 Wi-Fi 模块,使用Wi-Fi热点、局域网、互联网等模式通过智能配网无线传输方式连接手机App,使用DHT11 数字温湿度传感器实时采集温湿度传感器模块所在环境的温湿度,并将数据传输至手机端,在手机App 端实时显示具体温湿度值。使用Android Studio 编写手机端程序,设置联网方式和实时显示模块,可实时刷新具体温湿度值。系统设计原理图如图1 所示。
图1 系统设计原理图
STM32F103C8T6 是一款基于ARM Cortex-M 内核STM32 系列的32 位的微控制器,具有64 kB 的程序存储器,RAM 容量为20 K×8。内部含2 个12 bit ADC 合计12 路通道,外部通道为PA0~PA7 和PB0~PB7。内部通道为温度传感器通道ADC_Channel_16 和内部参考电压通道ADC_Channle_17。有4 个16 bit 定时器/计数器,分别为TIM1、TIM2、TIM3 和TIM4,其中TIM1可产生PWM 控制电机。采用48-LQFP 封装,单片高度为1.4 mm,长度为7 mm,工作电压为2~3.6 V,工作温度为-40~85 ℃[1]。
DHT11 数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,其应用专用的数字模块采集技术和温湿度传感技术,包含一个电容式感湿元件和一个NTC 测温元件,可以和单片机直接相连。DHT11 数字温湿度传感器具有成本低、性能稳定、响应超快、抗干扰能力强、数字信号输出、精确校准等优点[2]。DHT11 有4 个引脚,分别是VCC(供电3.3~5.5 V)、DATA(串行数据,单总线)、NC(空脚)、GND(接地或者电源负极)。文章研究系统中的DHT11 模块的DATA 引脚接4.7 kΩ 上拉电阻后与STM32F103C6T6单片机的13 引脚相连。
ESP8266 采用ESP8266 芯片设计,是一款超低功耗的UART-Wi-Fi 透传模块。其具有较小封装尺寸和超低能耗技术,专为移动设备和物联网应用设计,可直接连接到Wi-Fi 无线网络上,进行互联网或局域网通信,实现联网功能。ESP8266 封装方式多样,天线可支持板载PCB 天线、IPEX 接口和邮票孔接口三种形式,可广泛应用于智能电网、智能交通、智能家具、手持设备、工业控制等领域。产品特性如下:支持无线802.11 b/g/n 标准;具备STA、AP、STA+AP 三种工作模式;内置TCP/IP 协议栈,支持多路TCP Client 连接;支持丰富的Socket AT 指令;支持UART/GPIO 数据通信接口;支持Smart Link 智能联网功能;内置32 位MCU,可兼作应用处理器;超低能耗,适合电池供电应用;可直接使用3.3 V 单电源供电,传输距离可达40 m左右[3]。
2.4.1 电源电路
STM32F103C8T6 总共有5 个接电源正极和4 个接地引脚,分别给内部不用的模块供电。VDD 为供电电压;VDDA 中的A 表示模拟,为芯片内部模拟器件的工作电压;VSSA 为模拟器件的公共端地;VBAT 为后备区域供电,维持RTC/BKP 寄存器数据掉电保存,一般接纽扣电池,如果不需要可以直接接电源。
2.4.2 复位电路
复位电路是利用RC 电路的充放电原理,在上电瞬间为NRST 引脚产生一个短暂的低电平,如图2 所示。上电时电流会通过R19 和C20 到地,为C20 充电,此时NRST 的引脚为低电平。当C20 充满电以后,处于“断路”的状态,此时NRST 由低电平变为高电平[4]。单片机程序复位,将备份区域寄存器以外的所有寄存器状态恢复到初始状态。
图2 复位电路原理图
2.4.3 系统时钟电路
STM32F103C8T6 可以使用如图3 所示的电路产生始终信号,其中Y1 为石英晶体振荡器,是一种高精度和高稳定度的振荡器。通过两个22 pF 的电容组成振荡电路,可以生成频率和峰值稳定的正弦波。单片机在运行时,需要一个脉冲信号,作为执行指令的触发信号。单片机收到一个脉冲,就执行一次或多次指令。
图3 晶体振荡电路
2.4.4 系统编程电路
系统编程电路如图4 所示。系统编程电路的作用就是给单片机烧录程序,通过KEIL 编程器把编写好的16进制程序烧录到单片机内部ROM 中。STM32F103C8T6的烧录方式有几种,一般情况下使用SWD 接口烧录。SWD 接口烧录占用尺寸空间少,一般只需要5 根线,也可使用4 根线连接,其中VDD 接口悬空。若VDD接口悬空,则烧录程序时需要单独给单片机最小系统供电[5]。
图4 系统编程电路
STM32F103C8T6 最小系统包含电源滤波电路、复位电路、LED 电路、SWD 下载电路、降压电路、外部引脚电路、系统时钟电路、USB 电路。整个最小系统电路图如图5 所示。
图5 STM32F103C6T6 单片机最小系统
温湿度系统硬件电路包含STM32F103C8T6 核心底板座、ESP8266 Wi-Fi 模块电路、DHT11 温湿度模块、电源插座连接电路。系统电路图如图6 所示。
图6 DHT11 温湿度系统
ESP8266 程序可用flash_download_tools_v3.6.8 程序进行烧写,程序烧写界面如图7 所示。
图7 程序烧写界面
通过硬件组装与系统测试,文章设计系统可完全实现系统环境温湿度数据的采集,可通过连接局域网或ESP8266 热点方式实现设备与手机App 通信,并将环境温湿度数据传输到手机App 端,同时可根据系统要求实时检测环境温湿度。系统电路简单、结构紧凑、价格低廉,输出温湿度数据精度高、使用方便,具有较高的使用价值。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!