暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

下个世代的云端黑盒:Blackbox Mate

Pitronic 2021-09-30
2778

副标题开玩笑的,没啥好buy的。


Blackbox Mate(黑盒伴侣,BBM)是我们pitronic多年来深耕开源飞控算法社区的工作结晶。它是一个运行在服务器上的黑盒分析工具,可以自动对黑盒日志进行分析。包括近似阶跃响应曲线、陀螺仪信号频谱、滤波延迟、输入输出延迟等。



部署在云端

由于BBM部署在云端,所以你可以在世界上任何一个有网络的地方使用BBM。

只需要在浏览器中输入:
bbm.pitronic.top
就可以立即使用BBM!


强大的跨平台能力

iOS/Android/Windows/Linux/MacOS均可使用。只需访问BBM网址即可,无需下载,开箱即用!



为什么要开发这个工具?

开发BBM的背景主要有两点:

初始动机是,由于Plasmatree的PID-Analyzer与Brian White的PIDtoolbox都是依附于PC平台的工具,它们的分析都需要在电脑上进行,在实际使用中比较麻烦。对于我来说,我不想每次调飞机时,都背着一个五六斤的笔记本电脑。我希望可以有一种方式能让我可以轻装上阵,只使用手机就可以完成调参。

其次是,在我不断学习PA与PTB的相关算法的过程中,我发现了他们各自的不足之处:PA在某些QC环节过于依附统计学方法,而忽略了某些指标在控制理论中的实际意义;PTB则是过于偏向爱好者使用,在某些衡量指标的选择上,过于儿戏缺乏工程背景。


主要用途

BBM用途多种多样,主要可以分为以下两种:
  • 时域分析:评估PID控制器的近似阶跃响应、输入输出延迟、滤波延迟等

  • 频域分析:分析陀螺仪信号各频率的噪声强弱、评估滤波强度是否合适等



算法有何异同?

BBM的阶跃响应算法与PA/PTB一致:维纳反卷积


但不同之处在于频谱图。PA与PTB(早些版本)的频谱图绘制的都是FFT的结果,而BBM选择绘制信号的功率频谱密度(Power Spectral Density, PSD)。PSD广泛应用于各个工业领域,它是一种可以用于评估信号噪声的绝对指标



使用方式

BBM的用法非常简单。

首先访问BBM网址:bbm.pitronic.top。


注册并登录,国内用户可选微信登陆。


上传bbl黑盒日志文件。
  1. 点击上传 .BBL文件按钮,选择本地log

  2. 选择log中的有效日志,并点击确认。有些log中可能会有很多条log,注意选择有效的log


等待分析完成即可。


Q&A

Q:***,这么多字?有没有视频介绍一下?
A:我制作了一个介绍视频,发布在B站上。点击底部阅读原文即可跳转。

Q:有APP吗?能下载吗?
A:将应用打包成APP并分发是一个非常耗费精力的事情。我们不仅需要对内核代码进行打包,还需要对UI代码进行打包。打包后也可能会遇到非常复杂的兼容性问题,诸如Windows7/Windows10/Windows11不兼容、各个国产手机安卓系统不兼容、MacOS系统不兼容等问题。这些环境问题非常耗费开发人员的热情与精力,会令开发人员逐步丧失开发新功能的动力。出于上述原因,我们不会将BBM打包成APP并进行分发。后续可能会引入PWA框架,以满足部分用户的本地使用需求。

Q:为什么不改进原来的工具,非要重写?
A:首先,PID-Analyzer的源代码对于我来说过于抽象,并且用到了许多并不常见的第三方包,修改起来难度不小。而我对于Matlab本身并无好感,Matlab程序写的也不够多,所以也不打算改进PIDtoolbox。除此之外,最重要的一点便是,我希望黑盒分析工具能有不错的跨平台能力,我可以在外场仅用手机即可调参。

Q:BBM免费吗?
A:BBM的目标就是成为一个免费好用的云端黑盒,我们暂时没有向普通用户收费的计划。但如若后期服务器压力增大而导致用户使用体验变差,我们可能会考虑推出一些增值业务,如一对一人工分析日志、AI自动调参等,以维持服务器开销。

Q:BBM开源了吗?如你所说,你是基于两个GPLv3项目进行的开发,根据相关要求,代码应当开源。
A:BBM的内核代码已经开源了。内核代码确实参考了PA与PTB这两个GPLv3协议下的项目,于情理来说应当开源。实际上,GPLv3对于我们的SaaS类型业务并无约束力,我们开源内核代码仅仅是出于情怀。相关的知识产权细节,我将在随后进行专门说明。而BBM的网站前端代码并未涉及任何开源项目,是由我们团队一个优秀的前端工程师自己写的,所以前端代码并未开源

Q:如何贡献?
A:BBM项目目前处于“用爱发电”阶段,并未盈利。我们接受各种形式的贡献,包括但不限于:贡献代码,维护文档,打赏开发者,以厂家身份赞助BBM的运行等。

Q:你这和隔壁的SpeedyBee相比,有啥差别?
A:希望问出这种问题的读者能够跳脱出“闷着头就是买买买”的思维。BBM是一个具有一定公益性、科普性的实用工具,我们不会强制用户使用某些商业硬件,不会故意使用速率不行但与芯片相绑定的蓝牙协议,更不会充满恶意地去抄袭betaflight的配置程序与黑盒日志查看器。我们鼓励用户使用原生的工具链,如betaflight官方安卓配置程序,openlager外置高速黑盒等。

Q:好,但我希望能有一个网页化的黑盒日志查看器。
A:我们目前的作重心在于黑盒日志的科学分析,暂时没有制作黑盒日志查看器的计划。你可以尝试使用dronesitter这个工具,它是一个由在美工作的中国人开发的。

Q:有些地方用起来交互体验很糟糕!
A:我们是第一次制作这样的网页应用,用户体验多有不足之处欢迎大家在BBM在GitHub上的内核源码仓库中打开issue进行反馈,或者是在微信公众号后台留言,我们都会看的。

Q:有一条日志分析失败,怎么回事?
A:有可能是log中某些event导致解码失败。请到BBM在Github上的内核源码仓库中开一个issue,以便我们对问题进行跟踪。地址如下:

https://github.com/DusKing1/PID-Evaluator


Q:用起来遇到bug了,怎么解决?
A:同上。

图文:市民姜先生

美编:SinCerely

审核:辉光管


如需转载请后台留言

分享给朋友或朋友圈请随意哦

文章转载自Pitronic,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论