振南技术干货集:比萨斜塔要倒了,倾斜传感器快来!(5)

注解目录

1、倾斜传感器的那些基础干货

1.1 典型应用场景

(危楼、边坡、古建筑都是对倾斜敏感的。)

1.2 倾斜传感器的原理

1.2.1 滚珠式倾斜开关

1.2.2 加速度式倾斜传感器

1)直接输出倾角

2)加速度计算倾角

3)倾角精度的提高

(如果没看懂,振南教你个好办法:再看一遍。)

2、倾斜传感器温漂校准的基础知识

2.1 温漂产生的根源

(万物皆受温度影响。振南给你讲讲“调皮的尺子”。)

2.2 温漂的真实例子

(某项目的奇怪现象,一到中午数据就乱跳。亮一下壮观而精密的自动化校准装置。)

3、静态温控的实现与温补装置的迭代

3.1 制冷原理

(振南告诉你如何对传感器温漂校准。温度控制不难,但是不允许有振动,你作得到吗?)

3.2 静态温度控制

3.2.1 TEC 制冷

3.2.2 散热方案

3.2.3 倾角温补校准装置设计方案

3.2.4 多级 TEC 制冷

3.2.5 物理制冷

3.2.6 半导体制热

3.2.7 温控策略

3.2.8 多路温度的同步控制

(如何安静的制冷?TEC 及阵列、水冷、干冰、铝注冷技术、PTC、保温材料、比热容、热阻,还有温控算法,这些你应该了解一下。)

4、倾角校准与数据拟合

4.1 倾角校准装置的构成

4.2 倾角温补校准与数据拟合

4.3 分段校准的质疑

(多阶拟合算法,还有开源的 Polyfit 方案。来看看最终效果:温度乱舞,传感器却无波动。)

5、其它细节

5.1 真值的读取

5.2 规避震动干扰

5.3 克服地面不平问题

5.4 减震设计

(万事的成败在于细节。)

4

倾角校准与数据拟合

4.1 倾角校准装置的构成


先来看一下整套校准装置的总体框图,如图 16.38 所示。


图16.38 自动化倾角温补校准装置总体框图

图 16.38 中所包含的内容比较多,我们来梳理一下,如表 16.2 所列。


整套装置线缆比较多,从图 16.35 就可见一斑。

整个温控及校准操作都由上位机完成,振南开发的上位机软件如图 16.39 所示


图16.39 自动化倾角温补校准装置上位机软件

4.2 倾角温补校准与数据拟合


倾角温补校准的前提是先将每一个温区内的标准倾角与原始倾角的一系列的双轴倾角值采集到,具体流程如图 16.40 所示。

我们采集到的数据如图16.41所示(单独某个轴的数据)。

可以看到传感器的原始倾角值与标准倾角是一一对应的。在本章最前面振南讲过,校准的实质就是建立一张对应表固化到传感器中,这张表是很大的,所以我们才花了如此大的力气来做自动化温补校准装置。

有人可能会有一个疑问:“一个温度段对应于一张表,我采到一个原始倾角,就从表里查找相应的标准倾角,如图 16.42 所示。我采到的这个原始倾角应该不会正好落在表中的原始倾角上,那么它对应的标准倾角应该怎么取呢?按比例线性的取吗?”按比例线性取值是不合适的.更好的办法是对这些数据进行多项式拟合,这样可以构造出两点之间的数据趋势,依趋势取数将会使结果更接近于真值。

多项式我们选用 4 阶多项式,形如下式


到这里,有很多人都问过一个问题:“为什么要用 4 阶多项式来进行拟合?是不是阶数越高,拟合精度越高呢?”答案是否定的,我试过用5 阶,甚至更高阶多项式去拟合,结果反而是错

误的,也许这就是所谓的过拟合。其实多项式拟合,就是确定多项式的系数,使得倾角采样点在多项式曲线上的均方差最小。这样一个温度段的倾角对应表,就可以仅仅使用 5 个系数来表达了,这也非常适合于单片机的存储。实际计算校正后倾角的过程是.先采集温度,确定使用哪一个多项式,然后将采到的原始倾角代人到多项式中,最终得到校准后的倾角。这个倾角值应该是高精度的,而且比较稳定,不会随着温度变化而产生漂移。


