使用Arduino的电机驱动器速度控制

在此示例中,我们将使用Arduino和电机驱动器控制线性执行器的速度。

注意:本教程假定您具有基本的电子原理,Arduino硬件和软件的先验知识。如果这是您第一次使用Arduino,我们建议您从Google和YouTube搜索中提供的许多出色的初学者教程中学习基础知识。请注意,我们没有资源为自定义应用程序提供技术支持,并且不会在这些公开教程之外调试,编辑,提供代码或接线图。

组件

接线

使用Arduino的电机驱动器速度控制

硬件和软件概述

线性执行器中的直流电动机需要大电流(高达5A),如果我们将线性执行器直接连接到Arduino,则此高电流消耗会破坏Arduino数字引脚,因为它们每个仅额定40mA。因此,我们使用的电机驱动器可以从Arduino板上获取低电流PWM(脉冲宽度调制)信号,并向线性执行器输出高电流PWM信号。

电机驱动器连接到两个PWM数字引脚(Arduino Uno上的引脚10和11)。通过将其中一个引脚设置为低电平,将另一个引脚设置为高电平(请参见下面代码中的第18和19行),我们可以以最大速度扩展执行器。为了停止执行器,我们将两个引脚都设置为LOW(参见下面代码中的第21和22行),并反转运动方向,我们可以颠倒HIGH和LOW引脚的顺序(参见下面代码中的第24和25行)。我们还可以通过将变量“ Speed”更改为[0,255]范围内的任何值来调整速度。请参阅下面的代码中的第17行。

https://gist.github.com/Will-Firgelli/c0ef0871dc1946d75257e0c29dccae2a

带电位器的各种速度控制

在上面的示例中,我们在代码的第17行中手动设置了速度。但是,在某些情况下,我们可能希望及时更改执行器的速度。实现此目的的最简单方法是使用电位计。一个 电位器是一个三端可变电阻器,可用作分压器。通过旋转电位器的旋钮,输出电压将发生变化,我们可以将其连接至Arduino上的模拟引脚以设置可变速度。

接线

使用Arduino的电机驱动器速度控制

硬件和软件概述

如上所述,电位计是一种旋转装置,当旋转旋钮时会改变电阻。通过将电位器的两个外部引脚连接到5V和GND,将中间引脚连接到Arduino模拟引脚A0,创建了一个分压器。旋转旋钮时,Arduino将读取范围为[0,1023]的模拟读数。

对于[512,1023]范围内的值,我们希望执行器伸展,而对于[0,511]范围值,我们希望执行器缩回,这可以通过在第22和28行中使用简单的if()/ else语句来实现。下面的代码。然后,使用map()函数(下面代码中的第23和29行),我们可以将其转换为PWM信号,该信号将控制执行器的速度和方向。

https://gist.github.com/Will-Firgelli/d2cdf69edc829974885984b3fb8e4856

Share This Article
Tags:

Need Help Finding the Right Actuator?

We precision engineer and manufacture our products so you get direct manufacturers pricing. We offer same day shipping and knowledgeable customer support. Try using our Actuator Calculator to get help picking the right actuator for your application.