stm32智能小车走直线pid调节中pid结果如何赋值给电机?

#include "pid.h"
#include "stm32f10x.h"
PID my_pid;
void PID_init(u8 sv,u8 kp,u8 t,u8 ti,u8 td,u8 out0)
{
my_pid.Sv =sv;
my_pid.Kp =kp;
my_pid.Td =td;
my_pid.Ti =ti;
my_pid.OUT0 =out0;
}
u16 MY_PID(u8 sv,u8 pv)
{
float P,I,D;
my_pid.Sv =sv;
my_pid.Pv =pv;
my_pid.Ek =(my_pid.Sv -my_pid.Pv );
P=my_pid.Kp*my_pid.Ek;
my_pid.DEk +=my_pid.Ek;
I=my_pid.Kp*(my_pid.T/my_pid.Ti)*my_pid.DEk ;
D=my_pid.Kp*(my_pid.Td/my_pid.T)*(my_pid.Ek-my_pid.Ek_1 )+my_pid.OUT0 ;
my_pid.OUT=P+I+D;
return my_pid.OUT;
}
关注博主即可阅读全文
分类专栏
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
}

我要回帖

更多关于 智能小车走直线pid调节 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信