当前位置: 首页 > news >正文

课题学习(三)----倾角和方位角的动态测量方法(基于陀螺仪的测量系统)

一、内容介绍

  该测量系统基于三轴加速度和三轴陀螺仪,安装在钻柱内部,随钻柱一起旋转,形成捷联惯性导航系统,安装如下图所示:
在这里插入图片描述
  假设三轴加速度和陀螺仪的输出为: f b = [ f x f y f z ] T f^b=\begin{bmatrix}f_{x} & f_{y} &f_{z} \end{bmatrix}^T fb=[fxfyfz]T w b = [ w x w y w z ] T w^b=\begin{bmatrix}w_{x} & w_{y} &w_{z} \end{bmatrix}^T wb=[wxwywz]T
  使用这六轴的输出可以非常有效的求解姿态,应用惯性导航的求解算法,可以实现钻孔时的连续测量。加速度计和陀螺仪可以在坐标系中提供线加速度和角速度。但是,如果要求解钻具的位姿,则需要将该坐标系转换为另一个坐标系。
  Xe、Ye、Ze三个轴代表地球坐标系。导航坐标系用于计算载体的位置、速度和姿态,因为导航坐标系沿当地的北、东、垂直方向,如下图中的“N, E, UP”,其中λ为经度角,φ为纬度角。在载体坐标系下,利用INS力学方程可得到井斜、井向和工具面角。在这里插入图片描述
  将b系统中测得的加速度和角速度值通过变换矩阵Rn b转换为n系统,即可求解井底工具的空间位置和姿态[28]。定义底部的经度为λ,纬度为φ,海拔为h,则其位置可表示为: r n = [ φ λ h ] T r^n=\begin{bmatrix}φ & λ &h \end{bmatrix}^T rn=[φλh]T
  定义n系统的速度分量,向北速度为Vn,向东速度为Ve,垂直速度为Vu。然后定义n系统的速度为: r n = [ V e V n V u ] T r^n=\begin{bmatrix}V^e & V^n &V^u\end{bmatrix}^T rn=[VeVnVu]T
  速度分量可以表示为位置分量对时间的导数:
在这里插入图片描述
  上式中,M为子午线的曲率半径,N为地球椭圆的曲率半径。
  在载体坐标系下,加速度计 f b = [ f x f y f z ] T f^b=\begin{bmatrix}f_{x} & f_{y} &f_{z}\end{bmatrix}^T fb=[fxfyfz]T 通过变换矩阵 R b n R^n_{b} Rbn转换到地理坐标系的测量值为:
在这里插入图片描述
  n坐标系中的加速度分量 f n f^n fn可以对速度分量 v n v^n vn积分。但由于地球本身的存在,会影响求解过程。地球自转速度为 w e = 15 d e g / h r w^e=15deg/hr we=15deg/hr,用n坐标系表示的角速度矢量如下式所示:
在这里插入图片描述

  地理坐标系的变化取决于导航坐标系中北方和垂直方向的定义。北方方向通常指向子午线方向,垂直方向指向地球表面,如下图所示:在这里插入图片描述
在导航坐标系中,角速度矢量可表示为:
在这里插入图片描述
  地球引力也影响IMU的加速度测量。我们可以用重力模型来修正。地球重力场可以表示为:在这里插入图片描述
  地球引力场在n系列中可以表示为: g n = [ 0 0 − g ] g^n=\begin{bmatrix}0&0&-g\end{bmatrix} gn=[00g].考虑到地球因素的影响,速度分量Vn的变化率可以表示为:在这里插入图片描述
其中:
在这里插入图片描述
  变换矩阵 R b n R^n_{b} Rbn可由以下微分方程得到:
