飞控学习常见典型问题集Q&A——无名创新(2022年4月15日)

2023-05-16

飞控学习常见典型问题集Q&A——无名创新(2022年4月15日)

1、第一次启动FS I6遥控器,进入不了界面一直嘟嘟,请问这是什么情况呢?

在这里插入图片描述

先把上面的英文翻译一下,警告:请把所有的开关切换到上方,然后把油门方杆拉到最低。其次搞清楚这里说的开关,指的是操作遥控器通道的档位开关SWA、SWB、SWC、SWD,油门杆指的是左边遥杆,需要处于最下方,右边遥杆无需操作,自然回中就行。

2、按无名创新地面站视频教程,配置串口参数完毕后退出,当我再次点到串口设置界面,界面里面不是我之前的端口设置了,是我的设置参数没有保存吗?

同类问题:地面站波特率、端口改不了?

在这里插入图片描述

回答:这种情况出现在电脑上存在着多个USB转TTL或者虚拟串口CDC外设,你自己选中使用的设备处于端口号靠后的位置时,根本原因在于——地面站在每次进入串口配置界面时,都会自动搜索当前电脑可用串口设备,并且优先选择端口号的最小可用串口设备作为当前的默认端口,同样每次进入设置波特率也会恢复到默认波特率。用户在设置退出后,自己设置的参数已经自动存下来了,配置完毕后直接点打开串口就能工作。不需要再次点进去重新配置 你再次点进去的意思是,你想确认下,你认为之前选的com150是否保存好了,一看咋变成com4了,所以你认为之前的设置没有保存好,程序在你操作勾选com150后自动就保存好了 再次点进去的操作确认的操作没有必要,软件每次进入串口设置都会自动搜索最小端口号、恢复默认波特率,造成了你认为的之前的勾选com150没有保存误解。

3、萌新完全没弄过单片机这些,要怎么把程序下载到飞控里面去?

在这里插入图片描述

在这里插入图片描述

步骤注意事项
第一步:装好MDK开发环境并完成破解注册、下载器驱动破解时,MDK以管理员身份运行,临时关掉杀毒软件或者防火墙
第二步:MDK导入飞控对应单片机芯片的离线支持包参照导入离线包教程
第三步:打开飞控代码工程之后编译 在这里插入图片描述
            |

| 第四步:找到自己下载器上GND 5V SWDIO SWCLK端口和飞控SWD下载调试口序号对应连接,将下载器插上电脑USB口后 | 下载器不带5v的可以只接GND SWDIO SWCLK三根线,单独用外部5V模块给飞控供电,切莫将下载器3.3V接上飞控5V,当飞控接的外设比较多时也建议采用此方式(电脑USB口输出电流能力有限) |
| 第五步:查看电脑设备管理器有无下载器硬件设备、MDK软件里面下载器和硬件是否握手成功,之后点击download即可 | [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zuh8OMrZ-1650200135227)(img/image6.png)]
|

  • 设备管理器有没有stlink驱动,keil对应单片机离线支持包装了没有?

  • 飞控SWD口和stlink对应接线顺序、连接线接触不良?

  • 1、2都没问题,先考虑是不是供电问题,将飞控相连的所有外设去掉,只用下载器供电下载还是不行——>飞控下载口烧了?

排查三中下载口问题可以对比排查,比如换其它开发板

4、蜂鸣器接飞控预留I0控制时,蜂鸣器响的时候为啥电机也会滴滴响?

TIVA LaunchPad飞控扩展版预留的IO1——PD0、IO2——PD1之所以不能用

在这里插入图片描述

在这里插入图片描述

原因是在Launchpad官方的原理图中,把PD0/PD6、PD1/PB7之间通过0欧姆电阻连在一起了,暂时不明白官方为什么要弄这不符合常理的设计,由于飞控资源分配中PB6、PB7作为PWM使用了,所以当使用PD0、PD1作为其它资源时,外接蜂鸣器、RGB灯等,PD0、PD1电平状态会影响PB6、PB7的PWM输出功能,对于官方LaunchPad的此bug设计,当需要单独用PD0、PD1时,可以自行去掉TIVA评估版上的R9、R10电阻就可以。

5、去年比赛时不允许使用遥控器,遥控器也不允许带,只能用按键控制,不准带遥控器到现场,要是中途没完成任务,飞机又没降落,这种情况只能徒手去接飞机了吗?

按比赛规则来理解,严格来看的确是只能去”千里送人头“、**“空手接白刃”**的徒手接机,但是实际比赛不同赛区正对要勇气限制,有着自己的灵活处理,有的可以赛区把遥控器交给裁判,出现紧急情况,在从裁判手头夺取遥控紧急停机。通常比赛飞机会写保护程序或者安全绳,比如:

  • 倾覆紧急停机检测:判断无人机姿态持续若干时间满足较大俯仰/横滚倾角或者加速度z轴反向情况,就直接上锁无人机。(徒手接机时直接强制让飞机倾覆就可以及时停机,无人机挂防护网上也会满足此条件)

  • 任务执行异常检测:某一阶段任务处理超时或者检测视觉特征目标失败后,就放弃本子任务继续下一任务或者返回原点/降落。

  • 用安全绳接飞机上,当需要飞机紧急停机时,用手拉安全绳,把飞机扯翻使其满足倾覆紧急停机条件,然后飞机自由落体摔下。(拉扯倾覆之后,再去接住飞机貌似危险性更大,螺旋桨依然有较高转速,且这反应能力不是一般人能胜任的)

如果比赛现场严格执行比赛规则,现场不许带遥控器,不允许从评委手上夺控去紧急停机,自己又不愿意以身涉险(虽然有保护圈防护,还是存在相当程度的危险),最后又想完好的保证爱机周全,避免现场摔坏硬件,失去了后面评测的机会。

终结上述所有问题的解决方案就是开源安全绳ADC按键的控制方式,综合考虑了上述限制中的所有情况,安全绳按键通过ADC方式接入,主要优势如下:

  • 可以实现单线扩展多组按键,接线方式简洁,然后结合长按、持续按、短按等操作,可以提供飞机多种飞行模式,飞行指令,比如:解锁、上锁、SDK、降落等。
  • 安全绳按键的线为USB线或者3.5mm耳机线,长度可以自由调整,根据实际需要选择,插拔更换方便。采用长一点的安全绳避免了近距离靠近飞机造成的不可预测的危险
  • 比赛中需要飞机中途停机时,只需要手握安全绳按键,按下降落即可,飞机降落到地面会自动上锁。同时也可以在到达地面后再按下上锁按键实现快速停机。
  • 飞机通常程序控制平稳降落,使得人和物的安全都得到了保障,也可以继续接下里的测评,尽可能不留遗憾

飞机通过按键操作自组飞行后,绳子和按键可以挂在飞机上,人离开飞机,飞机自主执行飞行任务,中途出现任何识别不到目标或者异常导致失控,可以人工介入用安全绳控制无人机降落/停机,这也意味着本次测试失败,大家要活用规则,保证自身安全的前提下,将损失降低到最小

按键控制无人机中途退出SDK模式后自动下降讲解——无名创新TI电赛飞行器无遥控器按键控制

https://www.bilibili.com/video/BV1A84y1F7WC/

6、用的新买的TOFSENSE激光测距传感器,装上去咋没数据?

首先看下飞控对地测距传感器设置,默认对地传感器类型是US100超声波,需要把传感器类型设置成TOFSENSE才能解析数据,然后排查接线是否有问题,串口接线时主从设备的RXD、TXD是否由交叉。

保姆级无人机新手教程:利用飞控板载按键(遥控器)进行基本翻页、SDK模式设置、传感器类型等设置

https://www.bilibili.com/video/BV1Y64y1d7Lp?spm_id_from=333.999.0.0

7、用的US100超声波模块作为对地测距传感器,接上去没数据/

US100用两种工作模式,串口模式和IO中断触发模式,通过背面短接帽来选择,飞控解析US100数据用的是串口模式,背面短接帽必须接上。然后检查一下接线是否正确,飞控串口的TXD接US100的Trig/Tx,飞控串口的RXD接US100的Echo/Rx,对于US100来讲,串口接线时主从设备的RXD、TXD不需要交叉。

8、光流定点定不住,完全没有要定的感觉,往一个方向越飘越快,感觉像是正反馈一样?

相同问题:不开光流飞机更稳定,开光流就出问题

在这里插入图片描述

在这里插入图片描述

