SG90伺服电机是一种小型且轻巧的伺服电动机,通常用于机器人,RC车辆和其他需要精确角度控制的项目。在本教程中,我们将向您展示如何将SG90伺服电机与Arduino连接在一起。
你需要什么
- SG90伺服电机
- Arduino董事会(例如Uno,Mega,Nano)
- 面包板
- 跳线
- 外部电源(多个伺服器的可选)
- 安装了带有Arduino IDE的计算机
步骤1:了解SG90伺服电机
SG90伺服电机有三个销钉:
SG90针 | 功能 |
---|---|
棕色的 | 地面(GND) |
红色的 | 电力(VCC) |
橙子 | 信号(PWM) |
笔记: 伺服电动机以4.8V-6V运行。如果您要为多个伺服器提供动力,请使用外部电源。
步骤2:将SG90接线到Arduino
这是将SG90伺服电机连接到Arduino Uno的方法:
SG90针 | Arduino Pin |
---|---|
棕色的 | gnd |
红色的 | 5V |
橙子 | 引脚9 |
步骤3:安装伺服库
Arduino IDE包括一个内置的伺服库,因此您无需安装任何额外的东西。
步骤4:上传代码
这是一个控制SG90伺服电机的简单示例代码:
#include <Servo.h>
Servo myServo; // Create a Servo object
void setup() {
myServo.attach(9); // Attach the servo to pin 9
Serial.begin(9600);
Serial.println("SG90 Servo Test");
}
void loop() {
for (int angle = 0; angle <= 180; angle += 1) { // Sweep from 0 to 180 degrees
myServo.write(angle); // Set servo to angle
delay(15); // Wait for the servo to reach the position
}
for (int angle = 180; angle >= 0; angle -= 1) { // Sweep from 180 to 0 degrees
myServo.write(angle); // Set servo to angle
delay(15); // Wait for the servo to reach the position
}
}
步骤5:测试设置
- 通过USB将您的Arduino连接到计算机。
- 打开Arduino IDE并选择正确的 木板 和 港口 来自 工具 菜单。
- 单击 上传 按钮。
- 一旦上传代码,伺服电机将开始从0到180度扫描并连续返回。
步骤6:动态控制伺服器
您还可以使用串行监视器动态控制伺服器。这是一个例子:
#include <Servo.h>
Servo myServo;
void setup() {
myServo.attach(9);
Serial.begin(9600);
Serial.println("Enter an angle (0-180):");
}
void loop() {
if (Serial.available()) {
int angle = Serial.parseInt(); // Read the angle from Serial Monitor
if (angle >= 0 && angle <= 180) {
myServo.write(angle);
Serial.print("Servo set to: ");
Serial.println(angle);
} else {
Serial.println("Invalid angle. Enter a value between 0 and 180.");
}
}
}
故障排除
- 伺服器不动: 仔细检查接线并确保在代码中定义正确的销钉。
- 抖动伺服器: 使用外部电源提供稳定的电源。
- 伺服过热: 避免将伺服器保持长时间的位置。
SG90伺服的应用
- 机器人的武器
- 板和倾斜相机安装座
- RC车辆
- 自动开门器
结论
您已成功将SG90伺服电机与Arduino连接起来,并控制了其位置。 SG90的多功能性和易用性使其非常适合各种DIY和机器人项目。尝试不同的控制方法,并创建自己的伺服动力项目!