什么是循迹小车

循迹小车是机器人课上最经典的项目:在地上贴一条黑色胶带当跑道,小车放在跑道起点,松开手它自己就沿着黑线一直跑,遇到弯道自动转弯,不需要人遥控。

听起来像自动驾驶,其实原理很简单——小车底下装了一个红外传感器,它能"看到"脚下是黑色还是白色。代码就是一个不断判断"现在在黑线上吗"的循环。

没有方向盘、没有遥控器,小车自己知道往哪走。这就是反馈控制的力量。
本文核心知识点
  • 红外传感器识别黑白线。
  • 反馈循环每秒看十次脚下。
  • 条件判断黑就直行,偏就修正。
  • 调参调速度和转弯力度。
循迹小车配图:蓝色渐变背景上一辆方头方脑的迷你卡通小车,车身上方两个大眼睛传感器,下面是黑白相间的弯曲跑道,跑道旁边漂浮齿轮、电路板走线和一颗小星星
两个传感器是眼睛,黑色胶带是跑道。

红外传感器:小车的眼睛

红外传感器下面会发射一束红外线,打到地上再反射回来。白色地面反射强,传感器读到"白";黑色地面吸光,反射弱,传感器读到"黑"。

单个传感器只能告诉你"现在压在线上吗"。要走 S 弯,得装两个传感器——左边一个、右边一个,分别在跑道两侧。这样才能知道车偏左了还是偏右了。

画跑道:黑色胶带就是路线

循迹跑道不需要专门买,用黑色电工胶带在浅色地板上贴一条就行。宽度大约 2 厘米,能贴出直线、弯道、十字交叉。

建议先从最简单的圆形跑道开始——一周跑下来不掉线,再加 S 弯和直角弯。

最基础版:见黑线就直行

单个传感器版的代码非常简单:

永远重复:
  如果 传感器看到黑色:
    两个电机前进
 否则:
    停下来

这版小车会压着黑线走,一旦偏离黑线就停下。适合刚装好车的第一步测试。

进阶版:两个传感器走 S 弯

两个传感器(左 L、右 R)能判断车偏哪边:

永远重复:
  如果 L 黑 且 R 黑:
    两个电机前进(在线中央)
 否则如果 L 黑 且 R 白:
    左转(车偏右了)
 否则如果 L 白 且 R 黑:
    右转(车偏左了)
 否则:
    停车(两边都白,丢线了)

这就是一个完整的反馈控制系统:传感器每秒读十次,电机每秒调整十次方向,车就稳稳沿着线跑了。