侵权投诉

如何使用Arduino控制伺服电机

39度创意研究所 2019-11-27 15:45 次阅读

概述

在本课程中,您将学习如何使用Arduino控制伺服电机。

首先,您将使伺服器回扫并

如何使用Arduino控制伺服电机

零件

要构建本课中描述的项目,您将需要以下零件。

零件 数量

伺服电机 1

10kΩ可变电阻器(pot)

1

半尺寸面包板

1

Arduino Uno R3

1

跳线

1

100 µF电容器

可选

“扫描”的面包板布局

对于本实验,唯一与Arduino连接的是伺服电机。

伺服电机有三根引线。引线的颜色在伺服电机之间有所不同,但是红色引线始终为5V,而GND将为黑色或棕色。另一个引线是控制引线,通常为橙色或黄色。该控制导线连接到数字引脚9。

伺服器方便地端接到一个插座中,我们可以在其中插入跳线,将其链接到面包板,然后再连接到Arduino。

如果伺服器不正常

您的伺服器可能行为异常,您可能会发现只有在将Arduino插入某些USB端口时才会发生这种情况。这是因为伺服器消耗了大量功率,尤其是在电动机启动时,这种突然的高需求足以降低Arduino板上的电压,从而使其自身复位。

如果这发生这种情况,那么通常可以通过在面包板上的GND和5V之间添加一个高值电容器(470uF或更大)来治愈它。

电容器充当电动机的蓄电库,因此在启动时,它会从电动机电容器和Arduino电源。

电容器的较长引线为正极引线,应将其连接到5V。负极引线也经常标有“-”符号。

Arduino的‘Sweep’代码

将以下草图加载到Arduino上,您应该发现舵机立即开始首先向一个方向旋转,然后又向另一个方向旋转

该草图基于标准的“扫描”草图,您可以在Arduino示例中的“ servo”文件夹下找到该草图。如果愿意,可以运行该草图。

下载:文件

复制代码

/*

Adafruit Arduino - Lesson 14. Sweep

*/

#include

int servoPin = 9;

Servo servo;

int angle = 0; // servo position in degrees

void setup()

{

servo.attach(servoPin);

}

void loop()

{

// scan from 0 to 180 degrees

for(angle = 0; angle 《 180; angle++)

{

servo.write(angle);

delay(15);

}

// now scan back from 180 to 0 degrees

for(angle = 180; angle 》 0; angle--)

{

servo.write(angle);

delay(15);

}

} /*

Adafruit Arduino - Lesson 14. Sweep

*/

#include

int servoPin = 9;

Servo servo;

int angle = 0; // servo position in degrees

void setup()

{

servo.attach(servoPin);

}

void loop()

{

// scan from 0 to 180 degrees

for(angle = 0; angle 《 180; angle++)

{

servo.write(angle);

delay(15);

}

// now scan back from 180 to 0 degrees

for(angle = 180; angle 》 0; angle--)

{

servo.write(angle);

delay(15);

}

}

伺服电机由一系列脉冲控制,为了使其易于使用,已创建了一个Arduino库,以便您可以指示伺服电机转至特定角度。

使用伺服的命令类似于内置的Arduino命令,但是由于您始终不会在项目中使用伺服,因此将它们保存在一个称为库的东西中。如果要使用servo库中的命令,则需要通过以下命令告诉Arduino IDE您正在使用该库:

下载:文件

复制代码

#include #include

变量“ servoPin”来定义用于控制伺服器的引脚。

此行:

下载:文件

复制代码

Servo servo; Servo servo;

定义了一个新的变量“ servo”输入“伺服”。该库为我们提供了一种新类型,例如表示伺服的“ int”或“ float”。您实际上可以通过这种方式最多定义八个伺服器,因此,如果我们有两个伺服器,则可以编写如下内容:

下载:文件

复制代码

Servo servo1;

Servo servo2; Servo servo1;

Servo servo2;

在“设置”功能中,我们需要使用以下命令将“ servo”变量链接到将控制伺服器的引脚:

下载:file

复制代码

servo.attach(servoPin); servo.attach(servoPin);

变量‘angle’用于包含当前伺服角度度。在“循环”功能中,我们使用两个“ for”循环首先在一个方向上增加角度,然后在达到180度时又在另一个方向上增加角度。

