火箭这种形状的东西Cd和姿态关系很大,还是得6DoF仿真……
火箭初始质量100kg
火箭发动机的恒定推力是1960N
每秒喷出0.667kg燃料
最终消耗完燃料的火箭质量是10kg
燃料占火箭质量的90% 干质比为10
火箭从海拔为0的地面从静止开始发射
空气阻力为F= (1/2)CρSV^2,取Cd=0.2,S=0.0314m2
如果火箭的初始质量为m0,最终质量为m1,喷射物相对于火箭的速度为vex,那么火箭的速度变化为:
Δv = vex * ln(m0 / m1)
将数据代入,得到(液氧煤油喷气速度3000m/s):
Δv = 3000* ln(100 / 10) = 6907.76m/s
这是燃料耗尽后火箭的速度。要计算火箭的最大高度,还需要考虑重力和空气阻力的影响。重力加速度恒定为9.8 m/s2,空气阻力与空气密度和火箭速度的平方成正比。空气密度随高度的变化可以用下面的经验公式近似表示:
ρ = ρ0 * exp(-h / H)
其中ρ0是海平面处的空气密度,约为1.225 kg/m3,H是大气厚度,约为8000 m。因此,空气阻力可以写成:
F = (1/2) * Cd * S * ρ0 * exp(-h / H) * v2
其中Cd是阻力系数,S是横截面积,v是速度。
将重力和空气阻力合成一个合外力Ft,那么火箭运动满足以下微分方程:
m * dv / dt = Ft - mg
m * dh / dt = v
其中m是火箭的质量,h是高度。
这是一个非线性微分方程组,没有解析解,需要用数值方法求解。
我们可以使用Python编写一个简单的程序来模拟火箭运动
# 导入必要的库 import numpy as np import matplotlib.pyplot as plt # 定义常数 g = 9.8 # 重力加速度 rho0 = 1.225 # 海平面处的空气密度 H = 8000 # 大气厚度 Cd = 0.2 # 阻力系数 S = 0.0314 # 横截面积 vex = 3000 # 喷射物相对于火箭的速度 m0 = 100 # 初始质量 m1 = 10 # 最终质量 dm = 0.667 # 每秒喷出的燃料质量 # 定义初始条件 h0 = 0 # 初始高度 v0 = 0 # 初始速度 t0 = 0 # 初始时间 dt = 0.01 # 时间步长 # 定义变量列表,用于存储每一步的数据 h_list = [h0] # 高度列表 v_list = [v0] # 速度列表 t_list = [t0] # 时间列表 # 定义一个变量,用于记录最大高度 h_max = h0 # 最大高度 # 定义一个布尔变量,用于判断火箭是否还有燃料 fuel = True # 燃料标志 # 开始模拟循环,直到火箭落回地面或超过10000秒为止 while h_list[-1] >= 0 and t_list[-1] <= 10000: # 计算当前的火箭质量,如果小于最终质量,就取最终质量,并将燃料标志设为False m = m0 - dm * t_list[-1] # 当前质量 if m < m1: m = m1 fuel = False # 计算当前的空气密度,如果高度小于零,就取零 rho = rho0 * np.exp(-h_list[-1] / H) # 当前空气密度 if h_list[-1] < 0: rho = 0 # 计算当前的空气阻力,如果速度小于零,就取零 Fd = (1/2) * Cd * S * rho * v_list[-1]**2 # 当前空气阻力 if v_list[-1] < 0: Fd = 0 # 计算当前的合外力,如果火箭还有燃料,就加上推力,否则只有重力和空气阻力 if fuel: Ft = vex * dm - m * g - Fd # 当前合外力(有燃料) else: Ft = - m * g - Fd # 当前合外力(无燃料) # 计算下一步的速度和高度,使用欧拉法近似求解微分方程组 v_next = v_list[-1] + Ft / m * dt # 下一步的速度 h_next = h_list[-1] + v_list[-1] * dt # 下一步的高度 # 将下一步的速度和高度添加到列表中 v_list.append(v_next) h_list.append(h_next) # 计算下一步的时间,并添加到列表中 t_next = t_list[-1] + dt # 下一步的时间 t_list.append(t_next) # 比较当前的高度和最大高度,如果更大就更新最大高度 if h_list[-1] > h_max: h_max = h_list[-1] # 结束模拟
运行这段代码,得到以下结果:
火箭的最大高度约为136.8km,超过了卡门线的高度(约为100 km)。
当然,只是粗略估计,感谢WernerPleischner提出的建议,Cd(阻力系数)和姿态关系很大,进一步计算还是需要仿真
以下是一些基本液机设计
氧化剂采用液氧,燃料采用煤油
雾化喷嘴喷注
取比冲300,设计推力2000N,
采用电泵膨胀循环,再生冷却
氧燃比 2.2 设计室压10mpa 燃烧室温度取3579K,特征长度取2.5,径收敛比取5
代入计算器得到结果,氧化剂流量459.2.6/s,燃料流量208.72g/s 总667g/s
喉口直径12.4mm,出口直径41.84mm,扩张比11.37
燃烧室内径62.04mm,长度93.94mm
飞控尾翼稳定
[修改于 1年8个月前 - 2023/03/15 07:26:48]
引用WernerPleischner发表于1楼的内容火箭这种形状的东西Cd和姿态关系很大,还是得6DoF仿真……
请多指教
引用WernerPleischner发表于1楼的内容火箭这种形状的东西Cd和姿态关系很大,还是得6DoF仿真……
可以假定控制系统一直正常工作,攻角约等于零度。
6DOF仿真一般是用于设计和评估控制系统性能的,算基本的参数例如射程、最大速度、最大加速度,只需要1DOF就行了。
楼主取的参数基本是现有技术条件的极限值。电泵为了节约电池质量,不会选择较高的燃烧室压力,比冲会较涡轮泵方案偏低。一般来说液氧煤油做到海平面280s比冲几乎是极限了。而且楼主忽略了燃料箱增压气体和电泵电池的质量。
为了尽量增加射高,可以通过适当压低速度减少空气阻力带来的速度损失。楼主可以试着设计个优化算法。
时段 | 个数 |
---|---|
{{f.startingTime}}点 - {{f.endTime}}点 | {{f.fileCount}} |
200字以内,仅用于支线交流,主线讨论请采用回复功能。