Regular API function


Description Executes a call to the Reflexxes Motion Library type IV. The Reflexxes Motion Library type IV provides instantaneous trajectory generation capabilities for motion control systems. This function steps forward a trajectory generation algorithm previously prepared via simRMLPos or simRMLVel.
C synopsis simInt simRMLStep(simInt handle,simDouble timeStep,simDouble* newPosVelAccel,simVoid* auxData,simVoid* reserved)
C parameters
handle: the handle of the object created via simRMLPos or simRMLVel.
timeStep: the cycle time
newPosVelAccl: the new position, velocity and acceleration (output values). Values are arranged as {pos1,pos2,..,posN,vel1,vel2,..,velN,accel1,accel2,..,accelN}
auxData: can be NULL. Otherwise in/out extension data. The first byte indicates how many additional in/out values we wish to set/get. Following auxiliary values can be set/get:
value 1 (output): Bytes 2-9 (double): returns the synchronization time (the time needed to reach the desired state. This time does not include the cycle time of the current call to simRMLStep)
reserved: reserved for future extensions. Set to NULL.
C return value
-1 in case of an error, otherwise the return value of function RMLPosition or RMLVelocity in the library (0=final state not yet reached, 1=final state reached, otherwise an error code)
Lua synopsis number result,table newPosVelAccel,number synchronizationTime=simRMLStep(number handle,number timeStep)

If you wish to use this function in a blocking mode, consider using simRMLMoveToPosition or simRMLMoveToJointPositions instead.
Lua parameters
Refer to the C-function documentation
Lua return values
Refer to the C-function documentation

All regular API functions on one page