MotorWare f2806x Module API Documentation
Data Structures | Macros | Typedefs | Enumerations | Functions
spintac_vel_plan.h File Reference

Public interface, object, and function definitions related to the SpinTAC Velocity Plan component. More...

#include "spintac_version.h"

Go to the source code of this file.

Data Structures

struct  ST_PlanError_t
 Defines the ST_PlanError_t data. More...
 
struct  ST_VelPlan_t
 Defines the ST_VelPlan_t data. More...
 

Macros

#define ST_VEL_PLAN_ACT_DWORDS   (5)
 Defines the amount of memory that needs to be allocated for each component. More...
 
#define ST_VEL_PLAN_COND_DWORDS   (3)
 Each configured Condition takes 3 double words of memory. More...
 
#define ST_VEL_PLAN_VAR_DWORDS   (2)
 Each configured Variable takes 2 double words of memory. More...
 
#define ST_VEL_PLAN_TRAN_DWORDS   (5)
 Each configured Transition takes 5 double words of memory. More...
 
#define ST_VEL_PLAN_STATE_DWORDS   (6)
 Each configured State takes 6 double words of memory. More...
 
#define __ST_PLAN_ENUM__
 
#define __ST_PLAN_ERROR__
 

Typedefs

typedef struct _ST_VELPLAN_Handle_ * ST_VELPLAN_Handle
 

Enumerations

enum  ST_PlanStatus_e {
  ST_PLAN_IDLE =0, ST_PLAN_INIT, ST_PLAN_BUSY, ST_PLAN_HALT,
  ST_PLAN_WAIT, ST_PLAN_IDLE =0, ST_PLAN_INIT, ST_PLAN_BUSY,
  ST_PLAN_HALT, ST_PLAN_WAIT
}
 Enumeration for the Plan Status States. More...
 
enum  ST_PlanCond_e {
  ST_COND_NC =0, ST_COND_FC, ST_COND_AND, ST_COND_OR,
  ST_COND_NC =0, ST_COND_FC, ST_COND_AND, ST_COND_OR
}
 Enumeration for the Plan Condition options. More...
 
enum  ST_PlanComp_e {
  ST_COMP_NA =0, ST_COMP_EQ, ST_COMP_NEQ, ST_COMP_GT,
  ST_COMP_EGT, ST_COMP_LW, ST_COMP_ELW, ST_COMP_In,
  ST_COMP_EIn, ST_COMP_InE, ST_COMP_EInE, ST_COMP_Out,
  ST_COMP_EOut, ST_COMP_OutE, ST_COMP_EOutE, ST_COMP_NA =0,
  ST_COMP_EQ, ST_COMP_NEQ, ST_COMP_GT, ST_COMP_EGT,
  ST_COMP_LW, ST_COMP_ELW, ST_COMP_In, ST_COMP_EIn,
  ST_COMP_InE, ST_COMP_EInE, ST_COMP_Out, ST_COMP_EOut,
  ST_COMP_OutE, ST_COMP_EOutE
}
 Enumeration for the Plan Compare options. More...
 
enum  ST_PlanActOptn_e { ST_ACT_EQ =0, ST_ACT_ADD, ST_ACT_EQ =0, ST_ACT_ADD }
 Enumeration for the Plan Action Options. More...
 
enum  ST_PlanActTrgr_e { ST_ACT_ENTR =0, ST_ACT_EXIT, ST_ACT_ENTR =0, ST_ACT_EXIT }
 Enumeration for the Plan Action trigger point types. More...
 
enum  ST_PlanFsmState_e {
  ST_FSM_STATE_STAY =0, ST_FSM_STATE_COND, ST_FSM_STATE_TRAN, ST_FSM_STATE_STAY =0,
  ST_FSM_STATE_COND, ST_FSM_STATE_TRAN
}
 Enumeration for the Plan FSM states. More...
 