在这里插入图片描述
其中 Ω i b b Ω^b_{ib} Ωibb为陀螺仪测得的角速度的反对称矩阵,角速度矢量 Ω i b b Ω^b_{ib} Ωibb可表示为:
在这里插入图片描述
  陀螺仪测量底部钻具的角速度,同时也测量地球自转的角速度和导航坐标系的方向。因此,需要从 Ω i b b Ω^b_{ib} Ωibb中减去角速度 Ω i n b Ω^b_{in} Ωinb,以消除这两个因素的影响。角速度矢量 Ω i n b Ω^b_{in} Ωinb包含两部分,第一部分是地球自转速度 Ω i e b Ω^b_{ie} Ωieb和导航坐标系方向变化速度 Ω e n b Ω^b_{en} Ωenb,如下图所示:在这里插入图片描述
  速度矩阵的反对称矩阵可以表示为:在这里插入图片描述
  最后得到变换矩阵如下:在这里插入图片描述
  定义井斜角为θ,方位角为ψ,工具面为φ,变换矩阵 R b n R^n_{b} Rbn可表示为:在这里插入图片描述
  根据前面的假设,三轴加速度计的输出信号为: f b = [ f x f y f z ] T f^b=\begin{bmatrix}f_{x} & f_{y} &f_{z} \end{bmatrix}^T fb=[fxfyfz]T   三轴陀螺仪的输出信号为: w b = [ w x w y w z ] T w^b=\begin{bmatrix}w_{x} & w_{y} &w_{z} \end{bmatrix}^T wb=[wxwywz]T  从测量的角速度可以计算出角度变化量:
在这里插入图片描述
  同样,由加速度的测量值可以计算出线速度:在这里插入图片描述
  考虑到地球自转和导航坐标系方向变化的影响,在时刻tk时,角度的增加可表示为:在这里插入图片描述
  然后,在这里插入图片描述
  综上所述,基于地理坐标系的捷联惯性导航系统的力学方程如下:
在这里插入图片描述

  上式的解可以用欧拉角法、方向余弦法或四元数法求解。通过在载体轴上安装三轴加速度计和三轴陀螺仪,可以通过测量值获得载体的姿态、速度和位置等信息。

二、往期回顾

课题学习(一)----静态测量
课题学习(二)----倾角和方位角的动态测量方法(基于磁场的测量系统)

相关文章:

课题学习(三)----倾角和方位角的动态测量方法(基于陀螺仪的测量系统)

一、内容介绍 该测量系统基于三轴加速度和三轴陀螺仪,安装在钻柱内部,随钻柱一起旋转,形成捷联惯性导航系统,安装如下图所示:   假设三轴加速度和陀螺仪的输出为: f b [ f x f y f z ] T f^b\begin{bmatrix}f_{x} …...

1876. 长度为三且各字符不同的子字符串

1876. 长度为三且各字符不同的子字符串 C代码&#xff1a;滑动窗口 // 存在三种字符&#xff0c;且不重复、子串数量 int countGoodSubstrings(char * s){int k 3;int hash[26] {0};int len 0;int l 0;int ans 0;for (int i 0; i < strlen(s); i) {hash[s[i] - a];if…...

Mall脚手架总结(一)——SpringSecurity实现鉴权认证

前言 在结束理论知识的学习后&#xff0c;荔枝开始项目学习&#xff0c;这个系列文章将围绕荔枝学习mall项目过程中总结的知识点来梳理。本篇文章主要涉及如何整合Spring Security和JWT实现鉴权认证的功能&#xff01;希望能帮助到一起学习mall项目的小伙伴~~~ 文章目录 前言 …...

beego-简单项目写法--路径已经放进去了

Beego案例-新闻发布系统 1.注册 后台代码和昨天案例代码一致。,所以这里面只写一个注册的业务流程图。 **业务流程图 ** 2.登陆 业务流程图 登陆和注册业务和我们昨天登陆和注册基本一样&#xff0c;所以就不再重复写这个代码 但是我们遇到的问题是如何做代码的迁移&…...

Linux-CPU相关常用命令合集

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、cpu相关常用命令 二、cpuinfo 参数详细对照表 前言 本篇文章主要记录平时Linux-常用命令整理&#xff01; 提示&#xff1a;以下是本篇文章正文内容&#…...

vue 百度地图/天地图设置铺满屏幕100%,解决空隙问题

