最后,我们需要在三种情况中的两种中,嵌入控制巡线小车移动的模块,就算完成了。当然,这里需要注意的是,我们控制小车向左前方和右前方前进的两个模块,需要分别嵌入到“黑线”对应的情况和“地面”对应的情况之中的,至于哪种转向嵌入到哪种颜色之中,都可以!至于说为什么,请容许我在这里卖一个关子。然后,默认情况“无颜色”,就让它空着吧。(PS:在这里,需要阐述本人的一个观点,个人认为在此处使用的模块最佳选择是“移动转向”。为什么呢?因为移动转型模块中会有一个小箭头,来描述小车的前进方向。既然是作为初学者接触的第一个巡线程序,那么肯定是越简单越好。)
到这里,我们的巡线小车其实就已经完成了,但是我们对它的学习却才刚刚开始。每一个巡线程序,我们都需要搞懂一件事情,它的程序逻辑究竟是什么样的?在帖子的最开始,我讲过,所有的巡线程序都遵循同一个逻辑:“首先,通过颜色传感器来判断巡线小车与黑线的位置关系;然后,按照巡线小车与黑线的位置关系来决定小车的行进轨迹。”我们套用一下,看是否合适。
当颜色传感器测量到黑色时,我们发现小车在黑线上,然后尴尬的事情发生了,这个时候,小车是需要向哪个方向前进呢?答案是,两边都可以!
为什么会出现这样的情况呢?这是因为我们的单光电巡线小车,虽然在视觉上是沿着黑线在走,但是它实际上是在沿着黑线与白色底面的交界处在行走,而我们都知道,黑线与白色底面的黑白交界处,是有两个的。所以,如果我们要沿着黑线的右边界行进,那我们就需要在小车遇到黑色时向右前方前进,在小车遇到白色时向左前方前进,反之,如果我们需要沿着黑线的左边界行进,那我们就需要在小车遇到黑色时向左前方前进,在小车遇到白色时向右前方前进。
这里分享一个关于单光电巡线的小技巧给大家,我们在使用单光电巡线小车时,最好将小车放置于黑线上再运行程序,至于为什么,请自行尝试。
以上。
|