PIDtoolbox是一个基于Matlab的工具箱,它具有直观的用户界面,用于分析比较Betaflight多旋翼模型的黑盒日志文件。此工具箱由bw1129(Brain White)开发。

开发背景

开发此工具的初始动机是,使用高级语言和简单的可视化绘图工具,制作一个对用户十分友好的、带有图形界面的工具箱,用于分析黑盒数据,并使大部分玩FPV穿越机的玩家都能使用它。

第二个目标,则是开发一种用于评估飞行的客观方法。灵感则来自于我们经常评估飞行性能的方式:每次测试中,我们微调软件/硬件/机械,并进行对照飞行,然后凭主观感受对飞行性能做出评断。然而,当实际的性能表现差异十分微妙时,主观偏见则成为一个真正的问题。

主要用途

PIDtoolbox用途多样,但可以大致分为以下两种:

评估PIDF控制器的阶跃反应情况

绘制多种多样的频谱图,以供分析使用

阶跃反应

PIDtoolbox能通过读取输入输出信号来计算PID控制器的阶跃反应情况,并绘制阶跃反应图线。

与PID-analyzer一样,PIDtoolbox也使用反卷积方式来求解阶跃响应。但不同的是,PIDtoolbox使用另一种原则:仅捕捉大幅度动作,并计算对应的阶跃反应图像。

PIDtoolbox分析阶跃反应的能力非常优秀

绘制频谱图

PIDtoolbox更多用于频谱分析,因为滤除震动似乎是目前的头号问题。开发飞控算法的部分主要工作是过滤陀螺仪的噪声,特别是在200-500hz范围内的电机噪声。

但通过广泛地观察分析和比较不同飞机之间的噪声频谱图,我们发现了一些比较一致的情形。部分噪声尤其集中在30-90hz之间,这些震动会严重影响我们对于飞行的体验(在摄像头和高清飞行中观察到的烦人的震颤通常都位于此频段内)。虽然这些震动无法滤除,但PIDtoolbox决定将其作为飞行性能的客观测量手段,以辅助用户搞清楚到底是软件/硬件/机械出了问题。

PIDtoolbox可以以多种方式绘制频谱图,并可以同时为两个黑盒日志绘制,以便进行对比

图文:市民姜先生

排版:SinCerely

审核:辉光管