第95课:使用L293D 4个直流电机扩展板 | Arduino逐步课程

第95课:使用L293D 4个直流电机扩展板 | Arduino逐步课程

在本教程中,我们将探讨如何使用L293D电机驱动板与Arduino控制四个直流电机。这个设置特别适用于机器人应用,例如构建机器人汽车,在这些应用中,精确的电机控制至关重要。在本课结束时,您将拥有一个可以同时操作多个电机的工作模型。

L293D电机扩展板简化了接线过程,只需很少的连接就可以控制电机。您将学习如何将扩展板接线到Arduino,设置代码,并有效地执行电机控制命令。有关更直观的说明,您可以在特定时间戳查看视频中的接线和编码细节(视频中的mm:ss)。

硬件解析

该项目的主要组件是 L293D 电机扩展板,它是一个四个半 H 桥电机驱动器。这意味着它可以在两个方向上控制两个电机,从而实现对电机旋转的完全控制。该扩展板直接连接到 Arduino,使得管理电源和控制信号变得简单而无需杂乱的布线。

每个 L293D 芯片每个通道可以处理高达 600 mA 的电流,工作电压范围为 4.5V 到 36V。这个范围使其适合多种直流电动机。此外,电路板具有一个跳线,可以让你通过一个外部电源同时为电动机和 Arduino 供电。

数据表详情

制造商 德州仪器
部件番号 L293D
逻辑/输入输出电压 5伏
供电电压 4.5 - 36 V
输出电流(每通道) 600 毫安
峰值电流(每通道) 1.2 A
PWM频率指导 1 kHz - 20 kHz
输入逻辑阈值 2 V 最小(高),0.8 V 最大(低)
电压降 / RDS(导通)/ 饱和度 1.5 V 最大
热限制 150 °C
包裹 16-DIP
备注 / 变种 双H桥配置

  • 确保电动机的电流不超过600毫安,以防止损坏。
  • 对高电流应用使用足够的散热装置。
  • 在通电Arduino之前,请连接外部电源。
  • 检查跳线放置,以为屏蔽板和Arduino供电。
  • 如果有必要,通过交换连接来测试电机方向。

接线说明

L293d_Shield_wiring

开始将 L293D 电机扩展板连接到您的 Arduino Uno 或 Mega。将扩展板的引脚与 Arduino 的插头对齐,然后用力按下。接下来,将您的直流电机连接到标记为的端子M1,M2,M3M4在电机上。每个电机将需要两个接线端子,因此请确保正确连接它们以实现正确的旋转方向。

对于供电,将外部电池或电源连接到电路板的电源输入端子,确保电压在 4.5V 到 36V 范围内。不要忘记在电路板上连接跳线,以允许电源流向 Arduino。最后,将电源的接地连接到 Arduino 的接地引脚,以完成电路。

安装所需库

点击库图标并搜索:Adafruit Motor Sheild Library然后点击安装以进行安装。

代码示例和演练

AF_DCMotor motor1(1);
AF_DCMotor motor2(2);
AF_DCMotor motor3(3);
AF_DCMotor motor4(4);

在代码中,我们初始化了四个电动机对象:motor1,motor2,motor3, 和motor4每个电动机都分配一个与电动机保护板接线端子的通道编号。这使我们能够单独控制每个电动机。

void setup() {
  Serial.begin(9600); // set up Serial library at 9600 bps
  Serial.println("Robojax L293D Example");
}

setup()该功能初始化串行通信,使我们能够发送和接收来自 Arduino IDE 的消息。这对于调试和监控电机控制过程非常有用。

motor1.setSpeed(speed(50)); //set speed for motor 1 at 50%
motor1.run(FORWARD); //send motor 1 to Forward rotation

要控制电机,我们通过设置速度来实现。setSpeed()方法,其值在0到255之间。run()该方法随后在指定方向启动电机,例如FORWARDBACKWARD速度可以根据需要进行动态调整。

演示 / 预期内容

一旦所有线缆连接完毕并上传了代码,您应该会看到电动机根据代码中的指令转动。最初,一个电动机会启动,然后依次是其他电动机,每个电动机运行设定的时间。如果电动机没有按照预期工作,请检查您的接线,确保跳线已连接,并确认电源供应充足(视频中的时间为 mm:ss)。

视频时间戳

  • 00:00 介绍
  • 03:00 L293D 数据表
  • 03:56 接线说明
  • 07:21 代码和库
  • 13:51 演示控制4个电机

图像

L293D-Sheild-1
L293D-Sheild-1
L293D-Sheild-2
L293D-Sheild-2
L293D-Sheild-3
L293D-Sheild-3
L293d_sheild_main
L293d_sheild_main
L293d_Shield_wiring
L293d_Shield_wiring
439-Lesson 95: Using L293D 4 DC Motor Shield | Arduino Step-by-Step Course
语言: C++
已复制!

|||您可能需要的东西

资源与参考

文件📁

没有可用的文件。