📄 pfc.h
字号:
/****************************************************************
*
* Microchip 16-bit Embedded Control Design Contest
*
* Entry # MT2268
*
* Spa Pump Controller
*
*****************************************************************
*
* Power Factor Corrector definitions
*
*****************************************************************/
#define LOAD_COMP // Enable inverter load feedforward compensation
#define PFC_V_GAIN_P Q14_ONE/4 // PFC bus voltage error proportional gain (1/N)
#define PFC_V_GAIN_F 0 // PFC bus voltage error inverter feedback gain
#define PFC_I_GAIN_P Q14_ONE // PFC input current proportional loop gain
#define PFC_I_GAIN_I Q14_ONE/8 // PFC input current integral loop gain
#define PFC_I_GAIN_LIM Q14_ONE/2 // PFC input current integral term max limit
#define VBUS_NOM 400 // Nominal bus voltage (V)
#define VBUS_LOW_THR 380 // Low bus voltage warning for inverter (V)
#define VBUS_HIGH_THR 420 // High bus voltage warning for inverter (V)
#define VBUS_DIV 101 // Vbus resistive divider ratio (1 / V/V)
#define VAC_DIV 101 // Vac resistive divider ratio (1 / V/V)
#define IPFC_DIV 5 // Ipfc divider ratio (1 / V/A)
#define _VBUS_NOM (Q14_ONE_UL * VBUS_NOM / VBUS_DIV / 5)
#define _VBUS_LOW_THR (Q14_ONE_UL * VBUS_LOW_THR / VBUS_DIV / 5)
#define _VBUS_HIGH_THR (Q14_ONE_UL * VBUS_HIGH_THR / VBUS_DIV / 5)
EXTERN enum { // PFC state
P_STOPPED = 0, // Stopped
P_STARTWAIT = 1, // Wait for first ADC interrupt
P_STARTUP = 2, // Initial startup
P_RUNNING = 3, // Stable output
P_STOPPING = 4, // Shutdown
P_ABORT = 5, // Immediate shutdown
} pfc_state;
EXTERN struct { // Adjustable PFC parameters
WORD v_gain_p; // see PFC_V_GAIN_P above
WORD v_gain_f; // see PFC_V_GAIN_F above
WORD i_gain_p; // see PFC_I_GAIN_P above
WORD i_gain_i; // see PFC_I_GAIN_I above
WORD i_gain_lim; // see PFC_I_GAIN_LIM above
WORD v_nom; // see VBUS_NOM above
WORD v_low_thr; // see VBUS_LOW_THR above
WORD v_high_thr; // see VBUS_HIGH_THR above
WORD max_duty; // see PWM_MAX_DUTY_PFC in PWM.h
} pfcp;
void PFC_init (void);
void PFC_start (void);
void PFC_stop (void);
void PFC_run (void);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -