0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

MLX90640红外热成像仪测温模块开发笔记(三)

工程监测 来源:工程监测 作者:工程监测 2022-07-21 09:18 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

MLX90640 红外热成像仪测温模块开发笔记(三)工作流程和操作MLX90640 的一般步骤

pYYBAGLYqLqAVRUnAAhYW2N-cns992.png河北稳控科技MLX90640 红外热成像传感器

默认参数时
MLX90640 的工作流程
(1) 上电,内部初始化(约 40ms)
(2) 读取工作参数到控制和状态寄存器
(3) 开始以 2Hz 的速率测量实时数据并更新到 RAM,自动更新状态寄存器。

测量帧解释
MLX90640 共有 768 个测量像素点,每次测量其中的一半,称为 1 帧,故此完成 768 像
素需要测量 2 帧,用帧 0 和帧 1 来表示。即:所谓的 1 帧数据其实是完整像素的一半。

可以修改的参数
可以修改的参数有以下几个方面:
 自动测量:默认为自动测量,即自动循环测量帧 0 和帧 1 更新到RAM 中。与其对应的是手动测量,即:用指令来控制测量帧 0 还是帧 1。手动测量已经在官方的数据手册中被删除,看来 MLX 也不喜欢别人用,所以我们也就别用了。自动测量保持默认值,不要改就好。
 帧分布:前面已经说了,1 帧实际上是测量完成了一半的像素点,这一半像素有两种分布模式,手册上称为 TV 模式和 Chess 模式,TV 模式以行为单位,是指每帧只测量奇数行或者偶数行,Chess 模式是指以像素为单位,每次交错着像素测 384 个像素点。我们可以称之为“行交错模式”和“像素交错模式”。
在这方面,手册上又说了,出厂时是以 Chess 模式校准的,具有最好的精度(言下之意就是说如果修改为了 TV 模式时会不准),鉴于此,这个参数也不要动。
 测量分辨率:可选的有 16~19 位 AD 转换精度,默认是 18 位,转换位数当然是越
高越好了,但 18 和 19 位经过测试也没有发现有什么实际区别,这个参数可改可不改。
 测量速率:每秒测量几帧数据,这个参数很有用处,毕竟我们希望成像后是连续的
动画,每秒 2 次一定是不好的,我们可以调用 API 将这个参数修改为 8Hz 或者 16Hz 甚至 32Hz,64Hz 是不建议的,因为测量速率太快时噪声特别大,图像特别乱。普通相机的刷新速率也就 15Hz 左右,所以建议最高设置为 16Hz 吧。

所以,虽然数据手册上写的感觉好像可修改的参数挺多,这么一分析,其实只有 1 个测量速率是有用处的,其它都是浮云(鸡肋)。

参数修改方法讨论:
有两种修改方法,修改寄存器和修改 EEPROM
(1) 修改寄存器(推荐)
传感器上电后会自动从 EEPROM 读取参数到寄存器,寄存器内的参数值是运行时实际执行的参数,直接通过 I2C 修改寄存器值即可,随用随改、立即生效。寄存器的值是掉电遗失的, 所以每次上电后都要修改一次。
(2) 修改 EEPROM
EEPROM 是掉电不丢失的,所以修改 EEPROM 内的运行参数只需要一次,下次启动生效。但
EEPROM 内存储的不仅只是同步到运行寄存器的几个参数,大部分的是 768 个像素的校准参数,这些参数是出厂时写入的,特别重要,所以我的建议还是不要对 EEPROM 有任何的写操作,以免发生意外,EEPROM 里的像素校正参数一旦被意外修改就再也找不回来了。

MLX90640 底层驱动Keil 项目(STC 单片机)下载

建议的操作流程
unsigned short EE[832]; unsigned short Frame[834]; paramsMLX90640 MLXPars; float Vdd,Ta,Tr;
float Temp[768];

IIC_Init(); //I2C 初始化
MLX90640_I2CInit(); //MLX 传感器初始化
Delay_ms(50); //预留一点时间让 MLX 传感器完成自己的初始化
MLX90640_SetRefreshRate(0); //测量速率 1Hz(0~7 对应 0.5,1,2,4,8,16,32,64Hz)

