站内搜索
发作品签到
专业版

强力の温湿度计

工程标签

579
0
0
0

简介

温度、湿度、気圧、照度、色温——五感を超越した環境センシングの完全体。

简介:温度、湿度、気圧、照度、色温——五感を超越した環境センシングの完全体。
复刻成本:220

开源协议

Public Domain

创建时间:2026-03-14 22:35:18更新时间:2026-03-27 10:16:30

描述

大幅优化自动连接和手动重连的稳定性,现在几乎不会有连接失败的情况。

***使用BLE蓝牙除了需要允许APP使用蓝牙权限外,还需要打开位置功能,这是BLE蓝牙协议的强制性要求。

***本系统无互联网访问功能,且提供设备和APP的所有源码。

 

附件内容:

APP安装包(安卓手机)

APP源码(安卓STUDIO)

MCU源码(STM32HAL库)

物料价格明细

CNC下单文件(STEP)

1.05版本

---------------------------------------------------------------------------------------------------------------------------------------

 

 

 

  物理量 传感器 主要功能有效范围 最大误差
环境传感器 相对湿度

SHT45

(2只湿度结果平均,未密封,本体防水)

相对湿度 1-100% 1.8% RH
温度 TMP117,SHT45 温度 -10-70 °C TMP117:0.1 °C
SHT45:0.2 °C
气压 BMP585(标称高精度,未密封,本体防水) 绝对气压900-1200HA 0.6HPA
照度 OPT4048 0.05-140000 LUX X
色温 OPT4048(XYZ色温计算) X X
         
系统附属传感器

电池电量,电压,电流

BQ27421

(自带检流电阻,无需BQSTUDIO可直接全程用MCU操作的阻抗跟踪法电量计)

电量1-100% 3%
时钟(打开APP后会自动同步手机时间) 时间 RTC8900(4UA运行电流,独立运行) X 离线精度:3PPM
陀螺仪 加速度,角度 LIS2DW X X

 

特性:

  • 不到半个烟盒大小。
  • 持续运行时间大于35天(1000MAH电池,10秒唤醒更新一次显示内容)
  • 全密封,磁吸充电,预计可在水下工作(非典型场景)
  • 无按键,由陀螺仪控制显示方向,敲击或猛摇唤醒。
  • 手机APP蓝牙配置。
  • 可查看实时和历史波形,32K铁电存储器,近似无限存储寿命
  • 搭载BQ27421电量计,可监测电池健康状态和电量。
  • 嘉立创10元包邮的吸恩吸外壳
  • 嘉立创免费包邮的亚克力面板(现在似乎不免费了,自费大概40块钱以内)

 

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

!!!!!!!!!!!!!

复刻注意事项:

PCB设计厚度1毫米,厚度可以减小然后加垫片安装,但不可以增大。

PCB有部分BUG,已在电路图处标注,我手上的这一台用飞线解决了这些问题,有时间更新。如果需要的人多我会重新布线为0603阻容版本,不过这个设备的PCB很简单,基本上把原理图上的线连上去就不会有问题。

CNC外壳发现BUG,屏没法完全浮动到顶部。

电池应该尽量减少上下缓冲垫的厚度,比如用0.15毫米厚度的双面胶贴在两面就行了。这个外壳改过一版,第一版是用的老版PCB的底图做的,所以螺丝孔对不上。公布的这一版则屏框太小了,不能套住屏,只能把屏压在下面。由于我是用AUTOCAD画的三维图再转STEP,原文件被删掉了,STEP我不会改,重画很麻烦,所以CNC件短时间内不会更新了。

 

APP与设备的通信已测试基本功能的稳定性。不排除还有恶性BUG。

 

 

 

 

  U158是一个接地弹簧顶针,用来将开关式DCDC的辐射噪声导入GND,有可能不会起作用。因为整个系统的ADC都是14-16位,本身不太能分辨出小电流DCDC的各种噪声。所以可以去掉,这个东西是16-15买的,正常价好像要两三块钱一个。

 

 

下面是蓝牙模块的一个特殊说明。建议复刻的用这个电路替换这个工程里现有的蓝牙电路。可以省个高侧开关器件,并且节省MCU代码资源。

 

-----------------------------------------

 

堆叠示意:

 

 

 

 

 

 

设备界面:

 

 

 

 

APP操作简介:

首次使用时APP会寻找设备,要半分钟左右,后面就可以快速连上并同步了。

连上APP后设备会自动校准时间。

***以下的X秒都可以用手机设置,或者代码里定义初始值

设备静置超过X秒后进入0.7毫安休眠状态,屏幕保持上一次的更新值显示。每X秒会自动唤醒到5毫安状态约0.2秒,在更新传感器值和时间后再次休眠。

敲击或摇晃设备会让设备进入X秒唤醒状态。再敲或摇则增加运动次数X倍的时间,直到倒计时为0则进入休眠状态。

连接蓝牙自动唤醒设备,为了防止异常操作耗电,300秒后设备会主动断开,需要重连。

