2015-09-17 14:24:55 -07:00
|
|
|
/*
|
2019-02-18 10:30:19 -08:00
|
|
|
Copyright 2016 - 2019 Benjamin Vedder benjamin@vedder.se
|
2015-09-17 14:24:55 -07:00
|
|
|
|
2016-11-04 07:18:34 -07:00
|
|
|
This file is part of the VESC firmware.
|
|
|
|
|
|
|
|
The VESC firmware is free software: you can redistribute it and/or modify
|
2015-09-17 14:24:55 -07:00
|
|
|
it under the terms of the GNU General Public License as published by
|
|
|
|
the Free Software Foundation, either version 3 of the License, or
|
|
|
|
(at your option) any later version.
|
|
|
|
|
2016-11-04 07:18:34 -07:00
|
|
|
The VESC firmware is distributed in the hope that it will be useful,
|
2015-09-17 14:24:55 -07:00
|
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
GNU General Public License for more details.
|
|
|
|
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
|
|
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef MCCONF_DEFAULT_H_
|
|
|
|
#define MCCONF_DEFAULT_H_
|
|
|
|
|
|
|
|
// Default settings
|
|
|
|
#ifndef MCCONF_DEFAULT_MOTOR_TYPE
|
2021-03-22 04:13:19 -07:00
|
|
|
#define MCCONF_DEFAULT_MOTOR_TYPE MOTOR_TYPE_FOC
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_PWM_MODE
|
|
|
|
#define MCCONF_PWM_MODE PWM_MODE_SYNCHRONOUS // Default PWM mode
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SENSOR_MODE
|
|
|
|
#define MCCONF_SENSOR_MODE SENSOR_MODE_SENSORLESS // Sensor mode
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_COMM_MODE
|
|
|
|
#define MCCONF_COMM_MODE COMM_MODE_INTEGRATE // The commutation mode to use
|
|
|
|
#endif
|
|
|
|
|
|
|
|
// Limits
|
|
|
|
#ifndef MCCONF_L_CURRENT_MAX
|
|
|
|
#define MCCONF_L_CURRENT_MAX 60.0 // Current limit in Amperes (Upper)
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_CURRENT_MIN
|
|
|
|
#define MCCONF_L_CURRENT_MIN -60.0 // Current limit in Amperes (Lower)
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_IN_CURRENT_MAX
|
2019-02-18 10:30:19 -08:00
|
|
|
#define MCCONF_L_IN_CURRENT_MAX 99.0 // Input current limit in Amperes (Upper)
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_IN_CURRENT_MIN
|
2019-02-18 10:30:19 -08:00
|
|
|
#define MCCONF_L_IN_CURRENT_MIN -60.0 // Input current limit in Amperes (Lower)
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_MAX_ABS_CURRENT
|
|
|
|
#define MCCONF_L_MAX_ABS_CURRENT 130.0 // The maximum absolute current above which a fault is generated
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_MIN_VOLTAGE
|
|
|
|
#define MCCONF_L_MIN_VOLTAGE 8.0 // Minimum input voltage
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_MAX_VOLTAGE
|
2016-01-30 06:57:51 -08:00
|
|
|
#define MCCONF_L_MAX_VOLTAGE 57.0 // Maximum input voltage
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_BATTERY_CUT_START
|
|
|
|
#define MCCONF_L_BATTERY_CUT_START 10.0 // Start limiting the positive current at this voltage
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_BATTERY_CUT_END
|
|
|
|
#define MCCONF_L_BATTERY_CUT_END 8.0 // Limit the positive current completely at this voltage
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_RPM_MAX
|
|
|
|
#define MCCONF_L_RPM_MAX 100000.0 // The motor speed limit (Upper)
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_RPM_MIN
|
|
|
|
#define MCCONF_L_RPM_MIN -100000.0 // The motor speed limit (Lower)
|
|
|
|
#endif
|
2016-11-04 07:18:34 -07:00
|
|
|
#ifndef MCCONF_L_RPM_START
|
|
|
|
#define MCCONF_L_RPM_START 0.8 // Fraction of full speed where RPM current limiting starts
|
|
|
|
#endif
|
2015-09-17 14:24:55 -07:00
|
|
|
#ifndef MCCONF_L_SLOW_ABS_OVERCURRENT
|
2021-10-15 13:25:07 -07:00
|
|
|
#define MCCONF_L_SLOW_ABS_OVERCURRENT false // Use the filtered (and hence slower) current for the overcurrent fault detection
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_MIN_DUTY
|
|
|
|
#define MCCONF_L_MIN_DUTY 0.005 // Minimum duty cycle
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_MAX_DUTY
|
|
|
|
#define MCCONF_L_MAX_DUTY 0.95 // Maximum duty cycle
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_CURR_MAX_RPM_FBRAKE
|
|
|
|
#define MCCONF_L_CURR_MAX_RPM_FBRAKE 300 // Maximum electrical RPM to use full brake at
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_CURR_MAX_RPM_FBRAKE_CC
|
|
|
|
#define MCCONF_L_CURR_MAX_RPM_FBRAKE_CC 1500 // Maximum electrical RPM to use full brake at with current control
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_LIM_TEMP_FET_START
|
2017-10-27 12:29:12 -07:00
|
|
|
#define MCCONF_L_LIM_TEMP_FET_START 85.0 // MOSFET temperature where current limiting should begin
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_LIM_TEMP_FET_END
|
|
|
|
#define MCCONF_L_LIM_TEMP_FET_END 100.0 // MOSFET temperature where everything should be shut off
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_LIM_TEMP_MOTOR_START
|
2017-10-27 12:29:12 -07:00
|
|
|
#define MCCONF_L_LIM_TEMP_MOTOR_START 85.0 // MOTOR temperature where current limiting should begin
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_LIM_TEMP_MOTOR_END
|
|
|
|
#define MCCONF_L_LIM_TEMP_MOTOR_END 100.0 // MOTOR temperature where everything should be shut off
|
|
|
|
#endif
|
2017-10-27 12:29:12 -07:00
|
|
|
#ifndef MCCONF_L_LIM_TEMP_ACCEL_DEC
|
|
|
|
#define MCCONF_L_LIM_TEMP_ACCEL_DEC 0.15 // Decrease temperature limits this much during acceleration
|
|
|
|
#endif
|
2017-09-04 12:12:43 -07:00
|
|
|
#ifndef MCCONF_L_WATT_MAX
|
2019-02-18 10:30:19 -08:00
|
|
|
#define MCCONF_L_WATT_MAX 1500000.0 // Maximum wattage output
|
2017-09-04 12:12:43 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_WATT_MIN
|
2019-02-18 10:30:19 -08:00
|
|
|
#define MCCONF_L_WATT_MIN -1500000.0 // Minimum wattage output (braking)
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_CURRENT_MAX_SCALE
|
|
|
|
#define MCCONF_L_CURRENT_MAX_SCALE 1.0 // Maximum current scale
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_L_CURRENT_MIN_SCALE
|
|
|
|
#define MCCONF_L_CURRENT_MIN_SCALE 1.0 // Minimum current scale
|
2017-09-04 12:12:43 -07:00
|
|
|
#endif
|
2020-04-21 10:58:12 -07:00
|
|
|
#ifndef MCCONF_L_DUTY_START
|
|
|
|
#define MCCONF_L_DUTY_START 1.0 // Start limiting current at this duty cycle
|
|
|
|
#endif
|
2015-09-17 14:24:55 -07:00
|
|
|
|
2021-07-12 05:31:01 -07:00
|
|
|
// Common PID-parameters
|
|
|
|
#ifndef MCCONF_SP_PID_LOOP_RATE
|
|
|
|
#define MCCONF_SP_PID_LOOP_RATE PID_RATE_1000_HZ // PID loop rate
|
|
|
|
#endif
|
|
|
|
|
2015-09-17 14:24:55 -07:00
|
|
|
// Speed PID parameters
|
|
|
|
#ifndef MCCONF_S_PID_KP
|
2017-09-04 12:12:43 -07:00
|
|
|
#define MCCONF_S_PID_KP 0.004 // Proportional gain
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_S_PID_KI
|
2017-09-04 12:12:43 -07:00
|
|
|
#define MCCONF_S_PID_KI 0.004 // Integral gain
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_S_PID_KD
|
2017-09-04 12:12:43 -07:00
|
|
|
#define MCCONF_S_PID_KD 0.0001 // Derivative gain
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
2018-03-24 14:32:58 -07:00
|
|
|
#ifndef MCCONF_S_PID_KD_FILTER
|
|
|
|
#define MCCONF_S_PID_KD_FILTER 0.2 // Derivative filter
|
|
|
|
#endif
|
2015-09-17 14:24:55 -07:00
|
|
|
#ifndef MCCONF_S_PID_MIN_RPM
|
|
|
|
#define MCCONF_S_PID_MIN_RPM 900.0 // Minimum allowed RPM
|
|
|
|
#endif
|
2017-09-04 12:12:43 -07:00
|
|
|
#ifndef MCCONF_S_PID_ALLOW_BRAKING
|
|
|
|
#define MCCONF_S_PID_ALLOW_BRAKING true // Allow braking in speed control mode
|
|
|
|
#endif
|
2020-05-12 06:53:32 -07:00
|
|
|
#ifndef MCCONF_S_PID_RAMP_ERPMS_S
|
2021-02-28 11:36:02 -08:00
|
|
|
#define MCCONF_S_PID_RAMP_ERPMS_S 25000.0 // Speed input ramping, in ERPM/s
|
2020-05-12 06:53:32 -07:00
|
|
|
#endif
|
2015-09-17 14:24:55 -07:00
|
|
|
|
|
|
|
// Position PID parameters
|
|
|
|
#ifndef MCCONF_P_PID_KP
|
2021-07-11 11:19:26 -07:00
|
|
|
#define MCCONF_P_PID_KP 0.025 // Proportional gain
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_P_PID_KI
|
2015-12-19 12:24:46 -08:00
|
|
|
#define MCCONF_P_PID_KI 0.0 // Integral gain
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_P_PID_KD
|
2021-07-11 11:19:26 -07:00
|
|
|
#define MCCONF_P_PID_KD 0.00000 // Derivative gain
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_P_PID_KD_PROC
|
|
|
|
#define MCCONF_P_PID_KD_PROC 0.00035 // Derivative gain process
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
2018-03-24 14:32:58 -07:00
|
|
|
#ifndef MCCONF_P_PID_KD_FILTER
|
|
|
|
#define MCCONF_P_PID_KD_FILTER 0.2 // Derivative filter
|
|
|
|
#endif
|
2016-02-24 12:17:39 -08:00
|
|
|
#ifndef MCCONF_P_PID_ANG_DIV
|
|
|
|
#define MCCONF_P_PID_ANG_DIV 1.0 // Divide angle by this value
|
|
|
|
#endif
|
2021-04-26 14:14:05 -07:00
|
|
|
#ifndef MCCONF_P_PID_GAIN_DEC_ANGLE
|
|
|
|
#define MCCONF_P_PID_GAIN_DEC_ANGLE 0.0 // Decrease PID-gains when the error is below this value
|
|
|
|
#endif
|
2021-07-11 11:19:26 -07:00
|
|
|
#ifndef MCCONF_P_PID_OFFSET
|
|
|
|
#define MCCONF_P_PID_OFFSET 0.0 // Angle offset
|
|
|
|
#endif
|
2015-09-17 14:24:55 -07:00
|
|
|
|
|
|
|
// Current control parameters
|
|
|
|
#ifndef MCCONF_CC_GAIN
|
|
|
|
#define MCCONF_CC_GAIN 0.0046 // Current controller error gain
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_CC_MIN_CURRENT
|
2020-01-28 10:46:19 -08:00
|
|
|
#define MCCONF_CC_MIN_CURRENT 0.05 // Minimum allowed current
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_CC_STARTUP_BOOST_DUTY
|
|
|
|
#define MCCONF_CC_STARTUP_BOOST_DUTY 0.01 // The lowest duty cycle to use in current control mode (has to be > MCPWM_MIN_DUTY_CYCLE)
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_CC_RAMP_STEP
|
|
|
|
#define MCCONF_CC_RAMP_STEP 0.04 // Maximum duty cycle ramping step in CC mode
|
|
|
|
#endif
|
|
|
|
|
2015-12-08 12:01:23 -08:00
|
|
|
// BLDC
|
2015-09-17 14:24:55 -07:00
|
|
|
#ifndef MCCONF_SL_MIN_RPM
|
|
|
|
#define MCCONF_SL_MIN_RPM 150 // Auto-commutate below this RPM
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SL_MIN_ERPM_CYCLE_INT_LIMIT
|
|
|
|
#define MCCONF_SL_MIN_ERPM_CYCLE_INT_LIMIT 1100.0 // Minimum RPM to calculate the BEMF coupling from
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SL_CYCLE_INT_LIMIT
|
|
|
|
#define MCCONF_SL_CYCLE_INT_LIMIT 62.0 // Flux integrator limit 0 ERPM
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SL_BEMF_COUPLING_K
|
|
|
|
#define MCCONF_SL_BEMF_COUPLING_K 600.0 // Input voltage to bemf coupling constant
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SL_PHASE_ADVANCE_AT_BR
|
|
|
|
#define MCCONF_SL_PHASE_ADVANCE_AT_BR 0.8 // Flux integrator limit percentage at MCPWM_CYCLE_INT_START_RPM_BR ERPM
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SL_CYCLE_INT_BR
|
|
|
|
#define MCCONF_SL_CYCLE_INT_BR 80000.0 // RPM border between the START and LOW interval
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SL_MAX_FB_CURR_DIR_CHANGE
|
|
|
|
#define MCCONF_SL_MAX_FB_CURR_DIR_CHANGE 10.0 // Maximum current during full brake during which a direction change is allowed
|
|
|
|
#endif
|
|
|
|
|
2016-01-27 14:57:23 -08:00
|
|
|
// BLDC hall sensor table
|
|
|
|
#ifndef MCCONF_HALL_TAB_0
|
|
|
|
#define MCCONF_HALL_TAB_0 -1
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_HALL_TAB_1
|
|
|
|
#define MCCONF_HALL_TAB_1 1
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_HALL_TAB_2
|
|
|
|
#define MCCONF_HALL_TAB_2 3
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_HALL_TAB_3
|
|
|
|
#define MCCONF_HALL_TAB_3 2
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_HALL_TAB_4
|
|
|
|
#define MCCONF_HALL_TAB_4 5
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_HALL_TAB_5
|
|
|
|
#define MCCONF_HALL_TAB_5 6
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_HALL_TAB_6
|
|
|
|
#define MCCONF_HALL_TAB_6 4
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_HALL_TAB_7
|
|
|
|
#define MCCONF_HALL_TAB_7 -1
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_HALL_ERPM
|
|
|
|
#define MCCONF_HALL_ERPM 2000.0 // ERPM above which sensorless commutation is used in hybrid mode
|
|
|
|
#endif
|
|
|
|
|
2015-12-08 12:01:23 -08:00
|
|
|
// FOC
|
|
|
|
#ifndef MCCONF_FOC_CURRENT_KP
|
|
|
|
#define MCCONF_FOC_CURRENT_KP 0.03
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_CURRENT_KI
|
|
|
|
#define MCCONF_FOC_CURRENT_KI 50.0
|
|
|
|
#endif
|
2022-01-06 11:44:00 -08:00
|
|
|
#ifndef MCCONF_FOC_F_ZV
|
|
|
|
#define MCCONF_FOC_F_ZV 25000.0
|
2015-12-08 12:01:23 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_DT_US
|
2020-01-12 12:25:21 -08:00
|
|
|
#define MCCONF_FOC_DT_US 0.12 // Microseconds for dead time compensation
|
2015-12-08 12:01:23 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_ENCODER_INVERTED
|
|
|
|
#define MCCONF_FOC_ENCODER_INVERTED false
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_ENCODER_OFFSET
|
|
|
|
#define MCCONF_FOC_ENCODER_OFFSET 180.0
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_ENCODER_RATIO
|
|
|
|
#define MCCONF_FOC_ENCODER_RATIO 7.0
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_SENSOR_MODE
|
|
|
|
#define MCCONF_FOC_SENSOR_MODE FOC_SENSOR_MODE_SENSORLESS
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_PLL_KP
|
2016-01-27 14:57:23 -08:00
|
|
|
#define MCCONF_FOC_PLL_KP 2000.0
|
2015-12-08 12:01:23 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_PLL_KI
|
2019-02-18 10:30:19 -08:00
|
|
|
#define MCCONF_FOC_PLL_KI 30000.0
|
2015-12-08 12:01:23 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_MOTOR_L
|
|
|
|
#define MCCONF_FOC_MOTOR_L 0.000007
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_MOTOR_R
|
|
|
|
#define MCCONF_FOC_MOTOR_R 0.015
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_MOTOR_FLUX_LINKAGE
|
|
|
|
#define MCCONF_FOC_MOTOR_FLUX_LINKAGE 0.00245
|
|
|
|
#endif
|
2020-04-30 14:34:29 -07:00
|
|
|
#ifndef MCCONF_FOC_MOTOR_LD_LQ_DIFF
|
|
|
|
#define MCCONF_FOC_MOTOR_LD_LQ_DIFF 0.0
|
|
|
|
#endif
|
2015-12-08 12:01:23 -08:00
|
|
|
#ifndef MCCONF_FOC_OBSERVER_GAIN
|
|
|
|
#define MCCONF_FOC_OBSERVER_GAIN 9e7 // Can be something like 600 / L
|
|
|
|
#endif
|
2017-09-04 12:12:43 -07:00
|
|
|
#ifndef MCCONF_FOC_OBSERVER_GAIN_SLOW
|
2020-03-20 09:35:25 -07:00
|
|
|
#define MCCONF_FOC_OBSERVER_GAIN_SLOW 0.05 // Observer gain scale at minimum duty cycle
|
2017-09-04 12:12:43 -07:00
|
|
|
#endif
|
2022-01-12 03:27:45 -08:00
|
|
|
#ifndef MCCONF_FOC_OBSERVER_OFFSET
|
|
|
|
#define MCCONF_FOC_OBSERVER_OFFSET -1.0 // Observer offset in timer update cycles
|
|
|
|
#endif
|
2015-12-08 12:01:23 -08:00
|
|
|
#ifndef MCCONF_FOC_DUTY_DOWNRAMP_KP
|
|
|
|
#define MCCONF_FOC_DUTY_DOWNRAMP_KP 10.0 // PI controller for duty control when decreasing the duty
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_DUTY_DOWNRAMP_KI
|
|
|
|
#define MCCONF_FOC_DUTY_DOWNRAMP_KI 200.0 // PI controller for duty control when decreasing the duty
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OPENLOOP_RPM
|
2020-10-09 12:08:48 -07:00
|
|
|
#define MCCONF_FOC_OPENLOOP_RPM 1500.0 // Openloop RPM (sensorless low speed or when finding index pulse)
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OPENLOOP_RPM_LOW
|
|
|
|
#define MCCONF_FOC_OPENLOOP_RPM_LOW 0.0 // Fraction of OPENLOOP_RPM at minimum motor current
|
2015-12-08 12:01:23 -08:00
|
|
|
#endif
|
2020-12-06 12:33:08 -08:00
|
|
|
#ifndef MCCONF_FOC_D_GAIN_SCALE_START
|
|
|
|
#define MCCONF_FOC_D_GAIN_SCALE_START 0.9 // Start reducing D axis current controller gain at this modulation
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_D_GAIN_SCALE_MAX_MOD
|
|
|
|
#define MCCONF_FOC_D_GAIN_SCALE_MAX_MOD 0.2 // D axis currnet controller gain at maximum modulation
|
|
|
|
#endif
|
2015-12-08 12:01:23 -08:00
|
|
|
#ifndef MCCONF_FOC_SL_OPENLOOP_HYST
|
2017-09-04 12:12:43 -07:00
|
|
|
#define MCCONF_FOC_SL_OPENLOOP_HYST 0.1 // Time below min RPM to activate openloop (s)
|
2015-12-08 12:01:23 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_SL_OPENLOOP_TIME
|
2020-10-09 12:08:48 -07:00
|
|
|
#define MCCONF_FOC_SL_OPENLOOP_TIME 0.05 // Time to remain in openloop after ramping (s)
|
2015-12-08 12:01:23 -08:00
|
|
|
#endif
|
2022-04-06 02:30:02 -07:00
|
|
|
#ifndef MCCONF_FOC_SL_OPENLOOP_BOOST_Q
|
|
|
|
#define MCCONF_FOC_SL_OPENLOOP_BOOST_Q 0.0 // Q-axis current boost during the open loop procedure
|
|
|
|
#endif
|
2022-04-06 03:14:19 -07:00
|
|
|
#ifndef MCCONF_FOC_SL_OPENLOOP_MAX_Q
|
|
|
|
#define MCCONF_FOC_SL_OPENLOOP_MAX_Q -1.0 // Q-axis maximum current during the open loop procedure
|
|
|
|
#endif
|
2020-10-09 12:08:48 -07:00
|
|
|
#ifndef MCCONF_FOC_SL_OPENLOOP_T_LOCK
|
|
|
|
#define MCCONF_FOC_SL_OPENLOOP_T_LOCK 0.0 // Time to lock motor in beginning of open loop sequence
|
2015-12-08 12:01:23 -08:00
|
|
|
#endif
|
2020-10-09 12:08:48 -07:00
|
|
|
#ifndef MCCONF_FOC_SL_OPENLOOP_T_RAMP
|
|
|
|
#define MCCONF_FOC_SL_OPENLOOP_T_RAMP 0.1 // Time to ramp up motor to openloop speed
|
2015-12-08 12:01:23 -08:00
|
|
|
#endif
|
2016-01-27 14:57:23 -08:00
|
|
|
#ifndef MCCONF_FOC_HALL_TAB_0
|
|
|
|
#define MCCONF_FOC_HALL_TAB_0 255
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
2016-01-27 14:57:23 -08:00
|
|
|
#ifndef MCCONF_FOC_HALL_TAB_1
|
|
|
|
#define MCCONF_FOC_HALL_TAB_1 255
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
2016-01-27 14:57:23 -08:00
|
|
|
#ifndef MCCONF_FOC_HALL_TAB_2
|
|
|
|
#define MCCONF_FOC_HALL_TAB_2 255
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
2016-01-27 14:57:23 -08:00
|
|
|
#ifndef MCCONF_FOC_HALL_TAB_3
|
|
|
|
#define MCCONF_FOC_HALL_TAB_3 255
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
2016-01-27 14:57:23 -08:00
|
|
|
#ifndef MCCONF_FOC_HALL_TAB_4
|
|
|
|
#define MCCONF_FOC_HALL_TAB_4 255
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
2016-01-27 14:57:23 -08:00
|
|
|
#ifndef MCCONF_FOC_HALL_TAB_5
|
|
|
|
#define MCCONF_FOC_HALL_TAB_5 255
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
2016-01-27 14:57:23 -08:00
|
|
|
#ifndef MCCONF_FOC_HALL_TAB_6
|
|
|
|
#define MCCONF_FOC_HALL_TAB_6 255
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
2016-01-27 14:57:23 -08:00
|
|
|
#ifndef MCCONF_FOC_HALL_TAB_7
|
|
|
|
#define MCCONF_FOC_HALL_TAB_7 255
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
2020-10-21 23:32:51 -07:00
|
|
|
#ifndef MCCONF_FOC_HALL_INTERP_ERPM
|
|
|
|
#define MCCONF_FOC_HALL_INTERP_ERPM 500 // Do not interpolate hall sensors below this ERPM
|
|
|
|
#endif
|
2016-04-27 06:32:32 -07:00
|
|
|
#ifndef MCCONF_FOC_SL_ERPM
|
|
|
|
#define MCCONF_FOC_SL_ERPM 2500.0 // ERPM above which only the observer is used
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
2017-09-04 12:12:43 -07:00
|
|
|
#ifndef MCCONF_FOC_SAMPLE_V0_V7
|
|
|
|
#define MCCONF_FOC_SAMPLE_V0_V7 false // Run control loop in both v0 and v7 (requires phase shunts)
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_SAMPLE_HIGH_CURRENT
|
|
|
|
#define MCCONF_FOC_SAMPLE_HIGH_CURRENT false // High current sampling mode (requires three shunts)
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_SAT_COMP
|
|
|
|
#define MCCONF_FOC_SAT_COMP 0.0 // Stator saturation compensation
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_TEMP_COMP
|
|
|
|
#define MCCONF_FOC_TEMP_COMP false // Motor temperature compensation
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_TEMP_COMP_BASE_TEMP
|
|
|
|
#define MCCONF_FOC_TEMP_COMP_BASE_TEMP 25.0 // Motor temperature compensation base temperature
|
|
|
|
#endif
|
2018-03-24 14:32:58 -07:00
|
|
|
#ifndef MCCONF_FOC_CURRENT_FILTER_CONST
|
|
|
|
#define MCCONF_FOC_CURRENT_FILTER_CONST 0.1 // Filter constant for the filtered currents
|
|
|
|
#endif
|
2020-01-12 12:25:21 -08:00
|
|
|
#ifndef MCCONF_FOC_CC_DECOUPLING
|
2021-05-19 15:58:02 -07:00
|
|
|
#define MCCONF_FOC_CC_DECOUPLING FOC_CC_DECOUPLING_DISABLED // Current controller decoupling
|
2020-01-12 12:25:21 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OBSERVER_TYPE
|
|
|
|
#define MCCONF_FOC_OBSERVER_TYPE FOC_OBSERVER_ORTEGA_ORIGINAL // Position observer type for FOC
|
|
|
|
#endif
|
2020-01-20 00:39:33 -08:00
|
|
|
#ifndef MCCONF_FOC_HFI_VOLTAGE_START
|
2020-01-28 10:46:19 -08:00
|
|
|
#define MCCONF_FOC_HFI_VOLTAGE_START 20 // HFI voltage at start when resolving ambiguity
|
2020-01-20 00:39:33 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_HFI_VOLTAGE_RUN
|
2022-04-07 05:59:56 -07:00
|
|
|
#define MCCONF_FOC_HFI_VOLTAGE_RUN 4 // HFI voltage during tracking
|
2022-03-23 07:04:30 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_HFI_GAIN
|
2022-04-07 05:59:56 -07:00
|
|
|
#define MCCONF_FOC_HFI_GAIN 0.3 // Correction gain for HFI V2
|
2022-03-23 07:04:30 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_HFI_HYST
|
2022-04-07 05:59:56 -07:00
|
|
|
#define MCCONF_FOC_HFI_HYST 0.0 // Sense vector offset hysteresis for HFI V2
|
2020-01-28 10:46:19 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_HFI_VOLTAGE_MAX
|
2022-04-07 05:59:56 -07:00
|
|
|
#define MCCONF_FOC_HFI_VOLTAGE_MAX 6 // HFI voltage during tracking at max current
|
2020-01-20 00:39:33 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_SL_ERPM_HFI
|
2022-04-07 05:59:56 -07:00
|
|
|
#define MCCONF_FOC_SL_ERPM_HFI 3000.0 // ERPM above which only the observer is used
|
2020-01-20 00:39:33 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_HFI_START_SAMPLES
|
2022-04-07 05:59:56 -07:00
|
|
|
#define MCCONF_FOC_HFI_START_SAMPLES 5 // Sample this often at start to resolve ambiguity
|
2020-01-20 00:39:33 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_HFI_OBS_OVR_SEC
|
2020-01-28 10:46:19 -08:00
|
|
|
#define MCCONF_FOC_HFI_OBS_OVR_SEC 0.001 // Continue using observer for this long when entering HFI speed
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_HFI_SAMPLES
|
|
|
|
#define MCCONF_FOC_HFI_SAMPLES HFI_SAMPLES_16 // Samples per motor revolution for HFI
|
2020-01-20 00:39:33 -08:00
|
|
|
#endif
|
2021-03-22 04:13:19 -07:00
|
|
|
#ifndef MCCONF_FOC_OFFSETS_CAL_ON_BOOT
|
|
|
|
#define MCCONF_FOC_OFFSETS_CAL_ON_BOOT true // Measure offsets every boot
|
2021-02-28 11:36:02 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OFFSETS_CURRENT_0
|
|
|
|
#define MCCONF_FOC_OFFSETS_CURRENT_0 2048.0 // Current 0 offset
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OFFSETS_CURRENT_1
|
|
|
|
#define MCCONF_FOC_OFFSETS_CURRENT_1 2048.0 // Current 1 offset
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OFFSETS_CURRENT_2
|
|
|
|
#define MCCONF_FOC_OFFSETS_CURRENT_2 2048.0 // Current 2 offset
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OFFSETS_VOLTAGE_0
|
|
|
|
#define MCCONF_FOC_OFFSETS_VOLTAGE_0 0.0 // Voltage 0 offset
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OFFSETS_VOLTAGE_1
|
|
|
|
#define MCCONF_FOC_OFFSETS_VOLTAGE_1 0.0 // Voltage 1 offset
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OFFSETS_VOLTAGE_2
|
|
|
|
#define MCCONF_FOC_OFFSETS_VOLTAGE_2 0.0 // Voltage 2 offset
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OFFSETS_VOLTAGE_UNDRIVEN_0
|
|
|
|
#define MCCONF_FOC_OFFSETS_VOLTAGE_UNDRIVEN_0 0.0 // Voltage undriven 0 offset
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OFFSETS_VOLTAGE_UNDRIVEN_1
|
|
|
|
#define MCCONF_FOC_OFFSETS_VOLTAGE_UNDRIVEN_1 0.0 // Voltage undriven 1 offset
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_OFFSETS_VOLTAGE_UNDRIVEN_2
|
|
|
|
#define MCCONF_FOC_OFFSETS_VOLTAGE_UNDRIVEN_2 0.0 // Voltage undriven 2 offset
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_PHASE_FILTER_ENABLE
|
|
|
|
#define MCCONF_FOC_PHASE_FILTER_ENABLE true // Use phase voltage filters when available
|
|
|
|
#endif
|
2022-05-18 18:12:07 -07:00
|
|
|
#ifndef MCCONF_FOC_PHASE_FILTER_DISABLE_FAULT
|
|
|
|
#define MCCONF_FOC_PHASE_FILTER_DISABLE_FAULT false // Disable phase filter fault code
|
|
|
|
#endif
|
2021-02-28 11:36:02 -08:00
|
|
|
#ifndef MCCONF_FOC_PHASE_FILTER_MAX_ERPM
|
2021-05-20 14:59:42 -07:00
|
|
|
#define MCCONF_FOC_PHASE_FILTER_MAX_ERPM 4000.0 // Use phase filter up to this ERPM
|
2021-02-28 11:36:02 -08:00
|
|
|
#endif
|
2021-10-24 09:10:00 -07:00
|
|
|
#ifndef MCCONF_FOC_MTPA_MODE
|
|
|
|
#define MCCONF_FOC_MTPA_MODE MTPA_MODE_OFF // Maximum torque per amp (MTPA) algorithm mode
|
2021-10-24 04:25:12 -07:00
|
|
|
#endif
|
2021-04-10 02:37:35 -07:00
|
|
|
#ifndef MCCONF_FOC_FW_CURRENT_MAX
|
|
|
|
#define MCCONF_FOC_FW_CURRENT_MAX 0.0 // Maximum field weakening current
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_FW_DUTY_START
|
|
|
|
#define MCCONF_FOC_FW_DUTY_START 0.9 // Start field weakening at this fraction of max duty cycle
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_FOC_FW_RAMP_TIME
|
|
|
|
#define MCCONF_FOC_FW_RAMP_TIME 0.2 // Ramp time for field weakening current
|
|
|
|
#endif
|
2021-04-15 01:04:28 -07:00
|
|
|
#ifndef MCCONF_FOC_FW_Q_CURRENT_FACTOR
|
|
|
|
#define MCCONF_FOC_FW_Q_CURRENT_FACTOR 0.02 // Factor of the FW-current to feed to the Q-axis to slow motor down when setting 0 current
|
|
|
|
#endif
|
2022-03-23 07:04:30 -07:00
|
|
|
#ifndef MCCONF_FOC_SPEED_SOURCE
|
|
|
|
#define MCCONF_FOC_SPEED_SOURCE SPEED_SRC_OBSERVER // Position source for speed trackers
|
|
|
|
#endif
|
2015-09-17 14:24:55 -07:00
|
|
|
|
2019-02-18 10:30:19 -08:00
|
|
|
// GPD
|
|
|
|
#ifndef MCCONF_GPD_BUFFER_NOTIFY_LEFT
|
2020-01-12 12:25:21 -08:00
|
|
|
#define MCCONF_GPD_BUFFER_NOTIFY_LEFT 200 // Notify when the buffer space left is less than this
|
2019-02-18 10:30:19 -08:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_GPD_BUFFER_INTERPOL
|
|
|
|
#define MCCONF_GPD_BUFFER_INTERPOL 0 // Buffer interpolation
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_GPD_CURRENT_FILTER_CONST
|
|
|
|
#define MCCONF_GPD_CURRENT_FILTER_CONST 0.1 // Current filter constant
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_GPD_CURRENT_KP
|
|
|
|
#define MCCONF_GPD_CURRENT_KP 0.03
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_GPD_CURRENT_KI
|
|
|
|
#define MCCONF_GPD_CURRENT_KI 50.0
|
|
|
|
#endif
|
|
|
|
|
2015-09-17 14:24:55 -07:00
|
|
|
// Misc
|
|
|
|
#ifndef MCCONF_M_FAULT_STOP_TIME
|
2017-09-06 12:13:28 -07:00
|
|
|
#define MCCONF_M_FAULT_STOP_TIME 500 // Ignore commands for this duration in msec when faults occur
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_M_RAMP_STEP
|
|
|
|
#define MCCONF_M_RAMP_STEP 0.02 // Duty cycle ramping step (1000 times/sec) at maximum duty cycle
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_M_CURRENT_BACKOFF_GAIN
|
|
|
|
#define MCCONF_M_CURRENT_BACKOFF_GAIN 0.5 // The error gain of the current limiting algorithm
|
|
|
|
#endif
|
2015-12-08 12:01:23 -08:00
|
|
|
#ifndef MCCONF_M_ENCODER_COUNTS
|
|
|
|
#define MCCONF_M_ENCODER_COUNTS 8192 // The number of encoder counts
|
|
|
|
#endif
|
2019-04-08 17:02:56 -07:00
|
|
|
#ifndef MCCONF_FOC_ENCODER_SIN_GAIN
|
|
|
|
#define MCCONF_FOC_ENCODER_SIN_GAIN 1.0 // Sine error gain of the sin/cos encoder
|
2019-03-30 14:05:53 -07:00
|
|
|
#endif
|
2019-04-08 17:02:56 -07:00
|
|
|
#ifndef MCCONF_FOC_ENCODER_SIN_OFFSET
|
|
|
|
#define MCCONF_FOC_ENCODER_SIN_OFFSET 1.65 // Sine offset of the sin/cos encoder
|
2019-03-30 14:05:53 -07:00
|
|
|
#endif
|
2019-04-08 17:02:56 -07:00
|
|
|
#ifndef MCCONF_FOC_ENCODER_COS_GAIN
|
|
|
|
#define MCCONF_FOC_ENCODER_COS_GAIN 1.0 // Cosine error gain of the sin/cos encoder
|
2019-03-30 14:05:53 -07:00
|
|
|
#endif
|
2019-04-08 17:02:56 -07:00
|
|
|
#ifndef MCCONF_FOC_ENCODER_COS_OFFSET
|
|
|
|
#define MCCONF_FOC_ENCODER_COS_OFFSET 1.65 // Cosine offset of the sin/cos encoder
|
2019-03-30 14:05:53 -07:00
|
|
|
#endif
|
2019-04-08 17:02:56 -07:00
|
|
|
#ifndef MCCONF_FOC_ENCODER_SINCOS_FILTER
|
|
|
|
#define MCCONF_FOC_ENCODER_SINCOS_FILTER 0.5 // Sin/Cos Encoder signal filter constant
|
2019-04-01 04:30:27 -07:00
|
|
|
#endif
|
2016-04-27 06:32:32 -07:00
|
|
|
#ifndef MCCONF_M_SENSOR_PORT_MODE
|
|
|
|
#define MCCONF_M_SENSOR_PORT_MODE SENSOR_PORT_MODE_HALL // The mode of the hall_encoder port
|
|
|
|
#endif
|
2016-11-06 09:14:06 -08:00
|
|
|
#ifndef MCCONF_M_INVERT_DIRECTION
|
|
|
|
#define MCCONF_M_INVERT_DIRECTION false // Invert the motor direction
|
|
|
|
#endif
|
2017-09-04 12:12:43 -07:00
|
|
|
#ifndef MCCONF_M_DRV8301_OC_MODE
|
|
|
|
#define MCCONF_M_DRV8301_OC_MODE DRV8301_OC_LIMIT // DRV8301 over current protection mode
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_M_DRV8301_OC_ADJ
|
|
|
|
#define MCCONF_M_DRV8301_OC_ADJ 16 // DRV8301 over current protection threshold
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_M_BLDC_F_SW_MIN
|
|
|
|
#define MCCONF_M_BLDC_F_SW_MIN 3000 // Minimum switching frequency in bldc mode
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_M_BLDC_F_SW_MAX
|
2019-03-01 12:36:58 -08:00
|
|
|
#define MCCONF_M_BLDC_F_SW_MAX 35000 // Maximum switching frequency in bldc mode
|
2017-09-04 12:12:43 -07:00
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_M_DC_F_SW
|
2019-02-18 10:30:19 -08:00
|
|
|
#define MCCONF_M_DC_F_SW 25000 // Switching frequency in dc mode
|
2017-09-04 12:12:43 -07:00
|
|
|
#endif
|
2017-09-06 12:13:28 -07:00
|
|
|
#ifndef MCCONF_M_NTC_MOTOR_BETA
|
|
|
|
#define MCCONF_M_NTC_MOTOR_BETA 3380.0 // Beta value for motor termistor
|
|
|
|
#endif
|
2018-07-06 12:20:54 -07:00
|
|
|
#ifndef MCCONF_M_OUT_AUX_MODE
|
|
|
|
#define MCCONF_M_OUT_AUX_MODE OUT_AUX_MODE_OFF // Auxiliary output mode
|
|
|
|
#endif
|
2019-12-22 12:22:07 -08:00
|
|
|
#ifndef MCCONF_M_MOTOR_TEMP_SENS_TYPE
|
|
|
|
#define MCCONF_M_MOTOR_TEMP_SENS_TYPE TEMP_SENSOR_NTC_10K_25C // Motor temperature sensor type
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_M_PTC_MOTOR_COEFF
|
|
|
|
#define MCCONF_M_PTC_MOTOR_COEFF 0.61 // %/K coefficient for motor PTC sensor
|
|
|
|
#endif
|
2022-01-23 15:36:53 -08:00
|
|
|
#ifndef MCCONF_M_NTCX_PTCX_RES
|
|
|
|
#define MCCONF_M_NTCX_PTCX_RES 10000.0 // Custom NTC/PTC resistance
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_M_NTCX_PTCX_BASE_TEMP
|
|
|
|
#define MCCONF_M_NTCX_PTCX_BASE_TEMP 25.0 // Custom NTC/PTC base temperature
|
|
|
|
#endif
|
2020-10-09 12:08:48 -07:00
|
|
|
#ifndef MCCONF_M_HALL_EXTRA_SAMPLES
|
|
|
|
#define MCCONF_M_HALL_EXTRA_SAMPLES 1 // Extra samples for filtering when reading hall sensors
|
|
|
|
#endif
|
2015-09-17 14:24:55 -07:00
|
|
|
|
2019-02-18 10:30:19 -08:00
|
|
|
// Setup Info
|
|
|
|
#ifndef MCCONF_SI_MOTOR_POLES
|
|
|
|
#define MCCONF_SI_MOTOR_POLES 14 // Motor pole count
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SI_GEAR_RATIO
|
|
|
|
#define MCCONF_SI_GEAR_RATIO 3 // Gear ratio
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SI_WHEEL_DIAMETER
|
|
|
|
#define MCCONF_SI_WHEEL_DIAMETER 0.083 // Wheel Diameter
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SI_BATTERY_TYPE
|
|
|
|
#define MCCONF_SI_BATTERY_TYPE BATTERY_TYPE_LIION_3_0__4_2 // Battery Type
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SI_BATTERY_CELLS
|
|
|
|
#define MCCONF_SI_BATTERY_CELLS 3 // Battery Cells
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_SI_BATTERY_AH
|
|
|
|
#define MCCONF_SI_BATTERY_AH 6.0 // Battery amp hours
|
|
|
|
#endif
|
2021-11-21 09:17:40 -08:00
|
|
|
#ifndef MCCONF_SI_MOTOR_NL_CURRENT
|
|
|
|
#define MCCONF_SI_MOTOR_NL_CURRENT 1.0 // Motor no load current
|
|
|
|
#endif
|
2019-02-18 10:30:19 -08:00
|
|
|
|
2020-10-21 23:32:51 -07:00
|
|
|
// BMS
|
|
|
|
#ifndef MCCONF_BMS_TYPE
|
|
|
|
#define MCCONF_BMS_TYPE BMS_TYPE_VESC
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_BMS_T_LIMIT_START
|
|
|
|
#define MCCONF_BMS_T_LIMIT_START 45
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_BMS_T_LIMIT_END
|
|
|
|
#define MCCONF_BMS_T_LIMIT_END 65
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_BMS_SOC_LIMIT_START
|
|
|
|
#define MCCONF_BMS_SOC_LIMIT_START 0.05
|
|
|
|
#endif
|
|
|
|
#ifndef MCCONF_BMS_SOC_LIMIT_END
|
|
|
|
#define MCCONF_BMS_SOC_LIMIT_END 0
|
|
|
|
#endif
|
2021-03-13 02:36:47 -08:00
|
|
|
#ifndef MCCONF_BMS_FWD_CAN_MODE
|
|
|
|
#define MCCONF_BMS_FWD_CAN_MODE BMS_FWD_CAN_MODE_DISABLED
|
|
|
|
#endif
|
2020-10-21 23:32:51 -07:00
|
|
|
|
2015-09-17 14:24:55 -07:00
|
|
|
#endif /* MCCONF_DEFAULT_H_ */
|