MLX90640_I2CRead(0x2400, 832, EE); //读取像素校正参数MLX90640_ExtractParameters(EE, &MLXPars); //解析校正参数(计算温度时需要)

while (1)
{
Delay_ms(5);
if (MLX90640_GetFrameData(Frame)==0) //有转换完成的帧
{
Vdd=MLX90640_GetVdd(Frame, MLXPars); //计算 Vdd(这句可有可无) Ta=MLX90640_GetTa(Frame, MLXPars); //计算实时外壳温度
Tr=Ta-8.0; //计算环境温度用于温度补偿
//手册上说的环境温度可以用外壳温度-8℃ MLX90640_CalculateTo(Frame, MLXPars, 0.95, Tr, Temp); //计算像素点温度
/*
Temp 数组内即是转换完成的实时温度值,单位℃
可以在这里对得到的 32*24=768 个温度值进行处理、转换为颜色值、显示关于温度转颜色方法,在后续的文章中会有专门介绍
*/
}
}
一点疑问
校正参数存储于传感器内部的 EEPROM,实时数据也来自传感器,如何利用实时数据和校正
参数计算温度的方法也是事先规定好的,MLX 为什么不直接在内部完成这个温度计算让用户直接读取温度值?为了体现这个传感器的复杂性或者是让用户有成就感吗?
本来可以在传感器内部解决的问题被厂家要求在外部完成,对 MCU 的性能要求是特别高的, 大量的浮点运算,大量的RAM 消耗,较低的效率。

pYYBAGK6lTGAd79hAAcQSZdFtVQ429.png河北稳控科技MLX90640 红外热成像传感器成果

