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

注解目录

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 减震设计

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

从事电子这一行很多年,有两三年的时间接触传感器比较多,包括各种传感器,比如温湿度、应变、拉力等,会涉及传感器的应用,也会有研发。我发现在诸多传感器中,有一种传感器需求量很大,而且要求很高,它就是倾斜传感器。顾名思义,它是用来测量物体的倾斜角度的.功能很单一,但是要把它做好却并非易事。我足足花费了近两年时间来研究它,最终称得上小有成果。本章,振南就对倾斜传感器及其研发历程进行详细的介绍。

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

很多行业都会有倾斜测量的需求,很多人也都在研发倾斜传感器。振南开宗明义.先把我所了解的一些基础的内容告诉大家。

1.1 典型应用场景


基本上所有直接或间接对倾斜敏感的监测场景都是适用的。比如危楼、桥梁、水平结构、边坡、地基、古建筑、风电塔筒等,如图 16.1所示。我们可以理解为:任何物体姿态的变化,一


图 16.1倾斜传感器的一些典型应用场景

定会引起其位置角度的变化,从这种意义上说,倾斜传感器的需求空间是巨大的。

1.2 倾斜传感器的原理


倾斜测量有很多种实现原理,比如摆式、滚珠式、加速度式等。其中最常见的是滚珠式和加速度式,后者又可分为单轴、双轴,同时基于加速度计算倾角可以实现大量程、高精度和高可靠性,所以在很多要求较高的场合.加速度倾斜传感器基本都是首选。

1.滚珠式倾斜开关

很多时候我们也许并不需要知道物体倾斜的确切度数,而只是想知道它是否发生过位移。比如桌子上的箱子是否有人抱走,或者下水道井盖是否被人撬开。此时使用倾斜开关是比较合适的方案,成本低,应用简单。

倾斜开关的原理非常简单,如图 16.2 所示。


图 16.2 水银式与滚珠式倾斜开关

当倾斜开关倾斜到一定角度时,其内部的水银产生流动或金属滚珠发生滚动,将两个电极接通,开关即闭合。根据不同的倾角阙值,倾斜开关可分为不同的规格,如 5°、10°、20°等。

2.加速度式倾斜传感器

这类传感器较倾斜开关要复杂,它们的基本原理是对倾斜过程中重力在其各个轴上的分量进行计算,进而得到单轴或双轴的精确倾斜角度。

(1) 直接输出倾角

有一些 MEMS 芯片内部已经完成了加速度到倾角的计算,它们会通过数字或模拟接口直接输出倾角结果,这使我们的开发变得比较简单,经典的芯片如图 16.3 所示(希望能为大家芯片选型提供参考)。

(2) 加速度计算倾角

相较于上面介绍的直接输出倾角的几款芯片,3 轴加速度计更加流行,选型空间更大,各大芯片厂商基本上都推出了自己的 MEMS 芯片,比如 ADI的ADXL345、ST 的 LIS3DHH、村田的 SCA3300飞思卡尔的 MMA8451 等。这样,开发者可以根据自己产品的精度和成本,选择合适的芯片。

3 轴加速度计可以感知 XYZ3 轴上的加速度,当其静止时,3 个轴的加速度矢量和即为重力加速度 g。基于这样的一个基本原理,我们可以通过 3 轴加速度计算倾角,再加上一些更深层的算法、数据处理和校准方法,就可以让倾角达到很高的精度。这些就是本章着重要讲的内容。


图 16.3 直接输出倾角的传感器芯片(SCA103、SCA3300 与SCA60C)

那到底如何来计算倾角呢?其实在写这一节之前,振南考虑了很久,如何将计算倾角的方法讲得足够通俗。我看了很多网文.讲得很专业.什么归一化、单位向量、参考向量,一下把我们拉回到了线性代数的年代,但是不够接地气。我试图用我酝酿已久的方式给大家讲解,如图 16.4 所示。


图16.4 传感器绕Y 轴倾斜一定角度

首先传感器水平放置,此时 Z 轴的加速度az=g。随后我们将其绕Y 轴倾斜一定角度a此时 g 将在X 轴上产生分量ax,当然 az 也会随之变化。很明显Y 轴上不会有分量,所以 ay=0,因为传感器未绕 X 轴产生倾斜,则


同理,如果绕 X 轴倾斜一定角度 β,则


