查看: 530|回复: 18

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

[复制链接]

312

主题

353

帖子

983

积分

高级飞友

Rank: 4

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


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

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

38

主题

784

帖子

1549

积分

金牌飞友

Rank: 6Rank: 6

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

37

主题

758

帖子

1498

积分

金牌飞友

Rank: 6Rank: 6

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

39

主题

800

帖子

1587

积分

金牌飞友

Rank: 6Rank: 6

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

31

主题

803

帖子

1574

积分

金牌飞友

Rank: 6Rank: 6

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

43

主题

768

帖子

1534

积分

金牌飞友

Rank: 6Rank: 6

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

45

主题

806

帖子

1608

积分

金牌飞友

Rank: 6Rank: 6

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

35

主题

796

帖子

1576

积分

金牌飞友

Rank: 6Rank: 6

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

37

主题

759

帖子

1510

积分

金牌飞友

Rank: 6Rank: 6

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

35

主题

809

帖子

1597

积分

金牌飞友

Rank: 6Rank: 6

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

43

主题

786

帖子

1561

积分

金牌飞友

Rank: 6Rank: 6

积分
1561
飞币
773
注册时间
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

主题

779

帖子

1549

积分

金牌飞友

Rank: 6Rank: 6

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

43

主题

786

帖子

1561

积分

金牌飞友

Rank: 6Rank: 6

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

33

主题

852

帖子

1690

积分

金牌飞友

Rank: 6Rank: 6

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

- 0:01

54

主题

810

帖子

1623

积分

金牌飞友

Rank: 6Rank: 6

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

33

主题

852

帖子

1690

积分

金牌飞友

Rank: 6Rank: 6

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

36

主题

812

帖子

1599

积分

金牌飞友

Rank: 6Rank: 6

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

31

主题

841

帖子

1673

积分

金牌飞友

Rank: 6Rank: 6

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

52

主题

798

帖子

1592

积分

金牌飞友

Rank: 6Rank: 6

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

本版积分规则

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