智能车制作
标题:
电机PID控制
[打印本页]
作者:
IT天下
时间:
2012-7-8 12:25
标题:
电机PID控制
请教一个问题: 之前都是开环跑,这两天调闭环,用PID只能给一个PID设定值,只要改变设定值,电机就会狂转,一时还检查不到原因
void Speed_PID(uint expect,uint feedback)
{
motor_err=expect-feedback;
speedP=lastspeed + KpSP*(motor_err-lastmotor_err);
lastspeed=speedP;
lastmotor_err=motor_err;
PWMDTY67=speedP;
}
这个是电机闭环控制程序
作者:
isearching
时间:
2012-7-8 13:14
只用P控制?
作者:
IT天下
时间:
2012-7-8 15:02
isearching 发表于 2012-7-8 13:14
只用P控制?
加了个I,差点把电机搞坏,差速齿轮都磨了
作者:
易湘鑫
时间:
2012-7-8 15:37
你的公式好像有问题。。。另外注意你定义的变量值的范围
作者:
renqinglei
时间:
2012-7-8 21:18
最好不要这样搞,输入是什么输出还是什么。
作者:
侠意
时间:
2012-8-1 16:01
作者:
woaikebe1234
时间:
2012-10-21 12:09
作者:
xiongcaifei
时间:
2013-1-18 18:45
公式真错了啊
作者:
JudeScorpio
时间:
2013-2-3 19:02
pwm_dianji = PWMDTY45 + Kp*(speed_error - last_speed_error)+Ki*speed_error+Kd*(speed_error-2*pre_speed_error+last_speed_error);
有学长留的这个公式,我在纠结呢
作者:
零度的亲吻
时间:
2014-2-19 16:18
参数错了,输入的不该是速度,该是编码器的值
欢迎光临 智能车制作 (http://dns.znczz.com/)
Powered by Discuz! X3.2