命令:

下载:文件

复制代码

servo.write(angle); servo.write(angle);

告诉伺服器将其位置更新为参数提供的角度。

“旋钮”的面包板布局

下一步是添加一个锅,以便我们可以通过旋转旋钮来控制伺服器的位置。

您只需要在Arduino上将锅和导线从其滑块添加到A0。

Arduino的“旋钮”代码

使伺服跟随旋钮位置的代码比使其扫掠更简单。

下载:文件

复制代码

/*

Adafruit Arduino - Lesson 14. Knob

*/

#include

int potPin = 0;

int servoPin = 9;

Servo servo;

void setup()

{

servo.attach(servoPin);

}

void loop()

{

int reading = analogRead(potPin); // 0 to 1023

int angle = reading / 6; // 0 to 180-ish

servo.write(angle);

} /*

Adafruit Arduino - Lesson 14. Knob

*/

#include

int potPin = 0;

int servoPin = 9;

Servo servo;

void setup()

{

servo.attach(servoPin);

}

void loop()

{

int reading = analogRead(potPin); // 0 to 1023

int angle = reading / 6; // 0 to 180-ish

servo.write(angle);

}

现在有一个名为“ potPin”的第二个变量。

要设置伺服器的位置,我们从A0读取一个模拟读数。这样我们得到的值在0到1023之间。由于伺服器只能旋转180度,因此我们需要按比例缩小该值。将其除以6将得到一个介于0到170之间的角度,就可以了。

伺服电机

伺服电机的位置由脉冲长度设置。伺服器预计大约每20毫秒接收一次脉冲。如果该脉冲在1毫秒内为高电平,则伺服角度将为零;如果为1.5毫秒,则它将达到其中心位置;如果为2毫秒,则将处于180度。

伺服器的端点可能会有所不同许多伺服系统只能转大约170度您还可以购买可以连续旋转360度的“连续”伺服器。

在伺服器内部

下面的简短视频向您展示了伺服器内部正在发生的情况。

但是请注意,如果像这样拆除伺服器,很有可能不会正确返回。

其他要做的事情

打开“扫描”草图,然后尝试将延迟从15毫秒减少到5毫秒。请注意伺服旋转的速度。

尝试修改“旋钮”草图,以使它不再从旋钮的位置获取伺服角度,而是从串行监视器获取该角度,以便可以从计算机控制伺服。

》提示:要使草图从串行监视器读取度数,可以使用functionSerial.parseInt()。这将从串行监视器中读取一个数字。

责任编辑:wv

收藏 人收藏
分享:

评论

相关推荐

学习Arduino 编程 有个例程很有参考

正在学习Arduino 编程 有个例程很有参考     Proteus仿真ArduinoST7735BMP-SD显示图片 简单测试 包括:P...
发表于 02-24 19:51 58次 阅读
学习Arduino  编程  有个例程很有参考

无轴传动印刷机多伺服电机控制系统的同步需求

机组式卷筒印刷机一般由给纸机组、印刷机组、张力机组、加工机组和复卷机组等机组组成。在传统的有轴传动印....
发表于 02-24 09:08 23次 阅读
无轴传动印刷机多伺服电机控制系统的同步需求

伺服放大器作用原理图解

新型放大器用一块电路板替代传统伺放中的三块电路板,又革除了8只散热器和8只整流二级管及金属底板等,两....
发表于 02-24 09:00 29次 阅读
伺服放大器作用原理图解

印刷机械如何选择步进电机和伺服电机

由于印刷机械的自动化、规范化和数据化的迅速发展,印刷机械对微型电动机的需求越来越多。目前在印刷设备中....
发表于 02-24 08:57 27次 阅读
印刷机械如何选择步进电机和伺服电机

伺服电机低惯量及高惯量的区别

高惯量的伺服电机就比较粗大,力矩大,合适大力矩的但不很快往复运动的场合。因为高速运动到中止,驱动器要....
发表于 02-24 08:28 49次 阅读
伺服电机低惯量及高惯量的区别

伺服电机的概念及应用

