基于51单片机的红外传感竞速智能小车程序?

最近学校组织比赛,我选用51单片机,但是我准备用stc12c5a60s2 单片机。我们的要求就是仿飞思卡尔的形式,我选用红外对管循迹竞速!我有几个问题1。。红外对管智能寻一条黑线的和两边有黑线的,他们有什么区别在程序控制上,寻两黑线是不是很难。2。。我们做的是竞速,我们也想用到pid,于是买了测速马盘,我们也只是想更优化车速,51红外对管现实吗?3。。我们需要电机驱动l298。舵机,红外对管,测速马盘,用单片机控制,怎么才能将他们一起整合出来,就是程序的思路。4。我们的pid怎么做让车更稳定。。

我做过一个寻一条黑线的智能小车,按照你的问题一个个给你些建议吧。

    我个人认为寻一条黑线和寻两条黑线在原理上应该是没有差别的,都是用对管来检测黑线和小车的偏差,从而知道小车当前的位置,不过常见的都是寻一个道路中间的黑线。至于程序控制上可以参考网上成熟的方案,都是根据传感器检测到黑线后来判断当前小车偏离黑线的位置,从而控制左右电机产生速度差(或者直接用舵机转向)来修正小车姿态。

    PID是一个很高深也很简单的玩意,原理很简单,能够用好却不容易。小车上主要是为了稳定小车的速度,这对电机的响应速度,码盘的精度,单片机的处理速度都有一定的要求,网上有很多成熟的PID算法,加上一些前辈们做过的寻线小车PID案例,剩下的就是PID的参数问题了。

    L298N是作为电机的控制器件(PID的输出量),舵机可以控制小车转向,红外对管是为了检测黑线的位置,测速码盘检测当前电机转速(PID控制的输入量)。

    整体可以分为两个程序部分:

    (1)主程序部分:对管检测黑线的位置-》单片机判断小车姿态-》舵机转向调整小车姿态-》回到起始部分循环。

    (2)PID部分:码盘检测电机转速-》单片机进行PID运算-》输出速度控制量给L298N-》控制电机转动-》回到起始部分循环。


追问

介意留个扣扣吗?请教下你!

追答

2536265702,验证时请注明,谢谢。

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答