米斯奇...我悟了,最近和Arduino代码掰扯快疯掉了
首先感谢科创基金的资助。
在科创网,已经有许多关于固体火箭发动机试车台的设计文章,但是从硬件到软件,或多或少有不清晰的地方,对于广大爱好者是个很大的阻碍。因此,我准备设计并制造一款具有安全性高,兼容性好的铝型材固体火箭发动机试车台。
试车台应具有安全性高,稳定,兼容性好的特点,主要分为主体框架和数据采集系统两部分。
①主体框架
为了便于更换组件(如更换不同量程的推力传感器)和试车台搬运,我们使用铝型材作为主体,其具有易加工,强度大,兼容性好,成本低等诸多优点,是用作微型固体火箭发动机试车台的不二之选。我们将发动机通过U型螺栓和l型直片卡槽与光轴滑轨相连,使用光轴滑轨可以进一步减小摩擦力,使采集的推力数据更接近真实值。于是包含铝型材,光轴滑轨,压力传感器,亚克力板等部件的试车台就成型了。
试车台3D渲染图
2020铝型材截面
试车台上的部分零件3D建模图(用游标卡尺测得的大概形状,可能不太精准)
②数据采集系统
发动机推力数据的采集原理类似于用电子称称量物品,将压力传感器连接hx711模块(将压力信号转化为电信号),再将hx711模块与单片机相接,最后导入程序即可采集推力数据。
我们使用量程为0~40千克的压力传感器,单片机使用Arduino UNO R3,易编程,稳定性好。
我计划使用mixly(一款编程软件)设计推力采集程序(如下图)
把程序烧写进单片机,将硬件连接好后,然后进行发动机试车即可采集推力数据,处理数据导入 Openrocket,这样就可以进行许多重要的计算,为你的火箭设计保驾护航。
在接下来实际操作中,主体框架的搭建没问题
将零件摆齐,准备组装
组装好的半成品试车台
一些细节部分的特写。
但是试车台数据采集系统方面出了问题,我们按照之前的想法做出来的采集系统一直输出“零”
我做了一些尝试(包括但不限于更换arduino,更换hx711,更换应变力传感器),但还是没法解决这个问题。这也是导致整个项目耽搁很久的原因之一,但是目前还没有解决这个问题。为了保证项目进行下去,我们暂时选择了使用氢离子的推力采集卡,以后会不断尝试改进,争取早日完善。
试车台全系统测试
工作时,试车台稳定性非常好,我们已经进行了多次发动机测试,发动机推力数据的处理我就不多做赘述了。
图纸文件
源码
#include <Hx711.h> #include <SD.h> #include <SPI.h> Hx711 scaleA1_A2(A1,A2); File datafile; void setup(){ scaleA1_A2.setOffset(scaleA1_A2.getAverageValue(30)); scaleA1_A2.setScale(1992); Serial.begin(9600); SD.begin(4); } void loop(){ Serial.println(scaleA1_A2.getWeight(10)); datafile = SD.open("time.txt", FILE_WRITE); if(datafile){ datafile.print(millis()); datafile.println(""); datafile.close(); } datafile = SD.open("thrust.txt", FILE_WRITE); if(datafile){ datafile.print(scaleA1_A2.getWeight(10)); datafile.println(""); datafile.close(); } }
[修改于 5个月4天前 - 2024/06/19 23:31:06]
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |
200字以内,仅用于支线交流,主线讨论请采用回复功能。