伺服电机(servomotor)是指在伺服系统中控制机械元件运转的发动机,是一种补助马达间接变速装置....
的头像 电子魔法师 发表于 02-19 19:49 248次 阅读
伺服电机的概念及应用

LLAKG:Arduino 自动浇花系统(第3集:C语言程序升级与功能优化)

第三集: C语言程序升级与功能改进 我叫张柏峦,今年9岁,我喜欢电子科学 第三集视频中,我们再深入的介绍一下有关“土壤...
发表于 02-12 08:37 412次 阅读
LLAKG:Arduino 自动浇花系统(第3集:C语言程序升级与功能优化)

LLAKG:Arduino 自动浇花系统(第2集:C 语言程序与功能实现)

这是第二集了, 我介绍 C 语言程序, 实现了基本的自动浇花功能, 在调试过程中,还遇到了一些小插曲 ... ... ,很高兴能与大...
发表于 02-07 20:09 2865次 阅读
LLAKG:Arduino 自动浇花系统(第2集:C 语言程序与功能实现)

LLAKG:Arduino 自动浇花系统(第1集:系统构想与功能简介)

我叫张柏峦,今年9岁,我喜欢电子科学 这个视频,是我用 Arduino 制作的一套自动浇花系统,在本集视频里,介绍了 Arduino...
发表于 02-07 00:09 1062次 阅读
LLAKG:Arduino 自动浇花系统(第1集:系统构想与功能简介)

Arduino Pro IDE你终于长大了!

Arduino Pro IDE,你终于长大了!
的头像 黄工的嵌入式技术圈 发表于 02-04 15:06 829次 阅读
Arduino Pro IDE你终于长大了!

如何根据伺服电机来配合减速机

伺服电机是否需要搭配行星减速机,那么在生产中如何根据伺服电机来配合减速机呢?
发表于 01-29 15:36 121次 阅读
如何根据伺服电机来配合减速机

Arduino Nano你没有经历过的坑

如上图,多了 VCC 和 GND,没什么好说,而多的 ADC6 和 ADC7,就是是之前 DIP 封....
的头像 单片机技术宅 发表于 01-29 14:52 777次 阅读
Arduino Nano你没有经历过的坑

航天电器铸就工业4.0急先锋

对此时的航天电器来说,作为我国先进制造业的代表之一,其肩上的责任也悄然发生了变化,既要追赶世界先进水....
的头像 倩倩 发表于 01-23 07:38 459次 阅读
航天电器铸就工业4.0急先锋

PLC与Arduino的工业控制

Arduino使用PI控制功能-这种类型的回路不需要派生-从流量计读取信号并调节阀以达到并保持设定值....
的头像 倩倩 发表于 01-22 14:50 668次 阅读
PLC与Arduino的工业控制

使用RDA5807制作收音机的Arduino代码免费下载

本文档的主要内容详细介绍的是使用RDA5807制作收音机的Arduino代码免费下载。
发表于 01-17 17:35 392次 阅读
使用RDA5807制作收音机的Arduino代码免费下载

直流伺服电机 有么有好的厂家推荐 小尺寸的?

大家好  国内有没有好的 直流伺服电机厂家推荐,   要求精度高,扭矩大 , 尺寸小。。 非常非常感谢推荐 ...
发表于 01-12 12:42 358次 阅读
直流伺服电机 有么有好的厂家推荐 小尺寸的?

hc-05蓝牙接收手机通知并显示

想用单片机做一个类智能手环,hc-05主从机一体怎么接收手机的通知比如说短信和应用通知用这个软件和串口通讯可不可以 ...
发表于 01-11 11:55 271次 阅读
hc-05蓝牙接收手机通知并显示

如何自己制作PM2.5检测器详细资料解析

各位心灵手巧的Maker小伙伴们,是时候动手做一个空气污染监测装置了。利用一个空气监测传感器搭配Ar....
发表于 01-10 16:15 225次 阅读
如何自己制作PM2.5检测器详细资料解析

ARDUINO的学习手册教程免费下载

Arduino是一个能够用来感应和控制现实物理世界的一套工具。它由一个基于单片机并且开放源码的硬件平....
发表于 01-09 16:26 320次 阅读
ARDUINO的学习手册教程免费下载

交流伺服电机三种控制方式

