查看: 675|回复: 18

从零做飞控(1)软件框架

[复制链接]

363

主题

404

帖子

1136

积分

金牌飞友

Rank: 6Rank: 6

积分
1136
飞币
725
注册时间
2017-7-15
发表于 2024-6-20 13:59:47 | 显示全部楼层 |阅读模式


本系列视频主要介绍如何从零制作一款无人机飞控,本期视频主要介绍飞控软件架构。

从零做飞控(1)软件框架-1.jpg

46

主题

820

帖子

1626

积分

金牌飞友

Rank: 6Rank: 6

积分
1626
飞币
804
注册时间
2017-8-17
发表于 2024-6-20 14:04:54 | 显示全部楼层
晨哥后期是不是要加抗干扰,图像识别,地形匹配等功能[doge]

43

主题

783

帖子

1549

积分

金牌飞友

Rank: 6Rank: 6

积分
1549
飞币
764
注册时间
2017-9-21
发表于 2024-6-20 14:15:43 | 显示全部楼层
知道更新了[doge],还以为提桶跑路了

45

主题

827

帖子

1641

积分

金牌飞友

Rank: 6Rank: 6

积分
1641
飞币
805
注册时间
2017-9-7
发表于 2024-6-20 14:20:44 | 显示全部楼层
大学做过stm32的飞控,给你一点建议。
接口输出(比如pwm输出,串口输出那些)不要用插接口,直接焊接。这一点很重要。这样可以压低飞控的体积。

36

主题

825

帖子

1618

积分

金牌飞友

Rank: 6Rank: 6

积分
1618
飞币
791
注册时间
2017-9-8
发表于 2024-6-20 14:22:25 | 显示全部楼层
说实话,感觉这个项目会烂尾。从最基础的架构能看出来,UP主的知识储备差点意思。在多任务处理上,选择了最简单但是效果最差的轮询。其实就算不用实时操作系统,用定时器中断来做也会好很多。
第一是中断做比较省电,对于无人机来说,想飞的时间长,还是要在各个方面考虑功耗的。
第二是时间中断做时序的保障更好。而用循环做PID数据采样我试过,效果比较差,尤其是任务开始变多,采集频率又比较高以后,中间的各种任务会导致PID采样的间隔显著的不均匀,从而导致PID出来的效果比较差。
虽然现在还没做到那部分吧,但是这样过于简单的基础架构是在给自己后面埋雷。建议可以重新考虑多任务的处理方式,利用中断和优先级来实现基础方案。毕竟中断就是专门干这个用的,而使用cubeMx,学习中断的时间成本并不高。

48

主题

798

帖子

1595

积分

金牌飞友

Rank: 6Rank: 6

积分
1595
飞币
790
注册时间
2017-9-14
发表于 2024-6-20 14:35:12 | 显示全部楼层
我爆炸了今天,我做了一个简单的飞控但对我来说真不简单,用的nrf104 2.4g通讯模块做遥控器,无人机用的f103主控mpu6050陀螺仪,空心杯电机,上电然后冒烟了,我直接气坏了

54

主题

830

帖子

1660

积分

金牌飞友

Rank: 6Rank: 6

积分
1660
飞币
823
注册时间
2017-9-24
发表于 2024-6-20 14:38:37 | 显示全部楼层
大佬一定要坚持下来

37

主题

811

帖子

1600

积分

金牌飞友

Rank: 6Rank: 6

积分
1600
飞币
789
注册时间
2017-9-3
发表于 2024-6-20 14:51:01 | 显示全部楼层
大一的时候搞过。不过是计科的。对控制论,信号处理没怎么学过。搞完双环和定高之后就没搞了。只要理解了pid控制,实现起来还是非常简单的。

42

主题

788

帖子

1568

积分

金牌飞友

Rank: 6Rank: 6

积分
1568
飞币
771
注册时间
2017-8-23
发表于 2024-6-20 14:58:15 | 显示全部楼层
其实,用freertos来调度任务,并不复杂啊,时间片轮询的实时性并不好啊,其实你编排时序在操作系统上最后就是优先级设置。

46

主题

840

帖子

1664

积分

金牌飞友

Rank: 6Rank: 6

积分
1664
飞币
817
注册时间
2017-8-30
发表于 2024-6-20 15:03:13 | 显示全部楼层
[妙啊][疑惑]
up主:歪比巴卜
我:huh?
stm32f405后面直接就开懵,为啥这个要这么设计,这软件又是怎么烧录原理执行直接huh?

