分享

如何使用Arduino开发板控制无刷直流电机(BLDC)

 Jack_HAHA 2020-10-12

制作一些小物件,并且让它们按照自己想要的方式,这一直是一项非常有趣的事情。在达成一致意见的同时,制作飞行器会让业余爱好者显得不是那么很自信。这里,我所说的是滑翔机、直升机、飞机和多功能运输机。今天,由于在线提供社区的支持,很容易自己制作一个类似的产品。在这些飞行器中,它们都使用BLDC电机,那么什么是BLDC电机?为什么我们需要它来飞行?有什么特别之处呢?如何购买合适的电机并与控制器连接?什么是ESC,我们为什么要使用它?如果您有这些问题,那么本篇文章可以解决您所有的疑惑。


因此,在本篇文章中,我们将使用Arduino开发板和20A电子速度控制器(ESC)控制A2212 / 1T无感BLDC外转子电机(通常用于制作无人机)的速度。


所需的材料

●    A2212 / 13T BLDC电机

●    ESC控制器(20A)

●    电源(12V 20A)

●    Arduino开发板

●    电位器


了解BLDC电机

BLDC电机表示无刷直流电机,由于其平稳运行,常用于吊扇和电动汽车。与其他电机不同,BLDC电机引出来三根导线,每根导线形成自己的相位,因此对于我们来说,它是一个三相电机。


是的,虽然BLDC电机被认为是直流电机,它们工作在脉冲波模式下。电子速度控制器(ESC)将来自电池的直流电压转换为脉冲,并将其提供给电机的3根电线。在任何给定时间,只有两相电动机将被供电,因此电流通过一相进入并通过另一相。在此过程中,电动机内的线圈通电,因此转子上的磁铁自身与通电线圈对齐。接下来的两根导线由ESC通电,继续该过程使电机旋转。电动机的速度取决于线圈通电的速度,电动机的方向取决于线圈通电的顺序。我们将在本文后面详细了解ESC。


有许多类型的BLDC电机可供选择,让我们来看看最常见的分类。

●    内转子和外转子BLDC电机:内转子BLDC电机的工作方式与其他电机相同。也就是说,电机内部的轴旋转,而外壳保持固定。外转子BLDC电机正好相反,电机的外壳随着轴一起旋转,而线圈内部保持固定。外转子电机在电动自行车中是非常有优势的,因为外壳(旋转的外壳)本身被制成轮胎的轮辋,因此避免了联接机构。此外,外转子电机往往比内转子电机提供更大的扭矩,因此它成为EV和无人机的理想选择。我们在这里使用的电机也是外转子电机。

注意:还有另一种电机,称为无芯BLDC电机,也用于袖珍无人机,它们的工作原理不同,本篇文章不对其进行介绍。


●    有传感器和无传感器BLDC电机:对于无需任何加速度即可旋转的BLDC电机,需要一个反馈信号。也就是说,ESC必须知道转子中磁铁的位置和极点,以便据此激励定子。这些信息可以通过两种方式获得:一种是将霍尔传感器放在电机内。霍尔传感器将检测磁铁并将信息发送到ESC,这种类型的电机称为Sensord BLDC电机,用于电动车辆。第二种方法是通过使用线圈在磁铁交叉时产生的反电动势,这不需要额外的硬件或电线,相线本身用作反馈来检查反电动势。我们的电机使用的是这种方法,常用于无人机和其他飞行项目。


为什么无人机和其他多功能直升机使用BLDC电机?

从四轮直升机到直升机以及滑翔机,有很多类型的无人机,所有这些飞行器都有一个共同的硬件。那就是BLDC电机,但为什么呢?为什么他们使用比直流电机贵一些的BLDC电机?

Brushless-DC-motor.jpg



这有很多正当理由,其中一个主要原因是这些电机提供的扭矩非常高,这对于快速获得/松动推力来起飞或降落无人机非常重要。这些电动机也可用作外圈,再次增加了电动机的推力。选择BLDC电机的另一个原因是它的平稳振动操作较少,这对我们的无人机在半空中稳定非常理想。


