怎样使用Arduino控制无刷电机

电子说

1.2w人已加入

描述

步骤1:电路接线

无刷电机

首先将无刷电机的三个端子连接到在ESC的三个端子上,用类似的方法将电机拧到一块厚木板上,以使其在高RPM时保持稳定。使用USB电缆将页面底部的可用代码下载并刷新到arduino(说明代码在此页的另一部分)。将ESC的信号线(大部分为白色或黄色)连接到任何Arduino的PWM引脚,我将其连接到D8引脚并在Arduino Sketch中将其指定为引脚8。您可以使用多个引脚来控制许多电机。

将电位计连接到Arduino的vcc或5v引脚和地面。

将可变引脚的第三个端子连接到模拟引脚A0。您可以使用BEC(电池消除器电路)已存在ESC中。要使用BEC,只需将红色粗线连接到Arduino的Vin引脚即可提供5V电压。并非所有ESC都有BEC,在这种情况下,您可以使用外部5v电源。在给Arduino供电后,现在将Lipo电池连接到ESC。

您已完成!!现在慢慢转动电位器旋钮以启动并提高电机速度。

步骤2:Arduino代码

在此代码中,我们只是将引脚A0的最大值(1023)和最小值(0)模拟值映射或引用到所需的最大值(2000)和最小值(1000),以控制和控制速度。 ESC。您可能需要将ESC的max-min值(即1000和2000)更改为不同的值,换句话说,您可能需要校准它,因为Diffrent ESC的起点和终点可能不同。

有关更多教程,请访问-RZtronics.com

代码

#include //使用伺服库控制 ESC

Servo esc;//创建名称为esc

void setup()

{

esc.attach(9);//指定esc信号引脚,这里为D8

esc.writeMicroseconds(1000);//将信号初始化为1000

Serial.begin(9600);

}

void loop()

{

int val;//创建变量val

val = AnalogRead(A0);//从模拟引脚a0读取输入并存储在val

val = map(val,0,1023,1000,2000);//将val映射为最大值和最小值(如果需要,可以更改)esc.writeMicroseconds(val);//使用val作为esc的信号

}

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

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分