enum  ST_PlanVar_e {
  ST_VAR_INOUT =0, ST_VAR_IN, ST_VAR_OUT, ST_VAR_INOUT =0,
  ST_VAR_IN, ST_VAR_OUT
}
 Enumeration for the Plan variable types. More...
 

Functions

static _iq24 STVELPLAN_getVelocitySetpoint (ST_VELPLAN_Handle handle)
 Gets the Velocity Setpoint (VelEnd) for SpinTAC Velocity Plan. More...
 
static _iq24 STVELPLAN_getAccelerationLimit (ST_VELPLAN_Handle handle)
 Gets the Acceleration Limit (AccLim) for SpinTAC Velocity Plan. More...
 
static _iq20 STVELPLAN_getJerkLimit (ST_VELPLAN_Handle handle)
 Gets the Jerk Limit (JrkLim) for SpinTAC Velocity Plan. More...
 
static void STVELPLAN_setEnable (ST_VELPLAN_Handle handle, bool enb)
 Sets the Enable signal (ENB) for SpinTAC Velocity Plan. More...
 
static bool STVELPLAN_getEnable (ST_VELPLAN_Handle handle)
 Gets the Enable signal (ENB) for SpinTAC Velocity Plan. More...
 
static void STVELPLAN_setReset (ST_VELPLAN_Handle handle, bool res)
 Sets the Reset signal (RES) for SpinTAC Velocity Plan. More...
 
static bool STVELPLAN_getReset (ST_VELPLAN_Handle handle)
 Gets the Reset signal (RES) for SpinTAC Velocity Plan. More...
 
static ST_PlanStatus_e STVELPLAN_getStatus (ST_VELPLAN_Handle handle)
 Gets the Status value (STATUS) for SpinTAC Velocity Plan. More...
 
static uint16_t STVELPLAN_getCurrentState (ST_VELPLAN_Handle handle)
 Gets the Current State (CurState) for SpinTAC Velocity Plan. More...
 
static uint16_t STVELPLAN_getCurrentTransition (ST_VELPLAN_Handle handle)
 Gets the Current Transition (CurTran) for SpinTAC Velocity Plan. More...
 
static ST_PlanFsmState_e STVELPLAN_getFsmState (ST_VELPLAN_Handle handle)
 Gets the State Machine State (FsmState) for SpinTAC Velocity Plan. More...
 
static int32_t STVELPLAN_getCurrentTimerValue_tick (ST_VELPLAN_Handle handle)
 Gets the Current Time Value (Timer_tick) for SpinTAC Velocity Plan. More...
 
static uint16_t STVELPLAN_getCfgError (ST_VELPLAN_Handle handle, uint16_t *ERR_idx, uint16_t *ERR_code)
 Gets the Configuration Error for SpinTAC Velocity Plan. More...
 
static uint16_t STVELPLAN_getErrorID (ST_VELPLAN_Handle handle)
 Gets the Error ID for SpinTAC Velocity Plan. More...
 
void STVELPLAN_getCfgStateNum (ST_VELPLAN_Handle handle, uint16_t *StateNum)
 Returns the number of configured States in SpinTAC Velocity Plan. More...
 
void STVELPLAN_getCfgVarNum (ST_VELPLAN_Handle handle, uint16_t *VarNum)
 Returns the number of configured Variables in SpinTAC Velocity Plan. More...
 
void STVELPLAN_getCfgCondNum (ST_VELPLAN_Handle handle, uint16_t *CondNum)
 Returns the number of configured Conditions in SpinTAC Velocity Plan. More...
 
void STVELPLAN_getCfgTranNum (ST_VELPLAN_Handle handle, uint16_t *TranNum)
 Returns the number of configured Transitions in SpinTAC Velocity Plan. More...
 
void STVELPLAN_getCfgActNum (ST_VELPLAN_Handle handle, uint16_t *ActNum)
 Returns the number of configured Actions in SpinTAC Velocity Plan. More...
 
