show
Description
visualizes the UAV trajectory in 3-D. The visualization includes the waypoints, velocity
direction at each waypoint, flight trajectory and UAV body frames along flight
trajectory.AX
= show(traj
)
specifies options using one or more name-value arguments. For example,
AX
= show(___,Name=Value)show(traj,NumSamples=300)
draws 300 body frames for the UAV.
Examples
Create a set of waypoints for both the multirotor and the fixed-wing UAV to follow.
wpts = [0 0 0; 2 2 -2; 10 10 -3; 12 12 -6]; numwpts = size(wpts);
Specify additional trajectory information, such as desired velocities, accelerations, jerks, snaps, and yaws, as well as start time, an end time, and times of arrival.
vels = 2*ones(numwpts); accs = ones(numwpts); jerks = zeros(numwpts); snaps = zeros(numwpts); yaws = zeros(1,numwpts(1)); starttime = 0; endtime = 8; toas = linspace(starttime,endtime,numwpts(1));
Use the trajectory information to create the flight trajectories for the multirotor and the fixed-wing UAVs. Query and display the trajectories.
mrft = multirotorFlightTrajectory(wpts,vels,accs,jerks,snaps,yaws,toas); fwft = fixedwingFlightTrajectory(wpts,vels,toas); query(mrft,1:4)
ans = 4×16
1.6184 1.6184 0.7520 -0.0243 -0.0243 -2.8758 -4.6045 -4.6045 -9.1669 0.9863 -0.1179 0.1147 -0.0137 0.0732 -0.0732 -0.0000
1.0236 1.0236 -2.7807 0.5482 0.5482 -0.6198 3.9704 3.9704 8.6424 0.7429 0.5559 -0.2987 -0.2235 -1.3257 1.3257 0
2.7277 2.7277 -1.2947 2.4069 2.4069 2.1026 1.7442 1.7442 -1.3857 0.9941 0.0770 -0.0761 -0.0059 0.1950 -0.1950 0.0000
6.4028 6.4028 -2.0972 4.4609 4.4609 -3.8447 -1.1875 -1.1875 -1.1875 0.9971 -0.0537 0.0534 -0.0029 -1.2364 1.2364 0
query(fwft,1:4)
ans = 4×16
0.9453 0.9453 -0.3203 0.2422 0.2422 -1.8672 -0.7031 -0.7031 -1.5469 0.7098 -0.2450 0.5914 0.2940 -0.4683 0.4683 0.0000
1.1875 1.1875 -2.1875 0.5938 0.5938 -1.0938 1.4063 1.4062 3.0938 0.8287 -0.1692 0.4085 0.3432 1.7750 -1.7750 0.0000
2.7813 2.7812 -1.6055 2.6563 2.6562 0.4414 1.6875 1.6875 -4.0078 0.9223 0.0224 -0.0540 0.3820 -0.7962 0.7962 -0.0000
6.0000 6.0000 -2.5000 3.5000 3.5000 -1.5625 -0.0000 -0.0000 0.0000 0.9131 -0.0583 0.1407 0.3782 -0.0000 -0.0000 0.0000
Visualize both the multirotor flight trajectory and the fixed-wing flight trajectory.
ax = show(mrft,NumSamples=200);
title("Multirotor Flight Trajectory")
view([0 0])
show(fwft,NumSamples=50);
title("Fixed-Wing UAV Flight Trajectory")
view([0 0])
Create a UAV mission by using the flight plan stored in a .plan
file and show the mission.
mission = uavMission(PlanFile="flight.plan"); show(mission); axis equal
Create parsers for a multirotor UAV and a fixed-wing UAV.
mrmParser = multirotorMissionParser(TransitionRadius=2,TakeoffSpeed=2); fwmParser = fixedwingMissionParser(TransitionRadius=15,TakeoffPitch=10);
Generate one flight trajectory using each parser.
mrmTraj = parse(mrmParser,mission); fwmTraj = parse(fwmParser,mission);
Visualize the waypoints, flight trajectory and body frames for each UAV.
figure show(mrmTraj,FrameSize=20,NumSamples=75); title("Multirotor Flight Trajectory") axis equal
figure show(fwmTraj,FrameSize=20,NumSamples=75); title("Fixed-Wing Flight Trajectory") axis equal
Plot the mission, waypoints, flight trajectory and UAV body frames in the same plot for each UAV.
figure show(mission); hold on show(mrmTraj,FrameSize=20,NumSamples=75); hold off title("Mission Using Multirotor Trajectory") axis equal
show(mission); hold on show(fwmTraj,FrameSize=20,NumSamples=75); hold off title("Mission Using Fixed-Wing Trajectory") axis equal
Input Arguments
Flight trajectory, specified as a
multirotorFlightTrajectory
or
fixedwingFlightTrajectory
object.
Name-Value Arguments
Specify optional pairs of arguments as
Name1=Value1,...,NameN=ValueN
, where Name
is
the argument name and Value
is the corresponding value.
Name-value arguments must appear after other arguments, but the order of the
pairs does not matter.
Example: show(traj,NumSamples=300)
draws 300 body frames for the
UAV.
Parent axes, specified as an Axes
object.
Number of UAV body frames to draw, specified as a positive integer.
Example: show(traj,NumSamples=300)
Start time of trajectory drawing, specified as a nonnegative numeric scalar, in seconds.
Example: show(traj,StartTime=2)
End time of trajectory drawing, specified as a positive numeric scalar, in seconds.
Example: show(traj,EndTime=8)
Length of the UAV frame axes, specified as a positive numeric scalar, in meters.
Example: show(traj,FrameSize=1.8)
Length of the velocity direction lines, specified as a nonnegative numeric scalar, in meters.
Example: show(traj,VelocityLineSize=2.3)
Width of the velocity direction lines, specified as a nonnegative numeric scalar, in meters.
Example: show(traj,VelocityLineWidth=2.3)
Version History
Introduced in R2022b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: United States.
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.
América
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)