a 和β 就是由 3 轴加速度计算得到的双轴倾角。但上面所说的只是特例,即传感器仅绕着 X 或Y 来倾斜。如果是同时绕着 X 和Y 倾斜呢?此时,上面的式子就需要推广了。



这就是 3 轴加速度计算双轴倾角的最终的公式了,希望这种讲解方式,能够有助于大家的理解。(好吧,可能大家还是没有看懂。那我教你一个好办法,那就是再看一遍。)

(3) 倾角精度的提高

倾角精度的提高其实是一个系统工程,这里先从数据采集方面讲一下如何提高倾角精度倾角计算依赖于 3 轴加速度,因此传感器芯片的优劣直接影响倾角精度。开发者要根据精度需求,比如士0.1或士0.01°,来选择不同等级的芯片,当然这也意味着不同的成本投入。有人会问不同的芯片到底差别在哪? 从我的经验来说,噪声密度是一个重要指标,从宏观上可以认为它是芯片输出加速度数据的波动性或不稳定性。我们当然希望噪声密度越低越好。通常我们并不会用单点瞬时的加速度去直接计算倾角,而是会采集一段数据,经过一些滤波算法的处理,以使数据更加稳定,最常用的就是均值滤波。振南实际用的是基于预排序的均值算法。如图 16.5 所示。


图16.5 对采集的原始加速度数据进行排序取中段均值

到这里,关于倾斜传感器的基础知识就讲得差不多了。基于这些知识,我们起码可以研制出一个可用的传感器产品了。但是真正的挑战远不止于此,请继续往下看。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ubuntu中cuda12.1配置(之前存在11.1版本的cuda)(同时配置两个版本)

ubuntu中cuda12.1配置 由于YOLOv8项目中Pytorch版本需要cuda12.1版本 在官网下载12.1版本的deb包 官网地址 sudo dpkg -i cuda-keyring_1.0-1_all.deb sudo apt-get update sudo apt-get -y install cuda然后需要修改bashrc文件(隐藏文件) 添加 exp…

操作系统OS/存储管理/内存管理/内存管理的主要功能_基本原理_要求

基本概念 内存管理的主要功能/基本原理/要求 **内存管理的主要功能: ** 内存空间的分配与回收。由操作系统完成主存储器空间的分配和管理,使程序员摆脱存储分配的麻烦,提高编程效率。地址转换。在多道程序环境下,程序中的逻辑地…

什么是游戏盾?怎么进行防护?

一.德迅游戏盾(抗D盾)概述 1.抗D盾是针对游戏行业推出的高度可定制的网络安全解决方案,可以针对大型DDoS攻击(T级别)进行有效防御,同时能彻底解决游戏行业特有的TCP协议的CC攻击问题。 2.抗D盾是新一代的智能分布式云接入系统&a…

Centos7.9用rancher来快速部署K8S

什么是 Rancher? Rancher 是一个 Kubernetes 管理工具,让你能在任何地方和任何提供商上部署和运行集群。 Rancher 可以创建来自 Kubernetes 托管服务提供商的集群,创建节点并安装 Kubernetes,或者导入在任何地方运行的现有 Kube…

vue3别名配置(vite)

