0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用树莓派控制直流电机

454398 来源:工程师吴畏 2019-07-29 09:18 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

通过使用Raspberry Pi成功控制直流电机,我们可以将它用于各种其他应用,如机器人,遥控(RC)汽车,风扇和其他相关的电机这个项目的目的是将电机安全地连接到Raspberry Pi并控制它,即使其向前或向后旋转。

注意 :我将在这个项目中使用电机驱动器,最多可以处理两个电机。因此,可以单独控制两台电机。

在继续这个项目之前,先了解 如何设置没有监视器的Raspberry Pi和键盘

工作原理

使用Raspberry Pi控制直流电机的主要原理在于电机驱动器。电机驱动器是一种特殊电路或IC,可为电机提供必要的电源(或更确切地说是电流),以实现平稳安全的运行。

即使是小型5V直流电机也可以初始电流约为300 - 400 mA。当电机加速到大约时,该电流将下降150 - 200 mA。

对于微控制器Arduino,Raspberry Pi等设备而言,这是一个巨大的潮流。因此,我们不应该将电机直接连接到Raspberry Pi(或任何其他微控制器)。

电机驱动器在这种情况下起着重要作用。它们从Raspberry Pi获取控制信号,并通过电源为电机提供必要的驱动电流。

在这个项目中,电机驱动器(L293D)有两个通过GPIO引脚控制来自Raspberry Pi的信号。根据Python程序,电机将正向或反向旋转。

电路图

Fritzing Image

正如我之前所说,使用L293D电机驱动器IC,我们实际上可以控制两台电机。为简单起见,我将演示使用Raspberry Pi控制单个直流电机的电路,工作和程序。下图是项目的Fritzing图。

电路图

项目的电路接线图如下所示。您可以轻松配置此电路以及使用Raspberry Pi和L293D电机驱动器IC控制两个直流电机的程序。

必需的组件

Raspberry Pi 3 B型

L293D电机驱动器IC或模块

小型直流电机(5V)

连接线(跳线)

用于Raspberry Pi的5V - 2A电源

用于电机的5V电源

其他(计算机,以太网)电缆等。)

关于L293D电机驱动器IC的简要说明

我使用L293D电机驱动器IC来控制带Raspberry Pi的直流电机。它是一种非常常见的电机驱动器IC,能够驱动两个电机,单个电流高达600mA。

L293D电机驱动器IC的引脚图,以及引脚说明如下图所示。

电路设计

使用Raspberry Pi控制直流电机的电路设计非常简单。首先,将L293D的引脚8和16(VCC2和VCC1)连接到外部5V电源(假设您使用的是5V电机)。

L293D上有四个接地引脚。将引脚4连接到电源的GND。另外,将L293D的接地引脚连接到Raspberry Pi的GND引脚。

最后,我们有使能和控制输入引脚。将L293D(1,2EN)的引脚1连接到Raspberry Pi的GPIO25(物理引脚22)。然后将控制输入引脚2和7(1A和2A)分别连接到GPIO24(物理引脚18)和GPIO23(物理引脚16)。

可选:如果要连接第二个电机,你需要连接的是启用(3,4EN)和第二个电机控制输入(3A和4A)到Raspberry Pi的三个不同的GPIO引脚。

还阅读这个简单的项目: 如何使用Raspberry Pi和Python使LED闪烁

Python程序用Raspberry Pi控制直流电机

项目工作和代码说明

如何操作项目?

打开电源之前供电,确保所有与电机,电源和Raspberry Pi相关的连接都是正确的。对于编程,我将使用Python。

现在,在Raspberry Pi中打开终端并使用Vim Editor和以下内容创建一个新的Python文件“dcmotorPi.py”命令。

sudo vim dcmotorPi.py

将上述程序复制并粘贴到编辑器中并保存文件。 注意 :我已将Python程序保存在Raspberry Pi桌面上名为Python_Progs的文件夹中。现在,为了运行程序,在终端中输入以下命令。

sudo python dcmotorPi.py

电机现在将向前旋转3秒钟,然后反向旋转3秒钟,最后停止。几秒钟后,该过程将继续,直到在终端中按下 CRTL + C 。

代码说明

如果您已经按照我之前关于如何使用Raspberry Pi闪烁LED并使用Raspberry Pi连接16 x 2 LCD的项目,您可以轻松理解此代码。

首先,我们需要使用Python访问GPIO引脚。因此,我们需要将模块RPi.GPIO导入到我们的程序中。同样,模块时间允许我们使用其功能睡眠暂停程序一段预定义的时间。

现在,我为L293D电机驱动器IC分配了引脚(启用和两个控制输入)。此外,引脚模式设置为GPIO编号格式。

现在,所有引脚都被声明为输出。正向旋转时,使能引脚变为高电平,控制输入1A变为高电平,另一个控制输入1B变为低电平。

延迟三秒后,控制输入1A变为低电平,控制输入1B变为高电平,同时保持使能引脚为高电平。这将使电机反向旋转。

最后,在延迟三秒后,电机将停止旋转并停止。重复此过程,直到我们在终端中按CTRL + C.

应用程序

直流电机随处可见:机器人,无人驾驶飞机,遥控车等。通过使用Raspberry Pi控制直流电机,我们可以使用Raspberry Pi开发许多与电机相关的项目。

