电竞比分网-中国电竞赛事及体育赛事平台

分享

arduino舵機servo庫介紹和檢查調整舵機的兩個方法

 duping812 2020-04-13

servo類函數(shù)的用法

attach 連接舵機(自帶庫僅9/10腳有效)
write 角度控制
writeMicroseconds() 更精準的角度控制(μm級)
read() 讀上一次舵機轉動角度
attached() 檢查舵機及是否連接控制板上
detach() 斷開舵機連接,使接口(9/10腳)可做PWM輸出

servo類函數(shù)語法

attach servo.attach(pin)/ servo.attach(pin, min, max)
servo.write(angle)
servo.writeMicroseconds(μm)
servo.read()
servo.attached()
servo.detach()
  1. 讓舵機從0°轉到180°再到0°
#include <Servo.h> 
Servo myservo;  			//創(chuàng)建一個舵機控制對象
                     		 // Arduino自帶的Servo函數(shù)庫只可以同時控制兩個模擬舵機;
                     		 //且最好使用D9 D10腳;
                     		 //若需要控制多個舵機則需要用pwm功能;
                     		 //使用Servo類最多可以控制8個舵機
int pos = 0;   				// 該變量(pos)用于存儲舵機角度位置
/*~~~~~~~~~~~~~~~~~~~~~~~~~~樸實的分割線~~~~~~~~~~~~~~~~~~~~~~~~~~ */
void setup() 
{ 
  myservo.attach(9); 		 // 該舵機由arduino第九腳控制
} 
/*~~~~~~~~~~~~~~~~~~~~~~~~~~樸實的分割線 ~~~~~~~~~~~~~~~~~~~~~~~~~~ */ 
void loop() 
{ 
  for(pos = 0; pos < 180; pos += 1)  // 從0°到180°運動 
  {                                 // 每次步進一度,實際會有些偏差屬正常現(xiàn)象
    myservo.write(pos);        		// 指定舵機轉向的角度
    delay(15);                      // 等待15ms讓舵機到達指定位置
  } 
  for(pos = 180; pos>=1; pos-=1)   //從180°到0°運動  
  {                                
    myservo.write(pos);         	// 指定舵機轉向的角度 
    delay(15);                      // 等待15ms讓舵機到達指定位置 
  } 
  //myservo.write(pos);		//注釋主函數(shù)的內容,取消注釋此內容
  //將pos換為具體的0到180間任意數(shù),上電可直接讓舵機轉到該位置
}

  1. 用轉動滑動電位器調整
#include <Servo.h> 

Servo myservo;  
 //創(chuàng)建一個舵機控制對象  

int potpin = 0; 					 //該變量用于存儲用電位器讀出的模擬值
int val;    
// 該變量用與存儲舵機角度位置  

void setup() 
{ 
  myservo.attach(9);  
// 該舵機由arduino第九腳控制  
} 

void loop() 
{ 
  val = analogRead(potpin);            //讀取電位器控制的模擬值 (范圍在0-1023) 
  val = map(val, 0, 1023, 0, 179);     //將電位器讀取的(0,1023)規(guī)劃為(0,179)
  myservo.write(val);                  
// 指定舵機轉向的角度  
  delay(15);                           
// 等待15ms讓舵機到達指定位置   
}

因為在制作一個東西時需要用到舵機,在調整舵機零點的時候犯了糊涂,耽誤了不少時間,調整好后索性做一次總結,供大家參考!
參考于[https://www./en/Reference/Servo]
及[(https://www./thread-1038-1-1.html)]

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多