首先排查自己光流方向是否安装有误,其次检查实际使用光流传感器类型是否和程序设置的一样,程序默认用的是LC307,切换传感器类型参考问题5中的链接。

9、飞控四个串口同时采集传感器数据,应该如何设计中断优先级

完整问题:飞控如果需要通过三四个串口同时采集多个传感器数据,应该如何设计中断优先级,会不会出现当某一传感器发送频率过快时,一直占用改串口中断函数而进不了其他串口中断呢?这种该如何解决?

答复:首先这里需要明白一点,串口通讯波特率与数据传输时间的关系,以无名飞控GPS解析为例,正常工作时,GPS工作以波特率921600,8个数据位,一个起始位,一个停止位。921600bps/(8+1+1)bit=传输92160字节/s,故串口传输一个字节用时1000000us/92160≈10.85us,这里可以简单计算一下,飞控接受pvt语句开销92数据位+2检验位=94,94*10.85约等于1.02ms,与飞控实际测试时间基本一致,实际也可以测试115200、38400通讯时开销分别为8.53ms、25.6ms,接受单个字节耗时分别为86.8us、264.4us。 以GPS解析为说明串口传输时间后,再来考虑中断问题,首先为保障数据不丢帧,当只存在一个串口中断时,该串口中断内部函数执行时间,务必要小于该串口的传输一个直接所需的时间,以波特率115200的串口1为例,串口1的中断函数执行时间务必小于86.8us,即串口1的下一个字节传输来之前,上一个字节的串口中断处理函数务必运行完成,否则数据就会丢帧。

所以一般来讲,串口中断函数里面都不会去执行大段时间开销的任务,目的就是确保不丢帧,常用的办法是在串口中断里面采用环形队列缓冲区存储数据,数据解析用低优先级的任务去处理。 环形队列缓冲区存储函数的执行时间在STM32F1里面大概2us不到,在STM32F4里面不足1us,所以当串口中断函数里面只运行环形对接缓冲区存储函数时,即使以波特图921600(传输一个字节10.85us)通讯,数据也不会丢帧。 当存在多个串口接受函数时,此时以STM32F1为例,假设环形队列缓冲区存储函数的执行时间在STM32F1里面为2us,此时存在6个串口中断以波特率921600同时运行,各中断彼此之间不能打断,但是存在子优先顺序,同一时刻6个中断全部挂起,这个时候系统首先响应子优先级第一的串口中断接受函数耗时2us,接着依次响应子优先级23456,当第6个串口中断函数刚开始执行时是第10us,在10—12us时系统正在执行第6个串口中断函数,在10.85us时刻,下一次串口中断又来了,此时便发生了数据丢帧。可以可以想一下,此时在不丢帧情况下,系统能设计的最大串口中断数为5个。

上面是以很极端的例子说明了丢帧在实际系统中是怎么发生的,一般串口通讯波特率不会到921600这么大,并且不是每个串口都必须工作在同一波特率,当工作波特率为115200时,串口接收单个字节为86.8us,此情况下系统能够执行足够多的串口中断函数,仍然能确保不丢帧。所以当系统所需串口中断很多时,可以通讯把波特率降下来,来确保不数据丢帧。 以上只考虑了串口中断彼此之间开销,当系统存在比串口中断接收优先级更好的中断任务时,比如利用外部中断的ppm接收、超声波测距等,为了确保串口不丢帧,需要优先级高于串口中断的任务最大执行时间+串口中断函数执行时间,务必小于串口接收单个字节所需的时间,才能确保不丢帧。

在这里插入图片描述

总结:

1、多个串口通讯时,串口通讯波特率可以降低一点。

2、合计设计优先级,当存在不同波特率通讯时,通讯波特率高的串口中断优先级要高于波特率低的。

3、存在优先级高于串口中断的其它中断任务时,其它中断任务的总的最大时间开销也要考虑。

10、磁力计为什么不能像加速度计一样椭球校准后就可以了吗,为啥你还写了个磁力计的倾角补偿 ?

把概念搞混了,校准是处理传感器因内、外因素导致产生的测量误差,传感器原始数据不能直接使用,需要用校准参数修正再去做融合。

加速度计、磁力计都是椭球拟合,为什么加速度计要六面静止放置而不是像磁力计校准那样,一边转动采集数据,等到拟合结果满足要求后自动结束……,原因在于加速度计在飞机转动的过程中,会测得运动加速度,我们需要拟合的是重力加速度,所以只能摆到某一位置静止。

之所以6面是因为校准出加速度拟合椭球参数至少需要6组数据,这6组数据只能保障拟合出一个结果,但这个结果是不是能够满足我们要求得看样本数据是否能充分、丰富的反应传感器的误差,显然当采样数据只有六组时,按照APM规定的6个面放置,能最大程度的保障重力加速度作用在加速度计上输出偏置能尽可能取到取到接近真实的最大最小附近保证样本数据组成的矩阵满秩,这样拟合出的校准参数结果误差会尽可能的接近真实误差模型。

我们完全可以不按照APM规定的6面来放置飞控,自己将飞控严格静置,摆放N个面后,采集N个样本再来做椭球拟合,N个面摆放数据能用的大前提是每个摆放位置确保静置再采集样本(显然没有转台的协助手动操作的情况下,要想保持严格静置当然是6个面摆放更容易实现),否则运动起来加速度计输出会含有运动加速度,这个时候拟合出来的结果误差自然很大,最直观的重力加速度1g,你随便手抖一下就几个g,再优秀拟合算法都没法玩

磁力计为什么可以,因为磁力计对惯性力的影响可以忽略,即你不管怎么转,磁力计原始数据都是反应的当前所在磁场环境大小,这样每一个样本点都是有效的,同样为保障拟合出的结果精度足够高,我们采集了两/三个面内,均匀分布的若干个角点数据去做拟合。这里同样可以思考为什么不用6个面内若干个角点的数据,校准磁力计转6圈,答案是没有必要,因为两/三个面内的数据拟合出来的精度就能满足我们的实用要求,数据拟合到最后校准参数会收敛到某一个常数附近,实际有效的新增加的样本对拟合结果的影响越来越小。 磁力计倾角补偿自行脑补,两个问题没有关联,知识星球里面有答案。

11、TIVA飞控实现串口0接山外串口调试助手接虚拟示波器要怎么弄?

第一步:改串口0波特率为115200,因为山外地面站波特率设置不到921600

在这里插入图片描述

第二步:将山外数据发送函数,添加在main.c函数while(1)里面

在这里插入图片描述

在这里插入图片描述

12、我想问下飞控支持fs-ia6b接收机吗?我现在ia6b ppm模式接到飞控,只要遥控器开机,地面站上的数据就挂死不动了,大概是啥问题?

​ 追问:挂死不动意思就是所有数据读数都没有变化了,就像是串口没接好一样

​ 按你发的图片结合问题描述,大概率是你只用USB转TTL给飞控供电接收机工作下功率增加后,usb转ttl供电就绷不住了,usb转ttl和电脑端掉了,解决办法:用单独的5V/3A稳压模块给飞控供电。

13、我们飞控收不到遥控器数据,用的FS I6,按教程刷过10通道了,也设置了接收机输出PPM,弄了好几天了,地面站就是不显示遥控器数据?

在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pHlX21kI-1650200134153)(img/image17.png)]

此处排针不焊接,100年都不会有遥控器数据,飞控从此处引出了核心板的PPM信号,具体看下原理图,以及下面的视频教程。

保姆级无人机新手教程:TIVA Launchpad扩展板飞控排针处理与使用STLINK下载时接线注意事项

https://www.bilibili.com/video/BV1dp4y1b78j/

14、我按照小哥的视频把遥控器刷成10通道了,把5-8通道分别设置为swa-swd了,但是我还是不明白,说明书推荐的是ia6b的接收机,这个接收机是6通道啊,那两个通道怎么扩展?

遥控器未刷前只有6ch,接收机最多只能收到来自遥控器收到的6个通道数据,但是一帧标准完整PPM数据必须含有8ch数据,所以未刷时,原来接收机输出的PPM信号的7、8通道为缺省无效值,遥控器刷写固件升级10ch后,遥控器5~10都可以进行映射设置,所以接收机最多能收到遥控器的10ch数据,当接收机支持PPM时可以输出8通道、接收机支持sbus时支持10通道

15、首次装机后解锁操作飞机起飞时,在地面往前翻是什么问题?是没有校准好吗?

拍个视频看下,遥控器怎么操作的也拍下;

