如何选择与L298N相匹配的直流电机的选择

在这个Arduino教程中我们将学习如何使用Arduino控制直流电机的选择。我们来看看控制直流电机的选择的一些基本技术并通过两个例子,学习如何使用L298N电机驱动器和Arduino板来控制直流電机的选择

在以往的文章中,我们知道可以通过简单地控制输入电压来控制直流电机的选择的速度最常用的方法是使用PWM信号。延伸可閱读:

使用PWM控制直流电机的选择

PWM即脉冲宽度调制技术,它是一种允许我们通过调整进入电机的电压的平均值通过高电平和低电平的持續时间来控制电机运动的技术。平均电压取决于占空比即信号在一段时间内打开的时间与关闭的时间之比。

因此根据电机的大小,我們可以简单地将Arduino PWM输出连接到晶体管的底座或MOSFET的栅极通过控制PWM输出来控制电机的速度。低功率Arduino PWM信号开关在MOSFET上通过 PWM信号开关可驱动大功率電机。

另一方面为了控制电机的旋转方向,我们只需要对电流流过电机的方向进行逆转最常用的方法是用H桥。一个H桥电路包含四个开關元件晶体管或mosfet,形成一个类似于H的结构通过同时激活两个特定的开关,我们可以改变电流流动的方向从而改变电机的旋转方向。

所以如果我们把PWM和H桥这两种方法结合起来,我们就可以完全控制直流电机的选择的运动了有许多直流电机的选择驱动器都具有这些特性,L298N就是其中之一

L298N是一个双H桥电机驱动器,它允许在同一时间在速度和方向上对两个直流电机的选择进行控制。该模块可以驱动电压茬5 – 35V之间的直流电机的选择峰值工作电流可达2A。

让我们仔细看看L298N模块的接口定义并解释它是如何工作的。该模块包括两个 电机(A、B)嘚连接端子、接地GND端子、电机的VCC和一个可作为输入或输出的5V引脚 这主要取决于在电机VCC上使用的电压,具体使用请往下看

该模块有一个板载5V调节器,可通过跳线启用或禁用如果电机供电电压低于12V,我们可以启用5V调节器5V引脚可以作为输出,例如为我们的Arduino板供电;但是如果电机电压大于12V我们必须断开跳线,因为这些电压会对板载5V调节器造成损坏在这种情况下,5V引脚将作为输入因为我们需要连接到5V电源,以便IC正常工作

使用中这个集成电路的电压降大约是2V。例如如果我们使用12V电源,电机端子的电压大约是10V这意味着我们无法从12V直流電机的选择中获得最大速度。

接下来是逻辑控制信号输入使能A和使能B引脚用于使能和控制电机的速度。如果跳线出现在这个引脚上电機将被启用并以最大速度工作,如果我们移除跳线我们可以将PWM输入连接到这个引脚上,以这种方式控制电机的速度如果我们把这个插針接在地GND上,马达就会不工作

L298N的逻辑输入控制

其中,输入1和2针用于控制电动机A的转动方向,输入3和4用于控制电机B这些插针实际上控制的昰H桥的开关L298N 芯片。它的控制原理是:当输入1是低,2是高马达A会向前转动,反之亦然,如果输入1高2低电机A将反方向旋转如果两个输入都相同,无論高低电平电机A都会停止。同样的道理也适用于输入3和4

现在让我们做一些实际的测试。在第一个示例中我们将使用电位器控制电机嘚速度,并使用一个按钮改变旋转方向这是电路原理图。

测试元件包括:一个L298N驱动器一个直流电机的选择,一个电位器一个按钮开關和一个Arduino板以及12V电源。

代码解释:首先我们需要为程序定义引脚和一些变量在 setup 部分,我们需要设置引脚模式和电机的初始旋转方向在 loop 部汾,我们首先读取电位器的值然后将我们从电位器中得到的值,0到 1023 映射到PWM信号值 0 到 255也就是PWM信号从0到100%的占空比。然后使用 analogWrite() 函数发送PWM信號到L298N板的使能端,从而实现电机的驱动接下来,检查是否按下了按钮如果是,将通过反方向设置输入1和输入2的状态来改变电机的旋转方向这个按钮将作为切换按钮工作,每次我们按下它它都将改变电机的旋转方向。

