|
手头有台二手容声双开门冰箱,冷冻+冷藏工作稳定,可谓夏日必备。
偶然间想测试下其工况,和东北阳台比对一二,于是就搭建了这么套基于蓝牙的测温系统,今来分享之。
【原理】
连续测试一段时间内冰箱的温度变化(工况),可以了解其工作原理、状况,大致判定是否有问题。
测试冰箱温度自然不能开门来搞,拖个细长数据线也显得不专业。因而嵌入式测试有两个思路:
①现场存储+事后回放;②无线数传+电脑存储。
事后回放的方案之前做风筝高度计时就用过了,当时还和坛友讨论了不少数传的方案:
https://www.mydigit.cn/forum.php?mod=viewthread&tid=245770
这次冰箱温度测试距离不远,考虑到整个系统复杂度,选择蓝牙串口(SPP)模块 JDY-31 无线数传。
在 Win10 系统下,笔记本直接通过内置蓝牙头连接 JDY-31 虚拟出本地串口,用串口助手即可稳定接收。
附上 JDY-31 中文手册:
【框架】
直接拿跳线把 JDY-31 插在 Arduino 上并不是我的风格,一来连接不可靠容易断线,
二来费劲搞出的东西基本是一次性的,下次再做同类实验还得重新插接,浪费精力。
索性就做一套 JDY-31 的蓝牙扩展板,一劳永逸解决 Arduino 类似的无线数传。
Arduino 本身有两个串口角色:①PC端USB串口,②MCU端UART串口,
蓝牙串口需要作为第三个角色与上述两个互联,玩过 Arduino 的想必都经历过电平干扰的绝望。
因而需要增加一个 JDY31 到 Arduino 间的桥接中继,框架如下:
选择 STC 是因为懒,手头刚好有这个玩意,另一方面 51 的弱上拉兼容性非常好,
既可以兼容蓝牙串口的 3.3V 电平,又可以在 UNO 冲突时避免强上拉带来的干扰。
桥接器有三种工作模式:
a. 离线模式:用于在 USB-MCU 通信时断开蓝牙串口干扰,例如更新 Arduino 固件;
b. PC 主机模式:此时蓝牙串口与 USB 互通,可以通过 PC 调试 JDY-31;
c. MCU主机模式:此时蓝牙串口与 MCU 互通,用于嵌入式工作,例如此次测温。
【硬件】
STC15W104 有六个GPIO,正好全部分配:两组串口占4个,余下2个检测并指示UNO状态。连线原理图如下:
焊接前用 CAD 走一下线避免混乱:
完工效果如下,正面:
背面:
插上 STC,UNO 连接笔记本:
由于是嵌入式系统,必须考虑供电问题,这里使用一块 800mAh 锂电堆叠板进行供电:
【软件】
这次的软件需要分两个单元:STC 桥接器使用 KEIL 编写,UNO 端就是 Arduino IDE.
STC 桥接器主要功能就是识别 UNO 状态(下载/PC通信/UNO通信),然后模拟 GPIO 桥接。
编写环境是 KEIL 经典的“礦ision”版本:
UNO 端并没有什么特别之处,无非就是调用 DS18B20 驱动,然后串口发送测试结果。
串口数据(Serial)经过桥接器、蓝牙串口自动转发到 PC 端:
由于是电池供电,因而增加电池检测功能。串口除了温度,还同步发送电池电压供后期回溯。
附上各路固件及源码:
STC桥接器:
UNO采集器:
【实测#1:冷藏层】
第一把测试位于冰箱冷藏区,系统通电连上蓝牙后直接放在冷藏托盘上。
笔记本位于隔壁房间,因而蓝牙穿透了冰箱外壳 + 单层墙壁,实测信号稳定。
实验时间为下午 14:00 至第二天早晨 8:00,总计约 18 小时,平均电流 45mA.
采样间隔约为 2.5s,包含实时温度、电压,时间基准使用 PC 端计时,最终形成图线:
图像中蓝色为实时温度,可以看到开门取菜对温度影响明显,压缩机周期性通断工作。
在大约 15h 的工作周期当中,压缩机工作了约 10.5h,占空比大约 70%.
另一方面红色电压曲线,显示了最终蓝牙断线的原因:电池耗尽。
从最开始的 4.2v 一直工作到 2.8v 低压保护,电池续航了约 18h 并触发低压保护。
按照 800mAh 容量计算,平均电流大约 45mA,这与蓝牙单元基本吻合。
【实测#2:控温损坏】
第二把测试是用了一阵子后,冰箱因为冷凝水原因,温控器损坏了(无法断开)。
在新买的温控器到货之前,测试了一把 24h 满载工作的状态,相当于最大能力制冷。
这次测温系统先丢进冷冻室,一段时间后转移回冷藏室。冷冻室里即将接受低温考验的系统:
采集方式与前一次测试相同,2.5s间隔蓝牙发包,隔壁笔记本接收并存储。曲线如下:
低温时锂电池衰减的很快,为防止冻没电,冷冻室仅仅待了大约 1 小时。
从电压曲线(红)来看,随着温度上升,锂电池的确在一定程度上“回血”。
最后温度曲线(蓝)显示,冷藏室大约 -4℃,冷冻室大约 -24℃,在压缩机满载工作下此成绩不错。
整套系统(Arduino、STC、蓝牙JDY31、软包锂电、焊锡)全都承受住了 -24℃ 的低温考验,
低温环境、温度阶跃环境都未对硬件造成实质性伤害,质量可靠。
------------------------------------------------------------------------------------------------------------------------------
以上,使用 JDY31 蓝牙串口连接 UNO,配合 18B20 测试了电冰箱动态温度工况。
蓝牙模块以单元板形式,由 STC15W104 完成串口桥接;系统由锂电池供电,可穿墙通信。
整机在温度测试区间(-24℃ ~ +26℃)工作正常,数传可靠。
最终确认冰箱恒温原理为温控器 PWM 开关控制,工作周期大约 15h.
最后祝大家折腾愉快!
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
打赏
-
查看全部打赏
|