IMU&GPS融合定位::加速度计基本原理

2023-05-16

加速度计基本原理


核心:牛顿第二定律 F=ma


一、mems加速度计基本原理

 加速度计基本结构如上图,由上电容、中电容板(可移动)、下电容板等组成;当加速度达到一定值后,中电容板会移动,与上、下电容板的距离就会变化,上、下电容因此变化。电容变化跟加速度成比(如下面公式),通过对输出电压数字处理后,输出数字化信号。

电路公式推导如下:

(1)由平行极板电容基本公式:C=\frac{\varepsilon_0 A}{d}

得到上下极板与移动板构成的电容大小与位移量的关系如下:

(2)从右图的电路示意图可得:

对于两个电容串联,电容分压公式:

设总电压是U,C1、C2上的电压分别是U1、U2,则

U1=C2*U/(C1+C2)

U2=C1*U/(C1+C2)

对于两个电容串联,公式演变为: Vs=\frac{C_{s1}-C_{s2}}{C_{s1}+C_{s2}}V_m

其中,vm为输入电压

(3)由(1)(2)得到的公式,可以写出:

 (4)根据牛顿第二定律、胡克定律

 (5)整理得,加速度与输出电压有如下关系:

 以上摘自:惯性导航之MEMS加速度计原理


二、加速度计与坐标系

1、想象加速度计内部为一个圆球在一个方盒子中

如果盒子不受重力场或其他力场的影响,那么球将处于盒子正中央。

下面给XYZ+-共6个方向分配一个测量压力的单元,如果盒子以加速度g突然向左移动(如下图),那么球将撞上X-墙,X-墙测得压力,X轴输出值-1g

 2、现在假设模型受到重力场的影响,那么球会落在Z-面上,Z轴测得-1g,在这种情况下盒子没有移动但我们任然读取到Z轴有-1g的值

 3、以上模型是加速度计的基本模型,关于合加速度与三个轴的夹角关系如下分析:

 设合加速度方向的矢量为R,各个轴上的分量分别为Rx,Ry,Rz,则有:

