Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器

这篇具有很好参考价值的文章主要介绍了Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器

原文

一些机器人制作项目

Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器

Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器

使用Arduino UNO,L298N电机驱动器,红外传感器制作Arduino线路跟随器机器人车

展示如何使用 Arduino UNO 和 2 个红外传感器模块制作线路跟随机器人汽车Line follower名称表示全自动汽车。这遵循嵌入任何地板或任何表面上的视觉线(很可能是白色或黑色)。

该项目基于Arduino微控制器。是一条基本的线路跟随机器人项目

Arduino线路跟随机器人,利用红外传感器,Arduino Uno和L298N电机驱动器

机器人车如何工作?

红外传感器可感测线条颜色是否反射。这里的反射意味着表面将光发回。在这种情况下,反射表面是白色表面。(**非反射表面只是黑线。**这意味着黑色轨道不会反射任何光线。红外传感器的工作原理是它感应到是否有任何反射光返回。 然后传感器会给出输出。如果没有反射,则红外传感器将不会提供任何输出,或者换句话说,输出将很低。

基于此高输出和低输出结果,微控制器可以控制汽车。

微控制器为汽车提供方向,然后何时转向(左或右)以及在哪里停车,如果 2 个传感器得到黑色表面,那么它会告诉微控制器停止汽车。

Arduino线路跟随机器人汽车所需的东西

Amazon.com 链接
  • 红外传感器

  • Arduino UNO R3

  • L298N 电机驱动器

  • TT减速电机

  • 跳线

  • 18650电池

  • 2S,18650电池座

  • 65MM电机轮毂

热门类别:

  1. 电路
  2. Arduino 项目
  3. 自主研发项目

Arduino线路跟随器机器人车的原理图:

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,Arduino线路跟随机器人,带红外传感器,Arduino Uno和L298N电机驱动器

制作汽车的步骤:

第 1 步:

首先,我们需要一块木片作为汽车底盘。在这里,我使用13CM x 10CM胶合板作为汽车底盘。您也可以使用亚克力板或预制底盘。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

第 2 步:

现在用胶枪或任何其他胶水将电机安装在胶合板的 4 个角上。确保在安装电机时,电机放置应正确。否则,汽车将无法直行。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

第 3 步:

现在连接TT齿轮电机,如下所示。我们将以十字形图案连接电机。这是因为我们必须使汽车以这样一种方式制造汽车,即两个侧面电机沿同一方向旋转,以便向前向后和其他已知方向行驶。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

第 4 步:

连接电机后,连接应如下所示。在这里,我提供了两面图片,让您清楚地了解发生了什么。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

第 5 步:

这里我们使用L298N电机驱动器。我使用双面胶带将L298N电机驱动器连接到胶合板上。您也可以为此使用螺母和螺栓。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

第 6 步:

现在将电机线与 L298N 电机驱动器连接。然后拧紧电机驱动器线。并避免任何类型的松动连接。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

连接后,所有电线将如下所示。

**注意:**上传代码后,如果汽车没有朝正确的方向行驶或方向错误,那么只需更换电机线即可。它会正常工作。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

第 7 步:

对于电池,我使用的是 2, 18650 电池。这对于制造这种类型的汽车非常有用。为了连接电池,我使用的是 2s 18650 电池座。我还添加了一个开关。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

电池线将与电机驱动器输入线连接。您还可以清楚地看到连接电池线的位置。

第 8 步:

在这个项目中,我使用Arduino Uno作为微控制器。您还可以根据需要使用任何其他微控制器。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

接下来,您必须从电机驱动器上卸下跳线短路连接器以进行下一步连接。

第 9 步:

在图片中,我提到了电机驱动器的必要连接。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

Arduino Uno L298N Motor Driver
Pin 10 ENA
Pin 9 IN1
Pin 8 IN2
Pin 7 IN3
Pin 6 IN4
Pin 5 ENB
第 10 步:

连接红外传感器,如照片所示。然后将必要的电线与Arduino UNO连接。只需按照原理图中的接线图进行操作即可。

现在将代码上传到Arduino。现在我们必须对运行汽车进行校准。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

第 11 步:

将电池连接到汽车并打开开关。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

第 12 步:(传感器校准)*** 重要***

在校准之前,您必须将车轮连接到汽车。您无需打开串行监视器进行校准。这只是手动校准。在这里,我使用数字读取函数来区分明暗。因此,红外传感器将仅提供高/低作为输出。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

将汽车悬空。在这里,我使用喷漆的顶盖将汽车放在上面进行校准。在这里,我使用带有T形线的白色表面耦合进行校准。(黑色电工胶带)

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

如图所示放置汽车。现在您已准备好进行校准。首先将 2 个电位计(左侧和右侧传感器)逆时针完全旋转。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,

  • 现在顺时针缓慢地逐个旋转电位计,直到红外传感器的 LED 亮起。
  • 接下来,慢慢地将汽车向左和向右移动,使汽车左和右传感器将在黑线上。然后车轮向不同的方向旋转。
  • 更具体地说,如果您将左传感器放在黑线上,汽车将尝试向正确的方向移动。同样,如果右侧传感器处于黑暗状态,则汽车向左方向移动。
  • 这是因为将汽车一直放在黑线上。这种配置的一个主要特点是,在这种配置中你不能走得太快。作为一个初学者项目,这很棒。

[[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tf5e6hlP-1678587460475)(https://circuitbest.com/wp-content/uploads/2020/11/3.gif)]](data:image/svg+xml,

因此,在这种情况下,校准过程会更容易一些。现在您可以打开汽车并放置在您想要跟随的位置,汽车将遵循这条线。

Arduino 线路跟随器汽车代码:

/*
Description: This program is used to make Arduino Line Follower Robot Car.
Note: You can use any value between 0 to 255 for M1_Speed, M2_Speed, LeftRotationSpeed, RightRotationSpeed.
Here 0 means Low Speed and 255 is for High Speed.
*/

#define in1 9
#define in2 8
#define in3 7
#define in4 6
#define enA 10
#define enB 5


int M1_Speed = 80;             // speed of motor 1
int M2_Speed = 80;             // speed of motor 2
int LeftRotationSpeed = 250;   // Left Rotation Speed
int RightRotationSpeed = 250;  // Right Rotation Speed


void setup() {

  pinMode(in1, OUTPUT);
  pinMode(in2, OUTPUT);
  pinMode(in3, OUTPUT);
  pinMode(in4, OUTPUT);

  pinMode(enA, OUTPUT);
  pinMode(enB, OUTPUT);

  pinMode(A0, INPUT);  // initialize Left sensor as an input
  pinMode(A1, INPUT);  // initialize Right sensor as an input
}

void loop() {

  int LEFT_SENSOR = digitalRead(A0);
  int RIGHT_SENSOR = digitalRead(A1);

  if (RIGHT_SENSOR == 0 && LEFT_SENSOR == 0) {
    forward();  //FORWARD
  }

  else if (RIGHT_SENSOR == 0 && LEFT_SENSOR == 1) {
    right();  //Move Right
  }

  else if (RIGHT_SENSOR == 1 && LEFT_SENSOR == 0) {
    left();  //Move Left
  }

  else if (RIGHT_SENSOR == 1 && LEFT_SENSOR == 1) {
    Stop();  //STOP
  }
}



void forward() {
  digitalWrite(in1, HIGH);
  digitalWrite(in2, LOW);
  digitalWrite(in3, HIGH);
  digitalWrite(in4, LOW);

  analogWrite(enA, M1_Speed);
  analogWrite(enB, M2_Speed);
}

void backward() {
  digitalWrite(in1, LOW);
  digitalWrite(in2, HIGH);
  digitalWrite(in3, LOW);
  digitalWrite(in4, HIGH);

  analogWrite(enA, M1_Speed);
  analogWrite(enB, M2_Speed);
}

void right() {
  digitalWrite(in1, LOW);
  digitalWrite(in2, HIGH);
  digitalWrite(in3, HIGH);
  digitalWrite(in4, LOW);

  analogWrite(enA, LeftRotationSpeed);
  analogWrite(enB, RightRotationSpeed);
}

void left() {
  digitalWrite(in1, HIGH);
  digitalWrite(in2, LOW);
  digitalWrite(in3, LOW);
  digitalWrite(in4, HIGH);

  analogWrite(enA, LeftRotationSpeed);
  analogWrite(enB, RightRotationSpeed);
}

void Stop() {
  digitalWrite(in1, LOW);
  digitalWrite(in2, LOW);
  digitalWrite(in3, LOW);
  digitalWrite(in4, LOW);
}

下载

如果汽车没有朝着正确的方向行驶,则进行简单的故障排除:

如果发生这种情况并且您的汽车没有朝着正确的方向行驶,那么您不必修改任何代码。您只需更换电机驱动器线即可。现在您的汽车将朝着正确的方向行驶。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,线路跟随器汽车演示

简化的印刷电路板:

我还为线跟随机器人车创建了一个简化的PCB,您可以从PCB制造公司PCBWay订购。它将为汽车提供更专业的外观。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,我在EasyEDA中设计了原理图。

为汽车提供所有必要的连接,如电源输入、L298N 电机驱动器引脚排列、左红外传感器和右红外传感器引脚排列。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,印刷电路板布局

在这里,我使用了Atmega328P微控制器。该IC也用于Arduino Uno R3。因此,我们将对Arduino UNO R3进行编程,并从UNO板上取出芯片并将其放置在PCB上。这将使汽车的外观最小。

[Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器](data:image/svg+xml,印刷电路板 3D 视图

如何订购印刷电路板?

印刷电路板格柏链接:下载

结论:

总而言之,对于业余爱好者来说,这是一辆很棒的汽车。汽车的速度很低,无法有效地跟随线路。如果你想加速汽车,那么你可以使用红外阵列。

我还在代码中提供了如何在直线和角度旋转的同时加速汽车。只需根据您的汽车更改速度参数即可。不要使速度参数过多,否则汽车将无法进行任何快速旋转。

您还可以阅读其它Arduino项目文章。文章来源地址https://www.toymoban.com/news/detail-500380.html

到了这里,关于Arduino UNO的线路跟随机器人车,L298N驱动器,红外传感器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 小型双轮差速底盘机器人实现红外跟随功能

            本文示例将实现R023样机小型双轮差速底盘跟随人移动的功能。在小型双轮差速底盘前方按下图所示安装3个  近红外传感器 ,制作一个红外线发射源,实现当红外发射源在机器人的检测范围内任意放置或移动时,机器人能追踪该发射源。 在这个示例中,我们采用了以

    2024年02月14日
    浏览(52)
  • 保姆级的Arduino循迹小车研发日志及一些坑(其中包含L298N、Arduino、TCRT5000以及1:48的TT电机的使用)

    开发要求如下: 引言:为什么会用到 米思齐 这个青少年编程软件是有两个原因: 接到了某所小学的研发项目需求,研发成果给小学生参加无人车循迹比赛。 实验室的师弟师妹并不是所有都有编程基础,因此米思齐可以作为简单的编程引入课程。 首先我认为 TCRT5000红外循迹

    2023年04月08日
    浏览(43)
  • ROS从入门到精通10-1:项目实战之智能跟随机器人原理与实现

    本专栏旨在通过对ROS的系统学习,掌握ROS底层基本分布式原理,并具有机器人建模和应用ROS进行实际项目的开发和调试的工程能力。 🚀详情:《ROS从入门到精通》 机器人是传感器网络、通信、人工智能、分布式计算、自动化等多种技术的集大成者, 机器人技术的发展水平标

    2024年02月07日
    浏览(42)
  • 【全3D打印坦克——基于Arduino履带式机器人】

    在教程中,我将向您展示我如何构建超酷的无线电控制履带式车辆,机器人平台或坦克,应有尽有。我从头开始设计这个东西,完全可以3D打印,所以你可以轻松地打印所有东西并自己构建一个。 您可以观看以下视频或阅读下面的书面教程。 我这个项目的目标是制作一个多功

    2024年02月06日
    浏览(39)
  • 使用ros_arduino_bridge控制机器人底盘

      搭建了ROS分布式环境后,将ros_arduino_bridge功能包上传至Jetson nano,就可以在PC端通过键盘控制小车的运动了。实现流程如下: 系统准备; 下载程序; 程序修改; 分别启动PC与Jetson nano端相关节点,并实现运动控制。   ros_arduino_bridge是依赖于python-serial功能包的,需要在

    2024年01月17日
    浏览(37)
  • 上位机(Ubuntu)与下位机(Arduino)通讯控制机器人前轮转角

     实现基础:1、上位机、下位机通讯;2、ROS读取前轮转角传感器速度 ​​​​​​​​​​​​​​上位机系统Ubuntu 20.04与下位机arduino UNO通讯_可见一班的博客-CSDN博客 读取拉线位移传感器(RS485协议)的ROS驱动包_可见一班的博客-CSDN博客 方案一:判断了旋转方向就向下位

    2024年02月13日
    浏览(44)
  • 【雕爷学编程】Arduino动手做(156)---OTTO两足舵机机器人

    37款传感器与执行器的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止这37种的。鉴于本人手头积累了一些传感器和执行器模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里准备逐一动手尝试系列实验,不管成功(程序走通)

    2024年02月16日
    浏览(45)
  • Arduino开发实例-DIY超声波传感器避障机器人

    在本应用中,我们将使用一个超声波传感器与两个直流电机和一个伺服电机相结合,Arduino作为主控板创建一个简单的避障机器人。 超声波传感器发送和接收信号以确定物体的距离。 如果距离小于 15 厘米有物体,机器人将停止。 然后它环顾四周,转向一个它什么都感觉不到

    2023年04月08日
    浏览(59)
  • 【雕爷学编程】Arduino动手做(184)---快餐盒盖,极低成本搭建机器人实验平台

    吃完快餐粥,除了粥的味道不错之外,我对个快餐盒的圆盖子产生了兴趣,能否做个极低成本的简易机器人呢?也许只需要二十元左右 知识点:轮子(wheel) 中国词语。是用不同材料制成的圆形滚动物体。简单来说,它包括轮子的外圈、与外圈相连接的辐条和中心轴。透过滚

    2024年02月14日
    浏览(36)
  • 【雕爷学编程】Arduino动手做(184)---快餐盒盖,极低成本搭建机器人实验平台2

    吃完快餐粥,除了粥的味道不错之外,我对个快餐盒的圆盖子产生了兴趣,能否做个极低成本的简易机器人呢?也许只需要二十元左右 知识点:轮子(wheel) 中国词语。是用不同材料制成的圆形滚动物体。简单来说,它包括轮子的外圈、与外圈相连接的辐条和中心轴。透过滚

    2024年02月14日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包