如果我们理解了上面的知识下面我们就可以制造洎己的Arduino机器人小车了。下面是电路原理图:

我们需要两个直流电机的选择L298N驱动器,一个Arduino板和一个操纵杆Joystick在电源方面,我选择了三节3.7V的锂離子电池作为电源电压约11V。小车采用3毫米的胶合板做了底盘用金属支架把电机固定在上面,把轮子连在电机上底盘的前面安装了一個转向轮。在网上有成品底盘例如:

现在让我们看看Arduino代码,看看它是如何工作的

在loop部分定义了引脚之后,我们首先读取操纵杆X和Y轴的徝操纵杆实际上是由两个电位器连接到Arduino的模拟输入,它们的值从0到1023当操纵杆保持在中心位置时,电位器或轴的值都在512左右

我们将增加一点公差,以470到550的值为中心所以如果向后移动操纵杆的Y轴,数值低于470将使用四个输入引脚将两个电机的旋转方向设置为向后。然后我们将从470到0的下降值转换为PWM从0到255的上升值,这实际上是控制电机的速度

类似的,如果我们向前移动操纵杆的Y轴数值超过550,我们将设置电机向前移动并将读数从550到1023转换为PWM值从0到255。如果操纵杆保持在它的中心电机的速度将为零。接下来让我们看看如何使用X轴来控制尛车左右转动 。

首先需要把X轴的读数转换成0到255之间的速度值。对于向左移动我们使用这个值来降低左电机速度并增加右电机速度。在這里由于算术函数,我们使用两个额外的“if”语句来限制电机速度范围从0到255

机器人小车的左转和右转

同样的方法也适用于向右移动小車。

根据所施加的电压和采用电机本身的不同在较低的速度下,电机无法启动并产生嗡嗡声。在我本文的例子中如果PWM信号的值低于70,电机就无法启动因此,使用这两个if语句我实际上把速度限制在70到255之间。最后发送电机速度控制值或PWM信号到L298N驱动器的使能引脚。

最後附上Arduino机器人小车示例的完整代码:

这就是本教程的全部内容

}

直流电机的选择是初学者和业余愛好者遇到的最简单的电机操作非常简单:将电机的两根导线连接到电池的两个端子即可!电机开始旋转。

如果切换引线即反转极性,电机将反向旋转就这么简单。

如果要控制简单直流电机的选择的旋转速度那么有一种称为PWM直流电机的选择控制的技术。通过该技术苼成的脉冲宽度调制或PWM信号将允许我们控制输送到直流电机的选择的平均电压

直流电机的选择的速度控制使用PWM

使用PWM技术,通过打开和关閉非常高的电源来控制施加到直流电机的选择的电压的平均值率这种切换的频率将在几十千赫兹的数量级。

现在施加到直流电机的选擇的平均电压将取决于所谓的“负载” PWM信号的周期。 PWM信号的占空比只不过是信号ON或HIGH的时间与信号总时间的比值即ON时间和OFF时间的总和。

占涳比通常以百分比表示下图表示12V电源的不同PWM信号,不同的占空比分别为0%25%,50%75%和100%。

现在我们已经控制了提供给直流电机的选擇的平均电压我们如何应用这个电机电压?这里是晶体管的使用

来自任何来源的PWM信号,如本例中的Arduino可以提供给MOSFET的栅极,具体取决于占空比 PWM信号,直流电机的选择的速度会有所不同

此电路的代码如下所示。使用此代码Arduino将以衰落的方式改变直流电机的选择的速度,即逐渐将速度增加到峰值然后逐渐降低速度以停止。

此电路适用于控制电机速度但不是改变方向的有效方法轮换。为了在不改变电机引线的情况下改变旋转方向您需要使用称为H桥的特殊电路。

使用H的直流电机的选择控制-Bridge

H桥是一个简单的电子电路由四个开关元件组成,如晶体管(BJT或MOSFET)可以在两个方向上驱动电机没有切换引线。

名称“H-Bridge”是指由四个晶体管和一个形成字母“H”的中心的电机组成的连接外观

使用四个晶体管和一个电机的简单H桥连接如下所示。通过同时激活两个特定的晶体管我们可以控制通过电机的电流,从而控制旋轉方向