设置100%无效&#xff0c;刷新依然右侧有空隙&#xff0c;解决&#xff1a;min-width: 100vw; <div class"aui-flex-col" style"width: 100%; height:100%"><div id"mapAllCon" style"width: 100%; min-width: 100vw; height: 10…...

2023年安全员安徽题库,精准题库,历年真题,模拟试题

...

第五章:最新版零基础学习 PYTHON 教程—Python 字符串操作指南(第六节 - Python 中字符串的逻辑运算符)

对于 python 中的字符串,布尔运算符(and、or、not)起作用。让我们考虑两个字符串,即 str1 和 str2,并在它们上尝试布尔运算符: Python3 str1 = str2 = geeks# 使用 repr 打印带引号的字符串# 返回 str1 print(repr(str1 and str2)) # 返回 str1 print(repr(str2 and…...

Bark Ai 文本转语音 模型缓存位置修改

默认缓存位置在&#xff1a;~/.cache 加入环境变量&#xff1a;XDG_CACHE_HOME&#xff0c;指定缓存位置 修改后新的位置为&#xff1a; D:\Ai\Bark\Bark Cache...

Docker 镜像的创建

目录 一、Docker镜像的创建 1、基于已有镜像创建 2、基于本地模板创建 3、基于dockerfile创建 3.1 dockerfile结构 3.2 构建镜像命令 二、镜像分层的原理 1、联合文件系统&#xff08;UnionFS&#xff09; 2、镜像加载的原理 三、Dockerfile 操作常用的指令 案例实验…...

【ORM】浅聊C#和Java的ORM底层框架

给自己一个目标&#xff0c;然后坚持一段时间&#xff0c;总会有收获和感悟&#xff01; 国庆假期马上结束&#xff0c;闲暇时间&#xff0c;突然对Ado.Net这个词的由来感兴趣&#xff0c;然后就一顿复习了一遍&#xff0c;顺便也了解了下java关于ORM框架的底层是什么&#xff…...

windows redis 自启动 Redis服务无法启动报错1067问题

如果你的系统服务里面已经有redis服务并且无法启动&#xff0c;则使用下面的命令卸载此服务 ! 1、停止Redis服务&#xff1a; redis-server --service-uninstall 2、删除系统服务 sc delete redis 进入到你的Redis安装目录&#xff0c;我的在以下目录&#xff0c;谨记此时不…...

Ubuntu Server CLI专业提示

基础 网络 获取所有接口的IP地址 networkctl status 显示主机的所有IP地址 hostname -I 启用/禁用接口 ip link set <interface> up ip link set <interface> down 显示路线 ip route 将使用哪条路线到达主机 ip route get <IP> 安全 显示已登录的用户 w…...

Centos7升级OpenSSH9.1

最近遇到了服务器漏洞&#xff0c;需要对服务器的OpenSSH版本进行升级&#xff0c;查阅了相关资料&#xff0c;总结出了一套比较简单的方案。中间遇到的个别问题也进行了记录&#xff0c;供大家参考。 下载准备 从https://ftp.jaist.ac.jp/pub/OpenBSD/OpenSSH/portable/opens…...

linux——信号

目录 一.信号的保存 二.信号集操作 1.信号集 2.信号集操作函数 3.sigprocmask 4.sigpending 三. 信号的捕捉 1.内核态和用户态 2. sigaction 四.可重入函数 五.SIGCHLD信号 一.信号的保存 实际执行信号的处理动作称为信号递达(Delivery)。信号从产生到递达之间的状…...

存档&改造【03】Apex-Fancy-Tree-Select花式树的导入及学习

Apex-Fancy-Tree-Select git学习网页 GitHub - RonnyWeiss/Apex-Fancy-Tree-Select: Fancy Tree Plug-in for Oracle APEX 如何从其他应用程序导出已有插件到新应用程序中 1.从其他应用程序导出插件 其他应用程序-【共享组件】-【插件】-【任务 导出插件】-选择想要导出的…...

【单片机】14-I2C通信之EEPROM