图16.40 双轴倾角温补校准数据采集过程


图16.41 单独某轴的标准倾角与原始倾角值


图16.42 单独某轴的标

4.3 分段校准的质疑


以上所描述的其实是传感器的分段校准,是行业内普遍使用的方法。它在同一个温度段内,使用固定的一个多项式来计算。

对于这种方法我们的一个博士提出了质疑:“一个温度段都只用一个固定的多项式来计算,那在这个温度区间内还是消除不了温漂,最明显的就是在两个温区接缝的地方会产生跳跃!”

我说:“确实,其实这种方法是一种工程近似,只要这个接缝处的跳跃不大,我们姑且还是可以接受的。”

跳跃大不大.那得用数据来说话,所以我做了如下的实验,如图 16.43 所示。

请看下面的曲线.如图 16.44 所示。

博士是对的,我也承认,在各温区的交界处确实会产生温度跳跃。但是这个跳跃的幅度在士0.02°以内,对于一般的高精度需求是满足的。但是如果非要较这个真儿.非要求精度为十0.01°,甚至士0.005°或士0.002°,这就不行了。

我们需要为每一个温度点构造相应的拟合多项式,但这实际上是不现实的。就算我们的温控可以精确控制在每一个温度点上,整体的校准效率也难以忍受。切实可行的做法是,从每个温区固定系数的多项式衍生出每一个温度点的多项式。应该说这种方法一定是可行的,但


图16.43 固定角度全温段角度采集实验


图16.44 固定角度全温角度曲线

是这种衍生系数的算法我还没有深入研究。

博士也认为这是可行的,只是有一定的难度。他开始联合算法部的工程师在解决这个问题。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/160768.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

NC65 如何设置现金流量明细查询的查询框中核算账簿可多选??

NC65 如何设置现金流量明细查询的查询框中核算账簿可多选?? NC65 如何设置现金流量明细查询的查询框中核算账簿可多选??效果如下图 解决方案二开,即在 nc.ui.gl.cashflowcase.CashFlowDetailQueryUI 的 onButtonQuer…

周年纪念篇

一周年纪念! 凌晨逛手机版csdn时才突然发现已经错过一周年了,但我当闰年来纪念一下不过分吧hhh 浅浅的整些怀念的东西吧! 这是人生第一段代码:不是hello world写不起,而是纯爱单推人更有性价比。 有这段代码在&#x…

【汇编】Loop指令、段前缀

文章目录 前言一、Loop指令1.1 Loop指令是什么?1.2 他的条件是什么?1.3 例子示例1示例2 1.4 要点总结 二、段前缀2.1 为什么要引入他2.2 对策 总结 前言 在计算机编程的世界里,了解底层的硬件操作是提升程序员能力的关键一步。汇编语言作为一…

【用unity实现100个游戏之15】开发一个类保卫萝卜的Unity2D塔防游戏5(附项目源码,完结)

文章目录 最终效果前言简单绘制一下环境显示当前波数生成不同的敌人控制游戏运行速度游戏结束最终效果扩展源码完结最终效果 前言 本期是本项目的最后一篇,主要内容是配置环境、生成不同敌人、结束重开。 简单绘制一下环境 环境可以按自己喜好,去找一些瓦片,想怎么配置怎…

基于热交换算法优化概率神经网络PNN的分类预测 - 附代码

基于热交换算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于热交换算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于热交换优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神经网络…

电脑技巧:低配置的旧电脑也可以使用Win11系统了

目录 一、优点和适用场景 二、下载以及版本说明 三、安装说明 四、Tiny11 设置安装简体中文语言方法 Windows 11,作为微软最新一代操作系统,固然有其强大的功能和卓越的性能,但有时,更轻、更小、更快速的需求也在用户的考虑范…

LLM大模型权重量化实战

