行驶中的智能小车,不仅可以走出正方形、长方形等规则轨迹,而且还能自动识别并按照不规则的路线行驶。这节课,就让我们一起制作一辆自动循迹智能小车。
![1576144332185758.png blob.png](/ueditor/php/upload/image/20191212/1576144332185758.png)
图10-1 本课范例作品“循迹智能小车”示意图
要顺利完成本课范例作品的制作,除运用智能小车的左、右巡线传感器外,还需了解以下知识概念:
沿着黑色轨迹行驶的智能小车,如果左巡线传感器检测到的是黑色区域,那么接着需判断智能小车的右巡线传感器。如果右巡线传感器检测到的也是黑色区域,那么智能小车向前行驶,否则的话,智能小车需向左前方偏转,让小车回到黑色轨迹上。而如果左巡线传感器检测到的是白色区域,那么智能小车需向右前方偏转,让小车回到黑色轨迹上。按照这样的行驶规则,智能小车就可以左右摇摆着完成循迹任务了。
根据双巡线传感器循迹原理,本课范例作品的流程图如下10-2所示:
![1576144346299913.png blob.png](/ueditor/php/upload/image/20191212/1576144346299913.png)
图10-2 本课范例作品“循迹智能小车”的流程图
根据10-2所示的流程图,要完成本课范例作品的制作,首先需对左巡线传感器进行判断。如果左巡线传感器测到的巡线值为1,即左巡线传感器在黑色轨迹上,那么需再判断右巡线传感器的巡线值,否则智能小车向右前方偏转。具体的程序代码如下图10-3所示:
![1576144356884432.png blob.png](/ueditor/php/upload/image/20191212/1576144356884432.png)
图10-3 判断左巡线传感器不在黑线上时的程序代码
对右巡线传感器进行判断的前提条件是:左巡线传感器在黑色轨迹上。此时,如果右巡线传感器也在黑色轨迹上,那么智能小车向前行驶,否则智能小车向左前方偏转,使小车回归到黑色轨迹上。具体的程序代码如下图10-4所示:
![1576144378242550.png blob.png](/ueditor/php/upload/image/20191212/1576144378242550.png)
图10-4 判断左、右巡线传感器是否在黑色轨迹上的程序代码
| 1.编写如图10-4所示的程序代码,编译下载到智能小车中运行,观察智能小车是否能顺利地沿着黑色轨迹行驶。如果不可以,请思考原因,并进行调试。 2.调试成功后,请给智能小车添加一些其他功能,让小车的循迹过程更加有趣:比如向前行驶时,智能小车发出美妙的乐声,而当小车的任意一个巡线传感器偏离黑色轨迹时,双跳灯狂闪。 |
|
要让智能小车顺利完成循迹任务,除了本课所讲的程序代码外,还有其他编程方法吗?请认真想一想,并根据自己的理解尝试编写、调试。
通过探索,我发现了另一种编程方法也可以让智能小车顺利完成循迹任务。相应的程序代码我已保存在“好好搭搭”网站上,名称是___________________;将作品共享了以后,有_________人给我点赞;综合别人给我提的建议,我认为还可以在以下方面进行改进:______________________________________________________________________________