飞机地面解锁,向上推油门之后飞机原地翻车(不能正常离地面、直接在地面翻滚),排查顺序如下:

  • 首先排查装机问题:比如飞机机头是否装错,电机转动方向、螺旋桨的正反、电调信号线与飞控PWM接口是否对应

  • 其次排查加速度计校准,机架水平校准,特别是后者;

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-y4BT5bxV-1650200134154)(img/image18.png)]

  • 最后排查是不是自己操作无人机不规范,解锁后长时间不起飞并且遥控器油门又不是放在低位,推动油门不果断,飞机长时间处于地面游离状态(将要离地又不敢继续推油),导致控制器积分异常,导致比较大的控制器不合理输出。

16、如果将飞控主板上下颠倒安装,代码逻辑需要做调整吗?

我这样装之后加速度传感器有两个轴的方向与之前相反,我需要看看坐标系怎么调整?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iWmpHCtN-1650200134154)(img/image19.png)]

比如剪头方向作为机头,程序修改如图:

| [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-v7PgbZaf-1650200135227)(img/image20.png)]
| [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MCCE8sJS-1650200135228)(img/image21.png)]icm20689轴向同MPU6050 |

| ------------------------------------------- | :----------------------------------------------------------: |
| [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D4gei3dW-1650200135228)(img/image22.png)]
| [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-S198rxeM-1650200135228)(img/image23.png)]
|

17、之前飞行平稳,炸机之后,也校准过陀螺仪和机架水平了,现在起飞会明显后倾,也能起飞成功,降落偏移也特别大,都是朝后方向,这是什么原因呢?

检查一下硬件,首先排查动力比如电机转动是否流畅、飞起来是否有异响声,电机轴承变型、某个电机严重发热,飞起来抖桨严重等,如果是金属机架看下机臂是否发生变型。

18、我们飞机光流定点起飞时能垂直起飞,执行任务完毕后,降落会有一定位置漂移,请问小哥这怎么解决?

按你的描述你用的应该是程序里面自带的自动返航降落模式,此模式下室内无GPS环境下,是直接下降,水平方向上为纯姿态控制,没有位置、速度修正,可以使用开发者模式里面的光流定点条件下的降落

19、纯白色软垫上开定高光流起飞会不会起飞时就因为光流问题而飞偏?我之前有一次在纯白软垫上起飞直接就斜着飞出去了

补充:只是之前偶发性的在白色软垫上飞的时候出现了那么几次,在有黑线的瓷砖地板上飞没出现过这种情况,我在想在起飞过程中会不会可能因为纯色地面致使光流融合位置、速度出现偏差,得到的姿态倾角不对导致斜着出去吗?
同学2回复:我的有时候像是室内灯光不均匀,起飞的时候无人机在地上的影子动了导致光流误判,起飞就会偏一下

光流定点起飞水平偏移偏大,考虑加速度计校准、机架水平校准,再着就是推油果断一点,减小地面游离过程,干脆利落离地,避免地面长时间姿态积分控制输出太大,导致初始起飞不稳。按你的描述白色软垫会发生形变,导致飞机初始姿态出现较大误差,如果再加上推油门不及时更加重姿态积分异常的情况,这种情况和光流数据关系不大。

20、我自己组装的飞机,在完成SDK任务后,降落到地面之后,飞机自动上锁有时会失灵,会在地面一直怠速停不下来或者需要较长时间停下来?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e9KjBjzA-1650200134155)(img/image24.png)]

根据你的视频来看,降落后长时间不能自动触发地面上锁,大概率是自己飞机脚架过高且为塑料结构,降落速度偏大后落地后回弹,飞机在地面脚架一直在抖动,这种一直震动情况,无法满足程序里面设定的自动上锁条件,在不改变硬件结构的前提下,尝试调大调小图中阈值参数,上箭头表示改大,下表示改小。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zXYD4ATc-1650200134155)(img/image25.png)]

再者下降速度过快,可以考虑不同高度分段速度控制,比如接近地面后,下降速度调小一点。

21、SDK模式写进去让四轴按既定轨迹飞,自己用遥控器操作没问题,但是现在用ADC按键接上,按解锁按键后飞机不启动是什么情况?

先看下ADC按键原理,了解怎么实现飞控接入ADC按键,然看排查自己程序ADC按键使能是否已打开,最后在不装螺旋桨的情况下,初步测试解锁、上锁、降落等操作,上述测试没问题后再进行实际飞行测试。

如不能实现控制检查硬件连接、按键背面焊点处理、程序使能等、阈值不合理问题。参照如下视频链接:

保姆级无人机入门教程_TI电赛飞行器新版本按键安全绳方案解析

https://www.bilibili.com/video/BV1TM4y1N7D5/

按键控制功能与模式操作讲解——无名创新TI电赛飞行器无遥控器按键控制方案

https://www.bilibili.com/video/BV1Gq4y1E7XM/

22、为什么SDK开发按键按下,不会改变遥控器通道数据?

先排查程序ADC按键使能与硬件连接后,主要考虑以下可能:

  • 按键按下的电压值和程序预设的阈值不匹配

  • 自己打板设计的按键电阻焊接错了

  • 按键偏置电压弄错了?3.3V和5V弄混了,或者电压不标准

23、飞机上电后一些时候会在温控校准好之前自动进入这个磁力计校准界面,请问这是为什么呢?注释掉了ppm也依旧有这种现象。

程序ADC按键控制使能了,但实际使用中却没有接ADC按键硬件,会导致单片机ADC端口电压值随机,将无人机的控制权限给到了一个ADC端口随机电压值,进而会出现错误的ADC_PPM_Buf数据,解决办法:ADC按键程序使能的情况下,需要保证ADC按键持续接入,ADC端口不得悬空

24、我们飞机在一开机后,会自动进入磁力计校准界面,没有接ADC按键,程序也没有使能?

飞机在接入IA6B、IA10B两款接收机PPM信号时,当接收机工作,遥控器却未开机时,也会出现此现象。

根本原因是这两款接收机输出PPM信号的通道和PWM1通道复用,当遥控器没有开机的情况下,接收机并不清楚自己的第一通道该输出PPM还是PWM,因为使能PPM输出这个设置是在遥控器做的,没有遥控端的信号,接收机只能按默认输出PWM信号,进而导致遥控器解析错误。解决办法:用这两款接收机复用输出PPM信号时,请保持遥控器持续开机。

25、我们飞机今天解锁起飞后,光流定点情况下,方向杆位回中状态下,飞机会一直莫名转动,需要手动反方向打偏航才能让它停转动,回中后就又才是转了?我的飞机加装了磁力计,是这个磁力计的问题吗?

相同问题:比如加速度计6面校准时,存在某些面不能正常采集数据,凡是遥控器操作相关的都优先排查此项

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uu3y9kra-1650200134156)(img/image26.png)]

磁力计干扰不会导致飞机持续偏航转动,按你的描述问题大概率是遥控器行程校准问题,看下显示屏第三页就清楚了。可能是自己或者队友不小心动了遥控器微调行程,使得遥控器实际动作虽中位,给飞机的期望偏航角速度不为0,飞机一直有一个期望角速度,你说飞机该不该转。解决办法:重新调解下行程微调或者重新校准遥控器行程。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6H2EbGHv-1650200134156)(img/image27.png)]

无名创新——新手遥控器行程校准教程 “疑难杂症”之终结回复https://www.bilibili.com/read/cv1410689

26、按你之前讲的排查光流问题的顺序,我的飞机光流数据有数据的,光流传感器类型设置也没错,对地激光传感器也有数据,而且反馈量这些也在位置期望的2cm上下的,但为什么飞机光流定点无明显效果,会往一个方向一直飘走,为什么?

光流能正常工作有三大前提

  • 光流传感器接入且型号设置正确
  • 对地测距传感器接入且有数据
  • 光流方向安装正确

其次拍下你的飞机光流传感器咋装的?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OurbxfRY-1650200134157)(img/image28.png)]

破案了,注意光流视野范围内不要有遮挡飞的时候光流也是被线盖住吗?试想下眼睛被罩住成这样还能看到啥。

27、如果赛题要做形状识别或者特征点识别,适合用OPENMV MINI这款吗,这款好像没有看到接TF卡的位置。还有OPENMV MINI的尺寸图能发一下吗?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xuXunXp5-1650200134157)(img/image29.png)][外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GkdAVfF1-1650200134157)(img/image30.png)]
在这里插入图片描述

看下OPENMV背面有TF卡槽,可以存储训练模板信息。

