%% Tracking figure %画运动轨迹 plot(X.signals.values(:,1),Y.signals.values(:,1)); hold on; plot(InitPos(1,1),InitPos(1,2),'r.','markersize',30) hold on; plot(Goal(1,1),Goal(1,2),'rp','MarkerFaceColor','r','markersize',20) title('traj plot') xlabel('X (m)'); ylabel('Y (m)'); axis equal;
时间: 2023-10-25 10:10:05 浏览: 82
这段代码是用来画出机器人的运动轨迹的。我们可以在这段代码的基础上进行修改,使其画出运动轨迹为一个半径为3的圆。
具体做法是:
1. 定义一个圆形轨迹的离散点数组,可以使用 linspace 函数生成一系列等间隔的圆心角度数值,然后计算每个角度对应的点的坐标。
2. 将运动轨迹的绘制修改为画出圆形轨迹的离散点。
修改后的代码如下:
%% Tracking figure
% 画出圆形轨迹
theta = linspace(0, 2*pi, 100);
x_traj = 3*cos(theta);
y_traj = 3*sin(theta);
plot(x_traj, y_traj, 'k--', 'LineWidth', 2); % 画出圆形轨迹
hold on;
plot(Position(:,1), Position(:,2), 'b-', 'LineWidth', 2); % 画出机器人运动轨迹
plot(InitPos(1,1),InitPos(1,2),'r.','markersize',30) % 画出初始点
plot(Goal(1,1),Goal(1,2),'rp','MarkerFaceColor','r','markersize',20) % 画出目标点
title('traj plot')
xlabel('X (m)');
ylabel('Y (m)');
axis equal;
阅读全文