參考鏈接:https://blog.csdn.net/u010944680/article/details/42319775
利用arduino設置機械臂角度
代碼如下:
#include <Servo.h>
Servo myservo0;
Servo myservo1;
Servo myservo2;
Servo myservo3;
Servo myservo4;
//創建一個舵機控制對象
// 該變量用與存儲舵機角度位置
void setup()
{
Serial.begin(9600);
//用的引腳爲2、3、4、5、6、
myservo0.attach(2);
myservo1.attach(3);
myservo2.attach(4);
myservo3.attach(5);
myservo4.attach(6);
myservo3.write(0);
myservo4.write(0);
// 該舵機由arduino第2,3,4,5,6腳控制
}
void loop()
{
if (Serial.available()) { // 檢查串口緩存是否有數據等待傳輸
char servoName = Serial.read(); //獲取整數,電機指令中電機編號信息
Serial.print("servoName = ");
Serial.print(servoName);
Serial.print(" , ");
int data = Serial.parseInt(); //獲取電機指令中電機角度信息
switch(servoName){ //根據電機指令中電機信息決定對哪一個電機進行角度設置
case 'a': // 電機指令a
myservo0.write(data);
Serial.print("Set base servo value: ");
Serial.println(data);
break;
case 'b': // 電機指令b
myservo1.write(data);
Serial.print("Set rArm servo value: ");
Serial.println(data);
break;
case 'c': // 電機指令c
myservo2.write(data);
Serial.print("Set fArm servo value: ");
Serial.println(data);
break;
case 'd': // 電機指令d
myservo3.write(data);
Serial.print("Set claw servo value: ");
Serial.println(data);
break;
}
}
}