Arduino使用电位计控制舵机
1、准备实验需要用到的硬件,如图所示:

2、如下图所示进行硬件的连接,此步我们先不连接任何其他元件,只需将Arduino UNO控制器连接到电脑

3、如下图所示,将下列程序复制到Arduino IDE中或者可以直接在最后一步中提供的百度网盘地址中直接下载代码和 Fritzing 电路图
#include <Servo.h>
Servo servo1;
void setup()
{
servo1.attach(5);
Serial.begin(9600);
}
void loop()
{
int angle = analogRead(A0);
angle = map(angle, 0, 1023, 0, 180);
Serial.print("angle = ");
Serial.println(angle);
servo1.write(angle);
delay(15);
}

4、如图所示,选择正确的板卡型号和端口,将程序上传到控制器中。


5、如图所示,程序上传无误的情况下 Arduino IDE 软件会显示如下结果,在上传过程中,Arduino 控制器板载的 TX RX 灯会频闪

6、按照下图中的电路,进行实验硬件的连接
注意:舵机线一种是:红、黑、黄(红色连接 Vcc、黑色连接 GND、黄色连接信号 S)
还有较为常见的一种是:棕、红、橙(棕色连接 GND、红色连接 Vcc、橙色连接信号 S)

7、实验效果如图所示,舵机角度会随着电位计的转动而转动,当旋转角度电位计逆时针转动时,舵机也逆时针转动;当旋转角度电位计顺时针转动时,舵机也顺时针转动,并且通过串口可以打印出现在舵机的角度值是多少。


8、代码回顾:
(1)Serial.begin(9600); 打开串口通信,并设置串口波特率为9600
(2)Serial.print(); 串口数据打印
Serial.println(); 串口数据打印,并换行
(3)angle=map(angle, 0, 1023, 0, 180);映射模拟量的值到 0 - 180° 之间
代码在程序中的位置如图所示

9、为了方便大家实验,防止在复制代码的时候出现错误,特将代码和电路图
Fritzing源文件上传至网盘供大家下载学习。下载地址:
http://pan.baidu.com/s/1c191sSK,打开链接后,如图所示,点击下载即可
