主要内容

显示

在图中显示参考路径

描述

例子

显示(refPath在当前图中显示参考路径及其横向状态。

显示(refPath、“父”parentAx)显示指定轴上的参考路径。parentAx指定为句柄。

斧头=显示(___使用任何先前的输入组合显示引用路径,并返回绘制引用路径的轴句柄。

例子

全部折叠

使用弗莱内坐标为参考路径生成可选轨迹。为你的轨迹指定不同的初始和最终状态。根据生成的轨迹调整状态。

从一组路径点生成一个参考路径。创建一个trajectoryGeneratorFrenet对象从引用路径返回。

路点= [0 0;...50 20;...100 0;...150 10];refPath = referencePathFrenet(路径点);connector = trajectoryGeneratorFrenet(refPath);

生成一个5秒的轨迹,在路径原点和路径下30米的点之间。

initState = [0 0 0 0 0 0];% [S ds ddS L dL ddL]termState = [30 0 0 0 0 0 0];% [S ds ddS L dL ddL][~,trajGlobal] = connect(connector,initState,termState,5);

在全局坐标中显示轨迹。

显示(refPath);持有平等的情节(trajGlobal.Trajectory (: 1) trajGlobal.Trajectory (:, 2),“b”)传说([“锚点”“参考路径”“弹道高度30米”])

图中包含一个轴对象。axis对象包含3个line类型的对象。这些对象表示路径点,参考路径,到30m的轨迹。

创建横向偏差在-3米到3米之间的终端状态矩阵。生成轨迹,在10秒内覆盖相同的弧长,但横向偏离参考路径。显示新的替代路径。

termStateDeviated = termState + ([-3:3]' * [0 0 0 0 1 0 0]);[~,trajGlobal] = connect(connector,initState,termStateDeviated,10);clf显示(refPath);持有平等的i = 1:length(trajGlobal) plot(trajGlobal(i).Trajectory(:,1),trajGlobal(i).Trajectory(:,2),‘g’结束传奇([“锚点”“参考路径”“另类轨迹”)举行

图中包含一个轴对象。axis对象包含9个line类型的对象。这些对象表示路径点、参考路径、可选轨迹。

指定一个新的终端状态来生成一个新的轨迹。这种轨迹是不可取的,因为它需要反向运动才能达到10米/秒的横向速度。

newTermState = [5 10 0 5 0 0];[~,newTrajGlobal] = connect(connector,initState,newTermState,3);clf显示(refPath);持有平等的情节(newTrajGlobal.Trajectory (: 1) newTrajGlobal.Trajectory (:, 2),“b”);传奇([“路标”“参考路径”“新轨迹”)举行

图中包含一个轴对象。axis对象包含3个line类型的对象。这些对象表示路径点、参考路径、新轨迹。

通过指定的弧长来放宽对纵向状态的限制.再次生成并显示轨迹。新位置显示出偏离参考路径的良好替代轨迹。

relaxedTermState = [NaN 10 0 5 0 0];[~, trajglobalrelaxstate] = connect(connector,initState,relaxedTermState,3);clf显示(refPath);持有平等的情节(trajGlobalRelaxed.Trajectory (: 1) trajGlobalRelaxed.Trajectory (:, 2),‘g’);持有

图中包含一个轴对象。axis对象包含3个line类型的对象。

输入参数

全部折叠

引用路径,指定为referencePathFrenet对象。

输出参数

全部折叠

在其上绘制参考路径的轴,返回为句柄。

扩展功能

C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。

版本历史

R2020b中介绍

Baidu
map