1.EEPROM概念 1.EEPROM 1.1 一些概念 &#xff08;1&#xff09;一些概念&#xff1a;ROM【只读存储器---硬盘】&#xff0c;RAM【随机访问存储器--内存】&#xff0c;PROM【可编程的ROM】&#xff0c;EPROM【可擦除ROM】&#xff0c;EEPROM【电可擦除ROM】 1.2 为什么需要EE…...

Mini-dashboard 和meilisearch配合使用

下载的meilisearch一般是development模式&#xff0c;内置客户端&#xff0c;修改客户端后需要重要全部编译&#xff0c;花时间太长了。前后端分离才是正道&#xff0c;客户端修改不用重新编译后端。 方法如下&#xff1a; 1、修改配置文件/etc/meilisearch.toml&#xff0c;…...

leetcode 886. 可能的二分法

给定一组 n 人&#xff08;编号为 1, 2, …, n&#xff09;&#xff0c; 我们想把每个人分进任意大小的两组。每个人都可能不喜欢其他人&#xff0c;那么他们不应该属于同一组。 给定整数 n 和数组 dislikes &#xff0c;其中 dislikes[i] [ai, bi] &#xff0c;表示不允许将…...

Elasticsearch:使用 ELSER 文本扩展进行语义搜索

在今天的文章里&#xff0c;我来详细地介绍如何使用 ELSER 进行文本扩展驱动的语义搜索。 安装 Elasticsearch 及 Kibana 如果你还没有安装好自己的 Elasticsearch 及 Kibana&#xff0c;请参考如下的链接来进行安装&#xff1a; 如何在 Linux&#xff0c;MacOS 及 Windows 上…...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型&#xff1a;架构设计与关键步骤 在当今数字化转型的浪潮中&#xff0c;大语言模型&#xff08;LLM&#xff09;已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中&#xff0c;不仅可以优化用户体验&#xff0c;还能为业务决策提供…...

【Linux】shell脚本忽略错误继续执行

在 shell 脚本中&#xff0c;可以使用 set -e 命令来设置脚本在遇到错误时退出执行。如果你希望脚本忽略错误并继续执行&#xff0c;可以在脚本开头添加 set e 命令来取消该设置。 举例1 #!/bin/bash# 取消 set -e 的设置 set e# 执行命令&#xff0c;并忽略错误 rm somefile…...

树莓派超全系列教程文档--(61)树莓派摄像头高级使用方法

树莓派摄像头高级使用方法 配置通过调谐文件来调整相机行为 使用多个摄像头安装 libcam 和 rpicam-apps依赖关系开发包 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 配置 大多数用例自动工作&#xff0c;无需更改相机配置。但是&#xff0c;一…...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

Java如何权衡是使用无序的数组还是有序的数组

在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...

安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件

在选煤厂、化工厂、钢铁厂等过程生产型企业&#xff0c;其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进&#xff0c;需提前预防假检、错检、漏检&#xff0c;推动智慧生产运维系统数据的流动和现场赋能应用。同时&#xff0c;…...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)

骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术&#xff0c;它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton)&#xff1a;由层级结构的骨头组成&#xff0c;类似于人体骨骼蒙皮 (Mesh Skinning)&#xff1a;将模型网格顶点绑定到骨骼上&#xff0c;使骨骼移动…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元&#xff08;GRU&#xff09;长短期记忆神经网络&#xff08;LSTM&#xff09…...

力扣-35.搜索插入位置

题目描述 给定一个排序数组和一个目标值&#xff0c;在数组中找到目标值&#xff0c;并返回其索引。如果目标值不存在于数组中&#xff0c;返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 class Solution {public int searchInsert(int[] nums, …...

管理学院权限管理系统开发总结

文章目录 &#x1f393; 管理学院权限管理系统开发总结 - 现代化Web应用实践之路&#x1f4dd; 项目概述&#x1f3d7;️ 技术架构设计后端技术栈前端技术栈 &#x1f4a1; 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 &#x1f5c4;️ 数据库设…...