Trajectory Generation
Vložit
- čas přidán 23. 07. 2024
- Different methods of generating parametric trajectories (joint variables as a function of time) for path planning in robotics applications is explained in this video, including polynomials (cubic and quintic), trapezoidal-velocity profile and s-curve (seven segment).
Very informative. I really liked how you qualified the difference between path planning and trajectory generation by giving the context of physical limitations on acceleration and torque.
Best descriptive explanation for S Curve. Thanks very much.
thank you very much for the explanation, very well done and understandable, it helped me a lot!
Nice video, it was very clear the explanation. Thank you to share it.
Professor, Quite informative video. Thanks for your effort to share this clean,precise explanations. Matlab codes also much more supportive. Best wishes
Thanks a lot for this high value videos
Many thanks, It help my problem !
Thank you for the excellent explanation, this video really helped me understand the course material. I want to ask, can these methods be applied to a simple robot arm using a microcontroller like Arduino? if yes can you give me an idea.
Did you also solve to calculate the final time like you did in 53:14 under using the quintic polynom?
Great video btw!
Good explanation
Great video, great explanation and the equations really works well
Thanks. Happy that you found the video helpful. Please share this channel with your friends.
@@mehran1384 Can you share me the Matlab code?
I am having some problems with the S-curve planning, I don't get to create the q position correctly.
Thanks
@@CAPTIS-3D check again q1,..q7 matlab equations. They are in function of t not t1 or t2,3,4,5,6,7.
Thank you for the video, is the speed profile generated in this video valid for an autonomous vehicle testing or is it only for robotics ( angles) ?
How can I interpolate this on 2 axis for them to end at the same time?
Hello, sir. If I want to execute this in Simulink, how can I convert it? I would like to add PID motor position control after the S-curve.
hello, you can take you input i suppose the speed and add a line in your code
V = timeseries(v', t');
and then go to Simulink and add a "from workspace" box and add your V (v is the vector calculated in the algorithm, and t is the time )
Which trajectory planning technique and algorithms employed in robotics???
Hello Sir, This is a very informative video on s curve trajectory. I am using this to control the motion of a linear drive of a cartesian robot but I am having an issue with the MATLAB script when I try to generate the same trajectory. If it is possible for you can you share the script code, I would be very thankful. Also, is it possible to generate this specific type of trajectory in Simulink. Thanks.
Can you tell me the source book you used?
You can read this book: Trajectory Planning for Automatic Machines and Robots
Hello sir, I am having trouble writing code for the seven segment, could you please send the code so I can counter check.
solved it, It was an issue with BODMAS
@@kevinkipkorir3132 Can you please share code for seven segment profile?
I will do it as soon as I settle down
@@kevinkipkorir3132 I just typed. It is working. Thank you for reply. Are you a researcher?
Yes, the work we are doing is really writing software for a robotic arm we are working on.
at 22:58 the q-vector elements are in the wrong order
Thanks. I will check it.
Hi, sir could i have your sheet please 😅
corrected code %% Quintic Polynomial
clear all;
t0=0.5;
tf=1.5;
qt0=0;
qtf=20;
qdott0=0;
qdottf=0;
q2dott0=0;
q2dottf=0;
%%n=16;
%%IL=0.2;
%%IM=0.005;
%%Ieq=IM+IL/(n^2);
A=[1 t0 t0^2 t0^3 t0^4 t0^5;...
0 1 2*t0 3*t0^2 4*t0^3 5*t0^4;...
0 0 2 6*t0 12*t0^2 20*t0^3;...
1 tf tf^2 tf^3 tf^4 tf^5;...
0 1 2*tf 3*tf^2 4*tf^3 5*tf^4;...
0 0 2 6*tf 12*tf^2 20*tf^3];
RHS=[qt0;qdott0;q2dott0;qtf;qdottf;q2dottf];
coeffs=inv(A)*RHS;
t=linspace(t0,tf,200);
q=coeffs(6)*t.^5+coeffs(5)*t.^4+coeffs(4)*t.^3+...
coeffs(3)*t.^2+coeffs(2)*t+coeffs(1);
qdot=5*coeffs(6)*t.^4+4*coeffs(5)*t.^3+...
3*coeffs(4)*t.^2+2*coeffs(3)*t+coeffs(2);
q2dot=20*coeffs(6)*t.^3+12*coeffs(5)*t.^2+6*coeffs(4)*t+2*coeffs(3);
%%omega_max=max(abs(qdot))*30/pi;
%%T_max=Ieq*max(abs(q2dot));
%%fprintf('using quintic polynomial, the maximum angular velocity is %4.2f rpms
',omega_max);
%%fprintf('using quintic polynomial, the maximum torque is %4.2f N-ms
',T_max);
figure(2);
subplot(3,1,1);
plot(t,q);
xlabel('t(sec)');
ylabel('q(t) (rad)');
title('Quintic Polynomial');
subplot(3,1,2);
plot(t,qdot);
xlabel('t (sec)');
ylabel('dq/dt(t) (rad/s)');
subplot(3,1,3);
plot(t,q2dot);
xlabel('t (sec)');
ylabel('d^{2}q/dt^{2}(t) (rad/s^{2})');