连接充电器后持续唤醒,并显示电流和电压,断开后休眠并隐藏充电信息。

旋转设备会使屏幕跟着转。

 

电量计未完成初次学习前,APP的电量框显示为红色(显示为白色只代表完成了初步学习,不算完整的学习)。

电量计检测到电池健康状态低于85%,APP的电量框显示为红色。

 

 

打开APP后设备会先同步时间和历史记录,然后同步实时测量值。

历史记录最多2046条,蓝牙是115200波特率,传输能力有限,所以数据多的时候刚开启APP会很卡,实时数据可能要过一会才更新。

 

 

 

!!!!!!!!!!!!!

点“清空记录”按钮会使铁电存储器里的所有数据被清除,铁电存储器本身寿命接近无限,可以随便读写。

 

----------------------------------------------------

视频基于旧版APP和旧版设备软件录制,大体操作逻辑相同,新版只是优化了稳定性和流畅性,然后界面做了小幅度调整。

强力型温湿度计APP操作演示_哔哩哔哩_bilibili

 

 

 

 

 

 

 

 

设备实物:

 

 

--------------------------------------------

 

备注

 

STM32L031G6U6单片机,HAL库 裸机

程序存储快炸了,已经用了95%,想扩展功能要删掉一些代码,总的来说用这个低功耗MCU带这个屏不是特别好的选择,运行内存只有8K,这个屏要吃掉4K。存储只有32K,现在优化字符后也用掉了31K。

可能用U系列更合适,当然U系列一只单片机十几块钱,而这个只要3+1块钱包邮,根据自已需求来。HAL库代码在CUBEMX里改下引脚就可以复用到任意STM系列32位单片机。

两只SHT45

之所以用了两只温湿度传感器,是因为我买物料的时候这个东西没货了,只在立创SMT还有货,而SMT一次最少贴两片,所以我贴了两片,然后移到了一片板上来使用。平均后能获得更高的湿度精度,湿度也是较难测准的量。

另外还有一个发现是这个东西的温度精度其实很在线,两个SHT45跟绝对精度0.1度的TMP117多数时候同一时间相差小于0.05度,或者不要TMP117而是直接使用这个做温度测量也是个不错的选择。

BQ27421电量计

最近有两个DIY项目用到了电量计,需要低功耗同时要有较高精度,所以用ADC直测电压估算法是不可行的。找了很多型号,要么天价,比如MAX17260,要么必须用BQSTUDIO和EV2400配置,虽然EV2400的山寨版只要几十块钱,但是总感觉很恶心人。这个是不多的不用专用设备配置且价格精度都还行的电量计,直接用MCU就可以操作。当然也有缺点,由于尺寸非常小,并且是内部集成的检流电阻,它只能容忍最大2A的电流,好处是占用也非常小,使用0402的阻容只占用4X4MM的实际面积。

电量计复用注意!!!不管要改什么参数,必须修改设计容量才能刷新信息。比如你是4000毫安时电池,第一次设4000毫安时后电量计的所有配置就会被固定,如果想要修改电量计的其它配置,比如截止电压,必须把设计容量修改才能写入,比如改成3999MAH,然后改你想要修改的参数,这样就能更新电量计配置了。否则会被判断为不需要更新电量计参数。这是为了避免调试其它功能的时候每次都刷新电量计配置,导致学习到的电池参数被复位。

电量计学习方法:在2.8V电源上飞根线,再在GND上飞根线,把这两根线连在一个15-20欧姆电阻上,放电,放空了静置2小时以上,再充满,再静置2小时以上,再放空,一般做完一到两个完整充放循环即可。没有学习成功的话屏上会显示一个LN...,直到这个LN...消失了,才算完全学习过。

TPS62745

之所使用了开关式DCDC来提供2.2V给1.8V的LDO用,是为了尽量节能。

电池是满电4.2V的,设定在3.1V左右关断所有电源只保留4UA用来给RTC供电,保护板要到2.5V才保护。

主要功耗源是1.8V数字电源,如果直接使用LDO,将有50%左右的电能会被浪费掉,另外就是多数芯片在更高电压下本身的电流消耗也会更大,却不会有任何功能性提升,实际续航会减少很多。这个DCDC只需要一只微型电感,还有输入输出电容,能在极小的占用面积下显著提高续航时间。由于这里的传感器内部的ADC普遍在14-16位的水平,根据经验使用这种超小功率DCDC时,干扰可以忽略。

背光

因为是第一次用这种全反射屏,一开始以为可以通过背光来让它在晚上也可见,但是测试下来发现背光会穿透图像,反而更看不清了,所以背光需要去掉。实测在3LUX的较暗情况下依然可见,在极端无光比如晚上关灯后会看不清,这是屏的特性,没有办法,用别的屏做不到这个功耗,用墨水屏则刷新率太低,高刷的一个屏几百块,也不现实。

分离电源设计和手工焊接不便的0402阻容

