HPM APP
HPMicro Application solution
pll_init.h
Go to the documentation of this file.
1 #ifndef PLL_INIT_H
2 #define PLL_INIT_H
3 #include "board.h"
4 
16 typedef struct _tag_speed_Cal_Obj{
17  float speedtheta;
18  float speedlasttheta ;
19  float speedthetalastn ;
20  int num ;
21  float o_speedout_filter ;
22  float o_speedout;
24 
29 typedef struct {
30  float theta_last;
31  float err;
32  float mem;
33 }pll_user_t;
34 
39 typedef struct {
40 float sin_val;
41 float cos_val;
42 float kp;
43 float ki;
44 float max_i;
45 float min_i;
46 float max_o;
47 float min_o;
48 float theta0;
49 float loop_in_sec;
50 }pll_cfg_t;
51 
56 typedef struct {
57 float speedout;
59 float theta;
61 
66 typedef struct hpm_smc_pll_para {
71 
72 
73 
78 typedef struct {
79  float k1;
80  float a;
81  float b;
82  float c;
83  float sin;
84  float cos;
85 } pll_ii_cfg_t;
86 
91 typedef struct {
92  float x0;
93  float x1;
94  float x2;
95  float x3;
97 
98 
103 typedef struct {
104  float theta;
105  float speed;
108 
113 typedef struct{
117 }pll_ii_t;
118 
119 
129 void pll_pro(pll_para_t *pll);
139 void speed_cal(speed_Cal_Obj* speed_CalHdl );
140 
146 
149 #endif /* PLL_INIT_H */
void pll_type_ii_pro(pll_ii_t *pll_ii)
pll type ii filter function ;二阶PLL运算
Definition: pll_init.c:100
void speed_cal(speed_Cal_Obj *speed_CalHdl)
speed calculate ;速度计算
Definition: pll_init.c:62
struct hpm_smc_pll_para pll_para_t
pll struct ;pll结构体
void pll_type_ii_cfg(pll_ii_t *pll)
pll_ii struct parameter config ;二阶PLL参数配置
Definition: pll_init.c:92
struct _tag_speed_Cal_Obj speed_Cal_Obj
speed calculation ;速度计算结构体
void pll_para_init(pll_para_t *pll)
pll params init ;pll参数初始化
Definition: pll_init.c:8
void pll_pro(pll_para_t *pll)
pll calculate theta/speed ;pll算法计算角度/速度
Definition: pll_init.c:20
pll_para_t pll
Definition: rdc_cfg.c:19
pll_ii_t pll_ii
Definition: rdc_cfg.c:23
pll struct ;pll结构体
Definition: pll_init.h:66
pll_cfg_t cfg
Definition: pll_init.h:67
pll_user_t user
Definition: pll_init.h:68
pll_outout_t out
Definition: pll_init.h:69
pll configure variable value ;pll算法配置值
Definition: pll_init.h:39
float min_i
Definition: pll_init.h:45
float cos_val
Definition: pll_init.h:41
float max_i
Definition: pll_init.h:44
float theta0
Definition: pll_init.h:48
float max_o
Definition: pll_init.h:46
float sin_val
Definition: pll_init.h:40
float ki
Definition: pll_init.h:43
float min_o
Definition: pll_init.h:47
float kp
Definition: pll_init.h:42
float loop_in_sec
Definition: pll_init.h:49
configuration of pll type ii filter ;二阶PLL观测器配置参数
Definition: pll_init.h:78
float cos
Definition: pll_init.h:84
float k1
Definition: pll_init.h:79
float b
Definition: pll_init.h:81
float sin
Definition: pll_init.h:83
float c
Definition: pll_init.h:82
float a
Definition: pll_init.h:80
Phase Locked Loop Filter Output Data ;二阶PLL观测器输出值
Definition: pll_init.h:103
float speed
Definition: pll_init.h:105
float theta
Definition: pll_init.h:104
float speed_filter
Definition: pll_init.h:106
Phase Locked Loop Filter struct ;二阶PLL结构体
Definition: pll_init.h:113
pll_ii_output_t out
Definition: pll_init.h:116
pll_ii_user_t user
Definition: pll_init.h:115
pll_ii_cfg_t cfg
Definition: pll_init.h:114
Running data of pll type ii filter ;二阶PLL观测器中间数据
Definition: pll_init.h:91
float x2
Definition: pll_init.h:94
float x0
Definition: pll_init.h:92
float x3
Definition: pll_init.h:95
float x1
Definition: pll_init.h:93
pll output value ;pll算法输出值
Definition: pll_init.h:56
float speedout_filter
Definition: pll_init.h:58
float speedout
Definition: pll_init.h:57
float theta
Definition: pll_init.h:59
pll temp variable value ;pll算法临时变量
Definition: pll_init.h:29
float theta_last
Definition: pll_init.h:30
float err
Definition: pll_init.h:31
float mem
Definition: pll_init.h:32