“在代码的海洋里,有无尽的知识等待你去发现。我就是那艘领航的船,带你乘风破浪,驶向代码的彼岸。
💥💥💞💞欢迎来到本博客❤️❤️💥💥
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。
⛳️座右铭:行百里者,半于九十。
📋📋📋本文目录如下:🎁🎁🎁
目录
💥1 概述
弹道轨迹是指物体在重力作用下抛出后的飞行路径,这一概念在物理学、运动科学、军事、体育以及游戏设计等多个领域中扮演着重要角色。对于球体而言,其弹道轨迹的分析和预测尤其受到重视,因为这直接关系到投掷、射击、高尔夫、篮球等多种体育项目的表现,以及在工程学和军事上的应用。理论上的弹道轨迹可以通过解析公式计算,考虑到重力和初始条件,忽略空气阻力时,轨迹呈抛物线形状。但是,在实际应用中,上述提到的复杂因素使得弹道轨迹的精确计算变得更加困难。为此,科学家和工程师通常使用数值模拟方法,如欧拉方法、龙格-库塔方法等,来求解包含空气阻力和旋转效应的微分方程组,以获得更接近实际情况的弹道轨迹。
📚2 运行结果
主函数部分代码:
clear all
close all
clc
global rho S cd m g opz_aereo_y
rho=1; %Air density [kg/m3]
S=0.1; %Surface [m2]
cd=0.8; %Drag coefficient [-]
m=0.8; %mass [kg]
g=9.8065; %gravitational acceleration [m/s2]
tf=5; %Simulation final time [s]
%Initial conditions
V0=10; %Initial speed [m/s]
x0=0; %Initial x [m]
y0=10; %Initial y [m]
opz_aereo_y=1; %Consider or not the aerodynamic drag along y
alpha_ini=10:5:70; %Launch angle
%Some figure setting and mtrix initialization
col='brgmck';
col=repmat(col,1,10);
range=zeros(size(alpha_ini));
max_h=range;
leg=cell(length(alpha_ini),1);
figure(1)
clf
subplot(2,2,[1 3])
hold on
grid on
xlabel('range [m]','FontWeight','bold')
ylabel('Height [m]','FontWeight','bold')
set(gca,'FontWeight','bold')
%Loop over launch angle
for ii=1:length(alpha_ini)
alpha0=deg2rad(alpha_ini(ii));
Vx0=V0*cos(alpha0);
Vy0=V0*sin(alpha0);
[t, Y]=ode45(@moto_balistico,[0 tf],[Vx0 Vy0 x0 y0]');
x=linspace(min(Y(:,3)),max(Y(:,3)),1000);
data=zeros(1000,3);
for jj=1:4
data(:,jj)=interp1(Y(:,3),Y(:,jj),x,'linear');
end
t=interp1(Y(:,3),t,x,'linear');
pos_ground=find(data(:,4)<0,1,'first');
data(pos_ground:end,:)=[];
range(ii)=data(end,3);
max_h(ii)=max(data(:,4));
subplot(2,2,[1 3])
plot(data(:,3),data(:,4),col(ii),'LineWidth',2)
drawnow
leg{ii}=['\alpha = ',num2str(alpha_ini(ii)),' �'];
🎉3 参考文献
文章中一些内容引自网络,会注明出处或引用为参考文献,难免有未尽之处,如有不妥,请随时联系删除。
[1]梁亮,吴成东,刘世昌.基于关节损耗约束的工业机器人最优轨迹规划算法研究[J/OL].机械工程学报:1-9[2024-07-04].http://kns.cnki.net/kcms/detail/11.2187.TH.20240627.1047.022.html.
[2]王凯威,尉静娴.基于智能优化方法的工业机器人时间最优轨迹规划方法[J].价值工程,2024,43(18):127-129.