28、我们这种激光直接用在蜂鸣器的口,用高低电平控制,那是只要接iO口正负两条线就好了吗?

IO口控制激光io拉低激光还是很暗,但是接板子gnd可以很亮?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xJnqrckd-1650200134158)(img/image31.png)]

先查一下自己激光头的参数,这种6MM小激光头常用有3V、5V,9V、12V电压版本,3V、5V版本的功率约为5mw,这两款理论上只需要1mA驱动电流就可以使之正常工作。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cNHP1C7R-1650200134158)(img/image32.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sNYpBMtZ-1650200134158)(img/image33.png)]

采用高电平为3.3V电压的IO直接驱动激光传感器时,也只有3V版本激光头可以用,直驱时建议采用灌电流的方式接入激光,即将激光头的正接稳压模块输出的3.3V,负极接单片机IO口,单片机低电平时激光头点亮。其它电压版本激光头就必须借助MOS来间接驱动了。

29、我们飞机不接磁力计,起飞时机头方向不旋转,接磁力计反而会旋转。校准后刚开始飞的两三次还行,后边就不灵了,还有起飞直接转十几度。我们用手机测试过磁场,环境磁场还是比较稳定的。这种情况可能是磁力计传感器的质量问题吗?

回复补充/追问
如果磁力计校准无改善,考虑是不是自己现场环境磁场干扰太爆炸了重新校准两遍了,还是那样,要不我换个磁力计试下?
大概率和磁力计传感器好坏没有关系,可以试下换个场地对比一下那我先换个地方试试
最简单的测试磁场干扰办法,看下飞机放地面和空中对比,磁场强度变化大不大,飞控的显示屏第二页可以看磁场数据,地磁约为0.5 Gs,看数据变化情况很容易排查我们再研究研究,地面上铺设有铁板会影响吗
破案了呀,铁钴镍常见的磁类物质呀明白了

30、定高档位飞的时候微调还是挺稳的,但是一打开光流档位飞机就开始无规则倾斜,这是怎么回事呀,我的光流和openmv固定在机腹。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7Pbla3Vf-1650200134159)(img/image34.png)]

回复补充/追问
用什么型号光流?光流类型设置对了吗?光流方向安装是否正确?LC302,”发光流安装图、光流传感器类型设置“,确定没有问题
那你拍一个光流定点的飞行视频看下好,我待会飞一下
你看下你的环境,地面乌漆麻黑,光线这么差咋定点这个LED不够亮对吧
还有你把飞机下面晃来晃去的接收机还是数传固定好,挡住了光流视野,本来飞机没动,下方物体晃来晃去,光流就以为飞机动了,这样肯定没法定点的好的好的,这是我测试的时候图拆卸方便,这就去改

31、电机如果换了要在这里把默认参数也换了吗?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QdCUVGaF-1650200134159)(img/image35.png)]

可以先不用,参数有较大范围的适用性,实际测试如果效果不理想,再结合现象微调内环角速度参数,主调PD辅I,PD参数以1.2~1.5倍梯度调整。

32、我们飞机姿态模式下推油门有反应,定高模式下解锁后,推油门及时过了中位油门也没有变化,感觉像是定高不起作用一样,油门不会增加这是咋回事?

回复补充/追问
是否用的新版本代码,下载新的代码后?以前用的是2020年的代码,现在环2021年的新代码,结果就出问题了。
是否有接地面站恢复出厂设置?有接过地面站,是否有恢复出厂设置,这个记不得了,回头我再弄一下
代码版本更换,下载程序后需要恢复出厂设置一下,不同版本代码里面参数储存位置、系数有调整,所以得清空EEPROM数据,特别是跨了年份的代码版本。点了恢复出厂设置之后记得重启飞控,再接地面站看数据好的,今天太晚了,我明天试下
记得把你恢复出厂设置之后的地面站参数调试界面截图发群里面“隔天之后发地面站参数调试界面截图”[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ePnopG8c-1650200135229)(img/image36.png)]
中间一栏,读取其它参数高速度速度参数这些,里面的读取也点过对吗?是的
破案了呀,你看下你的参数里面最大上升速度、最大下降速设置的是0,回到最初始你描述的现象,定高模式推油门没反应——你推油门时期望向上速度给的是0,飞机就自然待在原地一动不动了。嗯嗯,明白了

总结:

  • 代码版本更换之后(或者实验室翻出来的旧飞控需要重新使用时),下载程序之后,记得一定要接地面站点恢复出厂设置,恢复后重启飞控再接地面站

  • 地面站参数调试界面,首次进入时,飞控并不会主动发参数给地面站,需要先手动读取参数按钮,飞控收到参数请求后发送参数后,地面站才会有显示,不然参数栏里面全是0,切莫在不操作读取参数的前提下就直接点写入参数这样会将飞控参数全部设置成0,这种情况下就只能点恢复出厂设置来恢复了。

  • 按以往经验来看,新手定高模式推动油门,飞机油门无变化的,百分之90+都是因为自己地面站操作不规范,将上升/下降最大期望速度误操作写成了0

    现象类似解决办法用了两个多月没碰过无人机地面站,无法理解
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GCuH0MHI-1650200134159)(img/image37.png)]

| [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oUIJcZ2M-1650200134160)(img/image38.png)]
|

33、我们飞机用遥控器飞可以正常飞,但是用的一键起飞代码起飞后会漂移一直向右上角飞,代码可用的只是很长时间了,再飞的时候就这样了

飞控放置几个月以上,再次飞行时,先检查减震器球头是否有松动,把减震手动全方位的晃动一下,其次把所有的校准操作一遍再起飞。

34、头疼,现在在去年的亚光纯白赛场上,速度稍微快一点就定不住点了

白色背景特征少,不利于光流发挥全部性能,比赛过程中光流作用只要能让飞机在小速度范围内做到速度可控就行,主要是依靠赛场视觉特征做更为精确的位置反馈,光流只是让飞机速度可控,不能提供绝对的位置信息,短时间内距离数据可以作为参考,长时间数据没有用处。

喷绘布全白背景基本上速度有效范围只有不到20cm/s,但是纹理清晰的地面可以到300cm/s都是没问题的,这个20cm/s的控制裕度比赛已经够用了,怕的就是条件相信光流速度信息,不依赖视觉、测距传感器反馈,硬刚光流积分距离,不结合实际环境去做闭环方案,这种往往挂的最惨。

35、SDK位置控制里写的飞机向前飞1m,结果到1M了停不住,大概1.3的样子,是咋回事,光流坏了吗,还有请问无人机飞不了直线,老偏怎么解决呀?

同学2附:光流是通过像素和模块之间的相对运动得到运动速度,地面假如全是白的,飞机区分不出来视野中像素的区别,所以可能飞了也会觉得还没速度,
上次我在学校楼里灰色花瓷砖那里,飞的距离就正常。

回复:光流数据和IMU融合得到的位置、速度状态估计信息只能作为辅助参数,数据精度很大程度依赖于环境光线、背景等因素,无条件的相信光流融合数据不可取。

经费够的同学可以考虑更有效靠谱的定位方式,现在比赛已经开放了限制,可以使用机载计算机平台,可以搭载激光雷达SLAM建图或者采用T265追踪相机定位,对现场环境适用性好,精度高,相关产品介绍如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-2pUp88YX-1650200134160)(img/image39.png)]

激光雷达版配置了思岚Rplidar A2/乐动机器人LD06和单目摄像头,增配的激光雷达传感器可以实现无人机的SLAM自主建图,高质量的输出全局地图的位姿信息,相较于普通光流定点的方式中的“痛点”问题,激光雷达SLAM定位具有环境适应能力强、输出当前环境的绝对位置信息、 定位误差不随时间累计漂移的优势,传统竞赛方案中光线、背景等不利因素均可以迎刃而解,参赛队伍可以实现**位置的全局闭环控制,学生可以逐渐摒弃以往不完备的半开环、挑环境、部分靠运气成分的“盲飞”**比赛方案。

在这里插入图片描述

同时激光雷达SLAM可以输出航向信息,可以解决传统方案中无磁力计融合航向累计漂移、有磁力计融合时,在低空或部分磁场干扰环境影响航向对准问题。下面给出本2021年国赛植保无人机赛题的开源方案。

5_竞赛无人机搭积木式编程 ——以2021年电赛国奖标准完整复现为例学习

https://www.bilibili.com/read/cv15844252

36、如果今年无人机题目也和19年一样使用纯白地面或者是摩尔码,是不是就不能使用对地光流,得考虑对天光流或者别的方案。

