34 lines
1.5 KiB
C
34 lines
1.5 KiB
C
![]() |
/*
|
|||
|
* PWM_algorithms.h
|
|||
|
*
|
|||
|
* Created on: 07 <EFBFBD><EFBFBD><EFBFBD>. 2017 <EFBFBD>.
|
|||
|
* Author: Andrey
|
|||
|
*/
|
|||
|
|
|||
|
#ifndef FOC_CODE_PWM_ALGORITHMS_H_
|
|||
|
#define FOC_CODE_PWM_ALGORITHMS_H_
|
|||
|
|
|||
|
/*!
|
|||
|
* \brief Struct describe pwm module and used in all PWM algorithms
|
|||
|
*/
|
|||
|
typedef struct
|
|||
|
{
|
|||
|
|
|||
|
float Trpd_pwm; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> Tpwm=1/Fpc*2
|
|||
|
float Ualfa; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
float Ubeta; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD>
|
|||
|
float Uo; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
float Ta; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20>
|
|||
|
float Tb; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20>
|
|||
|
float Tc; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD> <20>
|
|||
|
unsigned int sector; ///< <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
|||
|
} PWM_struct;
|
|||
|
#define PWM_DEFAULTS {1,0,0,0,0.5,0.5,0.5,0}
|
|||
|
extern PWM_struct MY_PWM;
|
|||
|
unsigned int PWM_proc(PWM_struct * myPWM);
|
|||
|
unsigned int Sine_PWM_proc(PWM_struct * myPWM);
|
|||
|
unsigned int PWM_SIX_step(PWM_struct * myPWM);
|
|||
|
void PWM_deadTime(float *Currents,float Kdt,PWM_struct * myPWM);
|
|||
|
#endif /* FOC_CODE_PWM_ALGORITHMS_H_ */
|