12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- /**
- * @file spdflxwkn.h
- * @author xu, haifeng(xuhf58@midea.com)
- * @brief
- * @version 0.1
- * @date 2024-01-17
- *
- * @copyright Copyright (c) 2024
- *
- */
- #ifndef SPDFLXWKN_H
- #define SPDFLXWKN_H
- #include "typedefine.h"
- #include "mathtool.h"
- /************************************************************************
- Definitions & Macros
- ************************************************************************/
- #define FLUX_MODE 0
- #define SPDFW_CTRL_COEF_DEFAULT \
- { \
- 0, 0, 0, 0, 0 \
- } // Default value of SPDFW_CTRL_COEF
- #define SPDFW_CTRL_OUT_DEFAULT \
- { \
- 0, 0 \
- } // Default value of SPDFW_CTRL_OUT
- /************************************************************************
- TypeDefs & Structure Defines
- ************************************************************************/
- typedef struct
- {
- SWORD swRSpeedPu; // Q15, Motor Rated Speed Pu, Base 1400HZ
- SWORD swIdMinPu; // Q14, Flux Weak Min Current, Base 60A
- SWORD swIpeakMaxPu; // Q14, Max Phase Current, Base 60A
- } SPDFW_CTRL_COEFIN;
- typedef struct
- {
- SWORD swFlxStartSpeedPu; // Q15, Flux Weak Motor Start Speed Pu, Base 1400HZ
- SWORD swFlxStopSpeedPu; // Q15, Flux Weak Motor Stop Speed Pu, Base 1400HZ
- SWORD swIdMinPu; // Q14, Flux Weak Min Current, Base 60A
- SWORD swIpeakMaxPu; // Q14, Max Phase Current, Base 60A
- SLONG slFlxKPu; // Q14, Flux Weak Calculate K
- } SPDFW_CTRL_COEF;
- typedef struct
- {
- SWORD swSpdFbkLpfAbsPu; // Q15, Flux Weak Motor Speed In Pu, Base 1400HZ
- } SPDFW_CTRL_IN;
- typedef struct
- {
- SWORD swIqLimPu; // Q14, q-axis Current limit value used for speed loop out
- SWORD swIdRefPu; // Q14, d-axis Current reference value used for current loop regulation
- } SPDFW_CTRL_OUT;
- /************************************************************************
- Exported Variables
- ************************************************************************/
- extern SPDFW_CTRL_COEFIN spdflx_stCtrlCoefIn;
- extern SPDFW_CTRL_COEF spdflx_stCtrlCoef;
- extern SPDFW_CTRL_IN spdflx_stCtrlIn;
- extern SPDFW_CTRL_OUT spdflx_stCtrlOut;
- /************************************************************************
- Exported Function
- ************************************************************************/
- extern void spdflx_voInit(void);
- extern void spdflx_voCoef(SPDFW_CTRL_COEFIN *in, SPDFW_CTRL_COEF *out);
- extern void spdflx_voCtrl(SPDFW_CTRL_IN *in, SPDFW_CTRL_COEF *coef, SPDFW_CTRL_OUT *out);
- /***********************************************************************/
- #endif
|