#ifndef __Parameter_H_ #define __Parameter_H_ #include #define P_Power(POWER) _Q15(POWER*2/HW_BOARD_CURR_BASE/HW_BOARD_VOLTAGE_BASE/1.5) #define DAC_OvercurrentValue (_Q8(I_ValueX(OverHardcurrentValue ))+0x7F) #define S_Value(SpeedValue) _Q15(SpeedValue/MOTOR_SPEED_BASE) #define MAX_BEMF_VOLTAGE ((MOTOR_SPEED_BASE*Ke)/(1000.0)) #define MAX_OMEG_RAD_SEC ((float)(_2PI*BASE_FREQ)) #if (EstimateAlgorithm==AO) #define OBS_K1T _Q11((3.0/(125.0*1.0))*(LQ/TPWM_VALUE)*(HW_BOARD_CURR_BASE/HW_BOARD_VOLTAGE_BASE)) #define OBS_K2T _Q11(RS*HW_BOARD_CURR_BASE/HW_BOARD_VOLTAGE_BASE) #define OBS_K2T_Actual _Q11(RS*HW_BOARD_CURR_BASE/HW_BOARD_VOLTAGE_BASE) #define OBS_K3T _Q8(2.5) #define OBS_K4T _Q15(((LD-LQ)*TPWM_VALUE*MAX_OMEG_RAD_SEC)/(LD+RS*TPWM_VALUE)) #else #define OBS_K1T _Q15(LD/(LD+RS*TPWM_VALUE)) #define OBS_K2T _Q13((TPWM_VALUE/(LD+RS*TPWM_VALUE))*(HW_BOARD_VOLTAGE_BASE_Start/HW_BOARD_CURR_BASE)) #define OBS_K2T_Actual _Q13((TPWM_VALUE/(LD+RS*TPWM_VALUE))*(HW_BOARD_VOLTAGE_BASE/HW_BOARD_CURR_BASE)) #define OBS_K3T _Q15((TPWM_VALUE/(LD+RS*TPWM_VALUE))*(MAX_BEMF_VOLTAGE/HW_BOARD_CURR_BASE)) #define OBS_K4T _Q15(((LD-LQ)*TPWM_VALUE*MAX_OMEG_RAD_SEC)/(LD+RS*TPWM_VALUE)) #endif #define OBSW_KP_GAIN _Q12(2*_2PI*ATT_COEF*ATO_BW/BASE_FREQ) #define OBSW_KI_GAIN _Q15(_2PI*ATO_BW*ATO_BW*TPWM_VALUE/BASE_FREQ) #define OBSW_KP_GAIN_RUN _Q12(2*_2PI*ATT_COEF*ATO_BW_RUN/BASE_FREQ) #define OBSW_KI_GAIN_RUN _Q15(_2PI*ATO_BW_RUN*ATO_BW_RUN*TPWM_VALUE/BASE_FREQ) #define OBSW_KP_GAIN_RUN1 _Q12(2*_2PI*ATT_COEF*ATO_BW_RUN1/BASE_FREQ) #define OBSW_KI_GAIN_RUN1 _Q15(_2PI*ATO_BW_RUN1*ATO_BW_RUN1*TPWM_VALUE/BASE_FREQ) #define OBSW_KP_GAIN_RUN2 _Q12(2*_2PI*ATT_COEF*ATO_BW_RUN2/BASE_FREQ) #define OBSW_KI_GAIN_RUN2 _Q15(_2PI*ATO_BW_RUN2*ATO_BW_RUN2*TPWM_VALUE/BASE_FREQ) #define OBSW_KP_GAIN_RUN3 _Q12(2*_2PI*ATT_COEF*ATO_BW_RUN3/BASE_FREQ) #define OBSW_KI_GAIN_RUN3 _Q15(_2PI*ATO_BW_RUN3*ATO_BW_RUN3*TPWM_VALUE/BASE_FREQ) #define OBSW_KP_GAIN_RUN4 _Q12(2*_2PI*ATT_COEF*ATO_BW_RUN4/BASE_FREQ) #define OBSW_KI_GAIN_RUN4 _Q15(_2PI*ATO_BW_RUN4*ATO_BW_RUN4*TPWM_VALUE/BASE_FREQ) #define OBS_FBASE _Q15(BASE_FREQ*TPWM_VALUE) #define OBS_KLPF _Q15(_2PI*BASE_FREQ*TPWM_VALUE) #define SPEED_KLPF _Q15(_2PI*SPD_BW*TPWM_VALUE) #define OBS_EA_KS _Q15((2*MOTOR_SPEED_SMOMIN_RPM*_2PI*BASE_FREQ*TPWM_VALUE)/MOTOR_SPEED_BASE) #define OBSE_PLLKP_GAIN1 _Q11(((2*ATT_COEF*_2PI*E_BW1*LD - RS)*HW_BOARD_CURR_BASE)/HW_BOARD_VOLTAGE_BASE) #define OBSE_PLLKI_GAIN1 _Q11((_2PI*E_BW1*_2PI*E_BW1*LD*TPWM_VALUE*HW_BOARD_CURR_BASE)/HW_BOARD_VOLTAGE_BASE) #define OBSE_PLLKP_GAIN2 _Q11(((2*ATT_COEF*_2PI*E_BW2*LD - RS)*HW_BOARD_CURR_BASE)/HW_BOARD_VOLTAGE_BASE) #define OBSE_PLLKI_GAIN2 _Q11((_2PI*E_BW2*_2PI*E_BW2*LD*TPWM_VALUE*HW_BOARD_CURR_BASE)/HW_BOARD_VOLTAGE_BASE) #define OBSE_PLLKP_GAIN3 _Q11(((2*ATT_COEF*_2PI*E_BW3*LD - RS)*HW_BOARD_CURR_BASE)/HW_BOARD_VOLTAGE_BASE) #define OBSE_PLLKI_GAIN3 _Q11((_2PI*E_BW3*_2PI*E_BW3*LD*TPWM_VALUE*HW_BOARD_CURR_BASE)/HW_BOARD_VOLTAGE_BASE) #define OBSE_PLLKP_GAIN4 _Q11(((2*ATT_COEF*_2PI*E_BW4*LD - RS)*HW_BOARD_CURR_BASE)/HW_BOARD_VOLTAGE_BASE) #define OBSE_PLLKI_GAIN4 _Q11((_2PI*E_BW4*_2PI*E_BW4*LD*TPWM_VALUE*HW_BOARD_CURR_BASE)/HW_BOARD_VOLTAGE_BASE) #define OBSE_PLLKP_GAIN5 _Q11(((2*ATT_COEF*_2PI*E_BW5*LD - RS)*HW_BOARD_CURR_BASE)/HW_BOARD_VOLTAGE_BASE) #define OBSE_PLLKI_GAIN5 _Q11((_2PI*E_BW5*_2PI*E_BW5*LD*TPWM_VALUE*HW_BOARD_CURR_BASE)/HW_BOARD_VOLTAGE_BASE) #endif