查看: 963|回复: 5

自己写四轴飞控难度有多大?是个可完成的任务吗?

[复制链接]

376

主题

408

帖子

1271

积分

金牌飞友

Rank: 6Rank: 6

积分
1271
QQ
飞币
750
注册时间
2017-7-8
发表于 2022-10-24 04:35:00 | 显示全部楼层 |阅读模式
自己写四轴飞控难度有多大?是个可完成的任务吗?

35

主题

796

帖子

1576

积分

金牌飞友

Rank: 6Rank: 6

积分
1576
飞币
778
注册时间
2017-9-3
发表于 2022-10-24 04:45:08 | 显示全部楼层
有难度,有兴趣的话,绝对能够完成
去年年底在公园捡了个四轴尸体,一直想把它修复,因是小厂玩具,没有可替换配件,一直没有再飞起来而我这个大叔却入魔了!
今年开始,先是买模块做飞控MWC,能飞了,不满足,开始从零开始自己做飞控,开始泡图书馆,模拟电路,数字电路,c语言,从最基础的开始,c51单片机,stm32,淘宝电子原件,烙铁,工具,学习keil,atumdesiger,画板,打样一次成功,手工焊接QFN24的mpu9250,学习各种协议,iic spi,can,sdio,usart,学习各种芯片手册,无线芯片,传感器flash,mpu6050,ms5611,超声波,GPS, 写驱动,移植dmp,学习卡尔曼滤波,互补滤波,四元数,欧拉角,姿态解算,pid控制,串级PID,实时系统ucos移植等,历时半年多,基本能飞了,但还不完善,后续优化程序,增加功能模块等。
心得:兴趣是最好的老师,网络有你想要的一切!
后期再考虑全部开源,共享给模友。
目前平台:stm32f407+mpu9250+ms6511+GPS+Sdcard+can,所有io全部引出来,当开发版用,
软件平台:ucosiii + dmp6.1+串级pid
本人非电子相关专业,目前职业跟这方面不沾边,完全业余时间折腾,痛苦且享受!









自己写四轴飞控难度有多大?是个可完成的任务吗?-5.jpg




//--------------------------17年4月更新-----------------------------------
     早些时间因家中增加了位小成员,所以没有时间搞飞机。近几日空,就再补充些。到目前为止,已经拼凑移植加上自己敲了这一堆代码,基本实现了导航的大部分功能,如航点飞行,绕点飞行,无头模式,一键起飞,一键返航等,以及航迹规划(没有上位机,只能刷固件时烧进去,或是抱着飞机跑来录制航点);另外,给飞控板增加了FATFS文件系统支持,方便保存飞行数据到SD卡,方便电脑上分析,增加USB接口功能(用于调参、固件升级等,暂未完成);
   首先,飞控软件设计工作量远远大于硬件设计,其次,实践是检验你成果的唯一标准,再高大上的设计和算法,都飞不起来,或是飞不稳,说个x!一边测试一边改进程序,能加快你的设计进程,不要觉得一切工作都OK了才去试飞,出了状况,可能因素太多,你都不好排查。



硬件实物




GPS模块没绑好,炸鸡炸丢了,80块啊,汗!
测试视频:
   做到现在,后面还有很长的路,优化程序,调节参数(一直在尝试pid自动整定),目标就是飞得更稳更灵活(姿态),飞得更精准(GPS踩点,高度)。飞得更智能(加传感器和算法)。搞到一定程度就会受到硬件限制,又得去搞硬件,加传感器(超声波,光流,  RTK ),还想自己做电调,自己做遥控器,自己3D打印机架,NND,再多的时间都不够啊!
航模是个坑,

不知有多深,

入坑需谨慎,

小心误青春。



以下内容可能与问题无关,并且多图,没流量慎入(不知道知乎能否折叠)

     我本专业是工业设计,学的有如材料,结构,构成,素描等,平日做的事情有产品造型设计,室内外装修规划等,具体做得比较多的是平面规划、三维建模,渲染表现等,常用软件如cad、3dmax、 vray 、ps 等CG软件。
平面规划





立体规划


自己写四轴飞控难度有多大?是个可完成的任务吗?-13.jpg


三维建模

自己写四轴飞控难度有多大?是个可完成的任务吗?-15.jpg

自己写四轴飞控难度有多大?是个可完成的任务吗?-16.jpg



自己写四轴飞控难度有多大?是个可完成的任务吗?-18.jpg

自己写四轴飞控难度有多大?是个可完成的任务吗?-19.jpg

自己写四轴飞控难度有多大?是个可完成的任务吗?-20.jpg
渲染表现






