发表于《开源一块飞控SS0》
tmn_A作者
8个月27天前修改于 8个月27天前IP:广东
948823
10楼

定义说完了,接下来直接开始算法的流程。这里为了编号的方便用大写英文字母表示顺序。

该算法基于以下理想条件:传感器无误差,速度,位移不太大(不用考虑惯性离心力与科里奥利力,也不用考虑地球的形状)

一切之前要读取加速度(比力)与角速度数据,而且实际情况要考虑数据融合。不过部分我还在学……

这里使用旋转矢量法更新姿态,兼顾精度与计算速度,这也是工程上最常见的结算方法。

A求解从上次更新到现在的旋转矢量

B更新四元数

C更新姿态矩阵与欧拉角

至此得出姿态,但是由于低成本MEMS精度不够,直接用会漂,要kalman滤波。这里我还在学,希望下一代飞控搞出来后可以写完整版。

D更新速度

E更新位置

至此得出捷联惯导的结果,但是还需要组合导航,这里只说下我的程序里是怎么做的,还是那个原因(

F数据融合

评论
文号 / 948823

百炼成钢
名片专栏发私信
学术分 0
总主题 15 帖总回复 172 楼拥有证书:进士 机友 笔友
注册于 2020/08/28 12:52:17最后登录 2026/10/30 21:53:39
主体类型:个人
所属领域:无
认证方式:手机号
IP归属地:广东

个人简介

辰星引力工作室成员,火箭爱好者,嵌入式爱好者,物理爱好者,还有亚雷斯塔克劳利是我老婆。

笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的