从飞机姿态控制看线性变换的本质

2023-10-08 21:20

本文主要是介绍从飞机姿态控制看线性变换的本质,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

战斗机做机动动作的时候经常会执行偏航,俯仰和翻滚等动作,用来改变飞机的运行轨迹,这里面也蕴含了丰富的线性空间变换的思想和应用。本篇文章试图用线性代数的理论来解释这些操作具体是怎么做的,当然,同样的解释也可以用在机器人,机械手臂的运动上面。

方便起见,将坐标系选在飞机上,假定飞机处于xOy平面,机头指向x轴的正方向,左机翼指向y轴的正向,飞机在xOy平面飞行,z轴定义在飞行平面的法线方向,机头上面为正。如下图所示:

当飞机飞行时,三个坐标轴和飞机同时运动。

我们分别讲述:

1.偏航

 偏航是一个在xOy平面的旋转,以偏航45°为例,此时,飞机右转45°(顺时针方向),从三维线性变换的角度看,偏航就是关于z轴的旋转,如果飞机机头的初始坐标表示为向量\begin{bmatrix} 1 & 0 & 0 \end{bmatrix}^T,则偏航后,它的坐标仍然是\begin{bmatrix} 1 & 0 & 0 \end{bmatrix}^T,这是因为坐标轴连同飞机一起旋转,暂且把变换前的坐标系统成为初始坐标系统,偏航45°后,机头相对于初始坐标系统的位置为:

\begin{bmatrix} \frac{\sqrt{2}}{2}\\ -\frac{\sqrt{2}}{2}\\ 0 \end{bmatrix}

如果将偏航变换L堪称初始坐标系统的变换,则容易求得它的表示矩阵,如果L对那个的偏航角度为\theta,则L将(1,0,0)和(0,1,0)分别旋转为点

\begin{bmatrix} cos(\theta) & -sin(\theta) & 0 \end{bmatrix}^T

\begin{bmatrix} sin(\theta) & cos(\theta) & 0 \end{bmatrix}^T

\begin{bmatrix} 0 & 0 & 1 \end{bmatrix}^T在偏航时将保持不变,因为它在旋转轴上。对列向量,若\vec{y}_1, \vec{y}_2, \vec{y}_3为L在R^3中的坐标向量,则

\vec{y}_1 = L(e_1)=\begin{bmatrix} cos(\theta)\\ -sin(\theta)\\ 0 \end{bmatrix}

\vec{y}_2 = L(e_2)=\begin{bmatrix} sin(\theta)\\ cos(\theta)\\ 0 \end{bmatrix}

\vec{y}_3 = L(e_3)=\begin{bmatrix} 0\\ 0\\ 1 \end{bmatrix}

则,偏航的变换矩阵为:

Y=\begin{bmatrix} L(\vec{e}_1) & L(\vec{e}_2) & L(\vec{e}_3) \end{bmatrix} = \begin{bmatrix} cos(\theta) & sin(\theta) & 0\\ -sin(\theta) & cos(\theta) & 0\\ 0 & 0 & 1 \end{bmatrix}


2.俯仰

飞机的俯仰是在xOz平面的旋转,当角度为负时,机头向下旋转,反之,则向上。从三维空间线性变换的角度看,俯仰就是关于y轴的旋转,正如偏航一样,也存在一个相对于初始坐标系的转移矩阵。若L是一个旋转角度为\theta的俯仰变换,则L表示的矩阵为:

P=\begin{bmatrix} L(\vec{e}_1) & L(\vec{e}_2) & L(\vec{e}_3) \end{bmatrix} = \begin{bmatrix} cos(\theta) & 0 & -sin(\theta)\\ 0 & 1 & 0\\ sin(\theta) & 0 & cos(\theta)\end{bmatrix}


3.翻滚

飞机的翻滚是在yOz平面的旋转&#

这篇关于从飞机姿态控制看线性变换的本质的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

CSS学习12--清除浮动的本质及处理办法