审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 红外热成像仪

    关注

    1

    文章

    127

    浏览量

    15425
  • 测温模块
    +关注

    关注

    0

    文章

    11

    浏览量

    3045
  • MLX90640
    +关注

    关注

    3

    文章

    22

    浏览量

    1656
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【开源分享】用 ESP32 DIY 一个红外成像仪

    “使用ESP32和MLX90640传感器构建自己的红外成像设备。”概览抛弃X射线视觉,热像仪才是真正的工业超级英雄!它们不仅能看到光,还能看到,这使它们成为发现隐藏的能量消耗、精确定
    的头像 发表于 11-18 08:05 707次阅读
    【开源分享】用 ESP32 DIY 一个<b class='flag-5'>红外</b><b class='flag-5'>热</b><b class='flag-5'>成像仪</b>

    红外成像仪的技术原理及应用

    红外成像仪通过捕捉物体红外辐射,实现“热量可视化”,应用于工业巡检、安防巡逻和消防救援等领域。
    的头像 发表于 11-10 10:10 335次阅读

    红外成像+汽车保养:让故障隐患“无处遁形”

    在汽车工业迈向智能化、电动化的今天,传统维修方式正经历一场由红外成像技术驱动的革命。从发动机舱到电池组,从刹车盘到空调管路,红外
    的头像 发表于 10-28 15:42 1463次阅读
    <b class='flag-5'>红外</b><b class='flag-5'>热</b><b class='flag-5'>成像</b>+汽车保养:让故障隐患“无处遁形”

    非接触式成像仪 智能成像

    成像仪
    稳控自动化
    发布于 :2025年10月11日 10:18:09

    功率器件设计基础(十四)----成像仪测温度概述

    器件设计基础系列文章已经比较系统地讲解热设计基础知识、相关标准和工程测量方法,本篇的话题是《使用成像仪测温度的注意事项》。用
    的头像 发表于 09-12 17:05 666次阅读
    功率器件<b class='flag-5'>热</b>设计基础(十四)----<b class='flag-5'>热</b><b class='flag-5'>成像仪</b><b class='flag-5'>测温</b>度概述

    浮思特 | 不仅能测温!红外成像还有这些隐藏技能

    说起红外成像仪,你第一时间想到的可能是消防员在浓烟中寻找被困人员,或者医生在体检时用它来测体温。但实际上,红外
    的头像 发表于 08-15 09:45 874次阅读
    浮思特 | 不仅能<b class='flag-5'>测温</b>!<b class='flag-5'>红外</b><b class='flag-5'>热</b><b class='flag-5'>成像</b>还有这些隐藏技能

    浮思特 | 红外成像仪可以检查什么?用途比你想的还多!

    提到红外成像仪,很多人第一反应可能是“军事用的高科技设备”或者“检测温度的高级仪器”。其实,它早就走进了工业、建筑、医疗等各种领域,而且用途真的超乎你的想象。1.电气设备巡检如果你是
    的头像 发表于 08-12 10:03 788次阅读
    浮思特 | <b class='flag-5'>红外</b><b class='flag-5'>热</b><b class='flag-5'>成像仪</b>可以检查什么?用途比你想的还多!

    红外成像机芯:测温集成的得力之选

    在科技飞速发展的当下,红外成像技术在众多领域展现出巨大的应用价值,其中用于测温集成的红外
    的头像 发表于 07-26 17:09 631次阅读

    Raythink燧石红外成像仪在电力巡检中的应用

    炎炎夏日,电力设备在高温下持续运转,运维工程师们面临着严峻的考验。传统电力巡检方式依赖人工调试仪器,不仅耗时耗力,还容易因操作失误影响检测精度。随着AI技术的深度融合,Raythink燧石RT系列专家级手持红外成像仪让电力巡检
    的头像 发表于 07-18 09:46 622次阅读

    如何构建带有VGA输出的低分辨率成像

    在本文中,我们将介绍如何构建带有VGA输出的低分辨率成像。该解决方案基于Melexis MLX90640红外阵列、FPGA S7 50开发
    的头像 发表于 07-15 11:06 3899次阅读
    如何构建带有VGA输出的低分辨率<b class='flag-5'>热</b><b class='flag-5'>成像</b>

    Made with KiCad(102):DIY 一个红外成像仪

    “ 使用 ESP32 和 MLX90640 传感器构建自己的红外成像设备。” KiCon Asia 2024 将于 2024 年 11 月 15~16 日在深圳举行,11月14日的线下培训报名已开启
    的头像 发表于 04-29 17:02 1780次阅读
    Made with KiCad(102):DIY 一个<b class='flag-5'>红外</b><b class='flag-5'>热</b><b class='flag-5'>成像仪</b>

    红外成像仪+AI:Raythink燧石技术为机场安防装上不眠的智慧之眼

    机场周界如同错综复杂的电磁迷宫,传统监控通常面临重困局:雷达误将飞鸟识别为无人机,可见光设备在雾夜失明,漂浮物预警误报率居高不下。在这片24小时不间断运行的空中枢纽,燧石技术红外成像仪
    的头像 发表于 04-01 17:22 1232次阅读
    <b class='flag-5'>红外</b><b class='flag-5'>热</b><b class='flag-5'>成像仪</b>+AI:Raythink燧石技术为机场安防装上不眠的智慧之眼

    为什么红外成像采用微测辐射计技术?

    红外成像技术,作为现代非接触式测温与检测的重要手段,其核心在于能够准确、快速地捕捉并展示物体表面温度分布的差异。在这一技术领域中,微测辐射
    的头像 发表于 03-19 15:49 937次阅读
    为什么<b class='flag-5'>红外</b><b class='flag-5'>热</b><b class='flag-5'>成像</b>采用微测辐射<b class='flag-5'>热</b>计技术?

    红外成像工具 非接触式成像仪 高精度温度测量与多功能应用

    成像仪
    稳控自动化
    发布于 :2025年02月25日 11:01:57

    【正点原子STM32H7R3开发套件试用体验】+MLX90640成像

    测量,帮助监测异常和预防故障。本次使用RA6T2开发板读取MLX90640红外测温传感器的温度,显示在LCD屏幕上,便于测试设备的温度。
    发表于 12-17 22:41