交流伺服电机主要由定子和转子构成,在没有控制电压时,定子内只有励磁绕组产生的脉动磁场,转子静止不动。....
的头像 电子魔法师 发表于 01-09 14:42 639次 阅读
交流伺服电机三种控制方式

交流伺服电机优点_交流伺服电机的应用

交流伺服电机的优点就是速度控制特性良好,在整个速度区内可实现平滑控制,几乎无振荡,90%以上的高效率....
的头像 电子魔法师 发表于 01-09 14:31 464次 阅读
交流伺服电机优点_交流伺服电机的应用

直流伺服电机分类_直流伺服电机的结构

本文主要阐述了直流伺服电机分类及结构。
的头像 电子魔法师 发表于 01-09 14:18 593次 阅读
直流伺服电机分类_直流伺服电机的结构

直流伺服电机机械特性_直流伺服电机的控制方式

本文主要阐述了直流伺服电机机械特性及它的控制方式。
的头像 电子魔法师 发表于 01-09 14:13 507次 阅读
直流伺服电机机械特性_直流伺服电机的控制方式

直流伺服电机的优缺点有哪些

本文主要阐述了直流伺服电机的优缺点。
的头像 电子魔法师 发表于 01-09 14:07 587次 阅读
直流伺服电机的优缺点有哪些

两款伺服电机控制电路图

本文主要阐述了伺服电机控制电路图。
的头像 电子魔法师 发表于 01-09 13:59 749次 阅读
两款伺服电机控制电路图

关于永磁同步电机电感的问题

就是这个说明书中给的电感参数是相间电感是什么意思?那实际计算所用的Lq、Ld应该怎么得到? ...
发表于 01-08 21:02 330次 阅读
关于永磁同步电机电感的问题

Arduino案例实战卷六的电路图合集免费下载

本文档的主要内容详细介绍的是Arduino案例实战卷六的电路图合集免费下载。
发表于 01-08 08:00 389次 阅读
Arduino案例实战卷六的电路图合集免费下载

Arduino UNO的电路原理图免费下载

本文档的主要内容详细介绍的是Arduino UNO的电路图原理图免费下载。
发表于 01-06 08:00 284次 阅读
Arduino UNO的电路原理图免费下载

基于微机技术和执行器技术为一体的电动执行机构的设计方案

提出一种新型电动执行机构的设计方案,详细介绍了该执行机构各功能元件的选型与设计、阀位及速度控制原理以....
发表于 01-05 09:06 182次 阅读
基于微机技术和执行器技术为一体的电动执行机构的设计方案

伺服电机和力矩电机的区别

本文先后阐述了伺服电机和力矩电机特点及原理。随后分析了伺服电机和力矩电机的区别。
发表于 12-30 11:37 345次 阅读
伺服电机和力矩电机的区别

arduino相关知识

Arduino,51,STM32 之间的区别51单片机、STM32单片机等。但他们对于普通开发者来说门槛相对较高,需要有一定编程和硬件相...
发表于 12-27 14:51 602次 阅读
arduino相关知识

Arduino使用PWM来实现电机调速

硬件设备
发表于 12-25 18:37 520次 阅读
Arduino使用PWM来实现电机调速

使用Arduino来进行实时的工业控制

随着公司开发硬件和软件来支持各种有趣的应用程序,地下机器人制造商的“制造者”世界继续增长。已经出现了....
发表于 12-23 14:21 738次 阅读
使用Arduino来进行实时的工业控制

Arduino你了解的程度有多少

Arduino主要支持较简单的程序,而且你没有办法在Arduino中安装操作系统,而如果要在其中加入....
发表于 12-23 13:53 493次 阅读
Arduino你了解的程度有多少

伺服电机的三种控制场景模式

伺服电机作为一个高精度的控制电机,已被广泛的运用与各个行业。一般地,伺服电机在运用过程中,有三种控制....
的头像 电子魔法师 发表于 12-22 10:08 921次 阅读
伺服电机的三种控制场景模式

伺服电机怎样避免信号干扰

伺服电机有两条线,一条动力电缆,一条编码器电缆。动力电缆走的是大电流,编码器电缆走的是弱电脉冲信号。....
的头像 电子魔法师 发表于 12-22 09:25 1299次 阅读
伺服电机怎样避免信号干扰

