传感器数据采集:水压力传感器数值二次函数曲线拟合全过程

1、前言

最近在做一个水压力传感器数据采集,需要采集罐体的水压以求解罐体内部液位的高度。

2、准备工作

考克计一根、压力传感器2个
在这里插入图片描述

3、数据采集测试

首先用万用表测量了传感器输出的电压值
在这里插入图片描述
在echart里简单的进行数据的呈现后发现,这个传感器的输出并不是理想的y=ax+b线的,而是类似于图下“预计的曲线”的二次函数形式。
在这里插入图片描述

4、重新采集AD和液位数据,做二次曲线拟合

在这里插入图片描述
在2米的采集范围内较均衡的采集了3个测点。
使用https://www.osgeo.cn/app/sc284这个站点进行二次函数求解
在这里插入图片描述
求解后的到二次函数公式:
y = -0.00007545049750897281xx +4.233959224229593*x -782.6119430012119;

5、验证

使用Java代码进行简单验证

public class Testzkjn {
	public static void main(String[] args) {
		double x = 183;
		double y= 0;
		y = (double)(-0.00007545049750897281)*x*x + (double)(4.233959224229593)*x + (double)(-782.6119430012119);
		System.out.println(y);
	}
}

进行数据对比
在这里插入图片描述
可以看到误差值最大在12mm,最小在0.7mm左右。

6、验证传感器一致性

用同一块电路板安装另一个传感器进行测试
在这里插入图片描述
简单测量后,发现误差值和上一个传感器基本一致。

7、进一步提高精度的方法

采用更多次的曲线拟合,如5次、7次拟合,这样数据在曲线的粘合性上会更好,更贴服。
可以使用matlab进行5次方程的的计算、或者使用现成的Java多次拟合算法求解多次方程的常数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值