SPRUIK4A September 2018 – June 2019 TMS320F280021 , TMS320F280021-Q1 , TMS320F280023 , TMS320F280023-Q1 , TMS320F280023C , TMS320F280025 , TMS320F280025-Q1 , TMS320F280025C , TMS320F280025C-Q1 , TMS320F280040-Q1 , TMS320F280040C-Q1 , TMS320F280041 , TMS320F280041-Q1 , TMS320F280041C , TMS320F280041C-Q1 , TMS320F280045 , TMS320F280048-Q1 , TMS320F280048C-Q1 , TMS320F280049 , TMS320F280049-Q1 , TMS320F280049C , TMS320F280049C-Q1 , TMS320F28075 , TMS320F28075-Q1 , TMS320F28076 , TMS320F28374D , TMS320F28374S , TMS320F28375D , TMS320F28375S , TMS320F28375S-Q1 , TMS320F28376D , TMS320F28376S , TMS320F28377D , TMS320F28377D-Q1 , TMS320F28377S , TMS320F28377S-Q1 , TMS320F28378D , TMS320F28378S , TMS320F28379D , TMS320F28379D-Q1 , TMS320F28379S
The SFRA library defines the floating-point-based SFRA structure as discussed in the following sections:
typedef struct{
float32_t *h_magVect; //!< Plant Mag SFRA Vector
float32_t *h_phaseVect; //!< Plant Phase SFRA Vector
float32_t *gh_magVect; //!< Open Loop Mag SFRA Vector
float32_t *gh_phaseVect; //!< Open Loop Phase SFRA Vector
float32_t *cl_magVect; //!< Closed Loop Mag SFRA Vector
float32_t *cl_phaseVect; //!< Closed Loop Phase SFRA Vector
float32_t *freqVect; //!< Frequency Vector
float32_t amplitude; //!< Injection Amplitude
float32_t isrFreq; //!< SFRA ISR frequency
float32_t freqStart; //!< Start frequency of SFRA sweep
float32_t freqStep; //!< Log space between frequency points (optional)
int16_t start; //!< Command to start SFRA
int16_t state; //!< State of SFRA
int16_t status; //!< Status of SFRA
int16_t vecLength; //!< No. of Points in the SFRA
int16_t freqIndex; //!< Index of the frequency vector
int16_t storeH; //!< Flag to indicate if H vector is stored
int16_t storeGH; //!< Flag to indicate if GH vector is stored
int16_t storeCL; //!< Flag to indicate if CL vector is stored
int16_t speed; //!< variable to change the speed of the sweep
}SFRA_F32;