乱七八槽的一些图:
之前随便做了个航电玩,发到论坛上来看看有没有人提点意见
为减轻重量没有做遥测系统,还要GPS/GPRS的防丢系统会日后补上
BUCO航电系统介绍
本系统基于mpu6050陀螺仪的卡尔曼滤波实现对姿态的解算,通过arduino平台实现对atmega328p-au单片机的快速开发,同时采用了bmp280解算当前环境温度与气压,进而得出当前高度。本系统可以将mpu6050采集并经过卡尔曼滤波后的数据和bmp280的温度,气压和高度数据一并存入TF卡内,以方便在完成发射后进行数据后处理。TF卡部分电路采用74HC4050D做逻辑缓冲门以提高SPI通讯总线的稳定性。电源部分采用了低正向压降的肖特基二极管防止由于电源反接引发的钽电容爆炸,同时采用了LM2576-5.0v开关稳压方案,对于超低功耗的3.3v部分电源电路则直接才用AMS1117-3.3v线性稳压器稳压。单片机编程部分采用了ISCP方式进行上传并预留了串口以方便日后二次开发利用。通过上述的方案,实现了系统的微型化与低成本制造,简单而可靠。BUCO系统总质量<10g ,总成本 <45元,是模型火箭爱好者的火箭发射数据获取的一大神器!
TF卡数据储存格式解析
第一部分:启动环境检测
示例:
*******************************************************************************
Basic measurements:
Initial height:46.90
Initial pressure:100763.00
Initial aceleration:1.13
Initial angles:1.67 -0.64 0.56
上述数据表示初始海拔高度46.9m,气压100763 Pa,总加速度1.13g,X轴方向倾角1.67°,Y轴方向倾角-0.64°,Z轴方向倾角0.56°。
第二部分:火箭上升段数据
当程序自动判断火箭处于上升状态时,将启动上升段数据记录。
示例
*******************************************************************************
Rising period
*******************************************************************************
0.15 0.49 0.34 -0.34 -0.08 -28.75 -149.84 92.90 -173.92 -20.39 -118.67 100744.00 48.49 25.79
0.36 0.64 0.41 0.22 -0.44 -38.70 76.78 102.60 154.09 -26.65 -113.31 100744.00 48.49 25.76
0.44 1.50 0.22 1.48 -0.16 -623.84 102.11 -96.74 128.69 -27.81 -100.75 100742.00 48.65 25.71
0.53 1.87 0.28 -0.11 1.85 -714.72 -145.14 -23.62 61.03 -29.20 -90.27 100737.00 49.07 25.60
0.62 0.97 0.12 -0.32 0.90 172.12 65.06 -41.32 29.87 -27.43 -89.37 100737.00 49.07 25.64
0.71 1.03 0.35 0.06 0.96 -12.76 85.82 -74.34 41.03 -18.80 -91.13 100738.00 48.99 25.64
0.78 1.09 0.09 0.23 1.06 41.93 44.49 -17.46 41.37 -15.27 -89.85 100736.00 49.15 25.64
..................(省略剩余数据)
数据存放顺序为:(对照顺序为从左向右)
1.时间(s) 2.总加速度(g) 3.X轴方向加速度(g) 4.Y轴方向加速度(g) 5.Z轴方向加速度(g) 6.X轴角速度(°/s) 7.Y轴角速度(°/s) 8.Z轴角速度 (°/s) 9.X轴倾角(°) 10.Y轴倾角(°) 11.Z轴倾角(°) 12.气压(Pa) 13.当前高度(m) 14.环境温度(℃)
第三部分:火箭下降段数据
当程序自动判断火箭处于自由落体状态并持续下降了1.5m,将启动开伞程序并记录下降段数据,直到程序自动判断火箭处于静止状态并持续一段时间后进入待机模式。
示例
*******************************************************************************
Dropping period
*******************************************************************************
47.33 2.20 0.24 1.50 1.59 330.99 39.55 -20.08 43.34 -9.20 -38.90 100748.00 48.15 26.05
47.45 2.94 0.55 -0.41 2.85 100.34 81.05 4.58 68.46 -6.12 -35.51 100747.00 48.23 26.05
47.55 2.08 0.27 -0.00 2.07 -4.52 1.04 -21.18 70.96 -5.27 -32.51 100757.00 47.40 26.07
47.65 1.85 0.05 0.20 1.84 -3.05 14.77 -9.09 69.99 -4.13 114.37 100756.00 47.48 26.05
47.81 1.46 0.02 0.14 1.45 -18.49 1.95 6.84 68.60 -4.39 -29.96 100765.00 46.73 26.06
............(省略剩余数据)
数据格式同火箭上升段数据,这里就不再赘述了。
BUCO航电的使用流程
1. 将BAT接口接上11.1v Lipo电池供电(推荐供电方案,可以采用别的电池,但一定要保证足够功率用以启动开伞火头)。
2. 插入TF卡,并确认关闭编程模式。
3. 点击自锁开关进入开机自检程序。
4. 三声滴后,进入等待激活状态。在等待激活状态时,航电将不启动陀螺仪,高度计与数据录制。
5. 长按激活按钮,听到短促的滴滴声后,进入30s等待激活倒计时。倒计时期间航电也将不启动陀螺仪,高度计与数据录制。可以在这30s时间内撤离火箭发射区域,进入安全区域准备发射。这样防止了开伞检测程序的严重错误导致地面火箭故障开伞而引发危险。
6. 倒计时结束后,火箭进入等待触发模式。
7. 火箭点火后,航电通过检测加速度和高度变化进入全面启动模式。当航电进入这一模式时,将持续发出滴滴声。若不慎在火箭在地面进入这一模式时,可进行重新启动避免火箭数据的录制错误。
8. 火箭起飞后,达到最高高度并下落时,当系统判断当前高度小于最高高度,加速度判断为失重状态时,将进入开伞程序并记录下降段的数据。
9. 火箭落地后,当火箭整体静止超过10s时,将进入待机模式,每3s发出一声滴声,等待回收。
10. 可以将TF卡内数据拷入电脑进行发射后的后处理工作。
[修改于 5年4个月前 - 2019/08/07 10:11:06]
注意一下可靠性,建议用下图这种带锁连接器。电路的可靠性还可以优化。点火电路电源最好是独立的,或者只输...
其实这个航电系统是帮别人代做,尺寸指定的比较大,也不要求有点火功能....
倒是要求我用sd卡,使用lipo 11.1v电池供电等使得整个电路变大的设计....
连接器件确实考虑到了带锁的连接器,不过文中的图片只是方便开发才临时用的,后期会进一步修改
所谓的激活按钮貌似也是很鸡肋的玩意....其实可以拿个跳帽给接上取消这一流程,总之都是可以通过串口通信修改设置的(不过当前没做)
当然无线点火器是有做过的,简单的lora通信和密码验证等流程,可靠性应该还算不错的。这个航电仅负责最高高度的开伞点火就行了。
已经打算做优化版而不是这种超级大的代做定制版了,一切应该以小体积和电路优化出发才是最好的选择。
(刚刚看到氢离子dalao的航电图片,想到其实是可以进行很大的缩小和优化设计的)
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |
200字以内,仅用于支线交流,主线讨论请采用回复功能。