使用Arduino和L293D驱动器驱动直流电动机

在本教程中,我们将研究如何使用L293D和Arduino来为直流电动机供电和驱动(我们在这里使用的是Arduino MKR 1000,但是您可以使用任何能够为电动机提供足够电压并且具有 2个数字输出引脚)。

L293D是一个16针电动机驱动器IC,可以同时在任意方向上控制多达两个直流电动机。

你会需要:

  • Arduino开发板
  • 微型USB电缆
  • L293D电机驱动器
  • 直流马达
  • 面包板
  • 跳线
  • Arduino IDE

连接组件

首先,让我们连接面包板上的组件。 在下面,您将看到L293D的引脚图-请注意每个引脚的位置,相对于顶部的槽口。

L293D引脚排列
L293D引脚排列

由于本教程仅驱动一台电动机,因此我们不会使用所有电动机驱动器的引脚。

  • 首先将Arduino插入电源(例如计算机)。
  • 将Arduino上的GND和5V连接到面包板的一侧,然后使用跳线将其延伸到另一侧。
  • 将L293D放在面包板的中央,一半的销钉放在面包板的两侧。
  • 将5V连接至L293D上的Enable 1,Vss和Vs。
  • 将数字输出引脚(我们使用6和7)连接到L293D的输入1和输入2。
  • 将Arduino的GND连接到L293D同一侧的两个GND引脚。
  • 最后,将L293D的输出1和输出2连接到电动机引脚。

注意:电动机驱动器上的Vs引脚为电动机供电。 如果您的电动机需要的电压超出了Arduino所能提供的电压,则可以连接外部电池或电池组。 只需将负极引线连接到试验板上的GND,并将正极引线连接到L293D的Vs引脚即可。

一旦所有连接完成,它应该看起来像这样:

连接完成示意图
连接完成示意图

代码

注意:如果您完全不熟悉Arduino IDE,查找相关视频,以更好地了解其工作原理。

在Arduino IDE中:

  • 确保在 Tools > Port下选择了正确的端口
  • 确保在Tools > Board下选择了正确的Arduino开发板
  • 单击File > New以创建一个新的草图
  • 复制并粘贴以下代码,如果您在Arduino上使用除6和7以外的输出引脚,则替换motorPin1和motorPin2值
// Define the pin numbers
int motorPin1 = 6;
int motorPin2 = 7;

void setup() {
    // Set the pin modes of the above IO pins to OUTPUT
    pinMode(motorPin1, OUTPUT);
    pinMode(motorPin2, OUTPUT);
}

void loop() {
    // Turn the motor in one direction
    digitalWrite(motorPin1, LOW);
    digitalWrite(motorPin2, HIGH);
}
  • 转到Sketch > Upload 将代码上传到您的Arduino

成功上传草图后,电机将向一个方向旋转。
如果要更改方向,只需在循环功能中反转HIGH和LOW。

SO资源郑重声明:
1. 本站所有资源来源于用户上传和网络,因此不包含技术服务请大家谅解!如有侵权请邮件联系客服!3187589@qq.com
2. 本站不保证所提供下载的资源的准确性、安全性和完整性,资源仅供下载学习之用!如有链接无法下载、失效或广告,请联系客服处理,有奖励!
3. 您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容资源!如用于商业或者非法用途,与本站无关,一切后果请用户自负!

SO资源 » 使用Arduino和L293D驱动器驱动直流电动机