上述电路中的两个控制输入A和B将决定电机的旋转方向。如果A为低电平且B为高电平则晶体管Q1和Q4将导通并允许电流沿特定方向流过電机。

如果控制输入A为当HIGH为高电平且B为低电平时晶体管Q2和Q3将导通,通过电机的电流将反转从而反转旋转方向。

结合两种功能即用于速度控制的PWM技术和用于方向控制的H桥连接,您可以对直流电机的选择进行完全控制

使用晶体管进行有效的H桥连接非常繁琐。为此市场仩有专用的H桥电机驱动器IC,两个常见的IC是L293D和L298N

我们已经看到了如何控制速度在早期项目中使用L293D的直流电机的选择。在这个项目中我们将專注于更先进的L298N电机驱动器,并使用PWM技术使用L298N电机驱动器查看Arduino直流电机的选择控制

同时读取直流电机的选择控制使用ARDUINO和L293D

关于L298N电机驱动器嘚简要说明

L298N电机驱动器IC是一款15引脚高压,大电流电机驱动器IC带有两个全桥驱动器。 L298N IC的逻辑电平与标准TTL兼容IC可用于驱动不同的电感负载,如直流电机的选择步进电机,继电器等

下图显示采用多瓦封装(多引线电源封装)的L298N IC引脚图。

由于L298N电机驱动器IC是双全桥驱动器IC因此您可以通过单独输入同时控制两个电机。逻辑电源电压为5V但电机电源电压可高达45V。每通道的峰值输出电流为2A

通常,L298N驱动器可用作模塊其中包含用于控制两个直流电机的选择的所有必要组件和连接器。一个这样的模块如下所示我将解释该模块中的一些重要组件。

L298N电機驱动器模块由两个2针螺钉接线端子组成用于连接两个电机。它还有六个引脚公头用于连接两个使能输入和四个输入引脚(每个电机兩个)。

有一个3针螺钉接线端子通过它你需要给电机供电。如果使用的电机额定电压为12V或更低则通过该螺钉端子提供12V电源,板载5V稳压器将为L298N IC提供5V逻辑电源

您也可以通过3针螺丝接线盒中的第三个引脚访问此稳压5V。在3针螺钉端子附近提供的跳线必须接通电源电压高达12V因為该跳线将启用板载稳压器。只有当跳线接通即电源电压为12V时才能使用3针螺钉端子的第三个引脚的5V输出。此5V输出可用于为Arduino板供电

如果電源电压高于12V,则取下跳线因为它可能会损坏稳压器。在这种情况下L298N IC的5V逻辑电源通过3针螺钉端子的第三个引脚给出。

我们现在将看到┅个简单的电路我们使用Arduino和L298N IC控制直流电机的选择的速度和方向。您需要为此项目添加少量其他组件完整列表如下所示。在使用L298N项目的Arduino矗流电机的选择控制中我们将使用PWM信号和L298N(H桥)的组合来控制简单直流电机的选择的功能,即速度和旋转方向

L298N电机驱动器模块

使用L298N电機驱动器项目的Arduino直流电机的选择控制可以是许多高级项目的开始步骤。

A几乎所有机器人都有轮子我们需要控制连接到这些轮子的电机。洇此任何基于Arduino的机器人都可以使用L298N实现这种类型的电机控制。

L298N电机驱动器的一些机器人应用是手势控制机器人线跟随器机器人,障碍粅避免机器人等

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载文章观点仅代表作者本人,不代表电子发烧友网立场文章及其配图仅供工程师学习之用,如有内容图片侵权或者其他问题请联系本站作侵删。 

}

频率的选择主要看你的中断间隔叻

假设你的程序每50us进入一次中断,那么就是说每50us进行一次PWM调制这样你的PWM频率就是20KHz。

如果你的程序写的很多那么你就可以设定更长的Φ断周期,而相应的PWM调制频率就会降低
一般的PWM调节频率保持在10K-50K都是可以接受的。
不知到我的回答是否让您满意呢

台湾力成行星减速机、力成电机,质量、价格、服务各方面都很不错代理是龙璟机电设备有限公司

你对这个回答的评价是?

下载百度知道APP抢鲜体验

使用百喥知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。

}

我要回帖

更多关于 直流电机的选择 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信