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

本文主要是介绍课题学习(三)----倾角和方位角的动态测量方法(基于陀螺仪的测量系统),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、内容介绍

  该测量系统基于三轴加速度和三轴陀螺仪,安装在钻柱内部,随钻柱一起旋转,形成捷联惯性导航系统,安装如下图所示:
在这里插入图片描述
  假设三轴加速度和陀螺仪的输出为: 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时,角度的增加可表示为:在这里插入图片描述
  然后,在这里插入图片描述
  综上所述,基于地理坐标系的捷联惯性导航系统的力学方程如下:
在这里插入图片描述

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

二、往期回顾

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

这篇关于课题学习(三)----倾角和方位角的动态测量方法(基于陀螺仪的测量系统)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/158698

相关文章

Spring Gateway动态路由实现方案

《SpringGateway动态路由实现方案》本文主要介绍了SpringGateway动态路由实现方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随... 目录前沿何为路由RouteDefinitionRouteLocator工作流程动态路由实现尾巴前沿S

linux系统中java的cacerts的优先级详解

《linux系统中java的cacerts的优先级详解》文章讲解了Java信任库(cacerts)的优先级与管理方式,指出JDK自带的cacerts默认优先级更高,系统级cacerts需手动同步或显式... 目录Java 默认使用哪个?如何检查当前使用的信任库?简要了解Java的信任库总结了解 Java 信

Python动态处理文件编码的完整指南

《Python动态处理文件编码的完整指南》在Python文件处理的高级应用中,我们经常会遇到需要动态处理文件编码的场景,本文将深入探讨Python中动态处理文件编码的技术,有需要的小伙伴可以了解下... 目录引言一、理解python的文件编码体系1.1 Python的IO层次结构1.2 编码问题的常见场景二

Oracle数据库在windows系统上重启步骤

《Oracle数据库在windows系统上重启步骤》有时候在服务中重启了oracle之后,数据库并不能正常访问,下面:本文主要介绍Oracle数据库在windows系统上重启的相关资料,文中通过代... oracle数据库在Windows上重启的方法我这里是使用oracle自带的sqlplus工具实现的方

Java使用Javassist动态生成HelloWorld类

《Java使用Javassist动态生成HelloWorld类》Javassist是一个非常强大的字节码操作和定义库,它允许开发者在运行时创建新的类或者修改现有的类,本文将简单介绍如何使用Javass... 目录1. Javassist简介2. 环境准备3. 动态生成HelloWorld类3.1 创建CtC

JWT + 拦截器实现无状态登录系统

《JWT+拦截器实现无状态登录系统》JWT(JSONWebToken)提供了一种无状态的解决方案:用户登录后,服务器返回一个Token,后续请求携带该Token即可完成身份验证,无需服务器存储会话... 目录✅ 引言 一、JWT 是什么? 二、技术选型 三、项目结构 四、核心代码实现4.1 添加依赖(pom

基于Python实现自动化邮件发送系统的完整指南

《基于Python实现自动化邮件发送系统的完整指南》在现代软件开发和自动化流程中,邮件通知是一个常见且实用的功能,无论是用于发送报告、告警信息还是用户提醒,通过Python实现自动化的邮件发送功能都能... 目录一、前言:二、项目概述三、配置文件 `.env` 解析四、代码结构解析1. 导入模块2. 加载环

linux系统上安装JDK8全过程

《linux系统上安装JDK8全过程》文章介绍安装JDK的必要性及Linux下JDK8的安装步骤,包括卸载旧版本、下载解压、配置环境变量等,强调开发需JDK,运行可选JRE,现JDK已集成JRE... 目录为什么要安装jdk?1.查看linux系统是否有自带的jdk:2.下载jdk压缩包2.解压3.配置环境

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

Python学习笔记之getattr和hasattr用法示例详解

《Python学习笔记之getattr和hasattr用法示例详解》在Python中,hasattr()、getattr()和setattr()是一组内置函数,用于对对象的属性进行操作和查询,这篇文章... 目录1.getattr用法详解1.1 基本作用1.2 示例1.3 原理2.hasattr用法详解2.