版本协议

CC BY-NC-SA 4.0

标签
专业版
#第九届立创电赛#ESP32物联网温湿度监测模块

创建时间:1个月前

141 0

视频

描述

<h3>* 1、项目功能介绍</h3> <hr> <p>一款基于ESP32的物联网温湿度传感器,可通过Type-C口直接获取数据,也可在二次开发后通过基于WI-FI的传输(MQTT等方式)或是蓝牙获取数据,可用于有WIFI或蓝牙网关覆盖区域的温湿度采集与显示。</p> <h3>*2、项目属性</h3> <hr> <p>项目为首次公开,为原创项目,未曾在其他比赛获奖,未曾在学校参与过答辩。</p> <h3>* 3、开源协议</h3> <hr> <p>CC BY-NC-SA 4.0</p> <p><strong>请在竞赛阶段填写 ↓</strong></p> <h3>*4、硬件部分</h3> <hr> <h5>原理和机制</h5> <p>使用ESP32-C3模组与盛思锐SHT40-AD1B(电赛版模组)作为核心功能组件,同时保留了对常规封装SHT40-AD1B与STS3x-DIS系列传感器的支持,实现通过I2C与传感器通讯,并获取到温湿度信息后显示出来。可在二次开发后实现WIFI/BLE通讯,实现无线温湿度传感器的功能。</p> <h5>注意事项</h5> <p>1.温湿度传感器模块封装非常小(STS3x-DIS系列大约是2_3mm,SHT40-AD1B大约1.5_1.5mm),可以考虑在立创商城购买电赛版模块<a href="%5Bhttps://item.szlcsc.com/24072575.html%5D(https://item.szlcsc.com/24072575.html)" target="_blank">点击跳转</a>;</p> <p>2.立创商城的电赛版模块是1mm间距排针,而非常规2.54mm,请注意。(商品详情未注明这一点);</p> <p>3.温湿度传感器在焊接时需注意保护;</p> <p>4.请不要参考实物图进行项目焊接,拍摄实物图时为了调试效果,很多元件没有焊接,可能影响数据准确性;</p> <p>5.该款温湿度传感器灵敏度极高,应与PCB 上的热源解耦,降低PCB热源对传感器的影响。</p> <h5>调试方法与测试方法</h5> <p>验证时采用的是盛思锐SHT40-AD1B(电赛版)模组,设置为高精度模式(HIGH_PRECISION)。参照规格书与<a href="%5Bhttps://sensirion.com/cn/products/product-catalog/SHT40A-AD1B%5D(https://sensirion.com/cn/products/product-catalog/SHT40A-AD1B)" target="_blank">官网</a>,精度表现如下:</p> <table> <tr> <th>检测项目</th> <th>精度</th> </tr> <tr> <td>温度(25℃)</td> <td>0.3℃</td> </tr> <tr> <td>湿度(25℃)</td> <td>3%RH</td> </tr> </table> <p>其具有高精度的特性,无需考虑温度补偿算法,可以直接读取数据使用。在验证时采用I2C按照SHT40-AD1B的规格书中的通讯方式直接读取了温湿度数据,实测可以正常工作,且准确度符合预期。</p> <h3>*5、软件部分</h3> <p>使用Micropython编写</p> <h5>引入所需模块</h5> <pre><code>from machine import Pin, I2C, ADC import ssd1306 import framebuf import time import machine import esp32 </code></pre> <h5>初始化I2C</h5> <pre><code>i2c = I2C(0, scl=Pin(5), sda=Pin(4)) </code></pre> <h5>测量温度信息</h5> <p>使用SHT40-AD1B的测量流程如下: 1.ESP32向SHT40发出测量命令</p> <pre><code>i2c.writeto(SHT40的I2C地址(默认为0x44) , 设定的测量准确度) </code></pre> <p>2.等待10ms,SHT40需要时间测量数据</p> <pre><code>time.sleep(0.01) </code></pre> <p>3.读取SHT40的数据</p> <pre><code>data = i2c.readfrom(SHT40的I2C地址(默认为0x44), 6) </code></pre> <p>4.处理数据,组合数据中的高低字节</p> <pre><code>temp_ticks = data[0] @@ 8 | data[1] #将@@替换为两个小于号 </code></pre> <ol> <li>使用规格书中的公式计算温湿度</li> </ol> <pre><code>temperature = -45 + (175 * temp_ticks / 65535.0 </code></pre> <ol> <li>显示温度信息到屏幕</li> </ol> <pre><code>display_dynamic_info(temperature, humidity) # 屏幕内容变量 </code></pre> <p>目前仅作此示例,用于验证该温湿度传感器的PCB设计与连接方式。软件使用Micropython编写,可二次开发,实现MQTT,TCP等基于网络的方式传输温湿度数据,或是使用蓝牙与串口连接并传输数据。</p> <hr> <h3>*6、BOM清单</h3> <hr> <p><img src="//image.lceda.cn/pullimage/YJmiBICymejy9oJan9kEQpWY6JwI1GBMzThLGwAj.png" alt="屏幕截图 2024-10-12 161358.png"></p> <h3>*7、大赛LOGO验证</h3> <hr> <p><img src="//image.lceda.cn/pullimage/5D41q2zwWXalCFAjRu3XGb4RvBm8mSXxREwZod8q.jpeg" alt="屏幕截图 2024-10-12 161604.jpg"></p> <h3>* 8、演示您的项目并录制成视频上传</h3> <hr> <p>已上传在附件的视频模块</p>

文档

BOM

暂无

附件

附件名 下载
BOM_Board1_Schematic1_2024-10-12.xlsx
立创EDA专业版原理图+PCB.epro
温湿度模块代码.zip

成员

评论(0)

  • 表情
    emoji
    小嘉工作篇
    小嘉日常篇
  • 图片
成功
工程所有者当前已关闭评论
goToTop
svg-battery svg-battery-wifi svg-books svg-more svg-paste svg-pencil svg-plant svg-ruler svg-share svg-user svg-logo-cn svg-double-arrow