当前位置: 首页 > news >正文

信号处理学习笔记6:ADC采样线性处理实测拟合

只要你能实测几组真实值,永远优先用 实测线性拟合 y = kx + b

以后所有线性传感器,都可用这个方法校准:y = kx + b

测 2~5 组真实值 → 拟合 k、b → 直接写进代码

目录

问题描述:

通用场景(理论公式):

为什么理论公式往往不准:

硬件原理推导物理量:

实测拟合:

实测拟合使用场景:

电压公式计算使用场景:

实测拟合与ADC理论公式代码特点:

总结

问题描述:

ADC理论公式电压 = ADC / 4096 × 3.3V

STM32f103C8T6 具有12位ADC精度0 ~ 4095,

但通过通用场景的物理计算无法得出真实的电压值

这就是使用通用理论公式会导致 数据往往不准

通用场景(理论公式):

电压 = ADC / 4096 × 3.3V

单片机 ADC 的标准理论公式,逻辑是这样的:

  1. 单片机 ADC 是12 位范围:0 ~ 4095

  2. ADC 的参考电压 Vref = 3.3V

  3. 含义:数字 0 → 对应 0V ,数字 4095 → 对应 3.3V

  4. 所以任意 ADC 值对应的输入电压就是:

这一步完全是硬件原理,和测什么、接什么传感器无关,是通用基础

为什么理论公式往往不准:

  1. Vref 不是精确 3.3000V
  2. ADC 有零点偏移、增益误差
  3. 分压电阻有 1%/5% 误差
  4. 运放有失调电压
  5. 走线有压降
  6. 传感器本身有公差

结果:按理论公式算出来的数值 ≠ 真实测量值

硬件原理推导物理量:

拿到 Vin 之后,还要算真实物理量,比如

外部 0~10V 电压 → 分压成 0~3.3V

4~20mA 电流 → 转成电压

压力传感器 → 电压输出

温度传感器 → 电压输出

实测拟合:

思路完全转变:

不再关心中间电路怎么工作,只关心:输入真实值 → 输出 ADC 值

只要关系是线性的,就可以拟合:真实值

这个方法的通用意义:

  • 自动抵消所有硬件误差
  • 自动修正 Vref 偏差
  • 自动修正电阻误差
  • 自动修正 ADC 非线性、偏移
  • 最终结果直接对标真实物理量
例如,实测如下对应关系:
DC直流真实值1V2V5V7V10V
ADC值178424116416572396

根据y = kx + b

直接得出关系 DC = (ADC + 68.6074) / 246.4815

实测拟合使用场景:

传感器 / 物理量 和 ADC 之间是线性关系

线性分压电路(电压分压、电阻分压)

线性传感器(4-20mA、0-10V、PT100、电流采样、压力传感器…)

带运放 / 放大电路的线性信号

0-10V 转 0-3.3V 这类衰减电路

任何输入→输出呈直线的系统

电压公式计算使用场景:

没有条件做实测校准,只能纯理论计算

刚画完板子,没实物

要求理论值,不要求精度

极低成本产品,不做校准

实测拟合与ADC理论公式代码特点:

理论计算:ADC → 电压

float voltage = (adc_val * 3.3f) / 4096.0f;

// 如果要物理量,继续 × 系数 ÷ 分压

float value = voltage / 0.2f;

实测校准:直接 真实值 = k*ADC + b

float real_value = adc_val * 0.00245f + 0.036f;

总结

不用算电压!不用管理论分压!不用管 3.3V/4096!

实测线性拟合 = 最准、最简单、单片机最常用

电路是线性分压 → 适用这个方法

http://www.jsqmd.com/news/615776/

相关文章:

  • 做Twitter还在手动操作?赛博云推帮你实现自动化引流+涨粉+霸屏全流程
  • 美团推荐算法研究员面试题精选:10道高频考题+答案解析(附PDF)
  • Vibe Coding 程序员何去何从?最大的价值是质疑能力
  • 2026精益管理哪家专业?TOP5机构核心能力全解析 - 优质品牌商家
  • Arduino极简协作式任务调度库SL_simpletask详解
  • 老旧温室改造实录:用纯PHP+原生WebSocket实现零依赖实时温控曲线可视化,成本直降63%
  • 2026年4月市面上门禁生产厂家,道闸维修/百胜车牌识别/百胜代理/小区人行门/门禁/翼闸/升降桩/监控,门禁企业选哪家 - 品牌推荐师
  • KL25Z平台锂电充电管理固件设计与MCP73831协同控制
  • 2026年国内计时记分系统梯队盘点:计时记分/篮球倒计时/篮球计时计分/自动升旗系统/自动颁奖升旗/赛车信号系统/选择指南 - 优质品牌商家
  • 沈阳路灯工厂名声
  • 大疆c板开发例程
  • 没有真正的兴趣,学再多也是在原地踏步
  • PHP容器化适配国产化不是选配,是刚需!2024Q3起所有新建政务系统强制要求:SM2/SM3/SM4全栈支持+麒麟V10 LTS基线+容器签名验签机制
  • ESP8266嵌入式MQTT Broker:uMQTTBroker轻量级实现与实战
  • 嵌入式步进电机驱动库:工程单位与低开销运动控制
  • 如何获取当前会话ID_SYS_CONTEXT与USERENV属性读取
  • 【2026年度盘点】告别代码片段:让 Claude 进化为全栈研发引擎的 10 款必装 MCP 插件
  • OpenClaw排错大全:Qwen3-4B接口超时与网关崩溃解决方案
  • 当AI能做一切,我们还剩下什么?
  • GLM技术复盘:篇论文深度解读智谱模型家族笆
  • 阿联酋科技创新研究院:单模型实现多视觉任务统一解决突破
  • android java多线程传递数据方式-----使用volatile
  • LeetCode hot100-114 二叉树展开为链表
  • MARG滤波器原理与嵌入式实现:基于Madgwick的姿态解算
  • 为什么看了那么多文档,还是不会做芯片设计?
  • 极客玩具:用OpenClaw+Gemma-3-12b-it控制智能家居的另类方法
  • GraalVM Native Image内存占用骤降68%?2026最新堆外内存调度策略与GC协同优化全披露
  • 浙大EMBA/MBA/iMBA/MEM/MPA报考难度排名:一次上岸2027需要提前知晓三个要点!
  • AI写论文软件哪个最好?精选7款AI论文生成神器,轻松掌握毕业论文!
  • Blynk WiFi配网管理器:多平台SoftAP一键配置方案