振南技术干货集:比萨斜塔要倒了,倾斜传感器快来!(2)
注解目录
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 减震设计
(万事的成败在于细节。)
倾斜传感器温漂校准的基础知识
2.1 温漂产生的根源
我们知道任何物体都会或多或少的受到温度变化的影响,比如最普遍的热胀冷缩。传感器是基于物理材料制成的,所以从严格意义上来说,任何传感器都会产生温漂,即反映实际物理量的值随着温度变化而产生漂移。
关于传感器的温漂,我曾经做过一个讲座,名为《大话温补与温控》,算是把“温漂”比较通俗地进行了阐述,下面是讲座的一些核心内容。
个例子:《调皮的尺子》。
我们用尺子去测量长度,你量得准或是不准,真值就在那里,不长不短。但是在不同的温度下。尺子的示数可能是不同的,因为尺子会热胀冷缩,如图 16.6 所示。
图16.6 温度的变化使得尺子对长度测不准
也许你会说,这点温漂几乎可以忽略不计吧。确实,如果你的精度要求不高,温漂是可以无视的。但是很多应用场合下较得就是这个真儿,差一丝都不行。比如建筑物或边坡的倾斜,其实它们的倾斜量都是非常微小的,1年顶多倾斜0.1,但是如果倾斜传感器的温漂误差就有 0.几°,那基本上就把真值淹没了。
既然有温漂的存在,那我们如何能把物理量采准呢?
“调皮的尺子”有它的规律:每当-25C时,我们用它去测量 1000 um 的距离一定会示数 1003.1 um。所以,当我们看到 1 003.1 um 时,我们就知道实际是 1 000 pm(-25C)了。
那就出现一个问题:-25C时,测量 2 000 um 的距离,它会示数多少? 2 003.1 um? 2 006.2 um?都不是!因为在此温度下尺子的刻度变化可能是非线性的,不能依比例推算。那怎么办呢?
最笨的方法:在某一个温度下,我们记录下每个距离和与之对应的尺子示数,形成表格。以后测量的时候,拿着当前温度和尺子示数,去表里查它所对应的实际值是多少,如图 16.7 所示。
图16.7 各温度下示数与实际值的对应表
方法很简单,但是要编制这个表却不容易。
2.2 温漂的真实例子
当时,讲座讲到这里.有人问了一个问题.“就说倾斜传感器,温漂能对它产生多大的影响?举实际例子说一下。”我现场登录公司的 IOT 平台,找了几个实际项目在用的倾斜传感器,如图 16.8 所示。
图16.8 倾斜传感器在每天特定时间段产生尖峰
上图中的 3 个领斜传感器都是实际安装在平地上的,用于监测边坡地灾。每天在中午都会产生尖峰,这个波动范围大约是 0.0 几。难道说每天一到中午平地就会有微震?这显然是不符合逻辑的,其根本原因就是温漂。
现场有人进行了反驳,从 IoT 平台上找到了几个中午时段没有尖峰的例子
“请给我解释一下?”
“这些传感器应该没有被太阳直晒吧?有树荫遮着?”
项目总监此时说:“确实,这几处传感器都在林子里,上面有波动的传感器是直晒的。”
这下大家信服了。
项目上使用的倾斜传感器很明显是没有经过温漂校准的(也叫温度补偿,简称温补)。我们多么希望传感器不受温度等外界因素的影响,而直接输出稳定、可信、真实的示数啊!这就是我们追求的“理想传感器”。谁的产品越接近理想传感器,谁就越具有竞争力。
我们将上面所说的这张表内置到传感器中,使其输出依温度与原始示数查表之后的值传感器即向所谓的“理想传感器”迈进了一大步。
这张表是很庞大的,靠人工编制效率极低。我们要寻求更高效的方案,最好是无人参与的、全自动化的,如图 16.9 所示。
图16.9 北微倾斜传感器的自动化校准装置
北微传感的这套倾角自动化校准装置是委托中航工业研制的,用我们项目总监的话说“高品质产品的背后一定需要有雄厚的工业基础,我们简直就是小米加步枪。”
OK,终于引出了“倾角自动化校准装置”,振南研究倾斜传感器的近 1 年的时间,其实主要精力就在这套东西上,它是倾斜传感器达到真正意义上的高精度的核心。
相关文章:

