查看: 564|回复: 18

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

[复制链接]

337

主题

378

帖子

1058

积分

金牌飞友

Rank: 6Rank: 6

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


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

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

42

主题

801

帖子

1584

积分

金牌飞友

Rank: 6Rank: 6

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

38

主题

766

帖子

1514

积分

金牌飞友

Rank: 6Rank: 6

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

41

主题

813

帖子

1612

积分

金牌飞友

Rank: 6Rank: 6

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

32

主题

814

帖子

1593

积分

金牌飞友

Rank: 6Rank: 6

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

46

主题

783

帖子

1564

积分

金牌飞友

Rank: 6Rank: 6

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

48

主题

818

帖子

1630

积分

金牌飞友

Rank: 6Rank: 6

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

35

主题

802

帖子

1584

积分

金牌飞友

Rank: 6Rank: 6

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

38

主题

770

帖子

1532

积分

金牌飞友

Rank: 6Rank: 6

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

37

主题

822

帖子

1624

积分

金牌飞友

Rank: 6Rank: 6

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

44

主题

797

帖子

1583

积分

金牌飞友

Rank: 6Rank: 6

积分
1583
飞币
784
注册时间
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自动总结, 总结内容仅供参考~ @华程朱 触发了视频总结, 触发方式是 @有趣的程序员 总结一下

37

主题

788

帖子

1566

积分

金牌飞友

Rank: 6Rank: 6

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

44

主题

797

帖子

1583

积分

金牌飞友

Rank: 6Rank: 6

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

33

主题

859

帖子

1698

积分

金牌飞友

Rank: 6Rank: 6

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

- 0:01

56

主题

823

帖子

1648

积分

金牌飞友

Rank: 6Rank: 6

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

33

主题

859

帖子

1698

积分

金牌飞友

Rank: 6Rank: 6

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

38

主题

819

帖子

1615

积分

金牌飞友

Rank: 6Rank: 6

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

32

主题

854

帖子

1696

积分

金牌飞友

Rank: 6Rank: 6

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

54

主题

814

帖子

1623

积分

金牌飞友

Rank: 6Rank: 6

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

本版积分规则

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