【路径轨迹】球的弹道轨迹(Matlab实现)

“在代码的海洋里,有无尽的知识等待你去发现。我就是那艘领航的船,带你乘风破浪,驶向代码的彼岸。

 💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

📚2 运行结果

🎉3 参考文献

🌈4 Matlab代码实现

💥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.

🌈4 Matlab代码实现

图片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值