补充:在大理石地面上光流效果还行,在这种亚光地面上,光流就跟瞎了一样乱飘
同学2回复:这种地面大疆商品机都无解

在这里插入图片描述

不知道今年是啥,事实是有的比赛现场大家想换什么背景都可以,有些甚至可以还自己带,绝大多数赛区用的都不是摩尔纹背景,相信比赛中这种无脑的要求设计不会再出现就怕自己的赛区组委会比较智障,如果再出现怕四天三夜来不及学。那小哥除了对天光流您还有啥比较好的方案吗
对天只是噱头,更不靠谱,我们最先出了对天方案然后给了程序demo演示,就有人跟着抄,有些自己都没有实际验证飞行,就去不负责任的宣传支持对天,对天只是作为一种不得已备选方案,实际上对天不可控性会更大,地上都不确定,天上能看到啥…好的
别的方案——这两年陆续放开了比赛限制,预算够的队伍首选搭载机载计算机的激光雷达SLAM解决方案经费在燃烧,得吃土了。。。

37、我们飞机前部和底部的两款OPENMV型号不一样,这种情况还能用飞控里面OPENMV MINI相关参数吗?

类似问题:我的俯视摄像头如果切换成广角摄像头,那我函数里边是不是要改这块呀?

看下这个教程,弄懂OPENMV数据是怎么转换的,然后根据实际镜头参数,自己重新定义一组焦距参数和广角参数解析就可以

四、无名创新—TI电赛无人机MSP432飞控与OPENMV数据交互及目标位置倾斜校正

https://www.bilibili.com/video/BV1Lh411m7m8?spm_id_from=333.999.0.0

38、想请问下加速度校准时,正、反面校准不了是怎么回事啊(附自己操作的视频)?

回头再去看一下加速度计6面校准视频教程,进入加速度计校准界面后,通过遥控器指定哪一面采集时,对应动作打杆100ms就好了不需要一直持续保持该动作位,你这样一直持续打杆,会让一直采集该面数据。再者第六面时你如果这样持续打杆操作,长时间保持上锁的动作,飞控会进入强制退出当前校准模式,进而导致校准失败。

39、我想问一下地面站里面恢复出厂设置和恢复默认有什么区别?

恢复出厂设置是指将存储在EEPROM的数据全部清空,这样飞控在重启运行后,飞控在初始化读取相关参数过程中,发现EEPROM没有数据,就会将程序预设的默认值作为当前参数。恢复出厂设置不仅仅是清空了控制参数,也包括传感器校准参数、电调行程参数、传感器类型设置、SDK设置等。所以恢复出厂设置后,需要对飞控重新进行一系列的校准,校准完毕的参数就会再次保存在EEPROM中,每次上电后会优先加载EEPROM中数据

恢复默认参数,是指将PID控制参数组或者其它参数组等,部分参数组恢复到默认预设值,本操作并不会清空全部EEPROM中的数据,只会将EEPROM数据部分字段的数据重新写为默认值。除此之外的其它数据片区,没有做任何改变,因为恢复默认参数并不需要重新对飞控进行校准操作。

40、操作解锁后,电机不转是什么原因?

首先看下自己遥控器行程范围是否满足飞控默认的1000-2000标准,其次对电调行程进行校准,电调校准完毕时记得看下自己电调的起转油门值,如果实际起转油门大于飞控预设的解锁怠速值1100,解锁后电调自然也就不会转动。

41、我想用飞控多余的PWM口去控制舵机该怎么弄,程序需要更改吗?

补充:用的是MG995_180的舵机

在这里插入图片描述

  • 首先把飞控预留串口5678通道的PWM的周期调整为20ms,原来默认是200hz—5ms;

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XACq03XO-1650200134162)(img/image43.png)]

  • 其次程序里面为了整机接线方便,将飞控PWM口1234通道与预留PWM口映射成了同输出,EPWM扩展舵机时需要将原来PWM_Output函数中的EPWM_Output部分注释掉。

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-PPscwpAJ-1650200134162)(img/image44.png)]

  • 最后用户自行调用EPWM单独驱动舵机即可。

42、求教,用了tfmni做为对地测距传感器,如果开定高的话就是这样,姿态模式就不会这样抖?

“”附有视频显示,听声音能感觉空中油门变化骤变的这种,实际飞机现象是上下震荡离谱“,视频中最后学生表情很绝望——初步诊断为高度控制参数爆炸

回复补充/追问
把飞控接地面站,参数调试界面,读取一下参数截图后发群[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QAKzOqQ7-1650200135229)(img/image45.png)]
              |

| 学生没有听清楚要求,发的是飞控状态显示界面(估计也是第一次将飞控接入地面站),再次指明参数调试界面 | 不好意思,电脑上没登qq,只能拍照,麻烦你将就着看一下[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9PjUXt9y-1650200135229)(img/image46.png)]
|
| 破案了(和刚看视频开始预判的一样),飞控高度位置参数P是默认值的4倍,最最离谱的是加速度计参数P是默认值的18倍,加速度计环积分参数也是严重不合理。 | 啊。。。 |
| 飞控是咸鱼收的还是实验室留下来的? | 学长之前的,他们之前做过比赛 |
| 去把之前的学长锤爆,为了不坑下一界学弟学妹,所以你现在得加倍努力 | 请问直接在地面站上恢复出厂设置就行了吗 |
| 建议直接用最近统一更新版本代码去学习,学长给的代码就别用了,能调出这种参数的人,写的代码真的很难让人信服了。 | 下载新版本程序之后,点击恢复出厂设置,然后把加速度计什么的都校准一遍 |
| 是的 | 然后再测试? |
| 看着你拍的视频,最后的无奈表情,有点想要落泪,不靠谱的学长是万恶之源,高度加速度环参数是默认的20倍,你叫它高度不抽抖。。。 | 好的谢谢 |

新手切记:

咸鱼收的旧飞控、从别人手头拿过来的飞控、实验室传下来的飞控,到自己手上重新下载程序后,一定要接地面站恢复出厂设置,不然可能会遇到各种神话故事、玄学问题。

43、现在tof激光反应特别慢有可能是什么原因,我把飞机抬高,需要过好一会,才会显示新的高度

回复补充/追问
接地面站看下数据波形,或者下载原始程序对比看下,是不是自己改的代码出了bug好的
发的波形是融合后的高度,你得看下激光测距传感器原始高度下的新代码,还是这样
换个激光传感器对比试下找到问题了,摄像头镜头盖子没打开,激光传感器是用配套OPENMV扩展的程序,为啥盖住镜头会影响高度解析
对比下盖住前后FPS数据就清楚了

44、小哥我们在飞行途中打印对地tof的高度,发现实时数据大概在35到85之间波动,然后我们代码里设置的是50cm定高,请问有没有啥好的解决办法呢

附问: 我们的飞机定高也会在30到50cm的范围内波动,这是正常现象还是有其他的原因

看下自己代码版本是不是用错了,昨天更新的代码是针对新版版扩展板的,新版本扩展板上功率电阻和旧版本不一样,二者的温控部分PID参数也不一样,新的代码不能直接用在旧版本硬件上,会导致温度波动造成加速度计漂移,进而影响高度融合、加速度反馈等,最终影响高度控制效果。

45、我想问一下,为什么在定高模式下降落到地面后,手动上锁的时候会有一段加速,才会上锁?还有在纯姿态模式下调节完pid后,切到定高模式后,飞机再在飞行时会有高频率小范围的震动

定高模式下降落到地面后,如果是一落地就执行上锁动作,这个时候油门还未降低到较低值,立马执行上锁动作会让飞机误以为还在空中,所以上锁动作会造成偏航方向控制器输出很大,进而造成电机加速的情况。实际定高模式操作无人机降落后,保持油门杆位持续拉低一段时间后,就会触发地面检测条件自动上锁,自己装机时这个自动上锁时效性往往会和降落平稳程度、是否有撞击、起落架是否有自振相关,所以自组机没有调试稳定的前提下,一般不推荐一落地就立马手动执行上锁动作位。对于因机架起落架自振等原因不能及时自动上锁的,可以在保持油门拉低一段时间再手动上锁

高频率小舵量的震动考虑PD参数偏大,调试架上由于飞机附带了万向云台、转接板等外设,并不能完全模拟实际飞行的情况,把调试架上调好的姿态参数,在实际飞行时,往往需要再略微调小一点才能适用实际飞行,通常将角速度环P、D参数乘以0.8再去实飞