BLDC电机的功率重量比非常高。这一点非常重要,因为无人机上使用的电机应具有高功率(高速和高扭矩),但重量也应较小。可以提供与BLDC电机相同的转矩和速度的直流电动机将是BLDC电动机的两倍重量。


为什么我们需要一个ESC,它的作用是什么?

我们知道每个BLDC电机都需要某种控制器来将电池的直流电压转换成脉冲,为电机的相线供电。该控制器称为ESC,表示电子速度控制器。控制器的主要职责是按顺序激励BLDC电机的相线,以便电机旋转。这是通过检测每根导线的反电动势来完成的,并在磁铁穿过线圈时准确地激励线圈。所以ESC内部有很多硬件亮点,我们这里不打算详细介绍。但是要提一下它有速度控制器和电池消除器电路。

Electronic-Speed-Controller-for-Brushless-DC-motor.jpg



●    基于PWM的速度控制:ESC可以通过读取橙色线上提供的PWM信号来控制BLDC电机的速度。它的工作原理与伺服电机非常相似,所提供的PWM信号应具有20ms的周期,并且可以改变占空比以改变BLDC电机的速度。由于同样的逻辑也适用于伺服电机来控制位置,我们可以在Arduino程序中使用相同的伺服库。

●    电池消除电路(BEC):几乎所有ESC都配有电池消除电路。顾名思义,这个电路不需要为微控制器提供单独的电池,在这种情况下,我们不需要单独的电源为Arduino供电; ESC本身将提供一个+ 5V的稳压电源,可以用来为我们的Arduino供电。有许多类型的电路可以调节这个电压,通常它会对廉价的ESC进行线性调节,但你也可以找到带开关电路的电路。

●    固件:每个ESC都有一个由制造商写入的固件程序。该固件极大地决定了您的ESC如何响应;一些流行的固件是Traditional、Simon-K和BL-Heli。该固件也是用户可编程的,但我们在本教程中不会涉及到大部分内容。


BLDC和ESC的一些常用术语:

如果您刚刚开始使用BLDC电机,那么您可能会遇到制动、软启动、电机方向、低电压、响应时间和超前等术语。我们来看看这些术语的含义。

●    制动:制动是指除去油门后BLDC电机停止旋转的能力。这种能力对于多直升机非常重要,因为它们必须更频繁地改变它们的转速以在空中进行机动。

●    软启动:当BLDC电机与齿轮相关时,软启动是一个重要的特性。当电机启用软启动时,它不会突然开始非常快速地旋转,无论油门给出多快,它都会逐渐增加速度。这将有助于我们减少与电机连接的齿轮(如果有的话)的磨损。

●    电机方向:BLDC电机中的电机方向通常在运行期间不会改变。但是在组装时,用户可能需要改变电机旋转的方向。改变电机方向的最简单方法是简单地改变电机的任何两根电线。

●    低电压停止:一旦校准,我们总是需要我们的BLDC电机以相同的特定速度运行以获得特定的节流值。但这很难实现,因为当电池电压降低时,电机往往会在相同的节流值下降低速度。为避免这种情况,我们通常将ESC编程为在电池电压低于阈值时停止工作。此功能称为低电压停止,在无人机中非常有用。

●    响应时间:电机根据油门变化快速改变速度的能力称为响应时间。响应时间越短,控制越好。

●    超前(Advance):超前是一个问题,或者更像是BLDC电机的错误。所有BLDC电机都有一些超前。也就是说,当定子线圈通电时,转子被吸引向它,因为它们上存在永久磁铁。在被吸引之后,转子倾向于在线圈断电之前在相同方向上向前移动一点,然后下一个线圈通电。这种运动被称为“超前”,它会产生抖动、温升、发出噪音等问题。所以一个好的ESC应该避免该问题。


好了,我们已经有了足够的理论知识基础,现在让我们连接电机和Arduino开发板,开始认识硬件设计部分。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多