void STVELPLAN_addCfgCond (ST_VELPLAN_Handle handle, uint16_t VarIdx, ST_PlanComp_e Comp, _iq24 Value1, _iq24 Value2)
 Adds a Condition to the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_delCfgCond (ST_VELPLAN_Handle handle, uint16_t CondIdx)
 Deletes a Condition from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_setCfgCond (ST_VELPLAN_Handle handle, uint16_t CondIdx, uint16_t VarIdx, ST_PlanComp_e Comp, _iq24 Value1, _iq24 Value2)
 Modifies a Condition in the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_getCfgCond (ST_VELPLAN_Handle handle, uint16_t CondIdx, uint16_t *VarIdx, ST_PlanComp_e *Comp, _iq24 *Value1, _iq24 *Value2)
 Returns a Condition from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_addCfgVarCond (ST_VELPLAN_Handle handle, uint16_t VarIdx1, uint16_t VarIdx2, ST_PlanComp_e Comp)
 Adds a Variable Condition to the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_delCfgVarCond (ST_VELPLAN_Handle handle, uint16_t CondIdx)
 Deletes a Variable Condition from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_setCfgVarCond (ST_VELPLAN_Handle handle, uint16_t CondIdx, uint16_t VarIdx1, uint16_t VarIdx2, ST_PlanComp_e Comp)
 Modifies a Varaible Condition to the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_getCfgVarCond (ST_VELPLAN_Handle handle, uint16_t CondIdx, uint16_t *VarIdx1, uint16_t *VarIdx2, ST_PlanComp_e *Comp)
 Returns a Variable Condition from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_addCfgTran (ST_VELPLAN_Handle handle, uint16_t FromState, uint16_t ToState, ST_PlanCond_e AndOr, uint16_t CondIdx1, uint16_t CondIdx2, _iq24 AccLim, _iq20 JrkLim)
 Adds a Transition to the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_delCfgTran (ST_VELPLAN_Handle handle, uint16_t TranIdx)
 Deletes a Transition from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_setCfgTran (ST_VELPLAN_Handle handle, uint16_t TranIdx, uint16_t FromState, uint16_t ToState, ST_PlanCond_e AndOr, uint16_t CondIdx1, uint16_t CondIdx2, _iq24 AccLim, _iq20 JrkLim)
 Modifies a Transition in the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_getCfgTran (ST_VELPLAN_Handle handle, uint16_t TranIdx, uint16_t *FromState, uint16_t *ToState, ST_PlanCond_e *AndOr, uint16_t *CondIdx1, uint16_t *CondIdx2, _iq24 *AccLim, _iq20 *JrkLim)
 Return a Transition from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_addCfgAct (ST_VELPLAN_Handle handle, uint16_t State, ST_PlanCond_e AndOr, uint16_t CondIdx1, uint16_t CondIdx2, uint16_t VarIdx, ST_PlanActOptn_e Opt, _iq24 Value, ST_PlanActTrgr_e EnterExit)
 Adds an action to the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_delCfgAct (ST_VELPLAN_Handle handle, uint16_t ActIdx)
 Deletes an action from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_setCfgAct (ST_VELPLAN_Handle handle, uint16_t ActIdx, uint16_t State, ST_PlanCond_e AndOr, uint16_t CondIdx1, uint16_t CondIdx2, uint16_t VarIdx, ST_PlanActOptn_e Opt, _iq24 Value, ST_PlanActTrgr_e EnterExit)
 Modifies an action in the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_getCfgAct (ST_VELPLAN_Handle handle, uint16_t ActIdx, uint16_t *State, ST_PlanCond_e *AndOr, uint16_t *CondIdx1, uint16_t *CondIdx2, uint16_t *VarIdx, ST_PlanActOptn_e *Opt, _iq24 *Value, ST_PlanActTrgr_e *EnterExit)
 Returns an action from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_addCfgVar (ST_VELPLAN_Handle handle, ST_PlanVar_e Type, _iq24 Value)
 Adds a variable to the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_delCfgVar (ST_VELPLAN_Handle handle, uint16_t VarIdx)
 Deletes a Variable from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_setCfgVar (ST_VELPLAN_Handle handle, uint16_t VarIdx, ST_PlanVar_e Type, _iq24 Value)
 Modifies a variable in the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_getCfgVar (ST_VELPLAN_Handle handle, uint16_t VarIdx, ST_PlanVar_e *Type, _iq24 *Value)
 Returns a variable from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_setVar (ST_VELPLAN_Handle handle, uint16_t VarIdx, _iq24 Value)
 Sets the value of a SpinTAC Velocity Plan variable. More...
 