可用于基于Raspberry Pi的机器人应用,如线跟随机器人,障碍避免机器人,四轴飞行器,网络控制机器人等。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 直流电机
    +关注

    关注

    36

    文章

    1785

    浏览量

    74233
  • 树莓派
    +关注

    关注

    122

    文章

    2081

    浏览量

    110753
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    为什么驱动直流电机跟振动直流电机对电源的干扰不一样,怎么解决。

    有大佬知道为什么驱动直流电机跟振动直流电机对 12 伏电源的干扰不一样吗,怎么解决
    发表于 03-31 13:53

    四线的直流电机该如何接线

    直流电机的接线方式直接关系到其运行性能和控制效果,尤其是四线直流电机(通常指带有两个独立绕组的双通道电机或串/并励可切换电机),其接线逻辑需
    的头像 发表于 03-05 16:58 619次阅读

    直流电机接线的相关问题

    直流电机作为工业生产和日常生活中常见的动力装置,其接线方式的正确性直接影响电机性能、使用寿命甚至安全。本文将从直流电机的基本结构、接线原理、常见接线方法、注意事项及故障排查五个方面展开详细解析,并
    的头像 发表于 12-31 07:43 960次阅读
    <b class='flag-5'>直流电机</b>接线的相关问题

    流电机直流电机调速方法

    流电机直流电机作为现代工业中应用最广泛的两种电动机类型,其调速技术直接关系到生产效率、能源消耗和设备性能。随着电力电子技术、微处理器控制技术的快速发展,电机调速方法已从传统的机械式
    的头像 发表于 12-19 07:39 1314次阅读
    交<b class='flag-5'>流电机</b>与<b class='flag-5'>直流电机</b>调速方法

    探索用于Arduino的TLE94112ES直流电机控制盾牌

    探索用于Arduino的TLE94112ES直流电机控制盾牌 引言 在电子工程领域,电机控制一直是至关重要的部分。对于Arduino开发者而言,一款功能强大且易于使用的
    的头像 发表于 12-18 16:35 479次阅读

    CW32电机控制基础——无刷直流电机换相控制原理

    与有刷直流电机相比,无刷直流电机除使用电子换相器取代有刷直流电机电刷机械换向,使用永磁体产生转子磁场外,从结构和工作原理上都和有刷直流电机相类似,故其
    的头像 发表于 10-09 17:15 5144次阅读
    CW32<b class='flag-5'>电机</b><b class='flag-5'>控制</b>基础——无刷<b class='flag-5'>直流电机</b>换相<b class='flag-5'>控制</b>原理

    单片机直流电机调速原理

    在工业自动化、智能设备等领域,直流电机的调速控制至关重要,而单片机凭借其灵活的控制能力,成为实现直流电机精准调速的核心部件。单片机直流电机
    的头像 发表于 07-17 13:42 898次阅读

    浮思特 | 无刷电机与有刷直流电机的区别是什么,该如何选择?

    在精密运动控制领域,永磁直流电机因其优于交流电机的可控性,被广泛应用于需精准调节速度、扭矩或位置的场景。美蓓亚三美有刷直流电机当前主流直流电机
    的头像 发表于 07-16 10:15 3819次阅读
    浮思特 | 无刷<b class='flag-5'>电机</b>与有刷<b class='flag-5'>直流电机</b>的区别是什么,该如何选择?

    无刷直流电机双闭环控制的仿真研究

    摘 要:为了便于对无刷直流电机的运行特性和控制策略的研究,文章详细的介绍了无刷直流电机工作原理和数学模型,提出无刷直流电机控制策略,采用电
    发表于 07-08 18:33

    无刷直流电机模糊自适应PID控制的研究

    摘要:为了提高无刷直流电机控制系统的动、静态性能,将模糊控制结合PID控制算法应用到无刷直流电机速度控制
    发表于 07-07 18:29

    无刷直流电机改进型直接转矩控制研究

    摘要:研究了120”导通方式下的无刷直流电机直接转矩控制策略。通过分析了无刷直流电机转矩特性知道,只要保持定子磁链幅值恒定并控制其旋转速度就可使电机
    发表于 06-27 16:45

    无刷直流电机控制研究

    摘一要:设计了一种采用 TMS320LF2407DSP作为主控制器,集成 IGBT 作为功率驱动元件的无刷直流电机控制器,对电机转速和电流的双闭环 PID 调节。通过在跑步机上的试验表
    发表于 06-26 13:39

    EtherCAT科普系列(10):EtherCAT技术在无刷直流电机驱动系统领域应用

    直流无刷电机是通过电子控制器实现换向取代传统带碳刷的直流电机。常用电机类型多样,主要可以分为无刷电机
    的头像 发表于 05-29 17:05 1150次阅读
    EtherCAT科普系列(10):EtherCAT技术在无刷<b class='flag-5'>直流电机</b>驱动系统领域应用

    直流电机EMC整改:怎么选择?功率多少?

    南柯电子|直流电机EMC整改:怎么选择?功率多少?
    的头像 发表于 05-29 09:36 1278次阅读
    <b class='flag-5'>直流电机</b>EMC整改:怎么选择?功率多少?

    电机:无刷直流电机的原理

    运动的原理都是依靠磁场,要么利用磁场的异性相吸,要么利用磁场的同性互斥。无刷直流电机和有刷直流电机的主要区别在于,无刷电机电流的大小和方向是通过控制器来改变的。通常,定
    的头像 发表于 05-23 21:00 8843次阅读
    <b class='flag-5'>电机</b>:无刷<b class='flag-5'>直流电机</b>的原理