#include <Servo.h>
int led = 8;
Servo myservo;
int pos = 0;
void setup(){
}
void loop(){
doAngle(0);
doAngle(30);
doAngle(60);
doAngle(90);
}
void doAngle(int thisAngle){
myservo.attach(led);
myservo.write(thisAngle);
delay(1000);
myservo.detach();
delay(5000);
}
拆了一個舵機, 可以改成連續旋轉, 藉由欺騙電路旋轉角度來達成速度控制
步驟1. 把舵機背面4根螺絲鬆開
步驟2. 把塑膠齒輪下部一個阻擋的部位剪掉修平整
步驟3. 把電路板上連接可變電阻的3根接線解焊並確保板子接腳洞暢通(木頭牙籤是好幫手)
步驟4. 把2個220Ω焊在一起拉出3根腳再焊進步驟3留下的3個洞裡
步驟5. 注意可變電阻軸部周圍還有阻擋連續轉動的塑膠部位修掉, 可變電阻軸部也有金屬部分卡卡, 把它稍為調整
步驟6. 把全部的東西塞回去
原則上, 舵機在doAngle(180)要停止, 但是會有誤差, 所以要在180前後測試, 找到停止的數值
照理說, doAngle(0)跟doAngle(360)的速度要最快, 方向相反
數值越靠近180則變慢