void STVELPLAN_getVar (ST_VELPLAN_Handle handle, uint16_t VarIdx, _iq24 *Value)
 Gets the value of a SpinTAC Velocity Plan variable. More...
 
void STVELPLAN_setUnitProfDone (ST_VELPLAN_Handle handle, bool ProDON)
 Sets a flag in SpinTAC Velocity Plan to indicate if the unit profile is complete. More...
 
void STVELPLAN_setCfg (ST_VELPLAN_Handle handle, _iq24 T_sec, bool LoopENB)
 Configures SpinTAC Velocity Plan. More...
 
void STVELPLAN_getCfg (ST_VELPLAN_Handle handle, _iq24 *T_sec, bool *LoopENB)
 Gets the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_setCfgHaltState (ST_VELPLAN_Handle handle, _iq24 VelEnd, _iq24 AccLim, _iq20 JrkLim, int32_t Timer_tick)
 Configures the SpinTAC Velocity Plan Halt state. More...
 
void STVELPLAN_getCfgHaltState (ST_VELPLAN_Handle handle, _iq24 *VelEnd, _iq24 *AccLim, _iq20 *JrkLim, int32_t *Timer_tick)
 Gets the SpinTAC Velocity Plan Halt state configuration. More...
 
void STVELPLAN_addCfgState (ST_VELPLAN_Handle handle, _iq24 VelEnd, int32_t Timer_tick)
 Adds a State to the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_delCfgState (ST_VELPLAN_Handle handle, uint16_t StateIdx)
 Deletes a state from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_setCfgState (ST_VELPLAN_Handle handle, uint16_t StateIdx, _iq24 VelEnd, int32_t Timer_tick)
 Modifies a state in the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_getCfgState (ST_VELPLAN_Handle handle, uint16_t StateIdx, _iq24 *VelEnd, int32_t *Timer_tick)
 Returns a state from the SpinTAC Velocity Plan configuration. More...
 
void STVELPLAN_reset (ST_VELPLAN_Handle handle)
 Resets the Velocity Plan component. More...
 
ST_VELPLAN_Handle STVELPLAN_init (void *pMemory, const size_t numBytes)
 Initializes the SpinTAC Velocity Plan component. More...
 
void STVELPLAN_run (ST_VELPLAN_Handle handle)
 Runs SpinTAC Velocity Plan calculation. More...
 
void STVELPLAN_runTick (ST_VELPLAN_Handle handle)
 Updates the SpinTAC Velocity Plan Timer. More...
 
void STVELPLAN_setCfgArray (ST_VELPLAN_Handle handle, uint32_t *cfgArray, const size_t numBytes, uint16_t MaxActNum, uint16_t MaxCondNum, uint16_t MaxVarNum, uint16_t MaxTranNum, uint16_t MaxStateNum)
 Prepares SpinTAC Velocity Plan configuration array. More...
 

Detailed Description

Public interface, object, and function definitions related to the SpinTAC Velocity Plan component.

(C) Copyright 2012, LineStream Technologies, Inc. (C) Copyright 2011, Texas Instruments, Inc.

Definition in file spintac_vel_plan.h.