如果调试架子上不方便调偏航参数时,可以将偏航角度P值和水平俯仰、横滚参数给成一样,内环偏航角速度参数P为俯仰/横滚角速度的2倍

46、我们之前电源板烧了,重新拆了更换之后,现在光流定高和视频中用超声波测距绕杆,飞机会很抖,非常不稳,请问这是光流的问题,还是机架的问题(拆飞机的时候有个机臂有点搞弯了)

机臂变形的要及时换掉,还要检查电机是否有损伤,并不是能转就行,排查轴是否弯了、转动是否流畅、转起来是否有异响、飞起来后是否发热异常等问题,更换电机和机臂后在把加速度计、机架水平校准一遍就行。硬件该换的必须更换,特别是用超声波定高的情况下,超声波数据本身就容易受到震动影响。

47、我们自己按开源方案做的按键有两个按键按下电压值居然是一样的,这是啥情况?

另一个同学回答:他四个按键有三个是正确示数,一个不是,有没有可能按键本身电阻有问题

有,先看下自己按键电阻是否有焊错,把电压不对的那个焊接电阻测下,看下是否和方案中的阻值一样,一定要拿万用表实际去测,不测只空想永远都是在真相周围打转

48、上电之后,电机一直嘀嘀嘀的响是怎么回事?

附加:程序运行就出现了LOGO,而后就这样,芯片也不烫,灯也亮了,扩展板电压也测了,不知道问题出在哪里?

飞控烧了,大概率是扩展版上的IMU坏了,导致飞控初始化自检无法通过,进而输出不了PWM,电调上电检之后测不到PWM控制信号,就会驱动电机报警提示。

49、买的TOFSENSE激光模块,店铺配套送的绿色小板起什么作用呀?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9wIePcGa-1650200134162)(img/image47.png)]

店铺附送的绿色板子是用于处理不同规格接头转化用的,TOFSENSE结构为GH1.25,飞控端接口为SH1.25,市面上没法直接买到两端分别是两个规格的接头,中间需要通过转接板来连接。将两者规格的单头线焊机在转接板上,处理完毕后用热缩管套上。同时这个板子也可以用于扩展I2C外设或者串口查询方式解析多个外设的情况。

50、我们飞控识别不了OPENMV,这是什么情况呀?

相同问题:我们的openmv接在飞机上,用电脑调试的时候能够正确的设置openmv的模式 但是,当我不调试的时候,给飞机上电,openmv就不能工作,好像连第一个模式都无法进入
  • 首先排查对应的视觉程序是否有正确下载到OPENMV里面,对应的视觉程序是飞控代码工程文件下下

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BPLA8m2A-1650200134163)(img/image48.png)]

新手常犯IDE在线运行OPV能识别,从电脑端拔掉后却识别不了的情况,根本原因是OPENMV程序没有正确下载到OPENMV里面,导致离线时OPV无配套视觉程序运行。

  • 硬件接线接触不良、线有问题、串口线是否有交叉

  • OPENMV串口坏了

  • 飞控串口坏了

    若在线调试时可以识别,就可以排除后面三项问题,着重考虑第一项程序下载问题

51、今天带电拔耳机线把IO口4可能给烧了,现在把ADC接到IO口3,测按键的ADC值是完全正常的,想请问一下,把IO口4的配置改成IO口3的配置的代码,应该改哪一部分呀

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jStNxvDV-1650200134163)(img/image49.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r5GNOcOy-1650200134164)(img/image50.png)]

具体改了代码圈红处两行,至于为什么要这么改,可以先不去研究,比赛临近,时间有限,抓紧时间做有高附加值的事情。

52、两个OPENMV同时工作,每个OPENMV都有多种处理模式,该怎么样和飞控模式对应起来?

某个任务阶段要用前视还是俯视这个是由赛题决定的举个例子,去年省赛为例,粗略的来看:

起飞后,需要识别塔杆,用的是前视识别,假设设定先识别红色塔杆,飞控需要发送识别红色塔杆指令,这个指令对应的就是一个opv的work mode

当识别到红色塔杆后,用前向opv识别的数据+前向测距数据,完成绕杆操作后,需要识别绿色塔杆,这个时候,飞控需要发送识别绿色塔杆指令,同样对应前向opv的另外一个work mode。

同理当识别到绿色塔杆,并且绕完后,需要利用底部opv识别降落标志,此时飞控需要发送识别黑色圆圈指令,底部opv识别到黑圈后,可以将控制切换成追踪色块模式,就可以实现移动到降落区正上方,之后直接给个期望速度下降即可,下降过程中,丢失目标前都会一直对准降落区,高度太低丢失目标也没关系,会以光流定点方式降落

上述方案列出的不包括航向对准,以及绕完杆后寻找降落点等细节处理过程

总而言之:弄清楚比赛要求,OPENMV工作模式是由飞控当前任务决定的,搞清楚完成任务中各个阶段子任务对应子任务需要哪个视觉参与工作以及对应的OPENMV工作模式、同时需要其它传感器配合。

53、通过按键操作遥控器行程校准,进入界面后无法保存数据或者校准之后的最小值为0?

  • 首先弄清楚按哪一个按键进入遥控器行程校准,简单来讲就是显示屏向上翻页的是操作按键进入校准向下翻页是校准完毕之后按下保存校准参数按键。

  • 其次需要注意的是操作按键进入的前提是飞控上电的同时需要保持按键持续按下,初始化程序运行很快,所以建议是先按下向上翻页按键后,再去给飞控供电,插上电再去按按键人是反应不过来的。

  • 整个校准过程需要保持遥控持续开机状态,进入行程校准再去打开遥控器,就会造成最小值为0的异常情况。

  • 校准完毕后,需要点击下一页保存当前校准结果。

54、我想把这架飞机改成参赛用机,我手上有一块官网申请的MSP432核心板,我是只要再买一块店铺432的拓展板就好了吗,还要不要买其它的东西?

同学2附问:小哥,有没有必要自组机架啊?到时候一上场发现大家飞机都是无名的,长得差不多都一样会不会因此被扣分啊
比赛已经临近,我建议你就用现在手头这套不会被裁判判定为成品机嘛
按以往标准来看不会,NC330上面的所有模块都是独立可拆卸的,飞控也是用的TI官方主委会的提供的LaunchPad评估板组委会自己发的东西都不能用,那岂不是打自己脸,用官方核心板飞控的体积会略大一点,主要是为了避免不必要的麻烦。再者机架、电调、螺旋桨、电池、传感器等设备都是可以单独买到的,并且配套有全套组装教程,裁判不会因为你用的是NC330机架而判定为成品整机,因为在他们眼里,本质上这和你去别处买QAV280、F330、S360/380等机架没有任何差别,都属于无人机的通用组成配件,除非比赛要求中出现需要自己独立设计机架,并硬性要求加上LOGO日期,当然这种情况也有很多办法可以灵活处理,比如将机架的前向扩展板或者底板自己去嘉立创打板替换就行。市面上就那么几款型号机架、配件可选,绝大多数人飞机都是类似的,我们机架安装孔位多、组装简洁方便,电源板不仅带2路5V/3A稳压,还自带双路MOS驱动、ADC按键、分电功能,前后/上下扩展性强、标配10mm碳纤维机臂强度高,支持扩展机载计算机、激光雷达、T265,用的人多点自然也合理。嗯嗯,好的
没有基础的临时入场的同学,建议先消化现有的资料,而且你手头TIVA这款出的比较久,当下配套的资料会比432多,这个没掌握好,你去买432会显得更不合适Okkk,程序源码找淘宝客服要就可以吗
当然钱多没处画的另当别论,淘宝店铺搜索:无名创新,联系客服要下好的

55、请问下定高模式,油门推中之后会上下飘是为什么?

飞机是自组吗?对地测距传感器用的是超声波还是激光测距?超声波
问了两个问题,把另外一个也回复一下自己组装的
把超声波拔掉,直接用气压计定高,看下和之前超声波定高对比,如果气压计反而效果更好,说明了什么?超声波坏了?
不是超声波坏了,是超声波对地测距在无人机上不好用,好用的超声波得筛选,大概3个里面能筛选出一个好用的,这还是在机架震动合理的情况下明白了,谢谢
有预算的推荐对地测距用激光测距,一劳永逸的解决问题,筛选可用的超声波也有试错成本,前向测距用超声波问题不大,tofsense已经是当前能选到的性价比最高的tof传感器了,相信以后还会有其它可替代的,时代发展,要与时俱进,还有个特别的地方是支持级联,单个串口可解析N个传感器数据,省心不添堵,简单粗暴好用。果然气压计效果反而更好,换激光去了
相同问题案例2:油门在中位没动,但是有时候高度会一直上升或者下降,这是为什么?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F6VFQ6ET-1650200134164)(img/image51.png)]

