Просмотр исходного кода

加入configs文件夹,存放不同电机的autogen_config.h 和 yml配置

Signed-off-by: kevin <huhui@sharkgulf.com>
kevin 2 лет назад
Родитель
Сommit
f719932a01

+ 1 - 1
Applications/app/app.c

@@ -64,7 +64,7 @@ static void app_print_log(void) {
 	//sample_log();
 	//throttle_log();
 	sys_debug("Trq: %f-%f-%f\n", motor.controller.input_torque.target, motor.controller.input_torque.interpolation, motor.controller.input_torque.step);
-	sys_debug("contr %d\n", motor.controller.b_start);
+	sys_debug("acc %d\n", get_acc_vol());
 	//F_debug();
 	//eCtrl_debug_log();
 	//sys_debug("enc err %d, %d\n", foc_observer_enc_errcount(), foc_observer_sensorless_stable());

+ 0 - 4
Applications/bsp/gd32/bsp.h

@@ -36,11 +36,7 @@
 #define CONFIG_BOARD_MAX_DC 115.0F
 #include "bsp/gd32/board_mc105_v3.h"
 #define CONFIG_BOARD_MCXXX
-#ifdef CONFIG_SERVO_MOTOR
-#define CONFIG_BOARD_NAME "MC105_SERVO"
-#else
 #define CONFIG_BOARD_NAME "MC105"
-#endif
 #define CONFIG_MC105_HW_VERSION 3
 #elif defined (CONFIG_BOARD_MC124)
 #define CONFIG_BOARD_MAX_DC 84.0F

+ 0 - 4
Applications/config.h

@@ -16,11 +16,7 @@
 #define  CAN_NODE_ADDR_CCU  		0x43
 #define  CAN_NODE_ADDR_PC  			0x45
 #define  CAN_NODE_ADDR_CCU_AUX      0x46
-#ifdef CONFIG_SERVO_MOTOR
-#define  CAN_NODE_ADDR_MCU  		0x4E
-#else
 #define  CAN_NODE_ADDR_MCU  		0x4D
-#endif
 #define  CAN_NODE_ADDR_DCU  		0x50	/* MCU of the display panel */
 #define  CAN_NODE_ADDR_BLE  		0x51	/*radar*/
 #define  CAN_NODE_ADDR_RCU  		0x52	/*radar*/

+ 2 - 3
Applications/foc/samples.c

@@ -41,11 +41,11 @@ void samples_init(void){
 	_vref.value = 0;
 	_vref.lowpass = 0.01f;
 	sample_vref();
-	_vbus.value = ((float)adc_get_vbus() * VBUS_VOL_CEOF);
+	_vbus.value = sample_vbus_raw();
 	_vbus.filted_value = _vbus.value;
 	_vbus.lowpass = (0.01f);
 #ifdef ACC_V_CHAN
-	acc_vol.value = ((float)adc_get_acc() * VBUS_VOL_CEOF);
+	acc_vol.value = sample_acc_vol_raw();
 	acc_vol.filted_value = acc_vol.value;
 	acc_vol.lowpass = (0.01f);
 #endif
@@ -201,7 +201,6 @@ float sample_acc_vol_raw(void) {
 }
 
 void sample_vbus(void){
-	u32 ticks = task_ticks_abs();
 	_vbus.value = sample_vbus_raw();
 	LowPass_Filter(_vbus.filted_value, _vbus.value, _vbus.lowpass);
 	_vbus.filted_int = (int)_vbus.filted_value;

+ 218 - 0
configs/autogen_config_servo.h

@@ -0,0 +1,218 @@
+/* auto gen 2023/10/12 9:52:09*/
+#ifndef _AUTOGEN_CONFIG_H__
+#define _AUTOGEN_CONFIG_H__
+
+#define CONFIG_Version 1
+#define CONFIG_Motor_Poles  4
+#define CONFIG_Motor_Ld  3.2E-05f
+#define CONFIG_Motor_Lq  7.3E-05f
+#define CONFIG_Motor_Rs  0.009f
+#define CONFIG_Motor_Flux  0.019f
+#define CONFIG_Motor_PLLBand  200
+#define CONFIG_Motor_EpmPLL  400
+#define CONFIG_Motor_PosPLL  500
+#define CONFIG_Motor_VehicleW  190
+#define CONFIG_Motor_WheelC  145
+#define CONFIG_Motor_GearRatio  6.25f
+#define CONFIG_Motor_MaxFwDCurr  100
+#define CONFIG_Motor_MaxTorque  200
+#define CONFIG_Motor_EncOffset  -103
+#define CONFIG_Foc_MaxDCVol  110
+#define CONFIG_Foc_MinDCVol  60
+#define CONFIG_Foc_MaxPhaseCurr  300
+#define CONFIG_Foc_MaxRPM  9000
+#define CONFIG_Foc_MaxEPMRPM  300
+#define CONFIG_Foc_MaxEPMTorque  100
+#define CONFIG_Foc_MaxEPMRPMBk  170
+#define CONFIG_Foc_MaxEPMTorqueBk  80
+#define CONFIG_Foc_MaxTorque  200
+#define CONFIG_Foc_MaxEbrkTorque  40
+#define CONFIG_Foc_MaxIDC  100
+#define CONFIG_Foc_MaxAutoHoldTorque  100
+#define CONFIG_Foc_ThroStartVol  0.85f
+#define CONFIG_Foc_ThroEndVol  4.15f
+#define CONFIG_Foc_ThroMinVol  0.4f
+#define CONFIG_Foc_ThroMaxVol  4.6f
+#define CONFIG_Foc_CurrCtrlBandWith  800
+#define CONFIG_Foc_ThroDecTime  10
+#define CONFIG_Foc_PID_VelLim_Kp 0.5f
+#define CONFIG_Foc_PID_VelLim_Ki 2.5f
+#define CONFIG_Foc_PID_VelLim_Kd 0
+#define CONFIG_Foc_PID_VelCtrl_Kp 0.1f
+#define CONFIG_Foc_PID_VelCtrl_Ki 3.5f
+#define CONFIG_Foc_PID_VelCtrl_Kd 0
+#define CONFIG_Foc_PID_Autohold_Kp 0.01f
+#define CONFIG_Foc_PID_Autohold_Ki 0.2f
+#define CONFIG_Foc_PID_Autohold_Kd 0
+#define CONFIG_Foc_PID_IDCLim_Kp 5
+#define CONFIG_Foc_PID_IDCLim_Ki 15
+#define CONFIG_Foc_PID_IDCLim_Kd 0
+#define CONFIG_Settings_AutoHold  1
+#define CONFIG_Settings_BrkShutPower  1
+#define CONFIG_Settings_TcsEnable  0
+#define CONFIG_Gear0_MaxSpeed 1000
+#define CONFIG_Gear0_MaxTorque 100
+#define CONFIG_Gear0_MaxIdc 30
+#define CONFIG_Gear0_ZeroAccl 500
+#define CONFIG_Gear0_NormalAccl 100
+#define CONFIG_Gear0_Torque0 100
+#define CONFIG_Gear0_Torque1 100
+#define CONFIG_Gear0_Torque2 100
+#define CONFIG_Gear0_Torque3 100
+#define CONFIG_Gear0_Torque4 100
+#define CONFIG_Gear0_Torque5 100
+#define CONFIG_Gear0_Torque6 100
+#define CONFIG_Gear0_Torque7 100
+#define CONFIG_Gear0_Torque8 0
+#define CONFIG_Gear0_Torque9 0
+#define CONFIG_Gear1_MaxSpeed 1000
+#define CONFIG_Gear1_MaxTorque 100
+#define CONFIG_Gear1_MaxIdc 30
+#define CONFIG_Gear1_ZeroAccl 500
+#define CONFIG_Gear1_NormalAccl 100
+#define CONFIG_Gear1_Torque0 100
+#define CONFIG_Gear1_Torque1 100
+#define CONFIG_Gear1_Torque2 100
+#define CONFIG_Gear1_Torque3 100
+#define CONFIG_Gear1_Torque4 100
+#define CONFIG_Gear1_Torque5 100
+#define CONFIG_Gear1_Torque6 100
+#define CONFIG_Gear1_Torque7 100
+#define CONFIG_Gear1_Torque8 0
+#define CONFIG_Gear1_Torque9 0
+#define CONFIG_Gear2_MaxSpeed 1000
+#define CONFIG_Gear2_MaxTorque 100
+#define CONFIG_Gear2_MaxIdc 30
+#define CONFIG_Gear2_ZeroAccl 500
+#define CONFIG_Gear2_NormalAccl 100
+#define CONFIG_Gear2_Torque0 100
+#define CONFIG_Gear2_Torque1 100
+#define CONFIG_Gear2_Torque2 100
+#define CONFIG_Gear2_Torque3 100
+#define CONFIG_Gear2_Torque4 100
+#define CONFIG_Gear2_Torque5 100
+#define CONFIG_Gear2_Torque6 100
+#define CONFIG_Gear2_Torque7 100
+#define CONFIG_Gear2_Torque8 0
+#define CONFIG_Gear2_Torque9 0
+#define CONFIG_Gear3_MaxSpeed 1000
+#define CONFIG_Gear3_MaxTorque 100
+#define CONFIG_Gear3_MaxIdc 30
+#define CONFIG_Gear3_ZeroAccl 500
+#define CONFIG_Gear3_NormalAccl 100
+#define CONFIG_Gear3_Torque0 100
+#define CONFIG_Gear3_Torque1 100
+#define CONFIG_Gear3_Torque2 100
+#define CONFIG_Gear3_Torque3 100
+#define CONFIG_Gear3_Torque4 100
+#define CONFIG_Gear3_Torque5 100
+#define CONFIG_Gear3_Torque6 100
+#define CONFIG_Gear3_Torque7 100
+#define CONFIG_Gear3_Torque8 0
+#define CONFIG_Gear3_Torque9 0
+#define CONFIG_GearLow0_MaxSpeed 1000
+#define CONFIG_GearLow0_MaxTorque 100
+#define CONFIG_GearLow0_MaxIdc 30
+#define CONFIG_GearLow0_ZeroAccl 500
+#define CONFIG_GearLow0_NormalAccl 100
+#define CONFIG_GearLow0_Torque0 100
+#define CONFIG_GearLow0_Torque1 100
+#define CONFIG_GearLow0_Torque2 100
+#define CONFIG_GearLow0_Torque3 100
+#define CONFIG_GearLow0_Torque4 100
+#define CONFIG_GearLow0_Torque5 100
+#define CONFIG_GearLow0_Torque6 100
+#define CONFIG_GearLow0_Torque7 100
+#define CONFIG_GearLow0_Torque8 0
+#define CONFIG_GearLow0_Torque9 0
+#define CONFIG_GearLow1_MaxSpeed 1000
+#define CONFIG_GearLow1_MaxTorque 100
+#define CONFIG_GearLow1_MaxIdc 30
+#define CONFIG_GearLow1_ZeroAccl 500
+#define CONFIG_GearLow1_NormalAccl 100
+#define CONFIG_GearLow1_Torque0 100
+#define CONFIG_GearLow1_Torque1 100
+#define CONFIG_GearLow1_Torque2 100
+#define CONFIG_GearLow1_Torque3 100
+#define CONFIG_GearLow1_Torque4 100
+#define CONFIG_GearLow1_Torque5 100
+#define CONFIG_GearLow1_Torque6 100
+#define CONFIG_GearLow1_Torque7 100
+#define CONFIG_GearLow1_Torque8 0
+#define CONFIG_GearLow1_Torque9 0
+#define CONFIG_GearLow2_MaxSpeed 1000
+#define CONFIG_GearLow2_MaxTorque 100
+#define CONFIG_GearLow2_MaxIdc 30
+#define CONFIG_GearLow2_ZeroAccl 500
+#define CONFIG_GearLow2_NormalAccl 100
+#define CONFIG_GearLow2_Torque0 100
+#define CONFIG_GearLow2_Torque1 100
+#define CONFIG_GearLow2_Torque2 100
+#define CONFIG_GearLow2_Torque3 100
+#define CONFIG_GearLow2_Torque4 100
+#define CONFIG_GearLow2_Torque5 100
+#define CONFIG_GearLow2_Torque6 100
+#define CONFIG_GearLow2_Torque7 100
+#define CONFIG_GearLow2_Torque8 0
+#define CONFIG_GearLow2_Torque9 0
+#define CONFIG_GearLow3_MaxSpeed 1000
+#define CONFIG_GearLow3_MaxTorque 100
+#define CONFIG_GearLow3_MaxIdc 30
+#define CONFIG_GearLow3_ZeroAccl 500
+#define CONFIG_GearLow3_NormalAccl 100
+#define CONFIG_GearLow3_Torque0 100
+#define CONFIG_GearLow3_Torque1 100
+#define CONFIG_GearLow3_Torque2 100
+#define CONFIG_GearLow3_Torque3 100
+#define CONFIG_GearLow3_Torque4 100
+#define CONFIG_GearLow3_Torque5 100
+#define CONFIG_GearLow3_Torque6 100
+#define CONFIG_GearLow3_Torque7 100
+#define CONFIG_GearLow3_Torque8 0
+#define CONFIG_GearLow3_Torque9 0
+#define CONFIG_Protect_Motor_Level0_Entry 130
+#define CONFIG_Protect_Motor_Level0_Exit 120
+#define CONFIG_Protect_Motor_Level0_Value 0
+#define CONFIG_Protect_Motor_Level1_Entry 120
+#define CONFIG_Protect_Motor_Level1_Exit 110
+#define CONFIG_Protect_Motor_Level1_Value 34
+#define CONFIG_Protect_Motor_Level2_Entry 110
+#define CONFIG_Protect_Motor_Level2_Exit 100
+#define CONFIG_Protect_Motor_Level2_Value 66
+#define CONFIG_Protect_MosFet_Level0_Entry 100
+#define CONFIG_Protect_MosFet_Level0_Exit 95
+#define CONFIG_Protect_MosFet_Level0_Value 0
+#define CONFIG_Protect_MosFet_Level1_Entry 95
+#define CONFIG_Protect_MosFet_Level1_Exit 90
+#define CONFIG_Protect_MosFet_Level1_Value 34
+#define CONFIG_Protect_MosFet_Level2_Entry 90
+#define CONFIG_Protect_MosFet_Level2_Exit 80
+#define CONFIG_Protect_MosFet_Level2_Value 66
+#define CONFIG_Protect_Voltage_Level0_Entry 60
+#define CONFIG_Protect_Voltage_Level0_Exit 70
+#define CONFIG_Protect_Voltage_Level0_Value 0
+#define CONFIG_EnergyRecovery_Level0_Torque 0
+#define CONFIG_EnergyRecovery_Level0_Time 1000
+#define CONFIG_EnergyRecovery_Level1_Torque 10
+#define CONFIG_EnergyRecovery_Level1_Time 500
+#define CONFIG_EnergyRecovery_Level2_Torque 15
+#define CONFIG_EnergyRecovery_Level2_Time 400
+#define CONFIG_EnergyRecovery_Level3_Torque 20
+#define CONFIG_EnergyRecovery_Level3_Time 300
+#define CONFIG_EnergyRecovery_Level4_Torque 35
+#define CONFIG_EnergyRecovery_Level4_Time 200
+#define CONFIG_EnergyRecovery_Level5_Torque 40
+#define CONFIG_EnergyRecovery_Level5_Time 200
+#define CONFIG_EnergyRecovery_Level6_Torque 40
+#define CONFIG_EnergyRecovery_Level6_Time 200
+#define CONFIG_EnergyRecovery_Level7_Torque 40
+#define CONFIG_EnergyRecovery_Level7_Time 200
+#define CONFIG_EnergyRecovery_Level8_Torque 40
+#define CONFIG_EnergyRecovery_Level8_Time 200
+#define CONFIG_EnergyRecovery_Level9_Torque 40
+#define CONFIG_EnergyRecovery_Level9_Time 200
+#define CONFIG_CrossZero_Low  1
+#define CONFIG_CrossZero_High  7
+#define CONFIG_CrossZero_MinStep  0.03f
+#define CONFIG_CrossZero_NorStep  5
+#endif /* _AUTOGEN_CONFIG_H__ */ 

+ 239 - 0
configs/mc_servo.yml

@@ -0,0 +1,239 @@
+##### 配置文件自动生成,不要手动修改!! 2023/10/12 9:51:38
+Version: 1
+CheckCrc: 0
+Motor:
+  Poles: 4
+  Ld: 3.2E-05
+  Lq: 7.3E-05
+  Rs: 0.009
+  Flux: 0.019
+  PLLBand: 200
+  EpmPLL: 400
+  PosPLL: 500
+  VehicleW: 190
+  WheelC: 145
+  GearRatio: 6.25
+  MaxFwDCurr: 100
+  MaxTorque: 200
+  EncOffset: -103
+Foc:
+  MaxDCVol: 110
+  MinDCVol: 60
+  MaxPhaseCurr: 300
+  MaxRPM: 9000
+  MaxEPMRPM: 300
+  MaxEPMTorque: 100
+  MaxEPMRPMBk: 170
+  MaxEPMTorqueBk: 80
+  MaxTorque: 200
+  MaxEbrkTorque: 40
+  MaxIDC: 100
+  MaxAutoHoldTorque: 100
+  ThroStartVol: 0.85
+  ThroEndVol: 4.15
+  ThroMinVol: 0.4
+  ThroMaxVol: 4.6
+  CurrCtrlBandWith: 800
+  ThroDecTime: 10
+  PID:
+    VelLim:
+      Kp: 0.5
+      Ki: 2.5
+      Kd: 0
+    VelCtrl:
+      Kp: 0.1
+      Ki: 3.5
+      Kd: 0
+    Autohold:
+      Kp: 0.01
+      Ki: 0.2
+      Kd: 0
+    IDCLim:
+      Kp: 5
+      Ki: 15
+      Kd: 0
+Settings:
+  AutoHold: 1
+  BrkShutPower: 1
+  TcsEnable: 0
+Gear:
+- MaxSpeed: 1000
+  MaxTorque: 100
+  MaxIdc: 30
+  ZeroAccl: 500
+  NormalAccl: 100
+  Torque:
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 0
+  - 0
+- MaxSpeed: 1000
+  MaxTorque: 100
+  MaxIdc: 30
+  ZeroAccl: 500
+  NormalAccl: 100
+  Torque:
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 0
+  - 0
+- MaxSpeed: 1000
+  MaxTorque: 100
+  MaxIdc: 30
+  ZeroAccl: 500
+  NormalAccl: 100
+  Torque:
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 0
+  - 0
+- MaxSpeed: 1000
+  MaxTorque: 100
+  MaxIdc: 30
+  ZeroAccl: 500
+  NormalAccl: 100
+  Torque:
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 0
+  - 0
+GearLow:
+- MaxSpeed: 1000
+  MaxTorque: 100
+  MaxIdc: 30
+  ZeroAccl: 500
+  NormalAccl: 100
+  Torque:
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 0
+  - 0
+- MaxSpeed: 1000
+  MaxTorque: 100
+  MaxIdc: 30
+  ZeroAccl: 500
+  NormalAccl: 100
+  Torque:
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 0
+  - 0
+- MaxSpeed: 1000
+  MaxTorque: 100
+  MaxIdc: 30
+  ZeroAccl: 500
+  NormalAccl: 100
+  Torque:
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 0
+  - 0
+- MaxSpeed: 1000
+  MaxTorque: 100
+  MaxIdc: 30
+  ZeroAccl: 500
+  NormalAccl: 100
+  Torque:
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 100
+  - 0
+  - 0
+Protect:
+  Motor:
+  - Entry: 130
+    Exit: 120
+    Value: 0
+  - Entry: 120
+    Exit: 110
+    Value: 34
+  - Entry: 110
+    Exit: 100
+    Value: 66
+  MosFet:
+  - Entry: 100
+    Exit: 95
+    Value: 0
+  - Entry: 95
+    Exit: 90
+    Value: 34
+  - Entry: 90
+    Exit: 80
+    Value: 66
+  Voltage:
+  - Entry: 60
+    Exit: 70
+    Value: 0
+EnergyRecovery:
+- Torque: 0
+  Time: 1000
+- Torque: 10
+  Time: 500
+- Torque: 15
+  Time: 400
+- Torque: 20
+  Time: 300
+- Torque: 35
+  Time: 200
+- Torque: 40
+  Time: 200
+- Torque: 40
+  Time: 200
+- Torque: 40
+  Time: 200
+- Torque: 40
+  Time: 200
+- Torque: 40
+  Time: 200
+CrossZero:
+  Low: 1
+  High: 7
+  MinStep: 5
+  NorStep: 5

+ 0 - 0
mc_config.yml → configs/mc_zd100.yml