基于Arduino的直流电机控制

来源:本站
导读:目前正在解读《基于Arduino的直流电机控制》的相关信息,《基于Arduino的直流电机控制》是由用户自行发布的知识型内容!下面请观看由(电工技术网 - www.9ddd.net)用户发布《基于Arduino的直流电机控制》的详细说明。
简介:Arduino正在引领开源硬件的兴起,使得越来越多的人不需要科班出身就能够快速进行电子方案的DIY制作。这里分享一个网友发布的,基于Arduino的直流电子控制方案,供大家参考。

硬件资源

这个Arduino 双H桥直流电机驱动板,蓝色的板子,金色的印字,做工真的很精美,物有所值,吼吼~刚拿到的驱动板当务之急就是要了解一下这款驱动板接口说明和参数指南。

基于Arduino的直流电机控制图1 Arduino直流电机驱动板的硬件资源

可以看到板子左、右下角分别有两个直流电机控制信号输入接口,我这里准备了一个从玩具小车上拆下来的电机,我就选择左边的接口,将直流电机接入绿色端子,左下角的信号输入接口三个插针分别是EA、I1、I2,EA是区别于右边的EB,是用来接入PWM接口给电机调速的,I1、I2分别接入数字接口就OK了,是用来控制电机转向的。我就将EA接入Arduino的pin11PWM接口,I1、I2分别接8、9数字接口,至于逻辑供电部分,我就直接接入Arduino板子上的5V输出接口了,这里也可以不接线,因为这款驱动板子是可以板内取电的,如需要板外取电需将控制板内取电的跳线帽取下(这里我只是为了给网友们演示外部取电的使用方法,我并没有取下板内取电的跳线帽,如图接线实际上仍是板内取电。这里希望没有造成误导),端子左边的VMS接口是驱动部分取电,我接入四节5号电池,按下图连接好电路。

电机控制程序

连接好电路就剩编程的工作了,我就让电机先顺时针转两秒,再逆时针转两秒,再让电机停止转动,这样循环进行。

int pinI1=8;//定义I1接口

int pinI2=9;//定义I2接口

int speedpin=11;//定义EA(PWM调速)接口

void setup()

{

pinMode(pinI1,OUTPUT);//定义该接口为输出接口

pinMode(pinI2,OUTPUT);

pinMode(speedpin,OUTPUT);

}

void loop()

{

analogWrite(speedpin,100);//输入模拟值进行设定速度

delay(2000);

digitalWrite(pinI1,LOW);//使直流电机顺时针转

digitalWrite(pinI2,HIGH);

analogWrite(speedpin,100);

delay(2000);

digitalWrite(pinI1,HIGH);//使直流电机逆时针转

digitalWrite(pinI2,LOW);

analogWrite(speedpin,100);

delay(2000);

digitalWrite(pinI1,HIGH);//使直流电机停止

digitalWrite(pinI2,HIGH);

delay(2000);

}

有一点值得注意,一般情况电机的速度与电机以及其负载都有关系,所以速度要根据实际情况调节。

基于Arduino的直流电机控制图2,Arduino直流电机方案图

提醒:《基于Arduino的直流电机控制》最后刷新时间 2024-03-14 01:19:49,本站为公益型个人网站,仅供个人学习和记录信息,不进行任何商业性质的盈利。如果内容、图片资源失效或内容涉及侵权,请反馈至,我们会及时处理。本站只保证内容的可读性,无法保证真实性,《基于Arduino的直流电机控制》该内容的真实性请自行鉴别。