当时的回复:

  • 遥控器行程低位1000高位2000是否满足
  • 飞控加速度计、机架水平校准好,你不是说你的遥控器之前方向都不对吗,以错误的方向去校准加速度计,机架水平能行吗?遥控器修改好了之后,是否有从新校准加速度计、机架水平
  • 上述1、2确保没问题,定高还是有异常,考虑是机架震动太大,引起超声波异常输出,接数传看下数据或者拔掉超声波,看定高效果是否有改善?

56、无人机在绕杆的过程中怎么判断无人机绕了一周?

同学2附问:想着是检测实时的偏航角,如果和一开始记录的偏航角一样,就给yaw_1flag赋1,让他跳到case16,结果现在还是一直在绕杆,到一圈也没降落
  • 首先弄清楚偏航角范围是±180还是0-360,其次在初始绕杆时记录当前偏航角,假设初始绕杆偏航角度为10°,偏航角范围为0—360,顺时针绕杆,偏航角会从10变到0再从360到10,这是完整的一圈,为了确保不误判,可以设置中间偏航角度遍历角点(比如设置四个角点50、150、250、350),实时检测飞机在绕杆过程中偏航值,当前偏航角度满足对应角点时,将对应角点标志遍历成功的标志位置1
  • 判断绕圈结束可以通过判断所有角点遍历成功标志位+当前偏航角与初始记录的绕杆开始偏航角二者偏差绝对值小于某个范围来确定。
  • 由于比赛要求绕圈不小于360°,大家可以让飞机多绕个10-20°,确保万无一失;
  • 多绕10-20°很容易实现,通过前面遍历角点就可以操作,比如设置角点50、150、250、350、5
  • 最后一个是额外加的,顺时针绕时,角度变化一定是10-0,359.99-10,10-0,最后这个10-0角点5°,一定是前面所有角点都满足置位才允许置1,避免初始第一圈就置位了。

设置的中间角点遍历可以认为是飞机绕圈过程中,在不同偏航角位置打卡,和你老师上课点名一样,上课开始点一次名、中途点一次、最后结束再点一次,才能说明你确实没有翘课。

最后确保绕圈满一圈的处理,可以理解成老师上课拖堂了,一直拖到下一个老师来上课,结果又被点了一次名,一下课就从后面溜走的同学就GG思密达,内心OS—“万万没想到老师拖堂还T**点名,简直是残暴无情”。

57、想测试下寻线功能,这样算是捕捉到线了吗,我刚才试飞,切换成sdk模式,结果飞机直接摇摇晃晃失控了。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qVq1lMFR-1650200134164)(img/image52.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eJSVhd9g-1650200134165)(img/image53.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VkX2iIub-1650200134165)(img/image54.png)]

看视频中肯定不是线模式,让客户先把程序里面OPENMV有几个工作模式搞懂,默认模式应该是黑块切换成了下模式,并附上了图片
已经切换成了线模式,然后拍视频出现了现场环境,发现不是比赛要求的黑线白底条件(预判是新手,第一次弄没有了解规则,以为只要是底部有线就能自主寻迹),嘱咐要从最基本的来:第一点:先把有的模式先搞清楚,第二点:看下以往比赛循迹什么背景要求,程序阈值默认时黑线白底,你这智能车场地蓝色背景铺设黑线;第三点分析原因:这种背景仍然用程序默认阈值,等同于摸瞎,飞机不论到哪里,满地都是识别的目标线线位置和角度随机,用一个随机的期望给到飞机自然会飞的爆炸。哦哦哦,明白了
贴地那么近,官方的OPENMV上RGB灯和摄像头同侧,贴地太近一直闪烁肯定对识别有干扰好的好的

58、请问为什么sdk点模式追踪黑块的时候飞机会抖动?我按照视频里面先定高光流起飞,到黑块的上面,再切换模式的,但是飞机会发生明显的抖动,openmv也确实能够识别到黑块?

先排除环境干扰,首先需要能稳定检测目标,确定是识别的黑块还是杂乱的背景。

59、像你绕杆视频演示中的杆在哪里能搞到?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AcQRKLyY-1650200134165)(img/image55.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ilm87TGv-1650200134166)(img/image56.png)]

找铝合金门窗焊接的店面,一般老城区生活区都能找到,按比赛要求做规格直径3.5cm圆杆,高度2m为宜价格自己去谈,成本大概50个一套,店铺没有3.5cm规格的,可以自己网上买好,再拿去别人焊接,焊接好后表面贴上有颜色的胶带就行。3.5cm直径的杆实测4个前向tofsense测距传感器,扫描飞机与塔杆距离无压力,能确保二者距离全程可控

60、小哥我们自己参考你们原理图设计了这款扩展板,加速度计、磁力计都校准了,但是姿态角却稳定不下来,怎么解决呢?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nswQqzBP-1650200134166)(img/image57.png)]

你看下你的显示屏第一页,主要有两个问题:

  • 陀螺仪零偏不正常,静止时横滚方向角速度居然有3deg/s的静差
  • IMU恒温控制无效,无法恒定到50摄氏度,看着更像是没有温控作用的感觉

检查下自己硬件设计、元件选型、焊接等问题,为什么温控没有起作用,把这个修好问题就解决了。

最后解释一下为什么你的姿态角度无法收敛

正常情况,只有当温控稳定后,才会校准陀螺仪,并且会将此值保存到eeprom,以便程序下次使用,每次飞控工作温度稳定后都会校准陀螺仪。

当且仅当eeprom中无陀螺仪零偏数据时,意味着飞控之前从未使用或者清空了EEPROM的单片机。
初次上电会无视温度是否恒定到50摄氏度,直接采集陀螺仪数据取平均作为陀螺仪零偏值,假设此时你晃动飞控,首次零偏采集错误大的陀螺仪零偏静差导致姿态解算不收敛,一直发散。因为在3deg/s的静差面前,再优秀的姿态算法都会显得苍白无力

由于你的硬件故障,此后温度一直恒温不到50,飞控也就不会再次校准陀螺仪,飞控一直用的是首次错误的陀螺仪零偏数据,飞控每次上电姿态都不会收敛。
归根到底——终结原因是你自己设计的硬件,恒温控制没有作用,温度到不了设定值50,其它自己设计的硬件的同学也看看,如有此类问题,参考这个解答。

61、小哥我们OPENMV固件掉了,参考网上资料用dfu下载,下载进度条每次都是到49%就停止了,也不报错就一直卡着,这种要怎么搞?

OPENMV丢固件下载用STM32CubeProgrammer软件下载,OPENMV IDE自带的dfu软件单独下载不稳定,很多电脑都不能工作,STM32CubeProgrammer百度查下怎么用,实在不行,电脑装好向日葵,加下售后客服让远程协助。

62、TOFSENSE级联起来,我看程序里面支持了10组测距传感器,这是咋做到的,能讲下解析原理吗?

把tof设置成查询模式接收,飞控轮流发送带id的查询指令,对应id的tof收到自己id的指令,就会向飞控发送距离数据帧,飞控解析不同id的数据帧,最后得到不同id的tof距离值。比如:
普通tof原始数据10hz刷新,飞控可以每100ms查询解析一次tof外设,每个tof查询指令间隔10ms,相当于查询解析一个id所在的tof数据刷新10hz=100ms,保证数据实时性的情况下,就可以实现轮询方式外接扩展10组tof数据。

63、小哥,我们这个飞机突然失控是啥问题,我就只有单纯的向前打杆而已?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OgSIv4xQ-1650200134167)(img/image58.png)]

附有视频,视频显示正常飞行过程中,突然像没有任何控制作用一样,油门整体一下子软下来了,飞机姿态发生倾斜,一头载到地上的既视感,飞机持续倾斜过程中,电机速度没有任何加速的趋势

依据此两点现象,基本可以断定是电池没电了,电池严重过度放电,低到某一临界点后,电池电压就绷不住了,电压急剧下降,进而造成了飞的好好的,却一头载地的现场,新手操作飞机时一定要接BB响,安全电压设置不要低于3.5V,不要因自己一时懒惰造成不必要的损失,明明重度“机无力”还要强行起飞

64、能问下今年国赛会不会指定某一款飞控呀?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1LB7GaIL-1650200134167)(img/image59.png)]

