个人感觉文中有大量错误,还请帖主查阅一下资料,比如说其中一点错误就是nano与uno io 应该是一样多的因为他们两个单片机使用的芯片是一模一样的,建议帖主仔细查阅资料,其次STM32系列不存在编程难度不同于ARDUINO官方发布的单片机编程难度,STM32系列同样可以使用小学生都会的图形化编程,并且ARDUINO ide也可以编程STM32两者编程是几乎完全可以相同的,其中还有大量错误个人就不一一列举,还请帖主仔细查阅资料。
我从初一开始研究火箭的,第一款接触到的硬件还是arduino UNO这块开发板。时隔两年多,在自研飞控这条曲折的道路上摸爬滚打。现在给萌新们分享一下我的个人见解(大佬勿喷)
注意:此处不讨论关于物理方式开伞,无控制系统的舵片固定的火箭
首先我们要明确常规(至少有飞控)的火箭(无论是固体还是液体)飞控究竟需要什么基本功能
1.如果你想做的是火箭而不是“火箭”(烟花) 那么你的飞控必须具有调节火箭姿态的能力。所以它至少应该能够读取陀螺仪的数据以及控制舵片的I/O输出
2.如果你不想让火箭摔下来直接报废的话,开伞系统也是必不可少的。这个功能的实现也需要一定数量的I/O输出
其次我们要了解火箭飞控可能携带的附加功能
1.就专业一点的爱好者来说,一般会记录一些数据,例如高度,气压或者日志以及其他数据,那么飞控则必须具有储存数据的能力。一般而言采用SD储存卡的方式(如果你想且能在单片机的那一点芝麻大的内存里存一堆数据,那你是真的巨佬),万一单片机报废了,数据还是在的(读卡比修复这个报废的单片机容易多了)
2.卫星定位系统在飞行高度较高或者能使火箭较为有可能严重地偏离发射者所估算的落点的情况下(怕你找不到了,你要是不稀罕,随你便)帮助寻找你的火箭或者残骸
2.液体火箭就更加离谱了,燃料和氧化剂的电磁阀开关,发动机的温度监测(长期工作),地面控制信号的接收,应急排放燃料的电磁阀,储罐压力监测......需要海量的I/O和UART/IIC/ RS232?的接口
现在我们终于可以讨论一下飞控的核心,主控单片机
就目前我见到的飞控中最常见的无非就是两类Arduino系列的单片机(ATmega328P/ATmega2560比较常见,也有ESP32/ESP8266)以及单片机巨头STM32系列
Arduino的最大优势也是它能长期跻身于各种物联网的小制作的原因都是:这东西真的简单到爆炸,你甚至可以用图形化编程软件给你的飞控写程序。用Arduino点亮一个LED只需要添加两行代码即可,但对于STM32而言就不止这么点了。
但是抛开ESP32不谈,ATmega328p的运行内存仅有2KB,而同为十几块的STM32C8T6的运行内存为20KB,是它的十倍。STM32C8T6的储存(FLASH)为64KB,而ATmega328p只有它的一半(32KB)。价格稍贵且I/O少的ESP-32的有效(可用)RAM为160KB。如果你的I/O和串口的需求仍不能满足,则要考虑ATmega2560或者 STM32F系列的引脚更多的产品
如果你只是研发小型固体火箭,那么Arduino nano/Arduino UNO就可以了
(个人见解和使用感受,此处的算力为综合性能)
[修改于 1年0个月前 - 2023/12/15 17:27:40]
个人感觉文中有大量错误,还请帖主查阅一下资料,比如说其中一点错误就是nano与uno io 应该是一样多的因为他们两个单片机使用的芯片是一模一样的,建议帖主仔细查阅资料,其次STM32系列不存在编程难度不同于ARDUINO官方发布的单片机编程难度,STM32系列同样可以使用小学生都会的图形化编程,并且ARDUINO ide也可以编程STM32两者编程是几乎完全可以相同的,其中还有大量错误个人就不一一列举,还请帖主仔细查阅资料。
现在嵌入式硬件高度发达,飞控系统的硬件选项很多、选择难度较低。论坛上绝大多数帖子都没有提到飞控的功能是什么,输入输出信息是什么,达成的目标是什么,控制律是什么,如何测试和验证。
现在嵌入式硬件高度发达,飞控系统的硬件选项很多、选择难度较低。论坛上绝大多数帖子都没有提到飞控的功能...
选择硬件对于刚入门的爱好者来说就是arduino比较常见了,库文件什么的都很好用,函数的封装也是很容易上手的,但是如果有能力而且有需要的话就可以选择一些别的系列的单片机了(STM32还是比较常见的),ardunio IDE来编程可以说买本书就能看懂(我自己机器人考级用的就是arduino系列,官方能把这个东西拿来用说明它确实有好的地方)
200字以内,仅用于支线交流,主线讨论请采用回复功能。