Arduino UNO开发板的详细资料介绍

Arduino UNO是Arduino入门的最佳选择,在编著本书时,其最新的版本为UNO R3,本书....
发表于 12-18 08:00 607次 阅读
Arduino UNO开发板的详细资料介绍

Arduino的集成开发环境的安装和使用教程

本文档的主要内容详细介绍的是Arduino的集成开发环境的安装和使用教程。
发表于 12-18 08:00 231次 阅读
Arduino的集成开发环境的安装和使用教程

Arduino技术指南PDF电子书免费下载

本书主要讲解了Arduino开发板的物理特性与接口功能,Arduino使用的各种AVR微控制器, A....
发表于 12-12 08:00 340次 阅读
Arduino技术指南PDF电子书免费下载

招聘 开源硬件工程师 一枚,坂田杨美地铁站附件

公司市场比较成熟的树莓派产品,现在想要自己研发,如果招聘有问题,请各位大神指正。 招聘 开源硬件工程师    薪...
发表于 12-10 15:17 438次 阅读
招聘 开源硬件工程师 一枚,坂田杨美地铁站附件

步进电机控制器与伺服电机控制器的区别

步进电机控制器:它是一种能够发出均匀脉冲信号的电子产品,它发出的信号进入步进电机驱动器后,会由驱动器....
发表于 12-10 08:49 519次 阅读
步进电机控制器与伺服电机控制器的区别

伺服电机接线相序错了会怎么样

交流伺服电动机定子的构造基本上与电容分相式单相异步电动机相似。其定子上装有两个位置互差90°的绕组,....
发表于 12-10 08:44 819次 阅读
伺服电机接线相序错了会怎么样

伺服电机编码器的学习

编码器码盘的材料有玻璃、金属、塑料,玻璃码盘是在玻璃上沉积很薄的刻线,其热稳定性好,精度高,金属码盘....
发表于 12-09 09:18 493次 阅读
伺服电机编码器的学习

伺服电机是如何实现精准定位?如何理解它的闭环特性?

首选我们看下交流伺服系列的组成。由伺服驱动器和伺服电机组成。这里我们主要讲述伺服驱动的工作原理,电机....
发表于 12-09 09:09 805次 阅读
伺服电机是如何实现精准定位?如何理解它的闭环特性?

PLC使用脉冲方式控制伺服电机

伺服驱动器通过接收的脉冲频率和数量来控制伺服电机运行的距离和速度。比如,我们约定伺服电机每10000....
发表于 12-09 08:51 840次 阅读
PLC使用脉冲方式控制伺服电机

DA1469X开发工具包PRO的用户手册免费下载

DA1469X开发工具包PRO可作为主板提供两个子面板之一(VFBGA-100/LFBGA-8)的插....
发表于 12-09 08:00 223次 阅读
DA1469X开发工具包PRO的用户手册免费下载

红外壁障模块的详细资料合集

本文档的主要内容详细介绍的是红外壁障模块的详细资料合集包括了:Arduino参考程序,YL-62传感....
发表于 12-09 08:00 244次 阅读
红外壁障模块的详细资料合集

Arduino转接控制板的电路原理图免费下载

本文档的主要内容详细介绍的是Arduino转接控制板的电路原理图免费下载。
发表于 12-06 16:02 256次 阅读
Arduino转接控制板的电路原理图免费下载

Arduino教学机器人的使用教程免费下载

本文档的主要内容详细介绍的是Arduino教学机器人的使用教程免费下载包括了:第一章 Arduino....
发表于 12-06 11:09 244次 阅读
Arduino教学机器人的使用教程免费下载

如何使用语音模块和Arduino进行交流

本文档的主要内容详细介绍的是如何使用语音模块和Arduino进行交流的资料免费下载。
发表于 12-05 17:03 295次 阅读
如何使用语音模块和Arduino进行交流

如何从零开始学Arduino教材免费下载

欢迎来到Arduino的世界!Arduino是一个开源的开发平台,在全世界范围内成千上万的人正在用它....
发表于 12-03 14:26 279次 阅读
如何从零开始学Arduino教材免费下载