大型语言模型 (LLM) 以其广泛的计算要求而闻名。 通常,模型的大小是通过将参数数量(大小)乘以这些值的精度(数据类型)来计算的。 然而,为了节省内存,可以通过称为量化的过程使用较低精度的数据类…

某app c++层3处魔改md5详解

hello everybody,本期是安卓逆向so层魔改md5教学,干货满满,可以细细品味,重点介绍的是so层魔改md5的处理. 常见的魔改md5有: 1:明文加密前处理 2:改初始化魔数 3:改k表中的值 4:改循环左移的次数 本期遇到的是124.且循环左移的次数是动态的,需要前面的加密结果处理生成 目录…

[C/C++]数据结构 链表(单向链表,双向链表)

前言: 上一文中我们介绍了顺序表的特点及实现,但是顺序表由于每次扩容都是呈二倍增长(扩容大小是自己定义的),可能会造成空间的大量浪费,但是链表却可以解决这个问题. 概念及结构: 链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接…

halcon识别验证码,先训练后识别

识别验证码图片,使用halcon 21.05 下面代码识别准确率100% 目录 训练,图片打标签使用代码创建分类器;识别验证码,检验识别效果使用“助手”加载训练文件,加载训练分类器,察看收集的字符,训练识别…

Theory behind GAN

假如要生成一些人脸图,实际上就是想要找到一个分布,从这个分布内sample出来的图片像是人脸,分布之外生成的就不像人脸。而GAN要做的就是找到这个distribution。 在GAN之前用的是Maximum Likelihood Estimation。 Maximum Likelihood Estimat…

【C++】类和对象(5)--运算符重载

目录 一 概念 二 运算符重载的实现 三 关于时间的所有运算符重载 四 默认赋值运算符 五 const取地址操作符重载 一 概念 C为了增强代码的可读性引入了运算符重载,运算符重载是具有特殊函数名的函数,也具有其返回值类型,函数名字以及参数…

Android 13.0 Launcher3仿ios长按app图标实现抖动动画开始拖拽停止动画

1.概述 在13.0的系统rom定制化开发中,在对系统原生Launcher3的定制需求中,也有好多功能定制的,在ios等电子产品中 的一些好用的功能,也是可以被拿来借用的,所以在最近的产品开发需求中,需求要求模仿ios的 功能实现长按app图标实现抖动动画,接下来看如何分析该功能的实现…

基于静电放电算法优化概率神经网络PNN的分类预测 - 附代码

基于静电放电算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于静电放电算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于静电放电优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神…

【数据结构与算法】JavaScript实现双向链表

文章目录 一、双向链表简介二、封装双向链表类2.0.创建双向链表类2.1.append(element)2.2.toString()汇总2.3.insert(position,element)2.4.get(position)2.5.indexOf(element)2.7.update(position,element)2.8.removeAt(position)2.9.其他方法2.10.完整实现 三、链表结构总结3…

苍穹外卖--员工分页查询

请求参数封装: Data public class EmployeePageQueryDTO implements Serializable {//员工姓名private String name;//页码private int page;//每页显示记录数private int pageSize;}请求结果封装: public class PageResult implements Serializable {…

青岛数字孪生赋能工业制造,加速推进制造业数字化转型

随着企业数字化进程的推进,数字孪生技术逐渐在汽车行业得到广泛应用。5G与数字孪生、工业互联网的融合将加速数字中国、智慧社会建设,加速中国新型工业化进程,为中国经济发展注入新动能。数字孪生、工业物联网、工业互联网等新一代信息通信技…

Pattern Recognition投稿经验

文章目录 ManuscriptTitle PageHighlightsAuthor BiographyDeclarationSubmit 合作推广,分享一个人工智能学习网站。计划系统性学习的同学可以了解下,点击助力博主脱贫( •̀ ω •́ )✧ 停更了大半年,近期终于完成了论文投稿,趁…

基于人工电场算法优化概率神经网络PNN的分类预测 - 附代码

基于人工电场算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于人工电场算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于人工电场优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要:针对PNN神…