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

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

3天内不再提示

温度传感器(NTC)ADC转换实验

CHANBAEK 来源:想啥做啥 作者:想啥做啥 2023-11-29 16:26 次阅读

实验环境

Matlab版本: 2021b

操作系统 :Win10专业版

硬件平台 :YF-STM32-ALPHA 1R4

实验内容 :读取温度传感器电压值并转换成实际℃温度显示出来

模型与原理图

本次实验所用到的simulink模型如图5.1所示,电路原图如图5.2所示,其中温度传感器在开发板中的位置如图5.3所示,实验效果为读取NTC温度传感器所在引脚PA4的电压值,然后通过查表算法将其转换成实际℃温度值并通过仪表或“display”模型控件显示出来。

图片

图5.1 NTC温度传感器采集simulink模型

图片

图5.2 温度传感器电路图

图片

图5.3 温度传感器在电路板中位置

基础模型介绍与分析

本次实验所用到的NTC(负温度系数)传感器外观如图5.4所示,因其低廉的价格和使用方便的特性,被广泛应用于家庭与工业电子设备中(空调、电饭锅、洗衣机等)。表5.1为该温度传感器基本使用参数,详细的温度电阻特性参考其特性表链接,里面详细整理了该传感器电阻值与温度的对应关系。电压采集原理图采用“分压式”接法,如图5.5所示,单片机端采集电压公式计算方法 MCU_ADC = Rt*3.3V/(10+Rt)。

图5.4 温度传感器外观

表5.1 基本参数表

型号B值使用温度范围
MF52-103/3435 10K ±1%3435 1%-55℃~125℃

温度阻值特性表:https://pan.baidu.com/s/1dF19CoL? at =1700414024610

图片

图5.5 NTC温度传感器“分压”测电压接法

Analog Input”模型外观如图5.6所示,通过更改“Pin”栏参数可以读取该引脚的电压值,读取的数值范围为0~1,需要注意的是“Pin”栏参数只有该芯片引脚支持模拟量功能才能使用

图片

图5.6 "Analog Input"模型

为方便读者以往单片机使用习惯和计算方便性,实验中使用到乘法模型“Product”将读取的ADC值乘以3.3倍放大处理,得到的最终值范围为0~3.3,如图5.7所示。

图片

图5.7 "Product"模型使用方法

查表法转换温度值

这是本次实验中的关键算法部分,也是在嵌入式开发中针对A/D方式读取原始传感器数据参数常用的转换方法,即大家熟知的“以空间换时间“法,“ Lookup with Linear Lagrange Interpolation ”模型与参数设置窗口如图5.8所示。

图片

图5.8 " Lookup with Linear Lagrange Interpolation"模型

我们首先通过“温度阻值特性表”得到温度电压表关系,考虑到在单片机中不占用太大存储空间,这里采取每5℃间隔制作表格,一般对于精度要求不是特别高的场合,我们可以大致认为5℃内的温度变化是线性的,其中“V”的电压值计算公式为V = R*3.3V/(10+R),将其中的R值代入,就可以得到V的最终值,详情请参考表5.2。

NTC_Value_table.xlsx

表 5.2 温度-阻值-分压表

TRV
-40190.55623.135457592
-35151.59753.09578892
-30116.35193.038824663
-2590.03262.970107545
-2070.58112.890474689
-1555.72842.797933922
-1044.12012.690245029
-535.03622.567256118
028.01702.431967278
522.65972.289580431
1018.56002.144537815
1516.27972.044277903
2012.69001.845614808
2510.00001.65
308.16001.482819383
356.81331.337268115
405.73401.202631244
454.82861.074570762
504.0650.953750444
553.41460.839993738
602.8250.726900585
652.50760.661604145
702.1350.580593325
751.82250.508712201
801.5860.451734852
851.40060.405415504
901.2360.363011748
951.07440.320154591
1000.9180.277468401
1050.7870.240762028
1100.7130.219630356

点击“Lookup with Linear Lagrange Interpolation”模型参数设置窗口中的“编辑表和断点...”如图5.9所示,弹出的查找表参数设置如图5.10所示,将表5.2中的温度T和电压值V填入该表中的“表数据”和“断点 1”处,注意数据的升降序和填写位置

图片

图5.9 表格参数设置按钮

图片

图5.10 查找表参数填好效果

点击“线性图”按钮查看填写的数据对应的曲线是否正确,如图5.11所示,最终填写好的数据效果如图5.12所示。

图片

图5.11 点击查看线性图曲线

图片

图5.12 填写好查找表数据的模型参数设置部分效果

总结

本次实验以一个基本的温度传感器为例,通过在其中加入查表算法将其转换成我们熟知的摄氏度(℃)温度值,但是在实际场景中经常会出现一些杂波电压或采集的数据与我们所需要的数据稳定的情况,读者朋友可以思考下面对这种问题该如何去解决?以往使用C代码方式一般是在前面加入杂波滤除算法然后再求平均值,simulink中又该如何使用呢?

拓展延申

1、本次实验又用到一个数据显示仪表,但是文章中并没有做过多介绍,其位于“Dashboard”库中,里面又很多显示仪表和按钮开关,在实际模型测试中非常方便,读者朋友可以多去尝试使用。

