tattu飞翔 发表于 2023-4-7 14:43:48

ardupilot 利箭离弦式飞速起步方略


背景介绍:
Sugar 是个爱玩模型的人,车、船、飞机(陆海空)。
在飞机方面,一直有个痛点:
初入门小飞机不好玩(要么不开源,要么开源代码写的不如 ardupilot 和 px4 那么好,一学发现一堆坑要去填),大飞机化桨成刀太危险(看过《血滴子》电影么?)
现在 ardupilot 飞控被越来越多的人接受,越来越多没玩儿过飞机的人想加入这个行列。
对应出现的就是:越来越多的人切手指了、流血了,越来越多的飞机炸了(钱烧了)。
不论是安全成本还是金钱成本,对于初入行的人都是挺高的。
Sugar 联合烈火狂龙一起为降低入门成本做出了努力。
ArduPilot 软件的三部曲


第一曲,C++11 编程能力和构架能力。

ArduPilot 软件的一大特色就是:不断用新标准重构代码,不断优化代码结构。

这一点几乎让 ArduPilot 成了飞控圈儿的 Arduino,入门可以越来越简单。

然则这个“简单”也是对有架构思想、具有一定(不用很高)C++语言能力的人来说的。

相比于 Arduino 把一切复杂的代码变成库,直接让人调用接口的做法,ArduPilot 把各个层次的代码都一股脑儿地展现出来,没有一点经验的人还真是会被吓一跳的。

Sugar 在 gitlab 上维护一套 ArduPilot 代码,一个亮点是:

一直保持跟进 ArduPilot 官方 master 分支进展,同时加自己写的代码进去。

通过 git 的 log 记录,可以为初学 ArduPilot 的人划个明确的道儿,不用担心入目一堆代码无从下手的问题。

同时,Sugar 决定:

对于这“第一曲”相关内容,现在开始接受预约一对一在线辅导。


第二曲,RTOS操作系统。

了解 ArduPilot 和 PX4 的人都知道,这些飞控之所以能成功调度各种功能,跟 RTOS 实时操作系统是分不开的。

ArduPilot 用的是 ChibiOS,PX4 用的是 NuttX。

对于 ArduPilot 而言,其本身以一个“线程”的形式运行在 ChibiOS 操作系统上。

历史原因 ArduPilot 一直保留着一套独有的任务调度模块 AP_Scheduler(在 ArduPilot 的 APM 时代初期没有用操作系统,至今为止也有很多任务是由这个任务调度模块进行调度的)。

对于 RTOS 这一块,Sugar 更推荐国内大佬的成熟作品 rt-thread。

因为 rt-thread 是中国血统,文档都是汉语,可以减小入门难度、节省学习的时间成本。

ArduPilot 不是 rt-thread 呀,怎么办?

Sugar 开源了一套遥控车代码,就是用 ardupilot 构架形式,结合 rt-thread 来做的。

开源地址:

https://github.com/SuWeipeng/car_407ve

想买麦轮车的读者可以联系 Sugar。(Sugar 一周最多出两套车,不接受大量订货)。





第三曲,控制算法。

这部分 Sugar 就不领着学了,原因是:

1、像 EKF、互补滤波这些,理论起点就很高,非专业人士没必要去深入研究。

2、像姿态解算类的算法,各种开源软件都差不多,就算是国内淘宝的小开源飞机的也都可以。

而且这方面的文档各色各样,Sugar 实在没有必要再往海里去添一滴水(干啥都是要有时间付出的,人的精力总是有限)。

3、像 PID 这样简单的算法,Sugar 可以带一带,初级、通用是 PID 最大的亮点。

4、各种高阶课程,虽然 Sugar 没买过,但也知道国内现在很多地方可以买到,比如某社区、某实验室,而且售价都挺高。

Sugar 个人不会去参与这块市场(动别人的蛋糕就算有实力也会引起业内的不快,Sugar 胆小又势单力微,干嘛要去树这个敌)。

5、学算法要耐得住性子,有耐心是成功必须的,好老师最多就是省点自己找路的时间。


Sugar 在算法上能做的就是联合烈火狂龙推出一个小巧精致的算法验证平台,更安全、低成本炸得起,随你怎么折腾、反复验证。欢迎联系 Sugar 订购。



学飞控离不开好用的地面站

对于 ArduCopter 多旋翼类型飞机,Sugar 有做过基于 QGC 的各种插件。
获取方法可以参见 Sugar 的《软件架构训练计划》
这里只强调一点:进 Sugar 地面站源码的 gitlab 组是免费的,终身 developer 权限。

关于定价


烈火狂龙为能给广大模友提供最大优惠与 Sugar 商榷良久。
最终决定:定价只涵盖产品本身硬件费用。




对于技术服务,Sugar 并非专职干这个,为确保服务质量只提供有限服务。更多的需求可以去某社区、某实验室买课程。服务内容及定价如下:
1、加入 ardupilot 软件的 gitlab 组,每个帐号300元。
2、基础入门在线一对一,要与 Sugar 约时间。
PS

到目前为止,Sugar 通过推文一直提供免费的午餐,现在有些升级的收费内容了,如因收费而引起读者的不适,Sugar 表示抱歉。

对于给予理解和支持的读者,Sugar 表示衷心感谢。



Sugar 有跟朋友经营过课程辅导的网店,由于 Sugar 个人精力有限,所以网店一直是朋友主做。
朋友一次经历很恼火,恼火到跟 Sugar 商量过后决定把网店给关了。怎么回事呢?
Sugar 和朋友一直是以“让自己十几年累积的知识惠及更多学生”的理念经营网店的,收费一直非常低。低到 10 块钱也行,只要你想学就行。
一个学生只出 10 块钱,听过课(1个小时)之后要让我们给写实验报告。
好吧,给填写个字也不花太多时间,可以。
然后说:实验报告没有格式,要我们打开空白 word 设计格式。
这个要求就过分了,我们拒绝了。
然后,更过分的就是因为没给这个学生写实验报告,不但连 10 块钱都不付,还来了一句“你一个做淘宝的,连个报告都不给写,把你的代码和技术带棺材里去吧”。
这种毫不尊重我们的行为,我们拒绝。

从来没想过赚很多钱,但通过真实的付出换取等值的回报是个很公平的事。双方相互尊重是做人的美德。

10 块钱的辅导本是一片好心,沾上钱还多了一份责任,是值得被尊重的。Sugar 和朋友不再做 10 块钱的辅导,改为微信免费推文。这样的话一片好心仍然是一片好心,仍然可以惠及更多人,还不用因为责任心而承受不良骚扰。相应的也会提高一对一辅导的价格(不会太高,估计连某社区课程的零头都不够)。希望能汇聚更多有共识的朋友。
关注作者

欢迎扫码关注我的公众号MultiMCU EDU。

提示:在公众号“关于我”页面可加作者微信好友。

喜欢本文求点赞,有打赏我会更有动力。
页: [1]
查看完整版本: ardupilot 利箭离弦式飞速起步方略