清除浮动 前言一、清除浮动的本质二、清除浮动的方法 前言 为什么要清除浮动? 浮动不占用原文档流的位置,可能会对后面的元素排版产生影响。因此需要在该元素中清除浮动,清除浮动后造成的影响。 一、清除浮动的本质 为了解决父级元素因为子级元素引起内部高度为0的问题。 <html><head><style>* {padding: 0;margin: 0;}.box1 {width:

io本质+io效率本质,5种io模型(介绍,异步/同步区别,阻塞/非阻塞区别)

目录 5种io模型 io引入 io的本质 io效率的本质 模型引入 以钓鱼为例 效率最高的方式 异步io和同步io的区别 阻塞式和非阻塞式io的区别 介绍 阻塞式io ​编辑 非阻塞式io ​编辑 信号驱动式io ​编辑 多路转接/复用 ​编辑 异步io 5种io模型 io引入 io的本质 以read ,write为例: 如果底层缓冲区没有数据

去 IOE 的本质不是 PR 砸场,而是云端再造

「青云一直有一个目标,就是要建立一朵更好的云,全模云的推出也标志着我们在实现这个目标上往前走了一大步。」 本文由青云QingCloud CTO 甘泉的演讲内容整理而来,共 2628 字,8 图,阅读大概需要 7 分钟。 青云QingCloud 如何解决「敏态」问题 先谈谈传统业务的 IT 部署模式,基本上都是刀片机+存储柜的模式,它们都是真实的物理机,上图密密麻麻的是刀片机,右边是存

java复习第十课,方法的本质,形参和实参(很重要)

java的方法类似于其他语言的函数,是一段用来完成特定功能的代码片段,声明格式: 修饰符[public]  修饰符2[static]  返回值类型[int、String等]  方法名 (形参列表){ java语句列表..... } 形式参数:在方法被调用时用于接受外界输入的数据 实参:调用方法时实际传递给方法的数据 返回值:方法在执行完毕后返还给调用它的环境的数据 返回值类型:事先约

通过反射了解泛型的本质

通过Class,Method来认识泛型的本质 我们知道Java中集合的泛型是防止错误输入的,例如ArrayList<String>list1=new ArrayList<String>();接下来如果再有list1.add(20);系统便提示错误,程序无法通过编译,以为list1的类型已被指定为String,那么我们看以下代码 Class c1=list.getClass();Class c

Web开发基础:JavaScript飞机大战

超详细的Java知识点路线图 飞机大战 图片链接:https://pan.baidu.com/s/1elfvlHClwwDnc8buUnySPw 提取码:mi5y 功能点: 1、飞机跟着鼠标移动 在onmousemove事件中获得鼠标的坐标,设置给飞机图片 2、发射子弹 子弹需要动态添加到网页中 动态创建标签对象 document.createElement(“标签名”); 动态添加

太阳系模型_飞机游戏JAVA084-097

来源:http://www.bjsxt.com/ 1、S01E084-087太阳系模型实操 package com.test.util;/*** 游戏中关于窗口大小的常量*/public class Constant {public static final int GAME_WIDTH = 500;public static final int GAME_HEIGHT = 500;}/

延续业绩升势,亚朵吃透了酒店的服务本质

中国酒店的核心资产是什么? 不同的品牌会有不同的认知,但他们的目标大概都是一致的:提供足够好的体验,打造有心智吸引力的品牌,最后将其转化为业绩。这条路上,亚朵,是一个绕不开的案例。 8月29日晚,亚朵集团(NASDAQ:ATAT)发布了2024年二季度财报。财报数据显示,今年第二季度,亚朵集团实现总营收17.97亿元(人民币,下同),同比增长64.5%;调整后净利润为3.28亿元,同比增长31

17. 位移运算的本质是什么,为什么要有位移运算,作用范围和使用技巧。

1. 位移运算的本质 位移运算(bitwise shift operations)是直接对二进制数的每个位进行操作的运算。通过将数值的二进制位左移或右移,可以快速地完成一些数学运算或位级控制操作。位移运算通常有两种类型: 左移运算(<<):将二进制位向左移动,低位用 0 填充,高位丢弃。右移运算(>>):将二进制位向右移动,具体可以分为两种:算术右移和逻辑右移。 算术右移:保持符号位不变(用于

springboot+vue+mybatis计算机毕业设计飞机订票系统+PPT+论文+讲解+售后

快速发展的社会中,人们的生活水平都在提高,生活节奏也在逐渐加快。为了节省时间和提高工作效率,越来越多的人选择利用互联网进行线上打理各种事务,然后线上管理系统也就相继涌现。与此同时,人们开始接受方便的生活方式。他们不仅希望页面简单大方,还希望操作方便,可以快速锁定他们需要的线上管理方式。基于这种情况,我们需要这样一个界面简单大方、功能齐全的系统来解决用户问题,满足用户需求。 课题主要分为二大模