你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

小马哥STM32F103开源小四轴RoboFly全部资料大放送  

[复制链接]
jiuwangbujiu 发布时间:2018-9-12 11:28
RoboFly是小马哥团队在2018年8月推出的一款完全开源的小四轴。
下面是RoboFly四轴飞行器的整体框图、原理图、pcb、实物图源代码的截图,先一睹为快,后面详细介绍。
- w6 [. J) q1 S5 K
image001.png
图1:RoboFly四轴飞行器整体框图

& j+ @. i( c2 r# q3 ]6 Z
3 p4 t: ?5 u0 Z! h% q: \1 C7 h7 S
+ C( L! B7 U- p3 K% E5 E3 A# I
image003.png

, m* y, e8 N6 {7 F; O( w! c6 H) t; {
图2:RoboFly四轴飞行器原理图

' e, ]5 v  q5 T) u( p
1 l$ n& e5 _8 S* _6 V
image005.png ' }6 k! @* D5 g( e' P: l; N* k7 p
图3:RoboFly四轴飞行器PCB图
, K& I5 P4 z) i. o0 `2 _; i+ j
9 ]4 j! Q& z  T( M) W1 l

4 U! R, {; x# Z; B
image007.png " W# x1 G4 ^$ g/ [3 Z
图4:RoboFly四轴飞行器PCB 3D俯图

% d) @' P3 a) m0 E6 N- l( A' D; R1 Z/ v) E; q' M0 N9 K
1 V1 Q: v4 m" b
image008.png
2 ]* N3 n# i5 f1 Q* j& B2 f4 {; y
图5:RoboFly四轴飞行器PCB 3D侧视图
% F1 n3 g# [4 x; K2 P1 l% t9 h
' e, x  }5 r3 b1 a

/ ^4 s0 k% m7 n# ~7 p" F
image010.jpg - B! S# Z1 V5 P8 Z# o0 o2 n
图6:RoboFly四轴飞行器实物图

5 G, `- w6 c! X. M3 ^1 n
3 `. \4 {; K$ q0 z) v3 e/ T$ F
image012.png
# W1 U$ z' U& ^$ E& i; c! O
图7:RoboFly四轴飞行器源代码截图
: S, x4 N; J# ^7 N* S/ @
% p3 \4 N( [- T* c/ L% S8 \

& {" Z6 D. G9 P# l) W6 n2 d+ |
. T8 A2 h, k3 S% ?3 ~5 L
制作并开源这套小四轴的初衷有如下几点;
1、 初学者需要一款价格低廉、软硬件资料完备、有技术支持的四轴学习平台;
2、 以散件形式发售,电路板布局、元器件封装选型要方便焊接组装;
3、 四轴所需元器件采购方便、靠谱,最好能提供一站式采购,避免过多邮费、采购周期长、采购到不合格元器件导致学习难以进展。
4、 源代码要极其精简、方便入门者能够方便的学习,实现自己的代码;
5、 保留一定扩展接口、方便用户自己进行扩展如定高、航迹、巡线等飞行功能。在学习完四轴飞行器之后,这个开源的四轴板子仍然可以作为一个STM32开发学习板使用;

, f7 O: {) L( @9 [$ [7 E) V. o+ D' i8 k/ F7 V
RoboFly四轴的基本配置如下:
主控芯片:STM32F103C8T6
姿态检测:MPU6050
气压计: FBM320
无线芯片:SI24R1
供电方案:HT7750SA升压+XC6206稳压
灯光指示:1个电源指示LED、1个用户编程LED、4个单总线全彩RGB灯
电池:600mAh 20C 1S锂离子电池
电机:720空心杯
桨叶:55mm桨叶
桨叶保护罩:相邻轴距65mm
机架:PCB一体化机架
续航时间:10分钟
遥控距离:空旷50m

0 w7 U! e. C4 K1 ^. ~9 R* b  f7 P1 m5 @; x5 H/ U1 b
RoboFly四轴原理图各模块简单说明:

$ Q3 A6 h( j& U% s7 D
image014.png 1 b# v; `( \2 L8 X" N7 ]  a2 u( h
STM32F103C8T6是ST在2007年发布的一款MCU,截止目前ST已经发布了速度高达400MHz的STM32H7 (这时候一定有人会说600MHz的事,我知道,不用提醒),我自己也是用STM32F1,STM32F4,STN32F7都做过各种各样的四轴,但是这个开源的四轴我还是选择了STM32F103C8T6,主要从三点考虑,一是封装比较大,方便初学者焊接,二是价格低廉,学习成本比较低,三是网上有大量的资料供初学者学习使用。

7 G8 @- C; [  y6 ]! _
" E9 F4 i/ m" ^. |$ t' J7 _5 \) b* x3 t8 {! r2 ^& o
image016.png 9 h6 ~; V- S3 A: k) o. Y. Y
姿态传感器选择MPU6050,主要考虑的也是封装比较大,可以直接使用烙铁焊接,而且价格比较低,资料也很丰富。而且还自带DMP库,可以完成姿态结算后直接把姿态角输出给主控芯片。2016年我们的第一款四轴就是采用DMP库输出姿态角的。
. b) v9 F; q6 O$ X5 n9 x
% P8 N+ H9 Z; r! f
$ g5 e: C, T9 i! N3 W1 |
image018.png . ]9 d; b; k  N
气压计使用的是FBM320,对于这款气压计,个人认为性能一般。但是优点就是这个封装和BMP280、SPL06的引脚都是兼容的,方便更换。但是小四轴上放气压计,有一个比较麻烦的地方就是要想办法排除桨叶的风对它的干扰。可以使用海绵等其他东西进行隔离。

4 Y. z; I& r( f$ t8 v$ U1 A  G0 W3 p' z$ D3 [9 N: D
& C3 }5 I# M% v+ Q) F
image020.png
% b" x- u$ y! g2 I0 D% l
无线芯片用的是SI24R1,国产的,之所以用这个而不用NRF2401,是因为这个经过我测试,性能也是可以的,引脚完全兼容NRF2401,无线发射可以做到7dB,在发射和接收端都采用陶瓷天线的前提下,可以达到50m的通讯距离。如果加上AP,那达到100米应该没有问题。通过两个低成本的0欧姆电阻对电源进行了单点接地,防止电机回路的电流波动串进射频回路对射频造成干扰。

, A3 _, e5 c" ]: F1 m7 h, Z4 ^8 \0 _9 G- J: B$ P
* @7 N$ @9 b. U4 s
image022.png image024.png ; u% X$ p* @$ Y, A# t7 I* p

+ Y# D$ D# ^: a' B
对于供电方案中的先升压再降压的方案,这是我做第一款四轴飞行器的时候发现的,这种1S的锂离子电池,在四个空心杯进行供电的时候,如果四个空心杯电机不带桨叶,也就是说没有负载,那启动是没有问题的。但是如果四个空心杯都带上负载,瞬间提速到满速,就会瞬间把电池输出电压拉低到3V以下,经过我测试甚至低到了2.8V,这时候如果不升压,直接用电池给LDO供电,那LDO就会失效。所以通过升压再降压后给单片机系统供电是一个可行的方案。另一个方案就是在电机启动的时候采用缓慢启动的方式,这样电池的电压就不会瞬间被拉低,但是这样的一个不足之处就是无法让这个小四轴非常暴力,飞起来不够爽快。

: k7 A! R4 D. b2 W7 a! s
8 R0 W$ ]! S0 J! t* R/ G3 e- o& V+ e% C0 U' u: |
image027.png image025.png - ]4 f: b: ^- ?: J

