User Tools

Site Tools


eeros_architecture:control_system:available_blocks:pathplannerconstacc

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
eeros_architecture:control_system:available_blocks:pathplannerconstacc [2020/09/03 09:01] – created ursgrafeeros_architecture:control_system:available_blocks:pathplannerconstacc [2020/09/03 12:11] (current) ursgraf
Line 1: Line 1:
 ====== Path Planner Constant Acceleration ====== ====== Path Planner Constant Acceleration ======
-This path planner takes precalculated cubic splines from file and outputs the resulting values for jerk, acceleration, velocity and position onto its outputsAll these values are given for one dimension. The file must contain piecewise information about the jerk within given interval together with the start conditions for acceleration, velocity and position at the beginning of the intervalYou must make surethat these initial values are the results from the last interval. Let's make an example with the following four intervals:+This path planner with constant acceleration generates trajectory where the acceleration is always constant. The trajectory leads from the start position to its end positionBoth positions can be specified in several dimensions. The acceleration is set to positive constant value. The velocity starts from 0 and goes up to its maximum value which can be chosen for each dimension. After this maximum velocity is reached the acceleration is set to 0 and the trajectory continues with constant velocityTowards the end a constant deceleration makes sure that the final position is reached with the velocity reaching 0. 
  
-The jerk within the second interval is 1e4 while the acceleration, velocity and position are all zero at the beginning of this interval. The jerk is set to zero in the third intervalThe acceleration, velocity and position must be set to the values they reached at the end of interval two in order not to cause any discontinuitiesYou have to calculate these values with an external tool+The user can choose a start position and an end position. Further maximum acceleration, maximum deceleration and maximum velocity can be chosenFrom these values the trajectory is calculated and run.  
-[{{ :eeros_architecture:control_system:available_blocks:pathplannercubic.png?600 |Path planner output for a given path}}]+ 
  
-The trajectory file is loaded with +[{{ :eeros_architecture:control_system:available_blocks:pathplannerconstacc.png?600 |Path planner output for a start and end position}}] 
 + 
 +With
 <code cpp> <code cpp>
-  init(filename);+  move(startPos, endPos);
 </code> </code>
-where ''filename'' denotes file containing the new trajectory.  +you dispatch a new trajectory. The trajectory is calculated with the maximum acceleration, deceleration and velocity. ''startPos'' and ''endPos'' can be given in several dimensions, e.g. startPos = {0, 10} and endPos = {18.3, 12.5} chooses two dimensional trajectory in a plane. For this purpose maximum acceleration, deceleration and velocity must be specified with two dimensions each.\\ 
-\\ +You can also choose a start position and move to an end position with 
-When calling+
 <code cpp> <code cpp>
-  move(startPos);+  Matrix<2,1,double> start{15, 30}, end{5, 20}; 
 +  setStart(start); 
 +  move(end);
 </code> </code>
-you dispatch a new trajectory. The trajectory is taken from the path file, no scaling is made. The trajectory starts from ''startPos'' and moves the distance given in the trajectory path file within the time given in the same file. +
-\\ +
-You can also call  +
-<code cpp> +
-  move(time, startPos, deltaPos); +
-</code> +
-This will take the trajectory from the file and scale it so that it starts at ''startPos'' and moves the distance given by ''deltaPos'' within the desired ''time''+
  
eeros_architecture/control_system/available_blocks/pathplannerconstacc.1599116516.txt.gz · Last modified: 2020/09/03 09:01 by ursgraf