自己写四轴飞控难度有多大?是个可完成的任务吗?-23.jpg



自己写四轴飞控难度有多大?是个可完成的任务吗?-25.jpg



自己写四轴飞控难度有多大?是个可完成的任务吗?-27.jpg
飞机有关









电脑开始菜单


自己写四轴飞控难度有多大?是个可完成的任务吗?-32.jpg
    感觉确实太杂了,估计很少人像这样。会些软件,倒不是什么负担,就是工具而已,不用时就撂倒一边,但好奇心就是负担!记得知乎有人说应该关掉微信朋友圈,你看到的都是是别人愿意让你看到的一面,你的新闻和社交APP就是你眼界的围栏,https://zhuanlan.zhihu.com/p/25564046。 而我想说的,不是围栏,而是黑洞。对于像我这种好奇心特强的人,碰到个好奇点,就开始再网上扒拉扒拉。百度谷歌都来一遍,换批关键词再来一遍,越扒越深,好不容易挣脱出来,又陷入另一个黑洞,总之就是无尽的再网上扒拉。所以,再这个时代,保持专注比任何别的时代都要重要,要严格限制自己的关注范围, 在写这个之前,我取消了许多知乎关注的话题,如量子物理,汗;
     借用题主地盘,发了一些其他内容,因精力缘故,现在正考虑转行智能嵌入式或无人机相关行业,还请知乎的朋友有没有介绍或推荐,或是擅长职业规划的牛人指导一二,感谢关注!
//--------------------------2020年8月更新--------------------------------------------------
    时间过太快,回答这个问题已经是四年前的事情了!
感谢小伙伴的关注和点赞,已经很久没有关注飞控开发了,从事了一年多植保机飞控开发,最后勉强出了工程样机,然而风头已过,项目取消,而我算是顺利转行了。接着做了两年可穿戴类产品的嵌入式开发, 主要有如:蓝牙手环、定位器、助听器、心电、肌电、运动姿态类产品,MCU用的较多的是stm32L和nordic, 做手环的伙伴应该都熟悉。做产品和玩具还是有区别的,协作和规范比较重要,还要有架构的思想。
后半年,公司合作的算法单位配合不给力,需要组建算法组,我被调岗算法。其他组员都是专业的, 我是去学习的。目前最主要工作是算法验证和移植到设备,目前接触的算法是比较基础的信号处理和分析,各种滤波、检波,频时域分析,特征提取,特征分析,以及简单的机器学习。主要用matlab做算法建模和调试,最后用C语言在visval studio中重构及做资源效率优化,算法这个东西还需要很好的数学基础,不然就有些吃力了。


回头看看这几年,从工业设计到嵌入式再到算法,设计师变成了野生程序员,一切只是因为在公园捡到某个小盆友飞丢的小飞机。不确定这是偶然还是必然。一面是做自己爱好的事情,一面是放弃专业的机会成本,都没有来得及去权衡,在非专业的道路上一路狂奔,往后或许很艰难, 随心而安吧。
这可能是知乎最没料的一个长回答,不是鸡汤,没有干货。只是业余流水账。我稍辩解一下,鸡汤味自己闻出来了,在看到快100+个赞的时候,哈哈。干货确实没有,我的理由是:如果真想搞一门技术,掌握一项技能,自己多尝试,多走些弯路,利大于弊,况且确实没什么独门绝技,都是搜索加摸索,还有一点 ,本人有点儿懒……。
感谢阅读,希望喜欢技术的你从事你喜欢的工作,愉快的工作,快乐的生活!

41

主题

772

帖子

1530

积分

金牌飞友

Rank: 6Rank: 6

积分
1530
飞币
756
注册时间
2017-9-27
发表于 2022-10-24 04:51:23 | 显示全部楼层
有一句话叫做站在巨人的肩膀上。
在互联网的时代,无论是知识还是飞控成果都有大量的肩膀可以站的。
建议楼主从开源算法入手:3DR,MWC这些,没有任何成本,代码完全开放
MWC直接去这里下载就可以
软件下载 | DF飞享屋3DR建议你去官网直接寻找内容
目录 | ArduCopter中文网
作者:无人机中的城堡,公众号:CastleUAVStudio
MR.城堡为您提供涵盖无人机技术分析与分享,无人机产品评测(参评、机评),行业分析等领域的专业内容

作者为环球网无人机频道,深圳湾,UAVSNEWS等行业媒体特约撰稿人。

44

主题

754

帖子

1508

积分

金牌飞友

Rank: 6Rank: 6