LECP3和LECA6系列系列电缸的操作手册免费下载

  本文档的主要内容详细介绍的是LECP3和LECA6系列系列电缸的操作手册免费下载。 LEC 系列....
发表于 12-02 11:40 138次 阅读
LECP3和LECA6系列系列电缸的操作手册免费下载

测试比较四种Arduino Nano全新型号的数据详细说明

本文档的主要内容详细介绍的是测试比较四种Arduino Nano全新型号的数据详细说明。
发表于 11-29 15:31 262次 阅读
测试比较四种Arduino Nano全新型号的数据详细说明

如何使用Arduino Servo库驱动伺服电机

PCA9865芯片的“全部通话”地址为0x70 。这是已配置地址的补充。将背包的地址设置为0x71或....
的头像 39度创意研究所 发表于 11-27 11:24 1813次 阅读
如何使用Arduino Servo库驱动伺服电机

Beagle Board的使用

如果收到错误的设备描述符read/64,错误-71,重新引导并使用空格键停止引导过程。然后在U-Bo....
的头像 39度创意研究所 发表于 11-27 10:46 1204次 阅读
Beagle Board的使用

如何安装Arduino IDE以与Adafruit的板一起使用

通常可以忽略这些内容,并且不应干涉与程序上传。不幸的是,Linux的USB内核与Trinket/Ge....
的头像 39度创意研究所 发表于 11-27 10:38 1312次 阅读
如何安装Arduino IDE以与Adafruit的板一起使用

2.8英寸TFT触摸屏与Arduino的使用

要制作新的位图,请确保它们小于240 x 320像素,并以 24位BMP格式保存!即使它们不是24位....
的头像 39度创意研究所 发表于 11-27 10:31 1980次 阅读
2.8英寸TFT触摸屏与Arduino的使用

Adafruit数据记录仪防护板的说明

这是一个方便的Arduino防护板:我们有很多人在寻找专用且设计良好的数据记录防护板。我们努力设计出....
的头像 39度创意研究所 发表于 11-27 10:21 1263次 阅读
Adafruit数据记录仪防护板的说明

如何在计算机上安装Arduino库

Arduino库是共享代码的便捷方法,例如设备驱动程序或常用的实用程序功能。本指南详细介绍了如何在计....
的头像 39度创意研究所 发表于 11-27 09:42 1445次 阅读
如何在计算机上安装Arduino库

Arduino学习指南

Adafruit商店中最酷的产品之一是汽车仪表步进电机,这是一种带有指针指示器的步进电机。该仪表可用....
的头像 39度创意研究所 发表于 11-27 08:40 2287次 阅读
Arduino学习指南

AEDM-5XXX 高分辨率3通道外壳编码器模块套件,带有卡入式盖板

Broadcom AEDM-5xxx是一系列高分辨率3通道内置编码器模块套件,带有专利的卡扣式盖板,可快速组装。每个AEDM-5xxx套件包含AEDT-981x模块和胶片码盘。 AEDM-5xxx的输出是正交的两个方波加上一个索引脉冲信号,它是在码盘完全旋转时产生的。正交信号和索引脉冲通过位于上面的五个0.025英寸方形引脚访问。 0.100英寸中心。 这些无轴承式编码器套件设计用于快速方便地安装在电机上。对于大直径电机,AEDM-59xx系列提供外部安装耳的选项。 AEDM-5xxx支持的标准编码分辨率为2000和5000 CPR。有关其他解决方案,请咨询当地Broadcom销售代表。  功能 带索引脉冲输出的双通道正交输出 编码分辨率高达5000 CPR 工作温度-40°C至+ 85°C 快速简便组装 无需调整信号 成本效益解决方案 小尺寸 TTL兼容输出 单5V电源,带有±10%容差 外置安装耳机选件可用于大型电机。 应用 AEDM-5xxx适用于各种商业和电子产品。工业运动控制应用包括但不限于:   直流伺服电机 线性和旋转执行器 工厂自动化设备 3D打印机 机器人技术 无人驾驶飞行器(UAV)或无人驾驶飞机  ...
发表于 07-04 12:26 3432次 阅读
AEDM-5XXX 高分辨率3通道外壳编码器模块套件,带有卡入式盖板