完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
电子发烧友论坛|
uchar Moto_PID()
{ volatile static int err=0,last_err=0,derr=0; volatile static int M_PWM=0; volatile static int Kd; float M_Float_PWM; err= Target_Speed-System_Feed_Speed; derr=err-last_err; if(abs(err)<3) Kd=5; else Kd++; M_Float_PWM+=err*2.545+derr*Kd; M_PWM=(int)M_Float_PWM;////////////////为什么编译是错的///////////////////////////// if(M_PWM<0) M_PWM=0; if(M_PWM>85) M_PWM=85; last_err=err; //记录上次偏差值 Set_PWM(M_PWM,0); //最后赋值,给电机 } |
|
相关推荐 |
|
只有小组成员才能发言,加入小组>>
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-2 14:14 , Processed in 0.667180 second(s), Total 50, Slave 36 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2752
