四旋翼飞行器旋转矩阵公式推导!
四旋翼飞行器旋转矩阵公式推导!
方法一:
1.在二维平面中:如下图所示,在xoy平面中有一向量op⃗ =(x,y)T,旋转ϕ角后变为向量op⃗ ′=(x′,y′)T。
据图可得: x=|op⃗ |cosθ;y=|op⃗ |sinθ ,经旋转 ϕ 角后有:
x′=|op⃗ |cos(θ+ϕ)=|op⃗ |(cosθcosϕ−sinθsinϕ)=xcosϕ−ysinϕ
y′=|op⃗ |sin(θ+ϕ)=|op⃗ |(sinθcosϕ+cosθsinϕ)=xsinϕ+ycosϕ;
写成矩阵形式:
(x′y′)=(cosϕsinϕ−sinϕcosϕ)(xy)
2.在三维空间中:如下图所示,若以坐标系的三个坐标轴X、Y、Z分别作为旋转轴,则点实际上只在垂直坐标轴的平面上作二维旋转。
例: op⃗ 绕X轴旋转 ϕ 角,有:
旋转前:
旋转后:
写成矩阵形式:
则绕X轴旋ϕ角的旋转矩阵为: Rx(ϕ)=(1000cosϕ−sinϕ0sinϕcosϕ)
同理可得绕X、Y、Z轴旋转的不同角度的旋转矩阵(方向余弦矩阵)分别为:
最后,若 op⃗
绕某一定轴旋转,从欧拉定律中可知,绕着固定轴做一个角值的旋转,可以被视为分别以坐标系的三个坐标轴X、Y、Z作为旋转轴的旋转的叠加。
方法二:
一、先来个平面旋转的分析:
两角和(差)公式
推导
旋转变换一般是按照某个圆心点,以一定半径 r 旋转一定的角度α
,为了简单起见我们给出下面的情景
假定点A(x,y)想经过旋转变换到达B(x',y'),已知旋转角度α
和点A坐标,计算出点B
要计算点B则分别计算他的x'和y'分量
根据矩阵乘法计算规则,可以推出
只要给出旋转角度,计算出矩阵,然后使用这个矩阵分别左乘每一个点,就能计算出这个点旋转后的点坐标 这样我们就可以通过矩阵变换坐标了
二、延伸到三维坐标:
坐标的旋转变换在很多地方都会用到,比如机器视觉中的摄像机标定、图像处理中的图像旋转、游戏编程等。
四旋翼飞行器旋转矩阵公式推导!相关推荐
- 四旋翼飞行器控制模型公式推导
四旋翼飞行器控制模型 为便于建立模型,现对四旋翼飞行器进行以下假设: 1.四旋翼飞行器是均匀对称的刚体 2.四旋翼飞行器的质量和转动惯量不发生改变 3.四旋翼飞行器的几何中心与其重心重合 4.四旋翼飞 ...
- GD32F103+MPU9150四旋翼飞行器第一步:姿态融合算法
前言: 相比直升机来说,四旋翼乃至多旋翼飞行器的机械结构简单,操控灵活,飞行稳定,体积也能做的更小,当然也能更大,它将直升机复杂的机械结构设计难度转化到了电子电路和算法上面,因此四旋翼飞行器的设计更容 ...
- 四旋翼飞行器的研究方向
毕业设计选的四旋翼飞行器设计的题目,顺便了解了下四旋翼飞行器有哪些值得研究的点. 四旋翼飞行器在高空检测(如电线,桥梁),灾害搜救,娱乐以及军事上都会有应用.相关研究的点也有很多,主要有飞行器的姿态估 ...
- 【飞控理论】四旋翼飞行器控制原理
该篇博客是对锡月科技无人机飞行控制原理教学内容的整理 1.四旋翼飞行器的两种结构: "×"字模式: Pitch和 Roll与1,3.2,4两组电机呈 45°夹角 . "十 ...
- 四旋翼飞行器基本知识(四旋翼飞行器结构和原理+四轴飞行diy全套入门教程)
转载两篇日志: 第一篇<四旋翼飞行器结构和原理> 第二篇<四旋翼飞行diy全套入门教程> =========================================== ...
- 四旋翼飞行器5——各类方案设计及参考
下面几篇文章及资料是这两天看到的比较好的资源,可以多看看,对于新手来说,是个不错的提升自己的一些资料.可以分析每一种方案的特点,主控啊,传感器啊,不过到最后肯定要自己实践,才能得到最好的控制效果. 文 ...
- 四旋翼飞行器的原理研究和建模
##四旋翼飞行器的原理研究和建模 对四旋翼飞行器的工作原理进行了简单介绍,对其飞行姿态角进行描述,并在此基础上建立数学模型. 四旋翼飞行器的原理 根据四旋翼飞行器的运动方式的特点将其飞行控制划分为四种 ...
- (转)四旋翼飞行器基本知识
因为最近在做四旋翼的项目.所以在网上查找了点资料,转了下面这篇关于四旋翼入门级的知识. 1.结构形式 旋翼对称分布在机体的前后.左右四个方向,四个旋翼处于同一高度平面,且四个旋翼的结构和 ...
- 四旋翼飞行器轨迹跟踪仿真MATLAB simulink/simscape
四旋翼飞行器轨迹跟踪仿真MATLAB simulink/simscape ID:6929669117089277
最新文章
- Camelyon Challenge: 癌症细胞区域检测竞赛
- docker 容器状态 restarting_20分钟极简入门Docker
- python 3列表推导式的的一点理解!
- should,would,could,must,might,may,can有什么区别
- 搭建K8s集群(kubeadm方式)-部署master节点
- 消息发送到消息接收的整体流程
- Linux mount 修改文件系统的读写属性
- javafx窗体程序_JavaFX真实世界应用程序:欧洲电视网广播联盟
- Makefile中自定义函数的调用
- python两个元组相加_《第5章 Python 列表与元组》5.1.3 序列相加(Adding)!
- ArrayDeque 双端队列
- 关于 IHTMLDocument4 在 Delphi7.0 中不能编译的的解决方法
- 115道Java面试题及答案分享,java程序员赶紧收好
- 利用电子邮件“钓鱼”的常见手段
- 利用重复性渐变编写邮件线
- ANSYS | 螺栓模拟
- arduino uno r3单片机封装图_Arduino教程 Lesson 1 驱动安装及下载Blink程序
- 论文翻译:2020_RNNoise:A Hybrid DSP/Deep Learning Approach to Real-Time Full-Band Speech Enhancement...
- 关于SEO(搜索引擎优化)的个人掌握知识分享
- Springboot+Netty搭建UDP客户端