如上节DCDC部分所述,为了降低功耗,另外还有就是使用的大部分传感器的手册标称最佳电压都在1.8V,所以使用了一个1.8V的电源供电,另外屏、铁电存储器最低只支持2.7V以上供电,以及一开始设计的白色背光LED也只支持2.4V以上供电(蓝基LED的特性),所以单独使用了一个2.8V的电源。

由于我当时抽到了一张免费SMT券,并且我非常想要的SHT45在当时只有SMT仓库有货,所以用了SMT加工,因此大部分阻容使用的是0402,对于手工焊接来说可能很费劲。

如果不追求极致省电,同时想要简化电源和布局结构,最好的办法是使用一只2.7V-2.8V的电源给所有器件供电,同时依然可以保留TPS62745,用它提供LDO的电源,比输出高0.3V就行,比如3.1V,这样做依然能比直接LDO供电增加可观的续航。其中RTC的备用电源可以直接去掉,备用供电引脚短接到VDD。

由于只有一个电源连接到现有的VDD电源层,布局将极大简化,所有电源不需要拉线,直接打个孔到VDD层,全部使用可手工焊接0603器件也可以轻松完成兼容现有外壳的布局。

主温度传感器选TMP117而不是更强のTMP119

这里的传感器基本选的都是市面上最高精度水平的。其中SHT45铁氟龙版和BMP585需要直接和外部空气接触,选的防水优化型号,个别参数不算最高(瑞萨某个似乎是先研发了手册后研发产品的湿度传感器个别参数比SHT45高,SHT75也更高,但是只是优化了温度精度,湿度精度没有变化 。还有BMP581个别参数比BMP585高)。

之所以没有选更强的TMP119(0.03度典型误差,0.08度最大误差),是因为TMP119是微型封装,只能用HDI板或FPC做,FR4不管是沉金还是喷锡的都不行。其中HDI非常贵,好像立创也不做,FPC则需要有6层板资质才能免费,否则要150块钱一块板。考虑到这是一个非常简单的项目,潜在的复刻对象不一定有6层板名额,且提升确实很难察觉,所以用了TMP117(0.05度典型误差,0.1度最大误差)。

另外TMP117的布局优化倾向是是高热惯性,这种布局可以强烈的抑制热干扰。代价是反应变慢。一个很简单的测试方法是用手摸传感器,环境温度18度,10秒后升温到25度,继续摸变化也不大。而类似体积的传感器比如NTC,在18度环境下用手摸,一般会在5秒内快速到达35度左右(受手的正常温度和漏热影响,非37度)。

另外就是当铝壳装上后,TMP117会通过裸露的铜皮区域接触到铝壳,进一步增加热惯性,使得多数时候都能准确的测量环境温度。

用单面板类特征的免费CNC名额制作完整的外壳

虽然嘉立创明确要求只有单面特征的板类零件才免费,并且限加工时间要少于某个值,具体未知。但是从实际角度考虑,这种工艺限制下依然可以制作出外壳。

因为免费的总尺寸是80X80X8毫米,对于小型设备完全够用。另外加5-20块钱可选更大的尺寸。受CNC工艺的开机成本限制,类似零件去淘宝起步100-150块一件。

至于加工限时,可以从备选刀具参数方面优化。已知铣床是通过一个钻头一点点刮掉多余的材料,而单位时间内刮除的量和允许移动的量跟钻头大小强烈相关,太小的钻头移动要是很快会断掉。假设转速恒定,越大的钻头可以用越高的速度移动,并且每转一圈刮掉的材料也越多,也就是钻头越大越省时间。

所以,把三维图形的所有内R角做得越大,就可以在越短的时间内完成加工。同时,尽量减少不必要的转折点,让三维图形呈现出规则的内部空间,比如带R角的方形、全圆形结构,而不要是奇形怪状的结构。我的改图经验是,对于免费的最大尺寸80X80X8,把内R角做到4毫米以上半径(对应8毫米的钻头,这么大钻头挖空这个小板可能十几秒就够了),基本就能稳定获得免费名额了。

还有一个问题是换钻头时间。由于价格很明显,虽然大概率是用的效率很高的自动换刀,但是仍然有优化的必要。如果你的型腔加工完需要一把8毫米的钻头加一把2毫米的钻头加工细节,那意味着会多一步换刀的动作,动作本身可能是几秒钟,但是备刀也有各种成本。所以要尽量减少换刀次数。另外如前一条所述,越大的钻头挖得越快,要尽量减少必须由小钻头完成的区域,确保大部分区域可以由大钻头完成。我的经验是:两次换刀基本都能免费,比如我现在开源的底座部分,就需要一把8毫米加一把小钻头来精修(打孔部分可能用的是精修的钻头,如果不是那就是三把)。尽量让内部型腔由一到两把刀就能全部加工完成基本就能稳定免费。

设计图

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

BOM

暂无BOM

3D模型

序号文件名称下载次数
1
底座.STEP
8
2
盖板.STEP
8

附件

序号文件名称下载次数
1
桌面温湿度最新版.rar
7
克隆工程
添加到专辑
0
0
分享
侵权投诉

工程成员

知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

评论

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

底部导航