作者:网站管理员 发布时间:2025-01-03 浏览次数:
一、 产品简介
合乐HL8彩票App平台 MLX90640 是一款低成本 非接触红外点阵测温模块。 工作电压 3.3-5v,体积小其工作原理,是黑体辐射定律,物体的温度越高,所发出的红外辐射 能力越强,经过芯片处理得到温度数据。 此模块,有三种方式读取数据,即 串口(TTL 电平)、USB 接口、或者 I2C 通信方式。该产品测温点阵数量多, 像素高。能在一般的环境分辨出人体型。 串口的波特率有 115200bps 和 460800bps,有连续输出与询问输出 两种方式,可适应不同的工作环境。 与所有的单片机及电脑连接。模块保留了 MLX90640 芯片本身的I2C 接口,把模块 PS 接 GND 或者 R8 点焊 接 上,模块本身处理器不工作,可以经过 I2C 直接操作 MLX90640。
二、 产品特点
(1)、体积小,点阵数量多(768个点阵数据)
(2)、适应用于Linux,ESP32,树莓派,STM32等
(3)、串口通信格式,I2C 通信格式
(4)、10秒预热时间
(5)、5种热力图成像
(6)、参数选择修改
(7)、成像数据保存
三、技术参数
名称 |
参数 |
测量范围 |
-40 °~ 300 ° |
分辨率 |
0.1 ° |
测量精度 |
±2 °请参考芯片手册 47 页 |
重复精度 |
±2 ° |
响应频率 |
8 HZ(460800bps) |
工作电压 |
3.3~5 V |
工作电流 |
42mA |
工作温度 |
-40 °~ 85 ° |
尺寸 |
17.27mm×33mm |
四、产品应用
(1)、非接触温度测量
(2)、移动物体测温
(3)、可视图形测温
(4)、人员存在检测
(5)、机器人
五、引脚说明
Pin1 |
GND |
电源地 |
Pin 2 |
PS |
模块功能切换 |
Pin3 |
VCC3 |
电源+ (3.3v) |
Pin 4 |
VCC5 |
电源+ (5v) |
Pin 5 |
RX |
串口接收 |
Pin 6 |
TX |
串口发送 |
Pin 7 |
SCL |
MLX90640 SCL |
Pin 8 |
SDA |
MLX90640 SDA |
六、上位机使用
(1)、安装CH340驱动,文件位于 资料盘CH340驱动。
(2)、将模块通过USB 线与电脑相连,初次连接会发现新硬件并安装驱动。
(3)、驱动安装成功,电脑生成虚拟串口,可通过设备管理器查看串口号
(4)打开热成像上位机
串口设置:
1)选择第(3)步中查看到的串口号
2)设置波特 460800
3)打开串口
此时,便能看到模块采集到的热感图像,图像为高斯模糊之后的图像。 参数配置:
4)设置模块的发送波特率。
5)设置模块的更新率(注意:8HZ 的情况下必须使用 460800 波特率,其他更新率可以使 用 115200 波特率)。
6)工作模式, 自动:模块主动上传数据。请求:发送一次命令请求上传一次数据。
7)反射率,不同的物体反射率不一样,人体的反射率约为 0.95。
8)设置图像显示时,最高温度和最低温度的参考值。去掉自动复选框的对勾可以在左侧手 动设置。
9)显示模式,可选彩虹色或者贴黑色或者灰白色或者聚变色或者发光色三色显示。
10)选择是否显示最高温和最低温。
11)滤波系数,数值越大高斯模糊效果越好,对电脑性能要求越高。
七、通信协议:
(1)、串口通信参数(默认波特率值 460800 bps,可通过软件设定)
(2)、模块输出格式,每帧包含 1544 个字节(十六进制):
①.Byte 0: 0x5A 帧头标志
②.Byte 1: 0x5A 帧头标志
③.Byte 2: 0x02 数据量低 8 位
④.Byte 3: 0x06 数据量高 8 位
⑤.Byte 4: 0x00~0xFF 目标温度数据 1 低 8 位
⑥.Byte 5: 0x00~0xFF 目标温度数据 1 高 8 位
⑦.Byte 6: 0x00~0xFF 目标温度数据 2 低 8 位
⑧.Byte 7: 0x00~0xFF 目标温度数据 2 高 8 位
⑨.Byte xx: 0x00~0xFF 目标温度数据 xx 低 8 位
⑩.Byte xx: 0x00~0xFF 目标温度数据 xx 高 8 位
⑪.Byte1540: 0x00~0xFF MLX90640 自身温度低 8 位
⑫.Byte1541: 0x00~0xFF MLX90640 自身温度高 8 位
⑬. Byte1542: 0x00~0xFF 校验和低 8 位
⑭. Byte1543: 0x00~0xFF 检验和高 8 位
字节代表的含义说明:
byte0~byte1 |
帧头 |
byte2~byte3 |
该帧的数据量= byte3*256+byte2 (个) |
byte4~ byte1539 |
温度点阵,目标物体 768 个点的温度,每两个字节为一个 温度,该温度是实际温度的 100 倍; 例如:点 1 的温度=(byte5 *256+byte4)/100 (℃) 点 768 的温度=(byte1539 *256+byte1538)/100 (℃) |
byte1540~byte1541 |
MLX90640 自身温度的 100 倍。也可当作环境温度。 TA=( byte1541*256+ byte1540)/100 (℃) |
byte1542~byte1543 |
前 771 个字的累加和,保留 16bit 。具体参见下文 |
(3)、数据计算方法
数据放大倍数:
温度均为放大 100 倍后输出; 数据解析:
例如一帧数据
<5A5A-0206-6E0E-690E-5A0E-XXXX-050E-8D0E-D540> Byte0~ Byte1---0x5A0x5A 表示帧头;
Byte2~ Byte3---0x0206 表示数据量=0x06*256+0x02=1538 个温度数据(包括目 标数据和 MLX90640 自身温度数据)
Byte4~ Byte1539---表示上图中768 个点的温度数据,输出顺序一次为 (Col 1,Row 1)(Col 32,Row 1) (Col 1,Row 2)(Col 32,Row 2)
(Col 1,Row XX)(Col 32,Row XX)(Col 1,Row 24)(Col 32,Row 24)
注:(Col 1,Row 1)为上图中右上角开始
例子数据计算: 一帧数据
<5A5A-0206-6E0E-690E-5A0E-XXXX-050E-8D0E-D540> TCoI 1,Row 1 = (0x0E * 256 + 0x6E)/100= 36.94 ℃ TCoI 2,Row 1 =(0x0E * 256 + 0x69)/100= 36.89 ℃
TA =(0x0E * 256 + 0x8D)/100 = 37.25 ℃
Byte1542--- Byte1543 表示 前 771 个字的累加和,每个字为 16bit。 字 1=0x5A5A
字 2=0x0602(即数据量)
字 3=0x0E6E(即点 1 的温度数据) ⋮
字 770=0x0E05(即点 768 的温度数据)
字 771=0x0E8D(即 MLX90640 的温度数据) 则
校验和=字 1+字 2+字 3+字 XX+字 700+字 771= Byte1543*256+ Byte1542 具体参见附件的例程。
(4)、指令字节,由外部控制器发送至模块(十六进制)发给模块的指令为四字 节:
波特率设置指令:
115200 设置指令---------0xA5+0x15+0x02+0xBC
460800 设置指令---------0xA5+0x15+0x03+0xBD
模块更新频率设置指令:
2hz 设置指令-----------0xA5+0x25+0x02+0xCC
4hz 设置指令-----------0xA5+0x25+0x03+0xCD
8hz 设置指令-----------0xA5+0x25+0x04+0xCE
自动/查询设置指令:
查询输出数据指令-------0xA5+0x35+0x01+0xDB
自动输出数据指令-------0xA5+0x35+0x02+0Xdc
发射率设置指令:0xA5 +0x45 +0xXX+sum(8bit 校验和) 例如:人体的发射率一 般为 0.95,0xXX 为 0.95 的 100 倍,即 95=0x5f,
则责令为:0xA5+0x45+0x5F+0x49;
注:发射率最大为 1;即 0xXX 最大为 100=0x64;发射后,模块立即按照设 置的发射率计算目标温度;
I2C 模式:
当把模块 PS 接 GND 或者 R8 点焊接即可, 该功能为使用者自己读 取 MLX90640 芯片数据,建议内存 RAM 大于 20k 以上单片机使用。
上一篇:医疗类耳温枪应用方案
下一篇:没有啦!