位置:L10单光寻迹 -> 数字教材

单光寻迹小车的程序

发布人:张建辉发布时间:2018-12-07 19:44:02

一、测光值

单光循迹小车所循的跑道会受到环境光、材质(如:桌子、地板等)的影响,每次在编程之前都要对跑道进行测光。

需要测的光值包括:白区的光值和黑迹的光值。

首先测白区,把小车上的光电传感器对准白色区域,读取 P1 的光值(方法在上一章已经学过,此处不再赘述)。如下图,测到的光值是:2386(参见图 10-12)。

 

还要测黑区(黑迹)的光值。如下图,测到的光值是:796(参见图 10-13)。

白区光值:2386,黑区光值:796。为了让小车灵敏一些,我们在编程时规定光值在 2000 以上时为白区。

实际上,在同一条跑道上的不同部位光值也会有区别。所以一般会测很多次,然后权衡、评估出一个适用于整条跑道的光值。

二、编程

程序的原理就是循迹的原理,我们再梳理一下:光电传感器在白区,那就拐到黑区去;光电传感器在黑区,那就拐到白区去。

下面是参考程序(参见图 10-14):

 

这段程序不长,但要求同学们必须理解。

如果光值大于 2000,我们认为这是在白区,那么左电机 50、右电机 10,或者说左快右慢,也就是右拐。

如果光值不大于 2000(小于等于 2000),我们认为这是在黑区(黑迹上),那么左电机 10、右电机 50,或者说左慢右快,也就是左拐。

在白区右拐,在黑区左拐。所以,这是一个在黑迹左侧循迹的程序。可以对照上面“图 10-4 单光循迹的两种情况”分析一下程序。