我正在使用Arduino UNO,并且我有5台MG995伺服电机。但是,当我使用1台伺服电机测试机器时,它不起作用。 我的联系没错。端口还可以,但是我不知道为什么它不起作用。
我的一台伺服电机的代码。
#include<Servo.h> // include server library
Servo ser; // create servo object to control a servo
int poser = 0; // initial position of server
int val; // initial value of input
void setup() {
Serial.begin(9600); // Serial comm begin at 9600bps
ser.attach(9);// server is connected at pin 9
}
void loop() {
if (Serial.available()) { // if serial value is available
val = Serial.read();// then read the serial value
if (val == 'd') { //if value input is equals to d
poser += 1; //than position of servo motor increases by 1 ( anticlockwise)
ser.write(poser);// the servo will move according to position
delay(15);//delay for the servo to get to the position
}
if (val == 'a') { //if value input is equals to a
poser -= 1; //than position of servo motor decreases by 1 (clockwise)
ser.write(poser);// the servo will move according to position
delay(15);//delay for the servo to get to the position
}
}
}
答案 0 :(得分:0)
只要您按d的次数超过波塞尔停留在范围内,代码就没有什么明显的错误。
poser
设置限制,使其保持在0到180之间