Arduino控制舵機
來自專欄 玩轉物聯網硬體
一、使用工具
1、Arduino UNO
2、RB-15PG舵機
二、參數(數據來自奧松機器人官網)
1.重量:9g
2.尺寸:22.3 mmx 11.8mm x 26.3mm
3.無負載操作速度:0.12秒/60度(4.8V);0.1秒/60度(6.0V)
4.堵轉扭矩:1.3kg·cm(4.8V);1.5kg·cm(6.0V)
5.使用溫度:-30~+60攝氏度
6.死區設定:4微秒
7.工作電壓:4.8V~6V
8.附件:三種功能舵角、固定螺釘。
註:舵機型號可根據自身條件和需要自行選擇。
三、連線
舵機棕色為接地線,紅色為電源正極線,橙色為信號線,分別對應arduino單片機的GND、VCC、引腳9。然後通過專用數據線將arduino與電腦連接在一起打開Arduino IDE開始編程
四、編程
1、程序功能
程序可以實現通過串口控制舵機旋轉角度
2、代碼
#include<Servo.h>//引入舵機控制庫文件
Servo myservo;//實例化一個舵機對象來控制舵機
void setup(){
myservo.attach(9);//聲明舵機控制介面為引腳9
Serial.begin(9600);//連接到串列埠,波特率為9600
Serial.println("seral_simple ready" ) ;//串口輸出提示內容
}
void loop()//將0到9的數轉化為0到180角度,並讓LED閃爍相應數的次數
{
int val=Serial.read();//讀取串列埠的值
if(val>=0&&val<=18)
{
val=val-0;//將特徵量轉化為數值變數
val=val*10;//角度設置為10的倍數
Serial.print("moving servo to ");//舵機旋轉角度輸入0-18任意一個數
Serial.print(val,DEC);//以十進位形式輸出舵機旋轉角度
Serial.println();//實現換行功能
myservo.write(val);//控制舵機旋轉輸入的角度
}
}
五、拓展
1、功能:控制舵機實現從0到180度再從180~0旋轉
2、代碼:
#include<Servo.h>
Servo myservo;
int pos = 0; //舵機初始角度
void setup()
{
myservo.attach(9);
}
void loop()
{
for(pos = 0; pos < 180; pos += 1) //角度從0到180度
{
myservo.write(pos); // 舵機旋轉角度為pos
delay(15); //延時15ms
}
for(pos = 180; pos>=1; pos-=1) //
}
myservo.write(pos); //
delay(15); //
}
}
六、用途
1、航模中會經常使用;
2、智能小車、機械臂等這樣比較小功率的場合使用;
3、工業上也有用,大型的液壓舵機就是一種。
參考來源:
1.Arduino官方網站
2.Arduino中文社區
3.奧松機器人官網
推薦閱讀:
※【圖形化學習 Arduino】(二)輸入與輸出
※DIY智能溫濕度計(上)——數據獲取
※使用TFT LCD製作Arduino觸摸屏計算器
※智能積木施魔法,建座小城市不是問題!
※Processing 能做什麼?
TAG:Arduino |