首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
测试测量
» 基于MLX90615和STM32的多点红外温度测量系统设计
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
基于MLX90615和STM32的多点红外温度测量系统设计
发短消息
加为好友
Bazinga
当前离线
UID
1023230
帖子
5213
精华
0
积分
2607
阅读权限
70
在线时间
158 小时
注册时间
2013-12-20
最后登录
2015-10-22
金牌会员
UID
1023230
1
#
打印
字体大小:
t
T
Bazinga
发表于 2014-10-7 09:29
|
只看该作者
基于MLX90615和STM32的多点红外温度测量系统设计
红外传感器
,
温度传感器
,
红外温度
,
红外测温
,
微处理器
提供了一种基于数字式红外传感器MLX90615的多点红外测温方法。STM32微处理器通过SMBus总线协议与MLX90615进行通信,首先分别对每个MLX90615地址进行修改,确保其地址编号在总线上的唯一性,然后根据不同地址编号获取不同点上MLX90615所测温度值,结果送至上位机温度监测软件显示。实验结果表明,该方法测温精度高,响应速度快,且非接触式测量有效降低了危险系数,为多点测温提供了一种新途径。
目前在多点温度测量系统中应用较为广泛的是DALLAS公司的数字温度传感器DS18B20,其优点是只需一根总线,就能完成系统中数据的交换与控制。但DS18B20响应速度慢,精度低,且在实际应用中当总线挂接的DS18B20的数目超过8个时,就必须为每个DS18B20提供独立电源供电,导致系统维护变得十分困难。红外测温技术作为一种便捷、准确的非接触式测温技术而得到快速发展。红外测温可实现在其视场范围内对难以接触区域或危险区域进行连续、实时的温度监测,有效降低了测温作业的危险系数;且具有体积小、精度高、可组网及实时性能好等优点。本文采用数字式红外温度传感器MLX90615作为温度检测器件,以STM32微处理器为核心,设计实现多点红外温度测量系统。
该系统具有优点为:测温精度高;测量不影响温度场的分布;非接触式温度测量,降低危险系数;响应时间短,易于实现动态测量。
1红外辐射测温基本原理
红外辐射是一种人眼不可见的光线,俗称红外线,它是介于可见光中红色光和微波之间的光线。由于带电粒子的运动,一切温度高于绝对零度的物体都在不停地向周围空间发出红外辐射能量,能量波长主要集中在0.6~15μm波段。其辐射能量密度与温度的关系符合斯蒂芬-波尔兹曼辐射定律:E=εσT4 (1)
由式(1)可知,只要已知物体的温度及其辐射率,即可计算出它所发射的辐射功率。反之,如果测量出物体的辐射功率,即可确定物体的温度。红外传感器的输出信号是被测目标温度To与传感器自身温度Ta共同作用的结果:
式中:温度单位均为Kelvin;A为仪器常数,与传感器的设计结构有关。
2硬件设计
非接触式多点红外测温系统硬件部分主要由红外传感器组、微处理器、其他外围电路及PC组成。红外传感器将其视场范围内的红外辐射转化成数字信号,通过SMBus总线将数据传至STM32微处理器,微处理器与上位机进行串口通信,将温度数据显示在上位机。
2.1红外传感器部分
传感器部分采用数字式红外传感器MLX90615ESG-DAA,该芯片是由Melexis公司生产的高精度数字式测温芯片,具有PWM和SMBus两种输出方式,正常工作的环境温度范围是-40~85℃,被测对象温度范围是-40~115℃,若需更小的测温范围,可通过SMBus总线修改E2PROM中相应控制字来改变这个范围,从而提高精度。发射率可设置0~1.0之间的任意值,可根据公式:发射率=dec2hex[round(16 384×ε)],将0~1.0之间的任意浮点数ε转换为16进制数,然后写入相应控制字。
MLX90615主要由红外热电堆传感器、低噪声放大器、16位模/数转换器和DSP单元等组成,其结构框图如图1所示。红外热电堆传感器将采集到的红外辐射转化为电信号,并经过低噪声放大器放大后送给模/数转换器。模数转换器输出的数字信号经FIR/IIR低通滤波器调理后送入数字信号处理器,数字信号处理器对数字信号运算处理后输出测量结果并保存在MLX90615内部RAM中,可以通过SMBus或PWM方式供主控CPU单元读取。
若干个红外传感器作为从器件,通过SMBus总线连接到微处理器,典型的SMBus配置如图2所示,SDA及SCL引脚皆需300 kΩ弱上拉。注意,MLX90615红外传感器支持7位地址,因此同一总线上的传感器数量最多为127个。
2.2微处理器
微处理器采用基于ARM Conex-M3的32位微控制器STM32F103C8T6.该微处理器具有高速可靠、温度范围宽、资源丰富、功耗低等优点,广泛应用于医疗保健、手持设备、电机控制等场合。STM32F103C8T6具有64 KB的片内FLASH存储器、32个通用I/O引脚、2个10路12位A/D转换器、3个通用定时器等外设资源和USART,I2C,SPI,CAN等通信接口,能够满足多点红外测温系统的设计要求。
3软件设计
3.1 MLX90615的传输协议
SMBus数据传输协议为主设备与从设备之间的数据通讯提供了可能,该协议规定,在某一时刻总线上只能有一个主设备有效。主设备可通过“读数据”和“写数据”与从设备进行“交流”,其数据传输格式如图3、图4所示。其中,S为起始位,Slave Address为从器件地址,Wr为写标志,Command为命令字节,Rd为读标志,PEC为出错数据包,P为停止位。
SDA上的数据在SCL变为低电平300 ns后即可改变,数据在SCL的上升沿被捕获。16位数据分2次传输,每次传一个字节。每个字节都是按照高位(MSB)在前,低位(LSB)在后的格式传输,两个字节中间的第9个时钟是应答时钟。数据传输时序如图5所示。
3.2温度采集模块
MLX90615红外温度传感器的出厂默认地址为0x5b,因此应首先通过软件对红外传感器的地址进行修改,避免总线上出现“一呼百应”的情况。MLX90615支持7位地址,可使用地址值为1~127,所有传感器都会响应0x00地址,应避免使用。更改地址时应保证只有一只传感器挂接在总线上,且必须先对传感器地址控制字清空,即先写入“0x00”电址,再写入指定地址值,其流程如图6所示。
为每个MLX90615红外传感器设置其惟一地址后,将其通过SDA及SCL两线挂接到SMBus总线,与微处理器进行通信。
微处理器作为总线上的主器件向总线上的第一个ML=X90615发送命令并等待应答,待收到应答后,读取该点温度值并通过串口传至上位机进行显示,之后向第二个MLx90615发送命令并等待应答,得到应答后读取该点温度并传至上位机显示,以此类推,对总线上的所有MLX90615进行温度数据采集。MLX90615中读出的温度值转换为摄氏温度的公式为:
To=RAM(07h)0.02-273.15 (3)
数据读取流程图如图7所示。
3.3上位机界面
上位机温度监测界面采用C++下的MFC类库编写,实现上位机通过串口与微处理器连接,接收由微处理器发送的温度数据并显示。可通过单击界面上的按钮来控制、选择监测点,如图8所示。
4实验结果
实验采用3只MLX90615传感器分别监测热水、冰及室内温度,开始监测1 min后得到其方差、平均值及参考温度如表1所示。
结果表明,MLX90615测温精度更高,且测量结果稳定,响应速度可达7~9 ms.缺点是测温时与被测对象距离需保持在2 cm以内,距离超过70 cm时所测温度为环境温度。
5结语
本文设计实现了基于MLX90615红外传感器的非接触式多点温度测量系统,该系统测量精度可达0.02℃,且响应速度快,抗干扰能力强。传感器与微处理器的接口简单,简化了硬件设计工作,为多点温度测量提供一种新方法。
收藏
分享
评分
the king of nerds
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议