DSP论坛
直播中

蓝光900112

12年用户 77经验值
擅长:嵌入式技术 嵌入式技术
私信 关注

哪位大神会在dsp2812中编写pid程序?

哪位大神会在dsp2812中编写pid程序,求教!谢谢!
已退回1积分

回帖(4)

fanssun

2015-11-19 20:59:02
float PID(float e,float kp,float ki,float kd)
{
        static float e_s=0,sum=0;//e_s用于保存上一次的误差值,用于计算微分项。Sum用于计算累加和,计算积分项。
        float r;
        sum+=e;//计算积分累加和
        r=kp*e+ki*sum+kd*(e-e_s);//从左至右分别是比例项、积分项、微分项
        e_s=e;//保存这一次的误差值用于下一次微分计算
        return r;
}

参考一下C语言的例程
举报

蓝光900112

2015-12-7 20:42:34
引用: fanssun 发表于 2015-11-19 20:59
float PID(float e,float kp,float ki,float kd)
{
        static float e_s=0,sum=0;//e_s用于保存上一次的误差值,用于计算微分项。Sum用于计算累加和,计算积分项。

谢谢!学习啦!
举报

h1654155268.4731

2015-12-9 15:25:08
你控制什么,需要用哪种pid??
举报

蓝光900112

2016-3-30 22:00:01
引用: AllenRoot 发表于 2015-12-9 15:25
你控制什么,需要用哪种pid??

控制无刷直流电机!实现电机加速,匀速,减速!
举报

更多回帖

发帖
×
20
完善资料,
赚取积分