金牌会员
 
- 积分
- 2805
- 威望
- 524
- 贡献
- 1751
- 兑换币
- 8
- 注册时间
- 2011-3-7
- 在线时间
- 265 小时
|
快比赛了,相信大家在提速的同时都不愿再看到自己的爱车不受控制的飞出去。今天我深受其害,那车,那速度,那惯性,直接把激光前瞻撞到了十几厘米,什么防撞设施都是浮云,铝合金,铜柱都撞弯了。
大家都用了编码器了吧,我们就从反馈值入手。比如1m/s时 5ms反馈20个, 3m/s反馈60个,5m/s就反馈100个了,我们就拿100个开刀,反正我们的车速时用不上5m/s了,在主函数循环中实时监测编码器的值是否超过了100个,如果是,就立马对PWM的占空比赋0;然后停车,道理很简单,程序也很简单,不过很实用, ...上程序吧:
if(Speed_Data>100) //防止达跑飞
{ //防止马达跑飞
PWMDTY23=0; //防止马达跑飞
PORTE_PE2 = 1; //输出高电平 电机正转
PORTE_PE3 = 1; //输出低电平 电机正转
}
我已经试过了,很管用,反正大家在调PID时尽量小心吧,让我们为小车跑出自己的特点、自己风格、自己的速度而努力,坚持! |
|