图片

图5.13 “Dashboard”库位置

2、在查表法建立表格过程中,有一个操作非常繁琐,复制到表格中的数据非常不方便,如果有多种传感器需要建立表格,那工作量是不可想象的,其实这里有个更方便的方法,可以先建立一个excel表格,然后使用matlab打开并导入到matlab中,如图5.14和图5.15所示,然后在matlab中直接定义两个数组变量,然后在“表数据”和“断点1”中引入即可,如图5.16所示,至于该方式更深入的用法,大家可以积极去探索下,这里暂时不做过多介绍。

图片

图5.14 打开Excel表格

图片图5.15 将Excel表格的数据导入为变量表

图片

图5.16 通过变量数组引入查找表

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

    关注

    1293

    文章

    6308

    浏览量

    232823
  • 温度传感器
    +关注

    关注

    48

    文章

    2902

    浏览量

    155868
  • NTC
    NTC
    +关注

    关注

    7

    文章

    405

    浏览量

    51995
  • STM32
    +关注

    关注

    2265

    文章

    10870

    浏览量

    354694
  • Simulink
    +关注

    关注

    22

    文章

    522

    浏览量

    62300
收藏 人收藏

    评论

    相关推荐

    NTC温度系数温度传感器工作原理

    NTC温度系数温度传感器工作原理 NTC是Negative Temperature Coefficient 的缩写,意思是负的
    发表于 11-28 10:19 6806次阅读

    线性NTC温度传感器使用指南

    线性NTC温度传感器使用指南 1.什么是线性NTC温度传感器
    发表于 01-14 08:52 2567次阅读

    热电式传感器的特性研究实验

    热电式传感器的特性研究实验 热电式传感器热电式传感器是利用转换元件的电磁参量随温度变化
    发表于 06-04 12:59

    NTC温度传感器

    线性温度传感器是线性化输出负温度系数(简称ntc)热敏元件,它实际上是一种线性温度-电压转换元件
    发表于 04-26 10:56

    线性NTC 温度传感器信号处理电路(之二)

    线性NTC温度传感器因为具有良好的线性电压-温度特性,所以信号处理相对简单,该电路选用HN36型线性NTC
    发表于 10-23 11:12

    线性NTC温度传感器使用教程(一)

    线 性NTC温 度 传 感 /温度补偿元件使 用 教程(1)1.什么是线性NTC温度传感器?线
    发表于 02-07 10:13

    基于NTC的环境温度监测 (另外提供 NTC温度传感器

    基于NTC的环境温度监测 (另外提供NTC温度传感器)基本要求:1)段式LCD显示 或 12864液晶显示;2)保存
    发表于 05-30 15:16

    热电堆传感器NTC温度传感器的使用方式

    热电堆传感器NTC温度传感器不一样的使用方式
    发表于 01-06 06:55

    如何用ADC测量内部温度传感器温度

    stm32 ADC测量内部温度传感器温度值,使用DMA方式传输,并通过串口观察数据。实验器材:探索者STM32F407开发板硬件资源:内部
    发表于 11-24 06:11

    线性NTC温度传感器电气参数及测试条件

    线性NTC温度传感器电气参数及测试条件
    发表于 06-30 19:47 1900次阅读

    ML51单片机通过ADC驱动NTC传感器测量温度实例

      NTC传感器如下图所示,NTC的阻抗随着温度升高而降低。手册给出了阻抗到温度转换公式。  
    的头像 发表于 01-26 16:58 6473次阅读
    ML51单片机通过<b class='flag-5'>ADC</b>驱动<b class='flag-5'>NTC</b><b class='flag-5'>传感器</b>测量<b class='flag-5'>温度</b>实例

    热电堆温度传感器NTC温度传感器有什么不同?

    温度测量的应用中,我们需要为不同的应用选择不同类型的温度传感器。常见的温度传感器NTC热敏电
    的头像 发表于 12-18 16:29 2588次阅读
    热电堆<b class='flag-5'>温度</b><b class='flag-5'>传感器</b>与<b class='flag-5'>NTC</b><b class='flag-5'>温度</b><b class='flag-5'>传感器</b>有什么不同?

    NTC温度传感器的损坏原因

    不管是哪种传感器,所有的NTC温度传感器的结构和原理都是一样的:通过NTC热敏电阻探针(通过金属外壳或塑料外壳、延长导线、金属端子或接线端。
    的头像 发表于 07-09 15:46 5866次阅读

    NTC温度传感器的工作原理和性能特点

    NTC温度传感器是一种基于负温度系数(Negative Temperature Coefficient,简称NTC)热敏电阻的
    的头像 发表于 08-07 16:03 3.7w次阅读

    IGBT模块NTC温度传感器的测量方法

    采用模拟电路方式测量IGBT模块NTC温度传感器温度:这个基本的方法是基于一个分压作为热敏装置。
    的头像 发表于 10-25 16:29 221次阅读
    IGBT模块<b class='flag-5'>NTC</b><b class='flag-5'>温度</b><b class='flag-5'>传感器</b>的测量方法