foc_core.h 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. #ifndef _FOC_CORE_H__
  2. #define _FOC_CORE_H__
  3. #include "foc_type.h"
  4. void PMSM_FOC_CoreInit(void);
  5. void PMSM_FOC_Schedule(void);
  6. void PMSM_FOC_Start(u8 nCtrlMode);
  7. void PMSM_FOC_Stop(void);
  8. void PMSM_FOC_iBusLimit(_s16q5_t ibusLimit);
  9. void PMSM_FOC_SpeedLimit(_s32q4_t speedLimit);
  10. float PMSM_FOC_GetSpeedLimit(void);
  11. void PMSM_FOC_VbusVoltage(_s16q5_t vbusVol);
  12. void PMSM_FOC_SetCtrlMode(uint8_T mode);
  13. void PMSM_FOC_SetOpenVdq(_s16q5_t vd, _s16q5_t vq);
  14. bool PMSM_FOC_EnableCruise(boolean_T enable);
  15. bool PMSM_FOC_Set_Speed(float rpm);
  16. bool PMSM_FOC_Set_Current(float current);
  17. bool PMSM_FOC_Set_CruiseSpeed(float rpm);
  18. void PMSM_FOC_HallCalibrate(boolean_T b_caliHall, _s16q5_t open_vd);
  19. float PMSM_FOC_GetSpeed(void);
  20. void PMSM_FOC_SetErrCode(u8 code);
  21. u8 PMSM_FOC_GetErrCode(void);
  22. bool PMSM_FOC_Lock_Motor(bool lock);
  23. void PMSM_FOC_Brake(bool brake);
  24. float PMSM_FOC_Get_iDC(void);
  25. void PMSM_FOC_LockMotor(bool lock);
  26. void PMSM_FOC_SetSpdPid(float kp, float ki, float kb);
  27. void PMSM_FOC_SetIDPid(float kp, float ki, float kb);
  28. void PMSM_FOC_SetIQPid(float kp, float ki, float kb);
  29. void PMSM_FOC_SetTrqPid(float kp, float ki, float kb);
  30. #endif /* _FOC_CORE_H__ */