(一)电赛四轴之 系统框架梳理

遗留问题

  • 电池和力的关系没有解决,会出现掉高的现象。【已解决,新代码中task.h中88行,注释宏定义,即使用双环控制(高度环和速度环),避免加速度环积分造成的影响。
    (一)电赛四轴之 系统框架梳理_第1张图片
  • 关乎巡线的偏向角,后面可以去改改看
    (一)电赛四轴之 系统框架梳理_第2张图片
  • 寻线:左右位置双闭环,前后光流数据
  • 验证:相机坐标的正负问题
  • 验证:串口模式1 2

引脚注记表

飞控模块 功能
串口SicA 外接GPS
串口SicC 接收STM32转发来的数据

执行周期注记

模块功能 频率
STM32位置信息转发速率 60Hz
位置控制速率 200Hz(可提高到500Hz)
姿态控制 200Hz

飞机姿态

俯仰(pitch) - x轴
在这里插入图片描述
翻滚(roll) - y轴
在这里插入图片描述

偏航(yaw) - z轴
在这里插入图片描述


一、起飞注意

  • 开箱装电池的时候务必注意,固定电池的魔术扣不要挡住超声波~
  • 在进行视觉模块的SD卡WIFI设置时,千万不要格式化!!!
  • 起飞前摄像头一定要放到黑点正上方
  • 意外情况,猛地向上提拉飞机
  • 视觉模组下程序需要用电池供电,飞控下程序电池断开用USB供电下

二、软件

地面站

  • 无人机和地面站之间的通讯 - 蓝牙
  • 在地面站软件中【通讯设置】,打开串口,注意观察对应的高度信息!【必须得有对应的高度信息才能起飞】
  • 视觉模组供电注意共地
  • 地面站【运动参数配置】:先进行读取FLASH参数,而后然后通过××.pid后缀的文件单独写入参数到FLASH中去。
  • 地面站【位置信息与校准】:看那张PID参数的图片(需要手动输入,然后单个写入FLASH)

视觉模块

  • 视觉模组与地面站之间的通信 - 无线模块
  • 取出SD卡,插上电脑,将wap文件设置局域网的WIFI名称和密码,然后复制到SD卡的boot文件夹
  • 插入SD卡到视觉模组
  • 打开视觉的IDE,然后选择本机的IP地址。
  • 连接完成后,再次打开地面站然健在运动测试界面进行相关的测试

三、飞控程序理解【Blob算法定点为例】

程序总框图

按照这个框图展开,看下面程序。【仔细梳理下,也许就会有头绪了。。】
(一)电赛四轴之 系统框架梳理_第3张图片
视觉数据的接收 -> 转换为单位m -> 卡尔曼滤波 -> 得到修正后位置以及x y z三轴运动速度 -> 位置控制-> 期望加速度 -> 期望姿态角 -> 姿态控制

模型定出来之后只跟模型的位置有关,跟姿态控制关系不大。

1、期望偏航获取

视觉模组,捕捉数据并通过串口将实时位置信息转发给STM32。
在这里插入图片描述

串口的模式1是直通模式,就是视觉模组的数据通过STM32的DMA直接转接到TI的飞控板,而STM32是单独的读取超声波的数据然后传到飞控板。


串口的模式2是整合模式,视觉模组的12字节数据中,最后一个字节的0xAA。发到32后,在最后的0xAA前会留出4个空字节,以供超声波数据的加入,所以称之为整合模式。

注意

  • 数据包头0x55和0xAA,以及数据包尾都是固定的。【协议这样设置的】
  • 且视觉模组发给飞控时每次只发12个字节,而STM32发给飞控时发送16个字节,其中在包尾的0xAA前,加入了4字节的超声波数据。

STM32进行数据模组和超声波数据的组合,然后通过串口发送到飞控串口C。飞控的串口C接收到消息后,进行视觉数据的处理。
(一)电赛四轴之 系统框架梳理_第4张图片
(一)电赛四轴之 系统框架梳理_第5张图片
(一)电赛四轴之 系统框架梳理_第6张图片
(一)电赛四轴之 系统框架梳理_第7张图片
注1:串口触发方式FIFO,只有FIFO接收到指定数量的数据时才会触发串口中断。
(一)电赛四轴之 系统框架梳理_第8张图片
先开视觉,再开飞控这样数据才不会错。

