作为无人机方面做嵌入式编写的飞控总结0

2023-05-16

导:作为在专业公司的一名研制飞控(飞行控制器)的工程师,飞控代码的编写会涉及方方面面;如果团队是几十人或者个位的人数,分配下来:飞手,销售,测试,上位机(pc上位机地面站,手机安卓或者ios-app地面站),硬件研发,结构研发,嵌入式的,算法的等,这是在人员充足的

不过,中小公司往往不会有太多充足的情况,不过对职位来说,因为嵌入式往往软硬兼通,我觉得嵌入式在小公司是处在核心的职位,至少我和我认识的道友是这样的,他们做潜入式的,可以设计电路和pcb板,可以写驱动,可以写算法,可以对结构硬件设计和上位机及其通讯协议设计提出建设性的见解;

我废话太多了;我接下来,会对自己以前和现在设计的和涉及的很多东西进行总结(要不然很容易忘记的);

                            有错是难免的,开发是很忙的,我自己也很懒,但交流是可以;  人生很多时候确实是很无奈;

首先这部分分为软件兼和硬件

1软件

    首先,要懂得最基础的驱动开发(iic,spi和uart)解出传感器的原始数据(要记住传感器测量的数值不是真实值);

    其次,要知道对传感器的数据进行处理的几种方法(即算法--在飞控里面主要是经过处理之后得到位置/速度估计和姿态估计,可能需要障碍估计等等,这需要知道 姿态算法ekf,ukf,Ins+gps+ekf组合导航算法 等待);

    之后,得到估计值就可以做PID控制了(包括姿态控制pid和导航运算pid);

    最后,飞行平稳就能让飞机去做自己的执行任务(这部分可能是巡线航测航拍,农业植保,电力巡检等等---这其中就设计拍照控制,电子围栏设定,电池管理等等......)  ---- 而这就需要手机app或者电脑的软件的支持。。。。等等。。。

所有,这是第一张图最基本的逻辑;

2硬件:应该是要用的模块化的思想(硬件必备最基本的四大件:GPS模块,飞控模块,imu模块,电源/led模块)

   除了四大模块之外,按自己所需的,可以开发osd,光流等等。。。毕竟一旦量产,节省都是钱

   除了飞控和其电路,还要知道云台的调试和使用,结构如何设计。。。。。

  

3.涉及内容
1.传感器驱动编写&地面站上位机的使用

  最基本的协议:UARTI2CSPICAN…

2.滤波算法和估计算法 : ekf,ukf,Ins+gps+ekf组合导航,

  KF-Kalmanfilter卡尔曼滤波

  EKF-ExternKalmanFilter扩展卡尔曼滤波

3.姿态算法:

  坐标系统+EKF+一阶隆格库塔+欧拉角

5Pid控制算法
    位置-速度双环串级控制
        位置-速度-加速度三环串级控制
6导航级pid-任务规划和控制

7地面站开发:

   appeg.tower去谷歌框架、视频融合

   pc上位机:eg.mp界面修改和简化,协议的修改

8开源飞控功能开发:

  航线规划、自拍、航测、电子围栏、建模





本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

作为无人机方面做嵌入式编写的飞控总结0 的相关文章

  • 解决mininet运行报错“ImportError: No module named mininet.log”

    解决mininet运行报错 ImportError No module named mininet log 运行环境 系统Ubuntu 04 安装Mininet 2 3 0d6问题描述 运行miniedit py时报错ImportError
  • C++ 用结构体和类创建单向链表

    一 结构体 include lt iostream gt using namespace std 一个链表要实现的操作有 建立链表 xff0c 遍历链表 xff0c 查找链表 xff0c 插入和删除节点 查找和遍历某种程度上来说是一样的 x
  • 巨星星座paper研究

    巨星星座paper研究 ICM1篇 Exploring the Internet from space with Hypatia Hypatia论文 xff1a 摘要 xff1a Hypatia 提出了一个框架 xff0c 通过结合这些星座
  • Ubuntu20.04中安装ns3网络仿真器

    前言 我的环境 Ubuntu 20 04 xff0c 安装的是ns3 3 33 1 安装前的准备工作 建议先了解一下ns3的文件结构 参考博客 xff1a https blog csdn net sinat 36418396 article
  • ubuntu 20.04配置ssh远程root连接

    ubuntu 20 04配置ssh远程服务 1 开启服务 etc init d ssh start 查看ssh服务状态 sudo service ssh status 正常是active xff08 running xff09 2 修改ss
  • docker 遇到的问题

    docker stop container id 失败 显示 root 64 docker stop onos1 Error response from daemon cannot stop container onos1 permissi
  • docker ubuntu20.04 dockerfile 换源

    dockerfile 换源 FROM ubuntu 20 04 ARG span class token assign left variable DEBIAN FRONTEND span span class token operator
  • Prometheus普罗米修斯-入门

    Promethus 普罗米修斯 xff09 适合k8s和docker的监控系统 功能 能够安装prometheus服务器 能够通过安装node exporter监控远程linux 能够通过安装mysqld exporter监控远程mysql
  • 数据库操作

    ubt1804 安装mqsql span class token function apt span span class token function install span mysql server span class token
  • 图的邻接表存储及图的遍历(DFS)

    图的表示方式 邻接矩阵 xff1a G N N xff0c 适合稠密图 xff0c 占用空间大 xff0c O N N 邻接表 xff1a 存储稀疏有向图 xff0c 避免空间浪费十字链表 xff1a 针对有向图 xff0c 把邻接表和逆邻
  • HTML5详细介绍及使用

    HTML5详细介绍及使用 一 HTML5简介 1 HMTL5的定义 HTML是一种用符号来创建结构文档的语义 比如标题 章节 列表 链接 引用和其他各种元素都可以包含在结构文档中 HTML5在W3C中的定义 xff1a HTML 5 是下一
  • AE10.0开发时 System.ComponentModel.LicenseException' occurred in system.windows.forms.dll

    刚开始是System ComponentModel ISupportInitialize this axMapControl1 EndInit 出现问题 后来又出现system windows forms dll 中类未注册 xff0c 您
  • 数据结构学习

    四 树 所有的二叉链表都基于二叉树结点的基本定义 class BinTreeNode public int data BinTreeNode leftChild BinTreeNode rightChild BinTreeNode T n
  • 在线解析二进制报文

    现状 智能设备应用越来越普遍 xff0c 深入到生活的各个方面 xff0c 从智慧农业到智能制造 xff0c 从水利灌溉到电力传输 xff0c 从工业生产到智能家居 智能设备应用在各个领域 xff0c 设备之间都是通过数据交换来达到信息共享
  • 接收和处理客户投诉流程

    接收和处理客户投诉的流程一般包括九个步骤 xff1a 第一个步骤 xff1a 倾听客户的投诉事项和内容 xff1a 耐心和仔细地倾听客户投诉的具体事项和内容 xff1b 第二个步骤 xff1a 复述并确认客户的投诉事项和内容 xff1a 用
  • 如何理解Mapper LongWritable, Text, Text, IntWritable 和Reducer Text, IntWritable, Text, IntWritable

    案例 xff1a WorkCount lt key value gt key xff1a 文件中的行的偏移量 value xff1a 行中的数据 Mapper span class token keyword import span jav

随机推荐