Appendix
FM3 Family Math and Motor Control Library Quick Start Guide, Doc. No. 002-04766 Rev. *A
14
Sensor-less Motor Start-up Parameter
The parameters for sensor-less motor start-up are shown as below. When the sensor-less motor do not start well, the
parameter can be modified to improve the start-up performance.
Motor Protection Parameter
The speed range and the phase current of the motor and other protection parameter for the motor control can be modified
at this part.
A . 1 . 1 H a r d w a r e S e t t i n g
The Hardware settings for the HW can be set in the H file ‘H05_user/ HardwareConfig.h’
Clock and ADC Set
The MCU clock and the ADC port and relevant coefficient are set at this part.
/** UI_0108 Protection Parameter */
uint16_t Motor_u16SpdMax = 4000;
// motor run maximum speed rpm 9000
uint16_t Motor_u16SpdMin = 180;
// motor run minimum speed rpm 1
int16_t Motor_i16Q8CurrentMax = Q8(Motor_f32IsMax);
// motor phase current peak A
uint16_t Motor_u16OverCurrentTimeSec = 1;
// motor over-current timer PWM
uint16_t Motor_u16VbusMax = 27;
// the maximum value of DC voltage
uint16_t Motor_u16VbusMin = 21;
// the minimum value of DC voltage
uint8_t Motor_ErrorTime = 10;
//s
/** UI_0107 running control of open loop*/
float32_t Motor_f32BemfLpfkMinSpd = 6; // Hz
uint8_t Motor_u8RunLevel = 4;
// 1->orientation, 2->open loop running,
// 3->closed loop running, 4->change speed enable
uint32_t Motor_u32PreheatTimeSec = 0;
uint16_t Motor_u16PreheatSpdRpm = 1;
//the rpm of prehot
int16_t Motor_i16Q8_PreheatCurrent = Q8(Motor_f32IsMax*0.7);
//the voltage for prehot
int16_t Motor_i16Q8_OrientIqRef = Q8(Motor_f32IsMax*0.7);
// orientation current
uint16_t Motor_u16OpenLoopSpdIncHz = 1;
uint16_t Motor_u16OpenLoopSpdInitHz = 0;
uint16_t Motor_u16OpenLoopSpdEndHz = 1;
int16_t Motor_i16Q8_OpenLoopIqRef = Q8(Motor_f32IsMax*1.0);
// q axis current referencein open
loop stage
/** running control of closeloop */
uint16_t Motor_u16ColseLoopTargetSpdHz = 1;
int16_t Motor_i16Q8_CloseLoopIsMax = Q8(Motor_f32IsMax);