Main Content

multirotorMissionParser

Generate trajectory for multirotor UAV from mission

Since R2022b

    Description

    The multirotorMissionParser object parses the mission defined in a uavMission object and generates a flight trajectory as a multirotorFlightTrajectory object.

    Creation

    Description

    parser = multirotorMissionParser creates a multirotor UAV mission parser parser.

    parser = multirotorMissionParser(Name=Value) specifies properties using one or more name-value arguments.

    example

    Properties

    expand all

    Transition radius for computing trajectory waypoints based on the mission definition, specified as a positive numeric scalar, in meters.

    Example: multirotorMissionParser(mission,TransitionRadius=3)

    Takeoff speed for the multirotor UAV, specified as a positive numeric scalar, in meters per second. The parser uses this speed to calculate the time required for the multirotor to reach the desired altitude during takeoff and landing.

    Example: multirotorMissionParser(mission,TakeoffSpeed=8)

    Object Functions

    copyCopy mission parser
    parseGenerate trajectory in local NED frame

    Examples

    collapse all

    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

    Figure contains an axes object. The axes object with xlabel East (m), ylabel North (m) contains 10 objects of type line, text.

    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 contains an axes object. The axes object with title Multirotor Flight Trajectory contains 322 objects of type patch, line.

    figure
    show(fwmTraj,FrameSize=20,NumSamples=75);
    title("Fixed-Wing Flight Trajectory")
    axis equal

    Figure contains an axes object. The axes object with title Fixed-Wing Flight Trajectory contains 328 objects of type patch, line.

    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

    Figure contains an axes object. The axes object with title Mission Using Multirotor Trajectory, xlabel East (m), ylabel North (m) contains 332 objects of type patch, line, text.

    show(mission);
    hold on
    show(fwmTraj,FrameSize=20,NumSamples=75);
    hold off
    title("Mission Using Fixed-Wing Trajectory")
    axis equal

    Figure contains an axes object. The axes object with title Mission Using Fixed-Wing Trajectory, xlabel East (m), ylabel North (m) contains 338 objects of type patch, line, text.

    Version History

    Introduced in R2022b