How to calculate total distance covered, time taken and total angle turned by differential drive kinetic model of robot in navigatiom?
조회 수: 2 (최근 30일)
이전 댓글 표시
After navigation the robot (differential drive kinetic) from one point to another, through waypoints, i would like to find the following output, total distance covered, time taken to complete the navigation, and total angle turned by robot to comple the movement.
댓글 수: 0
채택된 답변
Cameron Stabile
2022년 2월 22일
편집: Cameron Stabile
2022년 2월 22일
Hi Aminu,
While navigating your robot, you will likely have access to the state derivative (or vehicle commands) applied during your path-following. Assuming that your commands/state-derivative are constant between each timestep, you can calculate your desired metrics via simple integration.
Assuming your system follows standard differentialDriveKinematics, the commands for your robot are , velocity and angular velocity, respectively:
% Define a random sequence of commands that were applied to your robot
v = rand(100,1);
w = (rand(100,1)-.5)
% Assume a fixed control step-size
dt = 0.1;
% Assuming that controls are held constant between each step, integrate
% the controls over the trajectory to calculate total change in distance/angle.
totalDist = sum(abs(v*dt));
totalChangeInAngle = sum(abs(w*dt));
totalTime = dt*numel(v);
If your commands are instead given in terms of wheelspeed (), you can use these formulas for converting them to generalized commands.
Hope this helps,
Cameron
댓글 수: 0
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Robotics에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!