1.BUCK电路展示
电赛训练题,主程序主要为 双路adc+单路epwm+pid算法
(1) 思维导图
(2)BUCK电路实物演示
2.实验材料
1.TMS320F28335
2.AD623 AD852
3.LM2596
4.SIC驱动芯片
5.SIC驱动驱动电源
5.SIC
5.数码管
6.旋转编码开关
3.PID
P | Proportion(比例) | 就是输入偏差乘以一个常数 |
---|---|---|
I | Integral(积分) | 就是对输入偏差进行积分运算 |
D | Derivative(微分) | 对输入偏差进行微分运算 |
代码:
struct PID{
double SetPoint; //设定目标 Desired Value
double Proportion; //比例常数 Proportional Const
double Integral; // 积分常数 Integral Const
double Derivative; //微分常数 Derivative Const
double LastError; //Error[-1]
double PrevError; //Error[-2]
double SumError; //Sums of Errors
};
struct PID spid; //定义结构体
double PIDCalc(struct PID *pp,double NextPoint)//PID Calculate
{
double dError,Error;
Error=pp->SetPoint-NextPoint; //偏差
pp->SumError+=Error; //积分
if(pp->SumError>200) //限幅
{
pp->SumError=200;
}
if(pp->SumError<-200)
{
pp->SumError=-200;
}
dError=pp->LastError-pp->PrevError; //当前微分
pp->PrevError=pp->LastError;
pp->LastError=Error;
return(pp->Proportion*Error //比例项
+pp->Integral*pp->SumError //积分项
+pp->Derivative*dError); //微分项
}
4.PID参数的整定
1.仿真
MATLAB 仿真可以大概知道PID的范围,并且更好的理解闭环反馈
2.串口打印
通过串口将数据打印到上位机,将数据画图。可以非常直观的调节pid的参数,提高整定pid参数的速度。推荐使用 VOFA+。
友情链接
PROWINTER
特别鸣谢prowinter的指导