Trj_CacheSlot (STRUCT) ¶ TYPE Trj_CacheSlot : STRUCT A cache slot of Trj_EvalCache. InOut: Name Type Comment state Trj_CacheSlotState The state of the cache slot (empty, pos_only, filled) uq SMRB.DynV2State The value and derivatives of all axes wrt. the interpolation parameter x. psArc ParamState The value and derivatives of the parameter transformation from the interpolation parameter x to the arc length s. For axis space movements, the members are zero. md SMDYN.ManipulatorDynStateT The dynamic model of the manipulator wrt. the interpolation parameter x. busTaskCycle ULINT The time for which this cache slot has been evaluated. Split into the number of full cycles and the duration of the final partial cycle. tRemainder LREAL The duration of the final partial cycle. x LREAL The position (releative to the PathElem)
Trj_Samples_CorrectTaskCycleGap (FUN) ¶ FUNCTION Trj_Samples_CorrectTaskCycleGap : LREAL Corrects the sample duration at the end of the sample, if there is a gap between the current and the next sample. Must only be called if Trj_Samples_TaskCycleGapInbetween returned TRUE. InOut: Scope Name Type Comment Input taskCycleTime LREAL sampleDurationAtEnd LREAL The total duration at the end of the current sample. Please note: The start of this duration must be at the start of a cycle. Return Trj_Samples_CorrectTaskCycleGap LREAL
Trj_Samples_TaskCycleGapInbetween (FUN) ¶ FUNCTION Trj_Samples_TaskCycleGapInbetween : BOOL Returns whether there is a task cycle gap between sampleA and sampleB , i.e. whether sampleB should start at the beginning of a task cycle if it follows on sampleA . InOut: Scope Name Type Inout Const sampleA Trj_Sample sampleB Trj_Sample Return Trj_Samples_TaskCycleGapInbetween BOOL
Trj_Sample_ScheduleInfo (STRUCT) ¶ TYPE Trj_Sample_ScheduleInfo : STRUCT InOut: Name Type Comment busTaskCycleInfo Trj_BusTaskCycleInfo The bus task cycle that the sample is scheduled for. usedDefaultDelay BOOL Indicates whether an estimated default delay was used to determine the bus task cycle. inSync BOOL
Trj_Cache_SlotOffset (FUN) ¶ FUNCTION Trj_Cache_SlotOffset : UDINT Calculates the offset of the cache slot with index idxSlot2 relative to the one with index idxSlot1 . InOut: Scope Name Type Input idxSlot1 UDINT idxSlot2 UDINT Return Trj_Cache_SlotOffset UDINT
Trj_EvalCacheIter.Advance (METH) ¶ METHOD FINAL Advance
Trj_EvalCacheIter.Get (METH) ¶ METHOD FINAL Get InOut: Scope Name Type Comment Inout uq SMRB.DynV2State md SMDYN.ManipulatorDynStateT pathLimits Path_DynLimits axisLimits DynLimitsA psArc ParamState Out: The value and derivatives of the parameter transformation from the interpolation parameter x to the arc length s. For axis space movements, the members are zero.
Trj_EvalCacheIter.Init (METH) ¶ METHOD FINAL Init : BOOL InOut: Scope Name Type Comment Inout errCtx SMRE.ErrorContext Inout Const timer SMRB.TimerHires tfp GetTimeForPos Converter from position to time. The position is expected relative to the segment start. Input s0 LREAL s1 LREAL segment SegmentId k_min UDINT ds_min LREAL Return Init BOOL
Trj_EvalCache.SetStartPos (METH) ¶ METHOD PUBLIC FINAL SetStartPos Sets the start position of all axes at the beginning of the cache. Only call if cache is still empty. InOut: Scope Name Type Inout Const axesStart TRAFO.AXISPOS_REF
Trj_EvalCache.SetupCacheIter (METH) ¶ METHOD FINAL SetupCacheIter InOut: Scope Name Type Inout cacheIter Trj_EvalCacheIter