一 硬件
舵机(Servo)是一种可以操纵舵面(操纵面)转动的一种执行部件,有多种分类【1】,淘宝购买的是Micro Servo SG90,转动角度0°~180°。舵机内部工作原理大致搜了一下【2】,涉及PWM,感觉不太懂.
舵机会引出三根线。红色连到+5V上,棕色(有些是黑的)连到GND。还有一根是黄色或者橘色,连到数字引脚9(这里有个疑惑,是不是必须连到PWM口?)
二 代码
功能:用电位器控制舵机的转动角度,代码如下:
//用电位器控制舵机角度
#include <Servo.h>//声明调用Servo.h库
Servo myservo;//创建一个舵机对象
int potpin=A0;//定义模拟口A0
int val=0; //舵机位置
void setup() {
myservo.attach(9);//设置舵机引脚!即硬件引脚9上连接一个舵机,将其与上面创建的对象连接起来
Serial.begin(9600);
}
void loop() {
val = analogRead(potpin);//从模拟口读出值
int pos = map(val,0,1023,0,179);//转换成角度0