发作品签到
专业版

#第九届立创电赛#桌面式温湿度计

工程标签

1.8k
0
0
7

简介

        本项目为桌面式温湿度计产品设计,主要功能是检测环境温湿度,并可设置温湿度提示,当环境温湿度超过设定值之后,温湿度计发出提醒。

简介:        本项目为桌面式温湿度计产品设计,主要功能是检测环境温湿度,并可设置温湿度提示,当环境温湿度超过设定值之后,温湿度计发出提醒。

开源协议

GPL 3.0

创建时间:2024-07-05 21:57:21更新时间:2024-08-02 19:28:27

描述

* 1、项目功能介绍

        本项目为桌面式温湿度计产品设计,主要功能是检测环境温湿度,并可设置温湿度提示,当环境温湿度超过设定值之后,温湿度计发出提醒。

项目设计思路见图1。

图1 桌面式温湿度计整体设计思路

        功能模块主要被分解为温湿度获取、温湿度显示、日期时间显示、电池电量检测、温湿度及电量报警、低功耗模式、温湿度记录共7个模块;下面针对这7个模块分别做简单分析。

1.1 温湿度获取

        本次项目采用盛思锐的SHT40温湿度传感器,该传感器具有体积小,精度高,接线方便等特点,非常适合本次项目。

图2 盛思锐传感器简介

1.2 温湿度显示

        本次项目准备采用2种显示方式,1是使用2个三位数码管进行显示,1个显示温度值,另一个显示湿度值,这种显示非常直观。另一种是采用0.96寸的oled显示屏进行显示,一方面是oled显示屏显示的内容相较于数码管更加丰富,另一方面也是为了和按键配合形成人机交互,用于后续的温湿度报警上限设置、日期时间显示、报警信息显示等。

        

图3 数码管

图4 0.96 oled显示屏

1.3日期时间显示、电池电量检测

本次项目采用的主控芯片为STM32G030K6T6,可利用该芯片自带的TCR时钟进行日期时间的读取,并通过OLED显示屏进行显示。

本次项目采用2节5#电池串联(串联后电压为3V)为系统供电,通过STM32G030K6T6的ADC检测电池电压,以判断电池的电量。

1.4温湿度及电量报警

通过按键和oled显示屏形成的人机交互,使操作者可以输入温度上限、湿度上限以及电量下限,通过与采集到的温度数据、湿度数据以及电池电量进行比较判断,一旦超过设定的报警值,主控控制LED闪烁、蜂鸣器蜂鸣(可在设置中开启或关闭),并在oled显示屏中显示报警的信息。

1.5低功耗模式

本项目预计设计3种工作模式:

低功耗模式:不显示信息,系统进入休眠模式。

常规模式:oled显示,数码管不显示。

醒目模式:oled和数码管同时显示。

1.6温湿度记录

此功能属于扩展功能,预留AT24C64存储芯片,可设计用来存储每天的温湿度数据,可设置存储的时间及频次,硬件保留,程序视情况进行开发。

*2、项目属性


该项目为个人首次公开,原理设计参考立创训练营官方原理图,PCB设计为自主设计,程序部分由立创训练营程序基础上进行调整,以实现自主设计的功能。

* 3、开源协议


GPL 3.0

*4、硬件部分


4.1 电路原理设计

硬件部分主要由电源电路、主控电路、晶振电路、温湿度传感器、数码管显示电路、按键电路、LED电路、蜂鸣器驱动电路、OLED显示电路、EPROM驱动电路、IO接口电路共11部分组成。

4.1.1电源电路

图5 电源电路

系统主要由2节5号电池串联得到的3V电压进行供电,出来后连接一个场效应管,防止电压反接。在3V和地之间用2个10K的电阻进行分压,用单片机的ADC进行电压采集,以判断电池电量。

4.1.2主控电路

图6 主控电路

主控芯片采用STM32G030K6T6,主电源3V过来后用一个磁珠去干扰,然后给单片机供电。

4.1.3 晶振电路

图7 晶振电路

STM32G030K6T6内部有晶振,但为了获得更准确的时钟信号,外接了1个32.768KHz的晶振。

4.1.4 温湿度传感器OLED显示电路、EPROM驱动电路

图8 温度传感器电路

图9 0.96oled 电路

图10 EEPROM 电路

温湿度传感器OLED显示电路、EPROM驱动电路均采用I2C方式与STM32G030K6T6通信,连接方式参考芯片手册连接即可。

注意:AT24C64原理图画了2个芯片,实际使用过程中只能焊接1个芯片,另一个备用(地址会冲突)。

4.1.5 数码管显示电路

图11 数码管显示电路

采用了2个3位共阴极数码管,用三态输出8位移位寄存器进行控制,以减少STM32G030K6T的IO使用。

4.1.6按键电路、LED电路、蜂鸣器驱动电路

图12 按键、LED驱动电路

图13 蜂鸣器驱动电路

按键电路、LED电路、蜂鸣器驱动电路都是简单的IO高低电平控制,参照原理图与STM32G030K6T的IO连接即可。

4.1.7 IO接口电路

图14 IO接口

将STM32G030K6T未使用的IO口引出,方便程序下载及扩展功能。

4.2 PCB设计

PCB布局见下图,电路右侧放置数码管,左侧放置oled显示屏,下方放置按键,方便操作。

图15 PCB 布局

图16 电路3D模型

温湿度传感器选择的是芯片,体积比较小,有一定的焊接难度,复刻的话可以选择模块的,方便焊接。

4.3 PCB 打样

PCB设计完成之后就可以在嘉立创下单了,在这里非常感谢嘉立创提供免费的打样。

图17 PCB实物图

4.4 焊接

有3D打印条件的同学可以将PCB图导出为DXF文件,再到3维设计软件(solidworks/shapr 3D等)中拉伸一下,就可以打印出来作为PCB的钢网了。

图18 PCB钢网模型

图19 PCB上锡

将器件安装上就可以进入焊接环节了:

图20 焊接

图21 焊接完成实物图

4.5 外壳设计

外壳部分主要结合PCB布局,考虑OLED显示区域、数码管显示区域、按键区域、温湿度传感器区域。外壳设计见下图

图22 外壳模型设计图

图23 外壳实物图

*5、软件部分

5.1 设计思路

结合功能需求,程序部分主要为了实现以下4个功能模块:

温湿度显示(OLED显示和数码管显示);

温湿度报警(温湿度上限设置、报警方式为LED闪烁和蜂鸣器蜂鸣);

日期时间显示(温湿度计未联网,需要手动校准日期时间);

模式设置(醒目模式、正常模式、低功耗模式)。

整体的设计思路见下图:

图24 程序实现思路

 

5.2 程序编写

程序编写主要使用STM32CubeMX和Keil uVision5,部分配置及程序见下图,详细配置及程序代码见附件。

图25 芯片引脚配置图(部分)

 

图26 程序代码(部分)

*6、BOM清单


详见附件BOM清单。

*7、大赛LOGO验证


图27 含大赛LOGO的电路板实物图

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


详见附件演示视频。

设计图

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

BOM

暂无BOM

附件

序号文件名称下载次数
1
桌面式温湿度计演示.mp4
52
2
SHT40_Project_V1.6.zip
127
3
桌面温湿度计外壳.zip
82
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

评论

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

底部导航