振南技术干货集:比萨斜塔要倒了,倾斜传感器快来!(2)
注解目录 1、倾斜传感器的那些基础干货 1.1 典型应用场景 (危楼、边坡、古建筑都是对倾斜敏感的。) 1.2 倾斜传感器的原理 1.2.1 滚珠式倾斜开关 1.2.2 加速度式倾斜传感器 1)直接输出倾角 2)加速度计算倾角 3)倾角精度的提高 (如果…...

图形学 -- Geometry几何
隐式 implicit 基于给点归类,满足某些关系的点 缺点:不规则表面难以描述! algebraic surface 直接用数学公式表示:不直观! Constructive Solid Geometry(CSG) 用简单形状进行加减 distance …...

opencv中边缘检测的方法
在OpenCV中,边缘检测的方法主要有以下几种: Sobel算子: Sobel算子是边检测器,它使用33内核来检测水平边和垂直边。Sobel算子有两个,一个是检测水平边缘的,另一个是检测垂直边缘的。在OpenCV中,…...

DigitalVirt 洛杉矶 CMIN2 VPS 测评
发布于 2023-07-16 在 https://chenhaotian.top/vps/digitalvirt-us-cmin2/ 官网链接(含AFF):https://digitalvirt.com/aff.php?aff459 美国西海岸 四网回程 CMIN2 移动新线路。 晚高峰延迟 165ms 左右,不丢包,非常…...

Qt DragDrop拖动与放置
本文章从属于 Qt实验室-CSDN博客系列 拖放操作包括两个动作:拖动(drag)和放下(drop或称为放置)。 拖动允许 对于要拖出的窗口或控件,要setDragEnabled(true) 对于要拖入的窗口或控件,要setAcceptDrops(true) 下面以一个具体的用例进行说…...

thinkphp8 多级控制器调用
在使用这个目录的时候正常访问时 http://tp.com/index.php/user2.login/index, 这个多级目录时不允许使用的,想要使用就的使用路由 在route/app.php 里面配置:Route::get(user2/login,user2.Login/index); 第一个参数时外部访问参数,第二个是…...

设计测试用例的6种基本原则
设计测试用例的基本原则,对于软件测试非常重要,这些原则有助于设计出高质量、全面、有效的测试用例,从而提高软件测试的效率和准确性,维护软件的质量和稳定。如果在设计用例时没有遵循基本原则,这会影响用例的全面性、…...

java的Exception.getMessage为null
之前捕获异常后调用异常的getMessage写日志,日志写的竟然是null,不可思议。发现要调用异常的getCause().getMessage()才能得到异常信息 刻意把密码改错,让异常直达界面,免得有问题时候只能猜...

EXTI (2)
增强版实验简介 EXTI5和EXTI9共享一个中断源 下面的类似 EXTI0到4各自拥有一个中断源 改变引脚 PA0和PA1改变为PA5 和PA6 EXTI的重映射 之前是把PA0映射到EXTI0 PA1映射到EXTI1上 现在是要把PA5和PA6分别映射到EXTI5和6上 EXTI进行初始化 NVIC初始化 编写中断函数 因为EXTI…...

Django实战项目-学习任务系统-任务完成率统计
接着上期代码内容,继续完善优化系统功能。 本次增加任务完成率统计功能,为更好的了解哪些任务完成率高,哪些任务完成率低。 该功能完成后,学习任务系统1.0版本就基本完成了。 1,编辑urls配置文件: ./mysi…...

安卓调用手机邮箱应用发送邮件
先来看看实现效果: 也不过多介绍了,直接上代码: private void openMail() {Uri uri Uri.parse("mailto:" "");List<ApplicationInfo> applicationInfoList getPackageManager().getInstalledApplications(Packa…...

Vue-Pinia
目录 Pinia状态管理库 使用步骤 1、安装Pinia 2、在vue应用实例中使用pinia 3、在src/stores/token.js中定义stores 4、在组件中使用store axios请求拦截器 代码实现 Pinia状态管理库 Pinia是Vue的专属状态管理库,它允许你跨组件或页面共享状态 一般在登录时…...

C语言,编写程序输出半径为1到15的圆的面积,若面积在30到100之间则予以输出,否则,不予输出
以下是一个使用C语言编写的程序,用于输出半径为1到15的圆的面积,并且如果面积在30到100之间,则输出该圆的半径和面积。 #include <stdio.h> #define PI 3.14159265358979323846int main() {int radius;double area;for (radius 1; ra…...

Ansys Electronics Desktop仿真——HFSS线圈寄生电阻,电感
利用ANSYS Electronics Desktop,可在综合全面、易于使用的设计平台中集成严格的电磁场分析和系统电路仿真。按需求解器技术让您能集成电磁场仿真器和电路及系统级仿真,以探索完整的系统性能。 HFSS(High Frequency Structure Simulator&#…...

对数据库密码使用MD5加密算法加密,并进行登录验证
实现步骤: 修改数据库中明文密码,改为MD5加密后的密文 打开employee表,修改密码 修改Java代码,前端提交的密码进行MD5加密后再跟数据库中密码比对 打开EmployeeServiceImpl.java,修改比对密码 /*** 员工登录** param …...

关于Chrome中F12调试Console输入多行
在chrome 浏览器中使用console调试的时,如果想在console中输入多行代码,需要进行换行。 这时我们可以使用 [ Shift Enter ] 。也叫: 软回车。...

C# 集合用法介绍
在C#中,集合是一种特殊的数据类型,允许我们将多个元素组织在一起。这些元素可以是相同的类型或者可以是不同的类型。C#集合主要包括以下几种类型: List:它是一个有序的元素列表,用户可以添加、删除或查找元素。Dictio…...

linux三次握手、四次挥手
TCP协议是一个安全的、面向连接的、流式传输协议,所谓的面向连接就是三次握手,对于程序猿来说只需要在客户端调用connect()函数,三次握手就自动进行了。先通过下图看一下TCP协议的格式,然后再介绍三次握手的具体流程。 1.tcp协议…...

C# 泛型介绍
C# 中的泛型(Generics)是一种强类型参数化的特性,它允许你编写不具体指定数据类型的代码,而在实际使用时再指定具体的类型。泛型的引入使得代码更加灵活、可重用,并提高了类型安全性。 C#泛型基本用法 以下是一个简单…...

Windows如何正确设置PHP环境变量以在Git Bash中运行命令
1、随便找一个目录,鼠标右键打开git bash here 2、cd的根目录 3、找到php安装目录 4、 在根目录下打开 vim .bash_profile ,添加环境变量,php地址根据自己的本地地址而定 PATH$PATH:/d/phpstudy_pro/Extensions/php/php7.3.4nts 添加后保存…...

[代码实战和详解]VGG16
VGG16 详解 我的github代码实现:vgg16 我们在vgg16神经网络上训练了SIGNS数据集,这是一个分类的数据集,在我的github上有介绍怎么下载数据集以及如何训练。 VGG16是一个卷积神经网络(CNN)架构,它在2014年…...

x3daudio1_7.dll错误:解决方法和丢失原因及作用
x3daudio1_7.dll是Windows操作系统中的一个动态链接库(DLL)文件,主要作用是为DirectX音频提供支持。DirectX是微软推出的一套多媒体应用程序开发接口,广泛应用于游戏、多媒体制作等领域。x3daudio1_7.dll文件包含了许多与三维音频…...

pipeline + node +jenkins+kubernetes部署yarn前端项目
1、编写Dockerfile文件 # Set the base image FROM node:16.10.0# WORKDIR /usr/src/app/ WORKDIR /home/option# Copy files COPY ./ /home/option/# Build arguments LABEL branch${BRANCH} LABEL commit${COMMIT} LABEL date${BUILD_DATE} ARG ENV# Set ENV variables ENV …...

计算机网络中的面向连接与无连接
目录 面向连接和无连接在计算机网络中是如何理解的面向连接和无连接的通信在路由选择上有哪些区别 面向连接和无连接在计算机网络中是如何理解的 在计算机网络中,面向连接和无连接是两种核心的网络通信方式,它们决定了数据包如何传输和接收。 面向连接&…...

EventEmitter3在vue中的使用
前提 vue中的组件传递方式有很多,包括父子组件之间的传值(props,emit)、事件总线($ bus)、状态管理模式(vuex,pinia),现在推荐一种可以替代$bus的一种传值方…...

双剑合璧:基于Elasticsearch的两路召回语义检索系统,实现关键字与语义的高效精准匹配
搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排精排重排混排)、系统架构、常见问题、算法项目实战总结、技术细节以及项目实战(含码源) 专栏详细介绍:搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排精排重排混排)、系统架构、常见问题、算法项目实战总结、技术…...

LeetCode34-34. 在排序数组中查找元素的第一个和最后一个位置
🔗:代码随想录:二分查找的算法讲解:有关left<right和left<right的区别 class Solution {public int[] searchRange(int[] nums, int target) {int nnums.length;int l0,hn-1;if(numsnull){return null; }if(n0){return new int[]{-1,-1}; }if(target&l…...

ddrnet 分割学习笔记
目录 修改后可以加载预训练: 训练自己的数据代码: 默认分割后特征下采样8倍,最后用上采样恢复到原图; 修改后可以加载预训练: import math import torch import numpy as np import torch.nn as nn import torch.nn.functional as F from torch.nn import init from …...

Outlook关闭过去事件的提醒
Outlook关闭过去事件的提醒 故障现象 最近Outlook中推出的新功能让我们可以选择自动关闭过去事件的提醒。 目前这个功能暂时只向当月通道的Office 365 订阅者发布。 这些用户升级到1810版本后,可以在不想收到已发生事件提醒的时候通过下面的步骤自动忽略过去事件…...

git 简单入门
git init touch test.txt git add test.txt git commit -m 初始化 仓库 git log //查找日志 git checkout -b dev //创建并切换dev分支 git branch // 查找分支 此时有master 和 dev分支, 此时在dev分支 dev分支也有test.txt文件 vim test.txt //写入dev …...