直线跟随器机器人是跟随直线的机器,它可以是黑线或白线。线跟随器机器人基本上有两种类型:一种是跟随黑线的黑线跟随器,另一种是跟随白线的白线跟随器。线路跟随器实际上会感知线路并在其上运行。在之前的项目中,我们使用arduino制作了黑线跟随器机器人,但是这次我们将使用8051微控制器制作白线跟随器。在本教程中,我们还将介绍如何以低廉的价格在家中为线路跟随器机器人制作印刷电路板。
直线跟随器机器人的概念
线跟随器的概念与光有关。我们已经使用了黑色和白色表面的光的行为。当光落在白色表面上时,它将几乎完全反射,如果是黑色表面,则黑色表面会吸收光。此行跟随器机器人使用了光的这种解释的行为。
在此线路跟随器机器人项目中,我们使用了 IR发射器和IR接收器(也称为光电二极管)来发送和接收光。红外透射红外光。当红外线落在白色表面上时,它会反射回来并被光电二极管捕获,并产生一些电压变化。当红外光落在黑色表面上时,黑色表面会吸收光,并且光线不会反射回来,因此光电二极管没有接收到任何光线或射线。在此线路跟随器机器人中,当传感器感测到白色表面时,微控制器将获得0作为输入,而当感测到黑色线路时,微控制器将获得1作为输入。
电路说明
我们可以将整个直线跟随器机器人分为多个部分,例如传感器部分,控制部分和驱动器部分。
传感器部分: 此部分包含IR二极管,电位计,比较器(Op-Amp)和LED。电位计用于在比较器的一个端子上设置参考电压,IR传感器感测线路并在比较器的第二个端子上提供电压变化。然后,比较器将两个电压进行比较,并在输出端生成数字信号。在此电路中,我们为两个传感器使用了两个比较器。LM358用作比较器。LM358内置了两个低噪声运算放大器。
控制部分: 8051微控制器用于控制线路跟随器机器人的整个过程。比较器的输出连接到8051的引脚号P0.0和P0.1。8051读取这些信号并将命令发送到驱动器电路,以驱动驱动线跟随器。
驱动器部分: 驱动器部分包括电动机驱动器和两个直流电动机。电动机驱动器用于驱动电动机,因为微控制器无法为电动机提供足够的电压和电流。因此,我们添加了一个电动机驱动器电路,以为电动机获得足够的电压和电流。微控制器向该电动机驱动器发送命令,然后驱动电动机。
使用8051的线跟随机器人的工作
线路跟随器机器人通过使用传感器感应白线,然后将信号发送到微控制器。然后,微控制器根据传感器的输出驱动电动机。
在此项目中,我们使用两个红外传感器对。假设我们将红外传感器对称为左传感器和右传感器,那么左传感器和右传感器都什么也没有感觉到或黑线,然后机器人向前移动。
当左传感器感应到白线时,机器人将向左旋转。
当左传感器感应到白线时,机器人将转向右侧,直到两个传感器都到达黑线或什么也没感觉到表面。
当两个传感器都到达白线时,机器人将停止。
基于8051的线路跟随器机器人电路
对于此直线跟随器机器人,电路非常简单。比较器的输出直接连接到微控制器的引脚号P0.0和P0.1。电机驱动器的输入引脚2、7、10和15分别连接到引脚编号P2.3,P2.2,P2.1和P2.4。一台电机连接到电机驱动器3和6的输出引脚,另一台电机连接到11和14。
编程说明
首先,在程序中定义输入和输出引脚。然后在主要功能中,我们检查输入并根据输入将输出发送到驱动电机的输出引脚。为了检查输入引脚,我们使用了“ if”语句。
该线路跟随器有四个条件。我们使用了两个传感器,即左传感器和右传感器。
输入值 |
输出量 |
机器人动作 |
||||
左传感器 |
右传感器 |
左马达 |
右马达 |
|||
LS |
RS |
LM1 |
LM2 |
RM1 |
RM2 |
|
0 |
0 |
1个 |
0 |
1个 |
0 |
前锋 |
0 |
1个 |
1个 |
0 |
0 |
0 |
右转 |
1个 |
0 |
0 |
0 |
1个 |
0 |
转左 |
1个 |
1个 |
0 |
0 |
0 |
0 |
停止 |
我们已经根据上表条件编写了程序。请参阅此页面底部此基于8051的线路跟随器机器人的完整代码,以了解其概念。
PCB布局
这是Dip Trace软件中设计的线路跟随器机器人的 PCB布局。
在这种PCB布局中,我们设计了用于线路跟随器的电路板和用于放置IR传感器的2条杆。在此处查看分步教程,以在PCB上制作线路跟随器机器人:如何在家制作PCB