foc_define_parameter.h 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. /**********************************
  2. * 文件名称: foc_define_parameter.h
  3. * 功能描述: FOC算法参数定义文件
  4. * 主要内容:
  5. * 1. 定义电机启动和控制参数
  6. * 2. 定义FOC算法相关参数
  7. * 3. 定义电机参数
  8. **********************************/
  9. #ifndef __FOC_DEFINE_PARAMETER_H_
  10. #define __FOC_DEFINE_PARAMETER_H_
  11. #define MOTOR_STARTUP_CURRENT 1.0f // 电机启动电流 (A)
  12. #define SPEED_LOOP_CLOSE_RAD_S 50.0f // 速度闭环阈值 (单位: rad/s)
  13. #define OPENLOOP_TEST
  14. #define VBUS 24.0f
  15. // 选择FOC类型:霍尔传感器FOC或无传感器FOC
  16. #define HALL_FOC_SELECT // 使用霍尔传感器的FOC模式
  17. //#define SENSORLESS_FOC_SELECT // 使用无传感器的FOC模式
  18. // 电机参数(基于TG5P40电机)
  19. #define RS_PARAMETER 0.445f // 定子电阻 (Ω)
  20. #define LS_PARAMETER 0.00031f // 定子电感 (H)
  21. #define FLUX_PARAMETER 0.007797f // 磁链 (Wb)
  22. // % TG5P40电机参数
  23. // % MATLAB参数设置
  24. // MOTOR_PNF_param.Value = 4; % 电机极对数
  25. // MOTOR_PN_param.Value = uint8(4); % 电机极数
  26. // MOTOR_RS_param.Value = 0.445; % 定子电阻 (Ω)
  27. // MOTOR_LS_param.Value = 0.00031; % 定子电感 (H)
  28. // MOTOR_KE_param.Value = 5.656; % 反电动势常数 (V/krpm)
  29. // MOTOR_J_param.Value = 0.0000028; % 转动惯量 (kg.m^2)
  30. // MOTOR_F_param.Value = 0.000007; % 摩擦系数 (N.m.s)
  31. // MOTOR_TL_param.Value = 0;%0.001; % 负载转矩 (N.m)
  32. //% MOTOR_FLUX_param.Value = 0.007797; % 磁链 (Wb)
  33. // MOTOR_FLUX_param.Value = MOTOR_KE_param.Value*30.0/sqrt(3.0)/1000.0/MOTOR_PNF_param.Value/pi;
  34. /**
  35. * @brief 磁链计算方法说明
  36. *
  37. * 已知Ke = 4.0 V/krpm,电机极对数p = 4
  38. *
  39. * 计算步骤:
  40. *
  41. * 1. 计算电机机械角速度(1000 rpm 时)
  42. * ωm = 1000 × 2π / 60 = 104.72 rad/s
  43. *
  44. * 2. 计算电机电角速度
  45. * ωe = 4 × 104.72 = 418.88 rad/s
  46. *
  47. * 3. 将Ke从 V/krpm 转换为 V/(rad/s)
  48. * Ke_elec = 4.0 / 418.88 = 0.00955 V/(rad/s)
  49. *
  50. * 4. 根据电磁感应原理(ωe = 1 rad/s时)
  51. * Ke_elec = √(3/2) × Φf
  52. * 其中 √(3/2) = 1.2247
  53. *
  54. * 5. 计算磁链
  55. * Φf = Ke_elec / 1.2247 = 0.00955 / 1.2247 = 0.0078 Wb = 7.8 mWb
  56. *
  57. * 简化公式
  58. * Φf = Ke / (p × 104.72 × 1.2247)
  59. * = Ke / (p × 128.3)
  60. *
  61. * 示例计算:4.0 / (4 × 128.3) = 4.0 / 513.2 = 0.0078 Wb
  62. */
  63. #endif