PIInit.c 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. /********************************************************************************
  2. **** Copyright (C), 2020, Fortior Technology Co., Ltd. ****
  3. ********************************************************************************
  4. File Name : PIInit.c
  5. Author : Bruce HW&RD
  6. Date : 2020-10-16
  7. Description : .C file function description
  8. Version : 1.0
  9. Function List :
  10. Record :
  11. 1.Date : 2020-10-16
  12. Author : Bruce HW&RD
  13. Modification: Created file
  14. ********************************************************************************/
  15. /* Includes -------------------------------------------------------------------*/
  16. #include "PIInit.h"
  17. #include "FU68xx_5.h"
  18. #include "Customer.h"
  19. #include "Parameter.h"
  20. #include "AddFunction.h"
  21. #include "FiledWeaken.h"
  22. void PI_Init(void)
  23. {
  24. PI0_KP = SKP;
  25. PI0_KI = SKI;
  26. PI0_EK = 0;
  27. PI0_EK1 = 0;
  28. PI0_UKMAX = SOUTMAX;
  29. PI0_UKMIN = SOUTMIN;
  30. PI0_UKH = 0;
  31. PI0_UKL = 0;
  32. PI1_KP = FiledWeakenKp;
  33. PI1_KI = FiledWeakenKi;
  34. PI1_EK = 0;
  35. PI1_EK1 = 0;
  36. PI1_UKMAX = 0;//mcFieldWeakenPID.outMax;
  37. PI1_UKMIN = _Q15((float) -35.0 / 180.0) ; // mcFieldWeakenPID.outMin;
  38. PI1_UKH = 0;
  39. PI1_UKL = 0;
  40. }
  41. void PI2_Init(void)
  42. {
  43. PI2_KP = fengSKP;
  44. PI2_KI = fengSKI;
  45. PI2_KD = 0;
  46. PI2_EK = 0;
  47. PI2_EK1 = 0;
  48. PI2_EK2 = 0 ;
  49. PI2_UKMAX = 1000;
  50. PI2_UKMIN = 1;
  51. PI2_UKH = 0;
  52. PI2_UKL = 0;
  53. }
  54. int16 PI_realize(int16 speed)
  55. {
  56. PI0_EK = speed;
  57. SMDU_RunBlock(0, 7); //调用MDU运算单元0中的PI模式(7)
  58. return PI0_UKH;
  59. }