SMC_PTP_MOVEMENT_TYPE (ENUM) ¶ TYPE SMC_PTP_MOVEMENT_TYPE : Attributes: qualified_only InOut: Name Initial Comment Fast 0 Time optimal PTP movement Path_Invariant For this type of PTP Movement the path in space is independent of the override and, except for blending with TransitionMode TMStartVelocity , of all dynamic limits of the axes (ancillary and global limits for speed, acceleration, deceleration and jerk). with TransitionMode TMCornerDistance independent of the type of blending (BlendingHigh / Low / Previous / Next). not left at Halt or Stop ( MC_GroupHalt / MC_GroupStop ). not left when interrupting and continuing ( MC_GroupInterrupt / MC_GroupContinue ).
SMC_TG_Ramp_ValidDynRange (FUN) ¶ FUNCTION SMC_TG_Ramp_ValidDynRange : BOOL Given an initial state of motion dynOrigin, the maximal and minimal position, velocity and acceleration are being returned that can be reached within fInterval w.r.t. the limits inside lim. One can choose, if lim.fVMax shall be taken into account or not (bRespectsMaxVel). The calculation is being done by a quadratic or a trapezoid ramp, depending on the input bRespectsMaxJerk. needed at least for testing purposes (and probably in SMC_MotionKernel_PTP.FollowPCS, too) InOut: Scope Name Type Return SMC_TG_Ramp_ValidDynRange BOOL Inout dynMax SMC_TG_DynState dynMin SMC_TG_DynState Inout Const dynOrigin SMC_TG_DynState lim SMC_Q_LIMITS Input fInterval LREAL bRespectMaxVel BOOL bRespectMaxJerk BOOL
Interfaces ¶ SMC_TG_IRAMP (Interface) Interpolate (Method) Set (Method) SMC_TG_IRAMPTYPE (Interface) GetMonotonicityBoundariesEnd (Method) GetMonotonicityBoundariesStart (Method) IsAllowedAccelerationJump (Property) IsInterruptible (Property) Select (Method)
SMC_TG_IRAMP (ITF) ¶ INTERFACE SMC_TG_IRAMP Corresponds to an instance of an acceleration- or deceleration-ramp Methods: Interpolate Set Structure: Interpolate (Method) Set (Method)
SMC_TG_IRAMP.Interpolate (METH) ¶ METHOD Interpolate Once the ramp is set up (using the method Set), this method returns the distance, velocity, acceleration and jerk at time fTime. Otherwise, it returns 0 in all members of dyn. InOut: Scope Name Type Inout dyn SMC_TG_DynState Input fTime LREAL
SMC_TG_IRAMP.Set (METH) ¶ METHOD Set InOut: Scope Name Type Comment Inout Const lim SMC_Q_LIMITS the dynamic limits boun SMC_TG_RAMP_BOUNDARIES start- and end-velocity (fV0, fV1) resp. -acceleration (fA0, fA1) Output fDistance LREAL the position difference caused by the ramp fDuration LREAL the duration of the ramp
SMC_TG_IRAMPTYPE (ITF) ¶ INTERFACE SMC_TG_IRAMPTYPE Properties: IsAllowedAccelerationJump IsInterruptible Methods: GetMonotonicityBoundariesEnd GetMonotonicityBoundariesStart Select Structure: GetMonotonicityBoundariesEnd (Method) GetMonotonicityBoundariesStart (Method) IsAllowedAccelerationJump (Property) IsInterruptible (Property) Select (Method)
SMC_TG_IRAMPTYPE.GetMonotonicityBoundariesEnd (METH) ¶ METHOD GetMonotonicityBoundariesEnd Given the end-velocity and end-acceleration, compute those start-velocities such that (starting with acceleration 0) the covered distance is locally minimal or maximal with respect to the start-velocity. InOut: Scope Name Type Comment Inout av ARRAY [0..(SMC_gc_maxMonotonicityBoundaries - 1)] OF LREAL Array containing the results of the computation (start- velocities) Inout Const lim SMC_Q_LIMITS Input param SMC_TG_MonotonicityParams Output nrBoundaries SINT The number of monotonicity boundaries
SMC_TG_IRAMPTYPE.GetMonotonicityBoundariesStart (METH) ¶ METHOD GetMonotonicityBoundariesStart Given the start-velocity and start-acceleration, compute those end-velocities such that (arriving with acceleration 0) the covered distance is locally minimal or maximal with respect to the end-velocity. InOut: Scope Name Type Comment Inout av ARRAY [0..(SMC_gc_maxMonotonicityBoundaries - 1)] OF LREAL Array containing the results of the computation (end- velocities). Inout Const lim SMC_Q_LIMITS Input param SMC_TG_MonotonicityParams Output nrBoundaries SINT The number of monotonicity boundaries
SMC_TG_IRAMPTYPE.IsAllowedAccelerationJump (PROP) ¶ PROPERTY IsAllowedAccelerationJump : BOOL FALSE, if the ramptype respects the jerk-limit inside SMC_Q_LIMITS