INOS
|
The CINOSMovePath class. More...
#include <inos.h>
#include <cinostaskexdef.h>
#include <cinosvector.h>
#include <cinosmotionframe.h>
#include <cinosmovepathparam.h>
#include <cinosmovepathevent.h>
#include <cinosmovepathsegment.h>
#include <cinosmovepathsegmentbase.h>
#include <cinosmovepathsegmentnurbs.h>
#include <cinosmovepathresource.h>
#include <cinosmovepathresourceposaxis.h>
#include <cinosmovepathresourcespeedaxis.h>
#include <cinosmovepathresourcerapidgate.h>
#include <cinosmovepathpart.h>
#include <cinosmovepathpartlinear.h>
#include <cinosmovepathpartlinearbay.h>
#include <cinosmovepathpartcircle.h>
#include <cinosmovepathpartclothoid.h>
#include <cinosmovepathcurve.h>
#include <cinosmovepathinterpolator.h>
#include <cinosmovepathinterpolatorsegment.h>
#include <cinosmovepathtrajectory.h>
#include <cinosmovepathtrajectoryconstant.h>
#include <cinosmovepathtrajectorysegment.h>
#include <cinosmovepathtrajectorylookahead.h>
Go to the source code of this file.
Classes | |
class | CINOSMovePath |
Macros | |
#define | DF_INOS_MOVEPATH_ID_DEFAULT 0xffffffff |
#define | DF_INOS_MOVEPATH_TOLERANCE_DEFAULT -1.0 |
#define | DF_INOS_MOVEPATH_TOLERANCE_MIN 1.0e-4 |
#define | DF_INOS_MOVEPATH_VELOCITY_DEFAULT -1.0 |
#define | DF_INOS_MOVEPATH_FLAG_NO 0x00000000 |
#define | DF_INOS_MOVEPATH_FLAG_ABS 0x00000001 |
#define | DF_INOS_MOVEPATH_FLAG_INC 0x00000002 |
#define | DF_INOS_MOVEPATH_FLAG_NLG 0x00000004 |
#define | DF_INOS_MOVEPATH_FLAG_RAW 0x00000008 |
#define | DF_INOS_MOVEPATH_THE_END 1 |
#define | DF_INOS_MOVEPATH_FLAG_CURVE_OWNED 0x01000000 |
#define | DF_INOS_MOVEPATH_FLAG_CONTINUATION 0x02000000 |
#define | DF_INOS_MOVEPATH_FLAG_INCOMPLETE 0x04000000 |
#define | DF_INOS_MOVEPATH_FLAG_OFFSET_ZERO 0x40000000 |
#define | DF_INOS_MOVEPATH_FLAG_RELOCATABLE 0x80000000 |
#define | DF_INOS_MOVEPATH_FLAG_SHORT 0x10000000 |
#define | DF_INOS_MOVEPATH_FLAG_PURE_LINEAR 0x20000000 |
#define | DF_INOS_MOVEPATH_FLAG_PURE_RAPID 0x40000000 |
#define | DF_INOS_MOVEPATH_OPTION_NONE uint32(0x00000000) |
#define | DF_INOS_MOVEPATH_OPTION_EXCEPTION_SUPPORT uint32(0x00000001) |
#define | DF_INOS_MOVEPATH_OPTION_ASYNCH_SUPPORT uint32(0x00000002) |
#define | DF_INOS_MOVEPATH_OPTION_REGISTER_INCO uint32(0x00000004) |
#define | DF_INOS_MOVEPATH_OPTION_ALL |
#define | DF_INOS_MOVEPATH_OPTION_DEFAULT DF_INOS_MOVEPATH_OPTION_NONE |
#define | DF_INOS_MOVEPATH_HELPER_CORE_NAME "Helper.Core" |
#define | DF_INOS_MOVEPATH_HELPER_CORE_DEFAULT -1 |
#define | DF_INOS_MOVEPATH_HELPER_PRIORITY_NAME "Helper.Priority" |
#define | DF_INOS_MOVEPATH_HELPER_PRIORITY_DEFAULT DF_INOS_TASK_PRIO_REALTIME_LOWEST |
#define | DF_INOS_MOVEPATH_PREPARE_HELPER_CORE_NAME "PrepareHelper.Core" |
#define | DF_INOS_MOVEPATH_PREPARE_HELPER_CORE_DEFAULT -1 |
#define | DF_INOS_MOVEPATH_PREPARE_HELPER_PRIORITY_NAME "PrepareHelper.Priority" |
#define | DF_INOS_MOVEPATH_PREPARE_HELPER_PRIORITY_DEFAULT DF_INOS_TASK_PRIO_BACKGROUND |
#define | DF_INOS_MOVEPATH_RUN_HELPER_CORE_NAME "RunHelper.Core" |
#define | DF_INOS_MOVEPATH_RUN_HELPER_CORE_DEFAULT -1 |
#define | DF_INOS_MOVEPATH_RUN_HELPER_PRIORITY_NAME "RunHelper.Priority" |
#define | DF_INOS_MOVEPATH_RUN_HELPER_PRIORITY_DEFAULT DF_INOS_TASK_PRIO_REALTIME_LOWEST |
#define | DF_INOS_MOVEPATH_MCROBOT_PREPAREPATH_NAME "McRobot.PreparePath" |
#define | DF_INOS_MOVEPATH_MCROBOT_PREPAREPATH_DEFAULT 0 |
#define | DF_INOS_MOVEPATH_MCROBOT_PREPAREPATH_NOTHING 0 |
#define | DF_INOS_MOVEPATH_MCROBOT_PREPAREPATH_ERROR 1 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_SHAPE_ON_SHRINK_NAME "Shape.OnShrink" |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_SHAPE_ON_SHRINK_DEFAULT 1 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_SHAPE_ON_SHRINK_LIMIT_AMAX 0 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_SHAPE_ON_SHRINK_STOP 1 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_SHAPE_ON_SHRINK_ERROR 2 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_SHAPE_ON_SHRINK_LIMIT_JMAX 3 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_MAX_ANGLE "Nurbs.MaxAngle" |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_MAX_ANGLE_DEFAULT 20.0 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_MAX_LENGTH "Nurbs.MaxLength" |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_MAX_LENGTH_DEFAULT 0.0 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_OVERLAP "Nurbs.Overlap" |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_OVERLAP_DEFAULT 0.2 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_VECTORIZE_FACTOR "Nurbs.Vectorize" |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_VECTORIZE_FACTOR_DEFAULT 0.1 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_INTERPOLATION_POINTS "Nurbs.InterpolationPoints" |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_INTERPOLATION_POINTS_DEFAULT DF_INOS_NURBSCURVE_INTERPOLATION_POINTS |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_D3_FACTOR "Nurbs.D3Factor" |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_D3_FACTOR_DEFAULT 20.0 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_CLOTHOID_PURE "Clothoid.Pure" |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_CLOTHOID_PURE_DEFAULT 1.0 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_CLOTHOID_REDUCE "Clothoid.Reduce" |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_CLOTHOID_REDUCE_DEFAULT 1.0 |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_CLOTHOID_R "Clothoid.R" |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_CLOTHOID_L "Clothoid.L" |
#define | DF_INOS_MOVEPATH_INTERPOLATOR_CLOTHOID_A "Clothoid.A" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_MAIN_AXIS_NAME "Trajectory.MainAxis" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_MAIN_AXIS_DEFAULT 0 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_LOGGING_MASK "Trajectory.Logging.Mask" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_LOGGING_MASK_DEFAULT 0x00000001 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_LOGGING_MASK_NONE 0.0 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_LOGGING_MASK_PATHS 0x00000001 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_TYPE_NAME "Trajectory.Buffer.Type" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_TYPE_DEFAULT "active" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_TYPE_NONE "none" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_TYPE_ACTIVE "active" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_TYPE_PASSIVE "passive" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_SIZE_NAME "Trajectory.Buffer.Size" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_SIZE_DEFAULT 256 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_READY_NAME "Trajectory.Buffer.Ready" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_READY_DEFAULT 16 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_READY_FULL_PATH 0xffffffff |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_LOW_NAME "Trajectory.Buffer.Low" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_LOW_DEFAULT 192 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_FILTER_LENGTH_NAME "Trajectory.Filter.Length" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_FILTER_LENGTH_DEFAULT 0 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_FOLLOW_ENABLE_NAME "Trajectory.Follow.Enable" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_FOLLOW_ENABLE_DEFAULT 0 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_FOLLOW_INDEX_NAME "Trajectory.Follow.Index" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_FOLLOW_INDEX_DEFAULT 3 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_FOLLOW_UNIT_NAME "Trajectory.Follow.Unit" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_FOLLOW_UNIT_DEFAULT 0 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_CONSTANT_CHECK_VELOCITY "Trajectory.Constant.CheckVelocity" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_CONSTANT_CHECK_VELOCITY_NONE 0.0 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_CONSTANT_CHECK_VELOCITY_DEFAULT 0.0 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_CONSTANT_CHECK_VELOCITY_REDUCE 2.0 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_CONSTANT_CHECK_VELOCITY_ONLY 1.0 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_CONSTANT_CHECK_VELOCITY_OVERSAMPLING "Trajectory.Constant.CheckVelocity.Oversampling" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_CONSTANT_CHECK_VELOCITY_OVERSAMPLING_DEFAULT 1.0 |
#define | DF_INOS_MOVEPATH_TRAJECTORY_SEGMENT_CUBIC_REDUCTION_NAME "Trajectory.Segment.CubicReduction" |
#define | DF_INOS_MOVEPATH_TRAJECTORY_SEGMENT_CUBIC_REDUCTION_DEFAULT 1.0 |
#define | DF_INOS_MOVEPATH_PARAM_SPEEDSET "SpeedSet" |
#define | DF_INOS_MOVEPATH_PARAM_SLOWMOTION "SlowMotion" |
#define | DF_INOS_MOVEPATH_PARAM_TOLERANCE "Tolerance" |
#define | DF_INOS_MOVEPATH_PARAM_VMAX "Vmax" |
#define | DF_INOS_MOVEPATH_PARAM_VTRQ "Vtrq" |
#define | DF_INOS_MOVEPATH_PARAM_AMAX "Amax" |
#define | DF_INOS_MOVEPATH_PARAM_ATRQ "Atrq" |
#define | DF_INOS_MOVEPATH_PARAM_BMAX "Bmax" |
#define | DF_INOS_MOVEPATH_PARAM_BTRQ "Btrq" |
#define | DF_INOS_MOVEPATH_PARAM_JMAX "Jmax" |
#define | DF_INOS_MOVEPATH_APPROACH_NAME "Approach" |
#define | DF_INOS_MOVEPATH_APPROACH_DEFAULT 0 |
#define | DF_INOS_MOVEPATH_APPROACH_DISTANCE_NAME "Approach.Distance" |
#define | DF_INOS_MOVEPATH_APPROACH_DISTANCE_DEFAULT 5.0 |
#define | DF_INOS_MOVEPATH_APPROACH_VELOCITY_NAME "Approach.Velocity" |
#define | DF_INOS_MOVEPATH_APPROACH_VELOCITY_DEFAULT 1.0 |
#define | DF_INOS_MOVEPATH_RAPID_GATE_INVERT_NAME "RapidGateInverted" |
#define | DF_INOS_MOVEPATH_RAPID_GATE_INVERT_DEFAULT 0.0 |
#define | DF_INOS_EVENT_LOGGER_FONT_COLOR_MOVEPATH_CREATE 0x00808000 |
#define | DF_INOS_EVENT_LOGGER_FONT_COLOR_MOVEPATH_RUN 0x00008080 |
#define | MOVEPATH_TRACE_CREATE(path, apFormat, aArgs...) |
#define | MOVEPATH_TRACE_RUN(path, apFormat, aArgs...) |
Typedefs | |
typedef TINOSVector< DF_INOS_MOVEPATH_MAX_AXES > | TINOSMovePathVec |
The CINOSMovePath class.
project : MovePath handling language : Gnu C++ system : PowerPC
This class provides the 'MovePath' functionality
#define DF_INOS_MOVEPATH_APPROACH_DISTANCE_NAME "Approach.Distance" |
Approach distance
#define DF_INOS_MOVEPATH_APPROACH_NAME "Approach" |
Approach at end of path ?
#define DF_INOS_MOVEPATH_APPROACH_VELOCITY_NAME "Approach.Velocity" |
Approach velocity
#define DF_INOS_MOVEPATH_FLAG_ABS 0x00000001 |
Absolute positions
#define DF_INOS_MOVEPATH_FLAG_CONTINUATION 0x02000000 |
Curve is continuation of a previous incomplete curve
#define DF_INOS_MOVEPATH_FLAG_CURVE_OWNED 0x01000000 |
Curve is owned by movepath (will be deleted if movepath is deleted).
#define DF_INOS_MOVEPATH_FLAG_INC 0x00000002 |
Relative positions
#define DF_INOS_MOVEPATH_FLAG_INCOMPLETE 0x04000000 |
Curve is not complete yet, more segments to be added later
#define DF_INOS_MOVEPATH_FLAG_NLG 0x00000004 |
Axis is not length relevant, e.g. in a XYZC system, the C axis should not be taken into account for the vector length calculation
#define DF_INOS_MOVEPATH_FLAG_NO 0x00000000 |
None
#define DF_INOS_MOVEPATH_FLAG_OFFSET_ZERO 0x40000000 |
Curve is zero based. This option makes only sense if the movepath is relocatable, handled passive and the application adds its own offset before handling the value over to the axis.
#define DF_INOS_MOVEPATH_FLAG_RAW 0x00000008 |
Curve has to be used raw. Means the system must not optimize away too short segments
#define DF_INOS_MOVEPATH_FLAG_RELOCATABLE 0x80000000 |
Curve is relocatable. It tells the system to add a corresponding offset to the given curve coordiates at movepath start
#define DF_INOS_MOVEPATH_HELPER_CORE_NAME "Helper.Core" |
Helper thread core
#define DF_INOS_MOVEPATH_HELPER_PRIORITY_NAME "Helper.Priority" |
Helper thread priority
#define DF_INOS_MOVEPATH_ID_DEFAULT 0xffffffff |
Default segment id, Bit 31 is currently/temporary reserved to mark a stop at segment boundary (see CINOSMovePathTrajectorySegment::GenData)
#define DF_INOS_MOVEPATH_INTERPOLATOR_CLOTHOID_PURE "Clothoid.Pure" |
Defines whether the clothoid interpolator should work with pure clothoids (german 'Scheitelklothoiden' or not handled with a pre and post stop.
0.0 : disabled
#define DF_INOS_MOVEPATH_INTERPOLATOR_CLOTHOID_R "Clothoid.R" |
Defines the clothoid parameters
R : radius L : length A : general, A=sqrt(R*L)
#define DF_INOS_MOVEPATH_INTERPOLATOR_CLOTHOID_REDUCE "Clothoid.Reduce" |
Defines whether the clothoid interpolator should automatically reduce clothoid parameters r,l,a to fit the clothoids into the given linear segments
0.0 : disabled
#define DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_D3_FACTOR "Nurbs.D3Factor" |
The maximal third derivative of the nurbs curve is calculated by taking the second derivative at curve length * this factor points and calculating the linear approximation of the derivative between these points.
#define DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_INTERPOLATION_POINTS "Nurbs.InterpolationPoints" |
Non linear segments are vectorized, before given to nurbs interpolator. The given tolerance * this factor is the max allowed error, between real curve and the vector
#define DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_MAX_ANGLE "Nurbs.MaxAngle" |
Defines the max. allowed angle between two consecutive linear segments that is handled without an explicit stop
0.0 : disabled
#define DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_MAX_LENGTH "Nurbs.MaxLength" |
Linear segments that are longer than the given length are always handled separately. This allows the segment trajectory generator to speedup the path velocity accordingly during this part of the path.
0.0 : disabled
#define DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_OVERLAP "Nurbs.Overlap" |
Only valid together with "Nurbs.MaxLength". To smoothen the transition between the linear segment longer than Nurbs.MaxLength and the next/previous part, one can define an overlap distance which is used to add an additional nurbs point. A good choice is e.g. a 10th of Nurbs.MaxLength
0.0 : disabled
#define DF_INOS_MOVEPATH_INTERPOLATOR_NURBS_VECTORIZE_FACTOR "Nurbs.Vectorize" |
Non linear segments are vectorized, before given to nurbs interpolator. The given tolerance * this factor is the max allowed error, between real curve and the vector
#define DF_INOS_MOVEPATH_INTERPOLATOR_SHAPE_ON_SHRINK_NAME "Shape.OnShrink" |
Define what the shape interpolator should do if a transition segment needs to be shrinked
0 : reduce path velocity to not exceed Acmd of any axis 1 : stop at segment boundary (default) 2 : emit an error 3 : reduce path velocity to not exceed Jcmd of any axis
#define DF_INOS_MOVEPATH_MCROBOT_PREPAREPATH_NAME "McRobot.PreparePath" |
Define what the PreparePath method should do if an error occurs
0 : only return error code 1 : set module to error and emit a corresponding message
#define DF_INOS_MOVEPATH_OPTION_ALL |
Switch on C++ execption support, asynchronous support and INCO tree registration
#define DF_INOS_MOVEPATH_OPTION_ASYNCH_SUPPORT uint32(0x00000002) |
Switch on asynchronous support with a internal helper task
#define DF_INOS_MOVEPATH_OPTION_DEFAULT DF_INOS_MOVEPATH_OPTION_NONE |
Use default options
#define DF_INOS_MOVEPATH_OPTION_EXCEPTION_SUPPORT uint32(0x00000001) |
Switch on C++ exception support
#define DF_INOS_MOVEPATH_OPTION_NONE uint32(0x00000000) |
None
#define DF_INOS_MOVEPATH_OPTION_REGISTER_INCO uint32(0x00000004) |
Register path in INCO tree
#define DF_INOS_MOVEPATH_PARAM_AMAX "Amax" |
Param name of 'Amax'
#define DF_INOS_MOVEPATH_PARAM_ATRQ "Atrq" |
Param name of 'Atrq'
#define DF_INOS_MOVEPATH_PARAM_BMAX "Bmax" |
Param name of 'Bmax'
#define DF_INOS_MOVEPATH_PARAM_BTRQ "Btrq" |
Param name of 'Btrq'
#define DF_INOS_MOVEPATH_PARAM_JMAX "Jmax" |
Param name of 'Jmax'
#define DF_INOS_MOVEPATH_PARAM_SLOWMOTION "SlowMotion" |
Param name of 'SlowMotion'
#define DF_INOS_MOVEPATH_PARAM_SPEEDSET "SpeedSet" |
Param name of 'SpeedSet'
#define DF_INOS_MOVEPATH_PARAM_TOLERANCE "Tolerance" |
Param name of global 'Tolerance'
#define DF_INOS_MOVEPATH_PARAM_VMAX "Vmax" |
Param name of 'Vmax'
#define DF_INOS_MOVEPATH_PARAM_VTRQ "Vtrq" |
Param name of 'Vtrq'
#define DF_INOS_MOVEPATH_PREPARE_HELPER_CORE_NAME "PrepareHelper.Core" |
Prepare helper thread core
#define DF_INOS_MOVEPATH_PREPARE_HELPER_PRIORITY_NAME "PrepareHelper.Priority" |
Prepare helper thread priority
#define DF_INOS_MOVEPATH_RAPID_GATE_INVERT_NAME "RapidGateInverted" |
Param name of 'RapidGateOutput''
#define DF_INOS_MOVEPATH_RUN_HELPER_CORE_NAME "RunHelper.Core" |
Run helper thread core
#define DF_INOS_MOVEPATH_RUN_HELPER_PRIORITY_NAME "RunHelper.Priority" |
Run helper thread priority
#define DF_INOS_MOVEPATH_THE_END 1 |
Last point reached
#define DF_INOS_MOVEPATH_TOLERANCE_DEFAULT -1.0 |
Default tolerance
#define DF_INOS_MOVEPATH_TOLERANCE_MIN 1.0e-4 |
Min allowed tolerance
#define DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_LOW_NAME "Trajectory.Buffer.Low" |
Default trajectory buffer low level
#define DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_READY_NAME "Trajectory.Buffer.Ready" |
Default trajectory buffer ready level
#define DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_SIZE_NAME "Trajectory.Buffer.Size" |
Default trajectory buffer size
#define DF_INOS_MOVEPATH_TRAJECTORY_BUFFER_TYPE_NAME "Trajectory.Buffer.Type" |
Default trajectory buffer type
Possible types are :
'none' : the trajectory generator pulls the data direct to the axes 'active' : the trajectory generator writes the data to an intermediate buffer and a synchronous axes hook reads the data from the buffer and pulls them to the axes 'passive': the trajectory generator writes the data to an intermediate buffer and user code is responsible to read if from the buffer and pulls it to the axes
#define DF_INOS_MOVEPATH_TRAJECTORY_CONSTANT_CHECK_VELOCITY "Trajectory.Constant.CheckVelocity" |
Constant trajectory, check velocity before run
Possible values are
0 : no check at all 1 : check and return with error if the requested velocity is to big 2 : check and automatically reduce velocity to the max. possible one
#define DF_INOS_MOVEPATH_TRAJECTORY_CONSTANT_CHECK_VELOCITY_OVERSAMPLING "Trajectory.Constant.CheckVelocity.Oversampling" |
Constant trajectory, oversampling to calc max. allowed velocity
To calculate the max. allowed constant velocity a path can be run with without violating any axes limits (V, A, B, J), the algorithm uses a step size of required path V / cycletime (e.g. (1000mm/s) / (4000*1/s) = 0.25mm)
To get a more accurate result, one can set a required oversampling (e.g. 100).
#define DF_INOS_MOVEPATH_TRAJECTORY_FILTER_LENGTH_NAME "Trajectory.Filter.Length" |
Default trajectory filter length
#define DF_INOS_MOVEPATH_TRAJECTORY_FOLLOW_ENABLE_NAME "Trajectory.Follow.Enable" |
Trajectory axis follow mechanism
If enabled a trajectory for axis 'INDEX' is generated, that follows the tangent of axis with index 0 and 1 (e.g. if running a circle with X and Y, the T axis can follow the circle to e.g. command a cutting knife)
Follow unit :
0 : degrees 1 : radiant
#define DF_INOS_MOVEPATH_TRAJECTORY_LOGGING_MASK "Trajectory.Logging.Mask" |
Trajectory logging options
Bit 0 : enable update of Axis.MyAxis.Control.Cmd.pathS
#define DF_INOS_MOVEPATH_TRAJECTORY_MAIN_AXIS_NAME "Trajectory.MainAxis" |
Trajectory main axis (e.g. ramp geni is cloned from this axis)
#define DF_INOS_MOVEPATH_TRAJECTORY_SEGMENT_CUBIC_REDUCTION_NAME "Trajectory.Segment.CubicReduction" |
Cubic segment max A/B reduction
#define DF_INOS_MOVEPATH_VELOCITY_DEFAULT -1.0 |
Default velocity