46

主题

809

帖子

1606

积分

金牌飞友

Rank: 6Rank: 6

积分
1606
飞币
795
注册时间
2017-8-23
发表于 2024-6-20 15:17:30 | 显示全部楼层
【内容总结】
本期视频是关于如何从零制作一款无人机飞控的软件架构。视频内容包括了硬件原理图和软件架构的介绍,以及使用时间片轮询的方式实现任务调度。通过设置任务的执行周期和记录上次执行的时间,实现不同功能的任务执行。最后,还介绍了在程序运行过程中遇到的问题和解决方法。

【时间线】
- 00:01 - 视频介绍从零制作一款四旋翼无人机飞控的过程
- 01:24 - 硬件原理图制作和LED制作
- 02:53 - 任务创建与调试,介绍时间片轮询的实现方式
- 03:14 - 烧录程序并观察串口数据发送情况
- 03:58 - 发现任务上次运行时间变量达到上限后不再增加的问题
- 04:11 - 将变量类型改为UINT32解决问题

【可能感兴趣的问题】 (触发提问请回复: 问一下+问题)
1. 无人机飞控制作的过程中有哪些关键步骤?
2. 时间片轮询的方式相比操作系统有哪些优势和劣势?
3. 在飞控软件的开发过程中还会遇到哪些常见问题,如何解决?

内容由AI自动总结, 总结内容仅供参考~ @华程朱 触发了视频总结, 触发方式是 @有趣的程序员 总结一下

41

主题

807

帖子

1600

积分

金牌飞友

Rank: 6Rank: 6

积分
1600
飞币
791
注册时间
2017-8-20
发表于 2024-6-20 15:25:25 | 显示全部楼层
关注了,明年入职飞控开发了,多学学[星星眼][星星眼]

46

主题

809

帖子

1606

积分

金牌飞友

Rank: 6Rank: 6

积分
1606
飞币
795
注册时间
2017-8-23
发表于 2024-6-20 15:35:18 | 显示全部楼层
uint32同样会出现一直输出吧,感觉还是要想个方法解决,重新清零

35

主题

871

帖子

1723

积分

金牌飞友

Rank: 6Rank: 6

积分
1723
飞币
850
注册时间
2017-9-3
发表于 2024-6-20 15:43:46 | 显示全部楼层
AI课代表的笔记:这个视频介绍了从零制作一款四旋翼无人机飞控的过程。视频内容包括了硬件原理图和软件架构的介绍,以及使用时间片轮询的方式实现任务调度。通过设置任务的执行周期和记录上次执行的时间,实现不同功能的任务执行。最后,还介绍了在程序运行过程中遇到的问题和解决方法。下期将为板子增加开关电源电路并读取电池剩余电量。

- 0:01

58

主题

838

帖子

1675

积分

金牌飞友

Rank: 6Rank: 6

积分
1675
飞币
835
注册时间
2017-9-5
发表于 2024-6-20 15:57:26 | 显示全部楼层
用stm32 ardunio框架会不会简单些

35

主题

871

帖子

1723

积分

金牌飞友

Rank: 6Rank: 6

积分
1723
飞币
850
注册时间
2017-9-3
发表于 2024-6-20 16:05:00 | 显示全部楼层
up这个项目大概什么时候能收尾啊[星星眼]

41

主题

833

帖子

1645

积分

金牌飞友

Rank: 6Rank: 6

积分
1645
飞币
810
注册时间
2017-8-13
发表于 2024-6-20 16:08:19 | 显示全部楼层
一个stm32最多支持几路pwm输出啊?是不是计时器太少了?

33

主题

863

帖子

1715

积分

金牌飞友

Rank: 6Rank: 6

积分
1715
飞币
846
注册时间
2017-8-8
发表于 2024-6-20 16:10:19 | 显示全部楼层
飞控有了,电调还会远吗

58

主题

826

帖子

1649

积分

金牌飞友

Rank: 6Rank: 6

积分
1649
飞币
821
注册时间
2017-8-21
发表于 2024-6-20 16:21:42 | 显示全部楼层
晨哥这期的东西看完后,发现自己欠缺的太多啦,一定跟着好好学学,支持一大波[打call][打call][打call]
您需要登录后才可以回帖 登录 | 加入联盟

本版积分规则

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