资料介绍
描述
想为我们办公室做一个疫情期间的热像仪已经很久没有了。但是阵列热传感器在 2020 年曾经非常昂贵,因为对 COVID-19 有巨大的需求,我不得不暂停我的计划,直到最近,我才有机会这样做。当然,从市场上买一个也不错,但价格昂贵,实际上还不如我的设计。在硬件和固件上都开源。
补给品
1、基于ESP32-S2的并行TFT Touch,分辨率320*240:
。https ://youtu.be/fXq_TVa0oq4
2.) 基于ESP32-S2,带WIFI,可以直接将数据/结果传输到本地网络,进行远程监控。
2. MLX90640 红外热像仪,是我专门为这个应用设计的。
3. 以及为此设计的一套亚克力外壳,带有激光切割
第 1 步:硬件组装
热像仪使用 I2C 与控制器通信,I2C 地址为 0x33,而 ESP32-S2 Parallel TFT 具有用于外部传感器的内置连接器(I2C/GPIO),因此很容易将热像仪连接到 TFT,通过简单的即插即用电缆。
将 SD 卡插入 SD 插槽进行数据存储。
第 2 步:固件
固件是这个应用程序的核心工作,对于 MLX90640,我使用了Adfruit_MLX90640 Lib 。此外,由于 MLX90640 得到的原始数据是 32*24 的数据,带有噪声,我们需要对其进行更多处理:
一个。过滤数据,使它们显示平滑,否则显示会很刺眼。
湾。查看所有原始数据中的最高温度。通常,最高温度指向我们感兴趣的地方,它告诉我们一个人的健康状况是否良好。
C。原始数据的线性插值算法,使其看起来不那么像素,并且适合显示(我将其显示在320x240区域,显示区域的50%)。
1.过滤温度数据:
Void filter_frame(float *in, float *out)
{
if (MLX_MIRROR == 1)
{
for (int i = 0; i < 32 * 24; i++)
{
out[i] = (out[i] + in[i]) / 2;
}
}
else
{
for (int i = 0; i < 24; i++)
for (int j = 0; j < 32; j++)
{
out[32 * i + 31 - j] = (out[32 * i + 31 - j] + in[32 * i + j]) / 2;
}
}
}
在滤波器中,温度最终输出被输入平均,从而产生稳定平滑的输出;
查看不带/带过滤器的输出对比。
2. 快速整理温度,找出最高温度点,存入frame[767]:
void qusort(float s[], int start, int end)
{
int i, j;
i = start;
j = end;
s[0] = s[start];
while (i < j)
{
while (i < j && s[0] < s[j])
j--;
if (i < j)
{
s[i] = s[j];
i++;
}
while (i < j && s[i] <= s[0])
i++;
if (i < j)
{
s[j] = s[i];
j--;
}
}
s[i] = s[0];
if (start < i)
qusort(s, start, j - 1);
if (i < end)
qusort(s, j + 1, end);
}
3. 原始数据的线性插值算法,更好的显示,适合320x240的显示区域:
//Transform 32*24 to 320 * 240 pixel
void interpolation(float *data, uint16_t *out)
{
for (uint8_t h = 0; h < 24; h++)
{
for (uint8_t w = 0; w < 32; w++)
{
out[h * 10 * 320 + w * 10] = map_f(data[h * 32 + w], MINTEMP, MAXTEMP);
}
}
for (int h = 0; h < 240; h += 10)
{
for (int w = 1; w < 310; w += 10)
{
for (int i = 0; i < 9; i++)
{
out[h * 320 + w + i] = (out[h * 320 + w - 1] * (9 - i) + out[h * 320 + w + 9] * (i + 1)) / 10;
}
}
for (int i = 0; i < 9; i++)
{
out[h * 320 + 311 + i] = out[h * 320 + 310];
}
}
for (int w = 0; w < 320; w++)
{
for (int h = 1; h < 230; h += 10)
{
for (int i = 0; i < 9; i++)
{
out[(h + i) * 320 + w] = (out[(h - 1) * 320 + w] * (9 - i) + out[(h + 9) * 320 + w] * (i + 1)) / 10;
}
}
for (int i = 0; i < 9; i++)
{
out[(231 + i) * 320 + w] = out[230 * 320 + w];
}
}
for (int h = 0; h < 240; h++)
{
for (int w = 0; w < 320; w++)
{
out[h * 320 + w] = camColors[out[h * 320 + w]];
}
}
}
查看没有/使用线性插值算法的输出对比。
第 3 步:测试和结果
烧录完成后,通过USB-C型5V电源给系统供电,显示正常,温度检测:
第 4 步:更多
所有的温度都可以存储在SD卡上进行存储。
另外,作为ESP32 WIFI,所有数据和图片都可以显示和存储在本地网络PC或智能手机中,我用Python做了一个简单的温度显示:
- 管道监视器开源设计
- 4至14芯电池组监视器的模拟前端芯片OZ9355 63次下载
- 多电池监视器LTC6811-1/LTC6811-2数据手册 47次下载
- 温度监视器
- 高压电池监视器
- 使用LabVIEW设计的生成波形和过程监视器 8次下载
- MPLAB REAL ICE在线仿真器功率监视器开发工具的详细中文资料概述
- 如何使用MCP39F521功率监视器演示板来评估MCP39F521器件的详细概述
- 如何使用MCP39F511功率监视器演示板来评估MCP39F511器件的概述
- MPLAB REAL ICE在线仿真器功率监视器的介绍和使用指南详细概述
- MPLAB REAL ICE在线仿真器功率监视器使用说明书中文概述
- 双向电流功率监视器 8次下载
- 超低功耗血压和心率监视器 5次下载
- 光纤系统-音频监视器产品规格
- DINAMAP血压监视器原理分析与故障维修
- 探索红外热成像探测器的基础原理 550次阅读
- 典型电池监视器电路图分享 605次阅读
- 简单的电池监视器电路图 558次阅读
- 如何创建自定义监视器? 517次阅读
- 光纤应用中的监视器校准 881次阅读
- DIY小熊派红外热成像仪 2478次阅读
- 如何通过Raspberry Pi设置CE电流监视器 2124次阅读
- Cypress怀孕监视器CY8C38系列的性能特性及应用方案 2355次阅读
- KUKA C4如何使用诊断监视器? 3596次阅读
- 单片机PIC16的外设--故障保护时钟监视器解析 1944次阅读
- 揭秘液晶显示器和液晶监视器的七大不同点 2091次阅读
- 锂离子电池和稳压器监视器电路图 1767次阅读
- 基于LTC2991系统监视器的相对湿度测量 1934次阅读
- 液晶监视器的选购与保养 1022次阅读
- 120Hz+全高清LCD监视器新技术应用解析 1335次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多