1 @6 R- t/ Q  J+ t7 ?
四个机臂上采用的RGBLED是串行单总线全彩灯,也就意味着只需要占用单片机的一个IO端口,就可以控制这四个灯发出各种各样的颜色。这个灯类似与WS2811,也是通过零一码来实现数据通讯,进而控制灯的颜色的。对于初学者而言,时序往往难以理解,而这个灯可以作为学习时序最简单的一个例程,虽然简单,但是却非常有趣。

8 B( ?) [5 V) {) Y( a
因为小四轴的尺寸、重量等限制,这版四轴飞行器的电池最好不要超过600mAh,否则电池自身的重量就会成为最大的包袱。而太小的电池则不能提供较长时间的续航。总之我经过测试认为600 mAh容量应该是一个拐点。电池最好带保护板、有一定的安全性能。否则胀饱、失效事小,严重点在炸机的时候可能会爆炸。
/ H! ]7 s# T( E* I
/ ^! l" Q, L  p) h+ k$ T

2 K4 s' e" T" `! U. q/ y: v* U. H
image028.png
0 Z& b$ S2 v+ y" F  ]  p
对于这个四轴最关键的一个组建—空心杯,说出来都是泪啊,做四轴两年,有一年的时间都在寻找合格的空心杯电机。2017年有一款四轴飞行器因为采购的电机侧向震动太大,导致桨叶转动之后产生很大的侧向震动、严重干扰了加速度计,使角度偏差很大,基本不能垂直飞行。一开始把问题锁定在MOS管上、陀螺仪上、原理图与PCB设计上都未能解决问题,后来对原始数据进行FFT变换后发现了干扰的频率点,这才确定是电机的侧向震动引起的。还有一种情况就是同一批次的电机性能差异很大,导致PID调节的输出差异很大,最终会影响MOS管的寿命、电机寿命。空心杯电机使用SI2302这款MOS管进行驱动,这是非常常见的一款MOS管,便宜又好用。但是市面上这个管子假货也比较多。很多人在电机驱动电路上加不加电容、加不加二极管有很大的争议,我经过测试发现,加上电容之后效果很好,而加上二极管的效果则一般。也可能是测试方式不够严谨,回头可以一起讨论这个问题。
0 w$ \) U% x' s1 x4 ^) R; W$ A
$ w% Y& z" `& z8 H$ T" B
: {# w* [& o5 f7 I: ^
桨叶选型一定要注意选择平衡性好的桨叶、做工有瑕疵的可能会影响平衡性,在飞行的时候,如果不平衡就会导致侧向震动。

$ T/ Q5 n, n9 ^( d$ X( |3 S; i
初学者在调试四轴的时候,摔下来、失控是很常见的,所以加上桨叶保护罩之后,可以很大程度上减小桨叶、电机报废的概率。
$ Q& q; n9 M0 J3 q2 H6 [5 k
& T8 o/ U) f- Z7 n9 i- k) `
, U, P( N% S+ C8 R& I9 z* A
image030.jpg % j- J) ?" q: r! i5 S8 I8 n
如果采用飞控板和机架隔离的方式,就能从一定程度上降低震动的影响,但是这样或许会增加重量及成本,所以我选择了PCB机架,这也是初学者最容易实现的一个方案,但不是唯一的方案。

6 b( o: `! E+ N8 ~- F3 e- g0 q3 N' i2 Z( M; |$ R' c
四轴源码采用Keil MDK V5.20
STM32库使用的是标准库
& V9 w/ Q# m% z- A# k2 N
四轴源代码工程创建方法可以参考我们最小系统板的课程,课程视频可以在公众号观看,下面分享的资料中也提供了工程创建的PDF文件。

9 X* `- H" Z: q2 o( J/ B. T: L, R6 V+ @5 F# U1 ^" m; \
image032.png
) W1 W8 X6 l  C  h
6 A2 o2 f9 w' ]  n. B
链接中包括以下6个文件(回复帖子可下载):
1、RoboFly_releaseV1.1.zip(PCB工程,使用AD09创建)
2、RoboFlyDEMO.zip(源代码工程,使用Keil MDK V5.20创建)
3、RoboFly四轴飞行器元件3D模型.zip(3D模型,使用Solidworks2013创建)
4、Keil中STM32F1工程模板的搭建.pdf
5、RoboFly开源四轴交流群二维码.jpg
6、电子开发学习公众号二维码.jpg
7 B' m; x1 Z( A% s% Q
1、RoboFly_release V1.1.zip (12.75 MB, 下载次数: 3760)
5、RoboFly开源四轴交流群二维码.jpg
6、电子开发学习公众号二维码.jpg
9 收藏 39 评论297 发布时间:2018-9-12 11:28

举报

297个回答
西点钟灵毓秀 回答时间:2018-9-12 12:47:09
下载来看看
han@han 回答时间:2018-9-13 08:10:53
see see                                                
kuanglf 回答时间:2020-3-8 10:43:42
用ANOTC匿名地面站V5查看姿态,YAW角度会从-327度左右直接跳到327度左右,是什么原因?
" q! A" I: p) P7 W# q/ oYAW角度范围不是从-180度到180度吗?
电子星辰 回答时间:2018-9-12 11:44:46
收藏起来学习一下
lisingch 回答时间:2018-9-12 12:09:56
收藏学习。
七哥 回答时间:2018-9-12 12:12:38
了解学习
wlpuah 回答时间:2018-9-12 12:27:49
谢谢分享。
joelai 回答时间:2018-9-12 12:39:45
感謝分享
tyhjrwx2011 回答时间:2018-9-12 13:13:45
谢谢开源的分享
shenxiaolin_mai 回答时间:2018-9-12 13:46:09
不错不错,支持开源的东西
Hackerpro 回答时间:2018-9-12 14:17:40
好资料,谢谢,学习啦
吃煎饼的松鼠 回答时间:2018-9-12 16:00:59
谢谢分享
toddchen 回答时间:2018-9-12 20:44:38
串行彩色灯,这个很有趣呀。
kunchen 回答时间:2018-9-12 21:42:22
谢谢分享。
feixiang20 回答时间:2018-9-12 22:08:49
必须是经典啊
关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版