\left\{\begin{matrix} cos(\angle xr)=\frac{R_x}{R}\\ cos(\angle yr)=\frac{R_y}{R}\\ cos(\angle zr)=\frac{R_z}{R} \end{matrix}\right.

所以,有:

\left\{\begin{matrix} \angle xr=arccos(\frac{R_x}{R})\\\angle yr=arccos(\frac{R_y}{R})\\\angle zr=arccos(\frac{R_z}{R}) \end{matrix}\right.

 摘自:A Guide To using IMU (Accelerometer and Gyroscope Devices) in Embedded Applications.


 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

IMU&GPS融合定位::加速度计基本原理 的相关文章

  • STM32标准库、HAL库特点与应用

    新手在入门STM32的时候 xff0c 一般大多数都会选用标准库和HAL库 xff0c 而极少部分人会通过直接配置寄存器进行开发 对于刚入门的朋友可能没法直观了解这些不同开发发方式彼此之间的区别 xff0c 本文试图以一种非常直白的方式 x
  • 下载并构建PX4

    根据官方的文档 xff0c PX4下载和构建的方式有两种 xff1a Linux系列的Console模式 xff08 当然也支持Windows下的MINGW32 xff09 和Windows模式 在Windows平台下 xff0c 我们习惯
  • C++字符串完全指南

    C 43 43 字符串完全指南 Win32字符编码 xff08 一 xff09 前言 字符串的表现形式各异 xff0c 象TCHAR xff0c std string xff0c BSTR等等 xff0c 有时还会见到怪怪的用 tcs起头的
  • Java:面试题

    1 什么是Java虚拟机 xff1f 为什么Java被称作是 平台无关的编程语言 xff1f 答 xff1a Java虚拟机是一个可以执行Java字节码的虚拟机进程 Java源文件被编译成能被Java虚拟机执行的字节码文件 虚拟机是一种抽象
  • 冒泡排序和选择排序的异同

    冒泡排序和选择排序十分相似 xff1a 相同点 xff1a 1 两层for循环的for xff08 xff09 是一样的 2 每趟比较完之后都会找到一个最大数 不同点 xff1a 冒泡排序每趟比较都会交换 xff0c 而选择不会交换 因此
  • 内部类与外部类变量同名时,如何在内部类中引用外部类变量?

    http webservices ctocio com cn wsdev 12 9021512 1 shtml 注意实现四 xff1a 使用this关键字获取内部类与外部类对象的引用 在外部类和成员内部类中 xff0c 都可以定义变量 成员
  • 失败程序员的十年总结

    十年到底有多长 xff1f 当我回顾过去的十年 xff0c 发现好短 xff0c 可以讲的事情没有几件 xff0c 而且都是坏事 xff1b 当我畅想未来的十年 xff0c 感觉又好长 xff0c 不知道路怎么走 自从2010年毕业到现在已
  • 视觉惯性里程计Visual–Inertial Odometry(VIO)概述

    周围很多朋友开始做vio了 xff0c 之前在知乎上也和胖爷讨论过这个问题 xff0c 本文主要来自于知乎的讨论 来自https www zhihu com question 53571648 answer 137726592 个人理解错误
  • Vue Admin Pro 环境搭建

    Vue Admin Plus 最近无法安装依赖 查看资料 xff0c 发现项目被作者投毒 其中chalk next chokidar next vue plugin rely 三个插件有删除项目文件的操作 一 安装项目依赖 1 全局安装 c
  • 02 本机搭建kubernetes学习环境kubemini

    文章目录 1 什么是容器编排 xff1f 2 什么是 Kubernetes xff1f 2 1 Kubernetes 到底能够为我们做什么呢 xff1f 3 什么是 minikube4 如何搭建 minikube 环境4 1 minikub
  • QT入门

    1 介绍 pro文件 QT 43 61 core gui QT包含的模块 xff0c core和gui xff0c 可以在这里添加其他模块 greaterThan QT MAJOR VERSION 4 QT 43 61 widgets gr
  • STM32移植lwip之建立web服务器 linux下的web服务器搭建

    stm32作为web服务器 完善底层网络接口层的驱动程序 并将LwIP协议栈移植到 C OS 操作系统上来 结合网络技术 使用LwIP的应用程序接口程序LwIP API编写相关的HTTP应用程序 在应用程序中 嵌入式web服务器会处理来自浏
  • 数据结构链表适用于单片机吗?不适用为什么?

    链表的索引比较复杂 而单片机 致力于高效率 控制领域 链表是如何进行索引的 xff1f
  • can数据和串口数据同时到来,设置的can优先级比串口高那么串口数据将丢失 异步接收?

    单片机两个串口同时有数据到来 用复杂一点的 数据结构 队列解决这个问题 环形缓冲区 xff1f xff1f 接收到的数据放到一个二维数组中 xff0c 接收一帧往数组中增加一帧 xff0c 然后处理一帧丢弃一帧 增加和丢弃 用数组下标表示
  • static修饰的函数是可以被其他文件使用的

    static修饰的函数是可以被其他文件使用的 static修饰的函数不能被其他文件直接使用 xff0c 这是和普通函数的区别 xff0c 但是可以用过其他方式调用 1 在文件中定义一个对外提供的函数 xff0c 该函数在内部调用static
  • 全双工的硬件要求

    全双工的每一端都设置了发送器和接收器 xff0c 因此能控制数据同时在两个方向进行传输 无线通信要想实现全双工 需要接受和发送不在同一频段 xff1f xff1f
  • stm32读取raM中的数据并口?

    并行通信接口 8080 8060
  • 学习单总线 找一个单总线通信例程

    单总线的时钟 时序 单总线的数据传输 http t csdn cn jOPNW
  • 从源程序到可执行文件的四个过程

    E选项 xff1a 提示编译器执行完预处理就停下来 xff0c 后边的编译 汇编 链接就先不执行了 S选项 xff1a 提示编译器执行完编译就停下来 xff0c 不去执行汇编和链接了 c选项 xff1a 提示编译器执行完汇编就停下来 o选项
  • 32单片机逻辑开发 时间片的作用 留出更多的时间给重要的任务去占用CPU

    32单片机逻辑开发 时间片的作用 留出更多的时间给重要的任务去占用CPU 重要的任务10ms执行一次 不重要的任务100ms 或者500ms执行一次

随机推荐

  • Dockerfile镜像参数说明

    Dockerfile镜像参数说明 1 最小的镜像 镜像是 Docker 容器的基石 xff0c 容器是镜像的运行实例 xff0c 有了镜像才能启动容器 hello world 最小的镜像 hello world 是 Docker 官方提供的
  • stm32系统定时器的作用

    stm32系统定时器的时钟源是那个 xff1f 系统定时器 xff0c 又称滴答定时器 xff0c 在使用OS xff08 操作系统 xff09 时 xff0c 其主要作用是为OS提供中断信号 xff0c 让OS执行任务调度 xff0c 当
  • 现场总线网络一般只实现了第1层(物理层)、第2层(数据链路层)、第7层(应用层)。

    现场总线网络一般只实现了第1层 物理层 第2层 数据链路层 第7层 应用层 因为现场总线通常只包括一个网段 xff0c 因此不需要第3层 传输层 和第4层 网络层 xff0c 也不需要第5层 会话层 第6层 描述层 的作用
  • 函数指针应用场景

    原文链接 xff1a https blog csdn net u011116085 article details 108106052 一个人C语言功底强不强 xff0c 不是看他写的代码注释够不够全 xff0c 代码逻辑够不够清晰 xff
  • STM32的Flash 具体是哪种flash?

    单片机内部的Flash应该是nor flash xff0c 因为 xff0c 在使用程序对Flash进行读写与擦除时 xff0c 都是要按一个页一个页的进行操作的 这与nor的特性是一样的 单片机中的程序是在Flash中运行的 xff0c
  • keil 无法直接生成bin文件 fromelf:格式转换工具

    fromelf exe转换工具的语法格式如下 xff1a fromelf span class token punctuation span options span class token punctuation span input f
  • jlink支持 国民MCU

    https www bilibili com read cv19376308 文件已保存到自己网盘
  • OSC_in 和 OSC_out 引脚 OSC32_IN和OSC32_OUT

    一般在单片机上都有 OSCin 和 OSCout 两个晶振接入端口 xff0c 我们可以用无源的晶振加上起震电容可以配合单片机是晶振起震 xff0c 为系统提供时钟源 顾名思义在OSCout端可以输出正弦波 xff0c 给别的器件提供振荡源
  • MDK 的jlink版本和jlink的驱动版本导致的问题 keil进入调试后只打了一个断点就提示断点太多

    查看MDK jlink版本 查看 jlink下载器的驱动版本 降低MDK jlink版本 调试起来很顺畅 降低版本方法 xff1a 重装keil 后 MDK jlink版本自动回到低版本 或者找到低版本的文件 直接替换segger文件夹
  • git 和 SVN 的区别 SVN搭建 分布式和非分布式

    https blog csdn net bruce 6 article details 38299677 ops request misc 61 257B 2522request 255Fid 2522 253A 2522168051782
  • 串口不仅要数据处理 还要对数据做容错处理

    如果接受到的数据不正确怎么办 排除硬件损坏的情况
  • Linux面试题总结(2022最新版)

    关于作者 x1f436 程序猿周周 短视频小厂BUG攻城狮 x1f93a 如果文章对你有帮助 xff0c 记得关注 点赞 收藏 xff0c 一键三连哦 xff0c 你的支持将成为我最大的动力 本文是 后端面试小册子 系列的第 5 篇文章 x
  • 10.dockerfile之WORKDIR指令

    一 WORKDIR指令说明 用来指定当前工作目录 xff08 或者称为当前目录 xff09 当使用相对目录的情况下 xff0c 采用上一个WORKDIR指定的目录作为基准 相当与cd 命令 xff0c 但不同的是指定了WORKDIR后 xf
  • 计算机系统层次存储结构

    问 xff1a 当前计算机系统一般会采用层次结构存储数据 xff0c 请介绍下典型计算机存储系统一般分为哪几个层次 xff0c 为什么采用分层存储数据能有效提高程序的执行效率 xff1f 所谓存储系统的层次结构 xff0c 就是把各种不同存
  • "R6002 floating point support not loaded"错误

    R6002 floating point support not loaded 错误 xff0c 在Debug模式下会弹出如下错误 xff1a floating point support not loaded 翻译为中文是 浮点指针支持未
  • docker 安装mysql:latest 问题

    背景 周末闲着没事 xff0c 然后想着在虚拟机用docker装个mysql吧 然后就开始安装了 正文 打开dockerhub com 在输入框输入mysql xff0c 选择mysql第一个 xff0c 进入后找到How to use t
  • TX2-刷机完成后安装程序ubuntu_linux命令&TX2学习总结

    Linux教程 菜鸟教程 xff1a http www runoob com linux linux tutorial html 认识linux ping命令 xff1a ping命令是常用的网络命令 ping网关 xff1a ping 1
  • 浅谈操作系统与内存

    浅谈操作系统与内存 对于计算机的发明 xff0c 相信大家都有耳闻那个占地面积按平米算的第一台计算机 在那个时候 xff0c CPU的资源是极其珍贵的 xff0c 随着这些年突飞猛进的发展 xff0c 一片指甲盖大小的民用级CPU一秒钟能执
  • linux系统编程之进程(八):守护进程详解及创建,daemon()使用

    一 xff0c 守护进程概述 Linux Daemon xff08 守护进程 xff09 是运行在后台的一种特殊进程 它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件 它不需要用户输入就能运行而且提供某种服务 xff0c 不
  • IMU&GPS融合定位::加速度计基本原理

    加速度计基本原理 核心 xff1a 牛顿第二定律 一 mems加速度计基本原理 加速度计基本结构如上图 xff0c 由上电容 中电容板 可移动 下电容板等组成 xff1b 当加速度达到一定值后 xff0c 中电容板会移动 xff0c 与上