1、配置别名的优点: 在VUE项目中import导入文件时,可以写相对路径. 2、在vite.config.js中配置 a. 首先引入path import path from "path"/* */ b.在resolve添加别名,例如: alias:{"~":path.resolve(__di…

vscode终端npm install报错

报错如下: npm WARN read-shrinkwrap This version of npm is compatible with lockfileVersion1, but package-lock.json was generated for lockfileVersion2. Ill try to do my best with it! npm ERR! code EPERM npm ERR! syscall open npm ERR! errno -4048…

水库大坝安全监测预警系统的重要作用

水库大坝建造在地质构造复杂、岩土特性不均匀的地基上,在各种荷载的作用和自然因素的影响下,其工作性态和安全状况随时都在变化。如果出现异常,又不被及时发现,其后果不堪设想。全天候实时监测,实时掌握水库水位、雨情…

使用Tauri开发桌面应用

本文是对视频 Tauri入门教程[1]的学习与记录 Tauri官网[2] 对 node版本有要求 创建项目及目录介绍: 项目的目录结构如下 可以安装推荐的插件 执行npm run tauri build出错,根据 https://github.com/tauri-apps/tauri/issues/7430 执行 yarn add -D tauri-apps/cli && y…

Mistral 7B 比Llama 2更好的开源大模型 (三)

Mistral 7B 比Llama 2更好的开源大模型 Mistral 7B是一个70亿参数的语言模型,旨在获得卓越的性能和效率。Mistral 7B在所有评估的基准测试中都优于最好的开放13B模型(Llama 2),在推理、数学和代码生成方面也优于最好的发布34B模型(Llama 1)。Mistral 7B模型利用分组查询注…

C++初阶--内存管理

文章目录 内存分布new/delete基本用法malloc/free和new/delete的区别进一步理解new和delete的实现原理 定位new(了解) 内存分布 栈(stack):栈是由编译器自动管理的内存区域,用于存储局部变量,函…

Jenkins插件安装失败时这么做就搞定啦

1.网络或墙的问题导致插件下载安装失败 这种错误提示很明显,就是无法连接到插件下载地址,导致插件下载失败。 解决方法 为Jenkins更换源 点击Jenkins主页面左侧列表中【系统管理】—— 下拉找到【管理插件】 选择【高级】选项卡 替换最下方【升级站点…

《变形监测与数据处理》笔记/期末复习资料(择期补充更新)

变形: 变形是物体在外来因素作用下产生的形状、大小及位置的变化(随时间域和空间域的变化),它是自然界普遍存在的现象。 变形体: 一般包括工程建筑物、构筑物、大型机械设备以及其他自然和人工对象等。 变形体和变形…

计算机视觉+深度学习+机器学习+opencv+目标检测跟踪+一站式学习(代码+视频+PPT)

第1章:视觉项目资料介绍与学习指南 相关知识: 介绍计算机视觉、OpenCV库,以及课程的整体结构。学习概要: 了解课程的目标和学习路径,为后续章节做好准备。重要性: 提供学生对整个课程的整体认识&#xff0…

订水商城实战教程10-宫格导航

上一篇我们介绍了跑马灯的功能,这一篇就进入到我们的主体部分开发。在订水商城业务中可以按照分类查询商品信息,这就涉及到数据源的拆分。 我们在数据源的设计中区分为主子表,主表呢存储唯一的记录,子表的记录可以重复&#xff0…

Servlet---从创建项目到部署项目的整个流程

文章目录 创建项目引入Servlet依赖创建目录结构编写代码打包程序部署程序验证程序 创建项目 引入Servlet依赖 为什么需要引入依赖资源呢? Servlet不是标准库自带的,需要从外部引入进来才能使用。如何引入? 利用maven,maven的一个…

锐捷软件开机自启动

http://t.csdnimg.cn/h6k9R win键搜索任务计划程序 打开,在windows创建任务:

干货分享!各大跨境电商平台入驻指南及跨境电商实用工具推荐!

当跨境电商成为一个所有人都耳熟能详的名词,各类跨境电商平台和软件都一拥而上,跨境电商平台和工具千千万,那么很多人就在问了,该怎么入驻这些电商平台呢?又该选择什么样的跨境电商软件呢?今天这期干货分享…

0x80070002错误代码要怎么解决?修复0x80070002的方法

0x80070002错误代码,这个系统更新相关的错误,经常在进行系统备份或更新时出现,打乱了我们的步调。为了帮助大家解决问题,本文将探讨该错误0x80070002产生的原因,提供详细的解决步骤,并分享预防措施。 一.0x…

Elasticsearch:Lucene 中引入标量量化

作者:BENJAMIN TRENT 我们如何将标量量化引入 Lucene。 Lucene 中的自动字节量化 虽然 HNSW 是一种强大而灵活的存储和搜索向量的方法,但它确实需要大量内存才能快速运行。 例如,查询 768 维的 1MM float32 向量大约需要 1,000,000*4*(7681…

MCAL实战三(S32K324-NXP EB tresos Port驱动配置详解)

一、前言 PORT驱动初始化就是对微控制器(MCU)的整个PORT模块进行初始化配置。很多端口和管脚被分配有多种不同的功能,即可以进行引脚功能复用,比如通用I/O、模数转换、脉宽调制等功能。因此,对PORT必须有一个整体的配置和初始化,对各管脚的具体配置和使用取决于微控制器和…