积分
1508
飞币
747
注册时间
2017-9-2
发表于 2022-10-24 05:02:33 | 显示全部楼层
楼上大部分回答都太片面了。
我当初用了一个月时间从零开始,硬件设计(没什么技术含量好么……),到实现不需要人去控制的定点悬停,外加一个有模有样的地面站软件,飞得还算可以。但是,后面花了一年多时间在做一些看似重复的工作,包括算法的更新,系统级设计与优化,现在研究生还在这个坑里,我现在我也只能说飞得还算可以。
这东西入门简单,入了坑想做好就难了。最近半年,我看了惯性导航,最优状态估计与卡尔曼滤波写了个姿态的ekf已觉得收获极大。控制还是pid 那套,稍微优化了一下,自觉得能达到dji nazalite80%水准,下一步就想看看能不能用点现代控制的手段能真正在飞行器上work起来,而不是停留在paper上的仿真。
视觉控制这个坑也想去填,不过有点力不从心。

292

主题

335

帖子

920

积分

高级飞友

Rank: 4

积分
920
飞币
583
注册时间
2017-7-25
发表于 2022-10-24 05:10:40 | 显示全部楼层
四轴主要分为硬件驱动部分,和算法部分,首先我给你介绍一下驱动部分,现在四轴飞控自己做,一般使用stm32飞控 103系列的,f4没必要,主频快,有些浪费了,上图像识别又不行,stm32涉及的驱动主要是IIC(驱动mpu6050和磁力机以及气压计)SPI(主要是驱动nrf无线传输,但是也可以用在mpu6000),再就是串口,这个就是用在gps中,这些只是外部传感器的应用,内部设备主要使用四路接受pwm,和四路控速pwm,这需要用定时器,再就是eeprom这个也要用到,以及一些其他的部分。这是你需要张我的驱动部分,算法部分主要是三个,第一个是滤波技术,需要用在姿态数据处理,ahrs算法解算姿态,再就是pid这里pid一般用双环串级pid,单级的缺点很多,自己试一试可以。其实你想做到这一步还需要有不错的C语言基础以及扎实的调节驱动能力以及算法的参数,另外调节pid也是和有技巧的,建议多看看调节pid心得,多调试然后对照别人的理论就会掌握。在一个你需要做的就是掌握pcb的制作,会使用ad软件,这是pcb的入门,花几块板子练一下手,然后就可以制作飞控主控版了。楼主加油,本科生能做出来是完全可以的,答主大三,大二已完成全部工作,有心不难

29

主题

787

帖子

1552

积分

金牌飞友

Rank: 6Rank: 6

积分
1552
飞币
763
注册时间
2017-9-19
发表于 2022-10-24 05:25:03 | 显示全部楼层
你概念里的写是否包括代码?还是paper即可?写出代码是否包括编译通过?编译通过以后是否包括仿真测试?仿真测试以后是否包括飞行测试?飞行测试中一个bug至少摔一架飞机,一个参数没调整好至少摔一架飞机,你能承担的起摔多少架?不去草原/沙漠/仓库测试,摔机以外砸了人或物的赔偿呢?
忘了之前国内哪个做无人机飞控的团队了。在叙述发展史时说摔了几十架,二十多万就这么摔掉了。而我对他们的看法是:真牛,只摔了这么点就能(敢)出产品。
如上是
2015-08-31的回答,时隔一年半,看到了很多新的东西,观点也反转了。所以先反驳一下自己之前的回答。
1、飞控是否包括写代码?还是paper即可?相信每个想要尝试编写飞控的人都希望自己的飞控真的运行起来。有paper更好。
2、写出的代码是否包括编译通过?编译通过肯定是很基本的了,事实上飞控的难度并不在于编译通过,而是代码的正确性,好在已经有很多优秀的开源飞控值得学习了。
3、编译通过后是否需要仿真测试?我所知librepilot(原openpilot)就已经对接了一些飞行游戏来做仿真测试,这就使得飞控的测试难度降低了很多。
4、飞行测试摔飞机,承担的起摔多少架?近来看了些飞控在室内的测试方法,将飞行器上下各拴一根绳子到天花板和地面,平时较松但也确保飞行器受限而无法撞上天花板和地面。侧面可以开风扇模拟侧风。可以极大的降低实测的成本。
5、室外测试损坏他人财物?看测试的范围了。避开人,去郊区甚至草原还是有些必要的。也可以测试时不带电池,甩线出来地面供电来防止飞远。
我还没有开始写,但从已经阅读的部分MultiWii、LibrePilot、CleanFlight的源码看,练习编写飞控还是很锻炼人的。希望所有正在尝试的朋友在编写和试飞中一切顺利,注意安全。
您需要登录后才可以回帖 登录 | 加入联盟

本版积分规则

快速回复 返回顶部 返回列表