:FIFO最大16个字节。那0x0030和16个字节还能对应上吗?【这个时候就可以看一下手册了,第4位为深度为,决定了最多只能那个存放2^4个字节,而第五位为使能位。】
(一)电赛四轴之 系统框架梳理_第9张图片

(一)电赛四轴之 系统框架梳理_第10张图片
信号量在执行完程序后会自动清零。

(一)电赛四轴之 系统框架梳理_第11张图片
flyMode中可以自定义模式

注2:我们的期望轨迹是60Hz,而我们的位置控制是200Hz,如何把60Hz转到200Hz呢?没错了卡尔曼滤波。我们的模型就是加速度对应算出的s=1/2at^2,而我们的预测数据就是获取的期望轨迹(误差),两者得到的协方差越小越好!!!(舞草,原来是这个意思哦。~)
卡尔曼滤波就是通过调节卡尔曼增益以期得到观测和模型的相信度,使得协方差达到最优。
(一)电赛四轴之 系统框架梳理_第12张图片
卡尔曼滤波参数表
(一)电赛四轴之 系统框架梳理_第13张图片

2、位置控制【注意位置输出的是XYZ三轴的加速度量】
(一)电赛四轴之 系统框架梳理_第14张图片
(一)电赛四轴之 系统框架梳理_第15张图片
(一)电赛四轴之 系统框架梳理_第16张图片

三环控制:高度控制 – 速度控制 – 加速度控制
(一)电赛四轴之 系统框架梳理_第17张图片
(一)电赛四轴之 系统框架梳理_第18张图片
(一)电赛四轴之 系统框架梳理_第19张图片
(一)电赛四轴之 系统框架梳理_第20张图片
(一)电赛四轴之 系统框架梳理_第21张图片
(一)电赛四轴之 系统框架梳理_第22张图片
(一)电赛四轴之 系统框架梳理_第23张图片
(一)电赛四轴之 系统框架梳理_第24张图片

(一)电赛四轴之 系统框架梳理_第25张图片
(一)电赛四轴之 系统框架梳理_第26张图片
(一)电赛四轴之 系统框架梳理_第27张图片

(一)电赛四轴之 系统框架梳理_第28张图片
3、姿态控制
(一)电赛四轴之 系统框架梳理_第29张图片

(一)电赛四轴之 系统框架梳理_第30张图片
(一)电赛四轴之 系统框架梳理_第31张图片
(一)电赛四轴之 系统框架梳理_第32张图片
(一)电赛四轴之 系统框架梳理_第33张图片
(一)电赛四轴之 系统框架梳理_第34张图片

姿态控制先进行20Hz的低通滤波
(一)电赛四轴之 系统框架梳理_第35张图片
(一)电赛四轴之 系统框架梳理_第36张图片
(一)电赛四轴之 系统框架梳理_第37张图片

其中β是转动惯量,I是PID输出。
(一)电赛四轴之 系统框架梳理_第38张图片
(一)电赛四轴之 系统框架梳理_第39张图片
以上是pitch轴的调节,其他两轴的调节大体类似,这里不再一一给出,我们直接看控制分配的。

4、控制分配

以上便是全部的姿态控制,姿态控制的输出是力矩,那么接下来便是进行力矩的分配了。

(一)电赛四轴之 系统框架梳理_第40张图片
(一)电赛四轴之 系统框架梳理_第41张图片
(一)电赛四轴之 系统框架梳理_第42张图片
(一)电赛四轴之 系统框架梳理_第43张图片
(一)电赛四轴之 系统框架梳理_第44张图片

5、力到油门

(一)电赛四轴之 系统框架梳理_第45张图片


附:锡月的控制环节,可以80ms完成的细节:
【获取IMU姿态数据】
(一)电赛四轴之 系统框架梳理_第46张图片
(一)电赛四轴之 系统框架梳理_第47张图片

加速度截止频率低可以,因为有很大噪声
陀螺仪的截止频率低带来的后果是延迟大~~~

截止频率改变,双闭环的陀螺仪和加速度计的参数都需要调,PID参数已经不再适用!

你可能感兴趣的:(#,电赛四轴留念)