都2021年了,你还在考虑电赛飞行器赛题备赛是否有必要用基于TI处理芯片的飞控问题?暂不论官方是否会限定TI芯片的飞控或者具体到某一单片机型号,按19年国赛现场来看,进国赛拿奖的绝大多数的都是用的TI处理器飞控,说明TI飞控有非常成熟的方案。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yRl9Du2g-1650200134168)(img/image60.png)]

TI电赛在以往省赛飞行器赛题(2019年前:TIVA、MSP432、C2000等)控制类赛题(2020年MSP432/430)对芯片做了严格的限定,至于2021年国赛情况怎么样,赛题出来前,木有办法确定。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0vMzxzVT-1650200134168)(img/image61.png)]

现在TIVA、MSP432飞控做到了和STM32系列的一样简单易用,代码功能接口函数调用很容易,你可以问下往届师兄师姐,电赛比赛准备阶段大多数经历,并不是在基于单片机驱动程序、芯片资源使用层面开发,而是基于飞控应用+机器视觉层面,针对具体赛题做二次应用开发、以往特别的难点在于赛题是利用有限的定位传感器(光流、激光测距、超声波、openmv等),结合现场标记特征,实现有效的室内定位功能。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ROR2t0BK-1650200134168)(img/image62.png)]

以往组委会研讨会时明确限制不得使用树莓派等板卡计算机设备,使得依靠激光雷达/视觉SLAM等高精度定位手段没法在国赛比赛中得以使用(实际2020年省赛中有少量队伍使用板卡计算机平台、到了2021年国赛中基本已全面放开此限制),在无人机中使用机载计算机平台已经成为大势所趋,能够实现更加高效的二次开发,彻底告别“盲飞”

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-G1XFTqvk-1650200134169)(img/image63.png)]

2019年赛题中出现摩尔纹喷绘布背景的赛题BUG情况,在实际测评中不同赛区均做了不同方案的调整(白色喷绘布、KT板、瓷砖地面等),相信此类BUG后续赛题中会予以修正。

65、对于要求固定点着陆的,底部视觉标记在飞机下降过程中,由于高度降低,摄像头视野中的标记目标放大后,容易丢失标记特征识别不到,这种情况要怎么处理才能保证降落精度?

比如结束时需要对准降落标识,在飞机不断下降过程中,视觉处理可能因为镜头广角丢失目标视野的情形,可以采取目标丢失前先用目标位置对准,下降的过程中,如出现丢失目标情况,直接进入光流/SLAM位置定点,降落的末端用光流/SLAM定点原地降落,在1-2S短时内基本没有偏移,能保证降落精度。

66、小哥我姿态飞行过程中,高度控制从手动切换成定高档位,飞机就撞天花板了。。。

好好看下操作类视频教程,没有演示飞机在空中,油门直接从手动切换定高档位的操作,新手切记不要空中从姿态档位去切到定高档

切换定高档位的时候油门放哪里?如果是中位向上,一切肯定飞机上升的呀,新手此时容易不知所措,不是应该定高么,心里正想着了,飞机就直到怼上天花板了。室内层高一般就3m左右,假设1m/s速度向上,来不及收油回中,飞机就到天花板了。

要飞定高直接在地面就定高模式下解锁,再推油起飞,到达目标高度就回中,然后再去继续操作无人机,实在像想这么操作玩特技,先把飞机调稳定了去户外空旷场地。

67、怎么实现原地旋转,水平位置、高度位置保持,只转动偏航角度?

针对本问题新版本程序已经更新了能够单独控制偏航的demo,参考链接:2_竞赛无人机基础飞行控制函数——零基础学习竞赛无人机搭积木式编程

https://www.bilibili.com/read/cv15843984?spm_id_from=333.999.0.0

可以自己定义一个全局变量控制这个偏航模式,比如:
uint8_t yaw_ctrl_mode=ROTATE;

yaw_ctrl_mode=ROTATE时为正常偏航角控制,偏航期望来源于偏航回中时自锁定
yaw_ctrl_mode=AZIMUTH时为目标偏航角控制,偏航期望来源于函数入口参数float yaw_target

调代码不是一口气写一大串,特别是逻辑没理清情况下,比如你能不能自己写一个单纯的转弯sdk任务,先确定写的逻辑是通顺的,而不是一串下来,结果第一个都没跑通。

68、我想用蓝牙HC08作为作为数传,通过无线的方式连接飞控与地面站要怎么做?

首先看下配置自己手头的HC08波特率为115200,工作模式主、从一样一个,然后把飞控程序中的地面站通讯串口波特率改为115200,代码编译后重新下载就可以。配置蓝牙直接用无名创新地面站就可以,里面多项发送里面预设了常用的AT指令。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TtItjDu5-1650200134169)(img/image64.png)]

69、老师给了我这个3DR数传,就没说其它的了,现在是插上电脑没有驱动压根用不了,完全不知道接下里该怎么办?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VPcFRLOv-1650200134169)(img/image65.png)]

| 首先弄清楚你的3DR数传内置的是哪一款USB转TTL芯片,实现上常用的有CP2102、FT232两个版本,将数传插入电脑后再设备管理器里面看型号 | [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-O8gRMTRk-1650200135230)(img/image67.png)]

你这款对应装CP2102串口驱动就可以,装好驱动没不会有感叹号了[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aAItIMXf-1650200135230)(img/image66.png)]
安装了,现在有端口号了,我先接地面站试试
但是上述操作还不足以解决问题,飞控当前的波特率默认是921600,你这数传能支持?
你的数传最大波特率只支持115200,现在第一步是用3DR数传配置软件把数传波特率改为115200,第二步把飞控程序中的地面站通讯串口波特率改为115200,代码编译后重新下载就可以。之后用地面站时,串口配置里面波特率选115200。3DR数传配置软件见群文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hQF1NrOV-1650200134170)(img/image68.png)]

收、发端一对数传的网络ID、信道、频段等设置必须一致

70、小哥,有没有整个飞控代码的结构流程图?有一些逻辑通过代码看到还是不太清楚

用understand软件辅助读代码,参考这个视频教程8min30有讲

一、无名创新—TI电赛飞行器MSP432飞控软件框架分析视频讲解https://www.bilibili.com/video/BV11y4y1s7Pz/

71、我用的是慧飞者pro飞控,飞机解锁的时候,有时候能解锁成功,有时候就没反应,这是什么原因?

飞控自带IMU温控系统,温度上升到恒定50摄氏度之前,飞控无法解锁。

72、小哥你好,请问我按照教程校准磁力计,可是之后看第二页磁力计的数值还是-1,是哪里出了问题呢?

TI飞控没有内置磁力计,磁力计需要外接,外接磁力计一定要把磁力计用支架支撑起来,没有接磁力计的时候读到的是默认值-1,不加磁力计也能使用,户外GPS功能时需要用到外部磁力计。

73、自己写的融合算法,对水平加速度积分,沿水平方向移动一段距离后停下,在减速过程中,加速度积分值会出现明显的过冲不能回到移动前的值。但是在竖直方向加速度积分就没有这种情况,请问这是什么原因

观测传感器存在延时,考虑下处理下惯导加速度和水平观测数据的在时间上的相位同步问题

74、小哥问一下飞控里水平位置融合卡尔曼滤波器的观测方程是什么啊?感觉代码实现和方程有点对不上呢?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hs1DbH1Y-1650200134170)(img/image69.png)]

无名飞控采用的双观测量卡尔曼滤波位置、速度估计算法参考此书,详见此书page 51,附上该书电子档+历程代码下载地址如下:

链接:https://pan.baidu.com/s/1RDtUmJ08Y0dyrLexmkdrGw

提取码:fyxb

75、小哥我看程序SINS.c里面数据融合前做了一系列的标准差、均方差根等误差计算,这部分代码的实际作用是什么?

可以自己把超声波传感器原始数据发地面站波形显示看下,对比原始数据和融合后的数据,看完你就懂了,传感器数据大多数时候都不能直接使用,又想要低成本又要数据可靠,就得花心思对传感器进行“调教”,有精力的同学可以多研究下,这些都是以后工作的必备技能,本质是去判断传感器数据健康程度。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

如果您也想把自己提出的问题收录到本Q&A中,愿意把自己的经验分析出来方便后来者学习,那就赶紧加入我们吧…

在这里插入图片描述

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

飞控学习常见典型问题集Q&A——无名创新(2022年4月15日) 的相关文章

随机推荐