連續型伺服馬達基本控制 Spread the love 介紹 : 連續型伺服馬達跟標準的伺服馬達有所不同。它們通常用於需要連續旋轉而不是特定角度位置的應用。與普通馬達相似,但具有內置的控制電路,可以以不同的速度和方向旋轉。常用於輸送帶系統、機器人和其他需要連續旋轉運動的應用。總之,連續型伺服馬達是一種非常有用的設備,特別是需要連續旋轉而不是固定位置的時候。 實驗材料 : LED燈 X5 電阻 220歐姆 X5 連續型伺服馬達 x1 Arduino線路圖 Arduino程式碼程式碼說明 : 在序列埠監控視窗分別輸入 D、R、N、F、Z,觀察馬達轉動的方向和速度及LED燈號的狀態。 也可自行調整馬達的運轉速度 Code#include <Servo.h>Servo servo;int led[5]; //建立5個led燈int i; //迴圈變數void setup() { Serial.begin(9600); servo.attach(4); //連接馬達信號線 servo.write(90); //馬達初始狀態為停止 for(i=0;i<=4;i++){ led[i]=8+i; //連接led燈的腳位 pinMode(led[i],OUTPUT); }}void loop() {if(Serial.available()) //是否有輸入{ char ch=Serial.read(); //讀取輸入的資訊 if(ch=='d'||ch=='D') //判斷輸入的資訊是否為D { servo.write(180); //以最快的速度逆時針轉動 digitalWrite(led[0],1); digitalWrite(led[1],0); digitalWrite(led[2],0); digitalWrite(led[3],0); digitalWrite(led[4],0); Serial.println("逆時針快速旋轉"); }else if (ch=='R'||ch=='r') //判斷輸入的資訊是否為R { servo.write(0); //以最快的速度逆時針轉動 digitalWrite(led[0],0); digitalWrite(led[1],1); digitalWrite(led[2],0); digitalWrite(led[3],0); digitalWrite(led[4],0); Serial.println("順時針快速旋轉"); }else if (ch=='n'||ch=='N') //判斷輸入的資訊是否為N { servo.write(90); //停止轉動 digitalWrite(led[0],0); digitalWrite(led[1],0); digitalWrite(led[2],1); digitalWrite(led[3],0); digitalWrite(led[4],0); Serial.println("停止"); }else if (ch=='F'||ch=='f') //判斷輸入的資訊是否為F { servo.write(135); // 馬達逆時針慢速轉動 digitalWrite(led[0],0); digitalWrite(led[1],0); digitalWrite(led[2],0); digitalWrite(led[3],1); digitalWrite(led[4],0); Serial.println("逆時針慢速旋轉"); }else if (ch=='Z'||ch=='z') //判斷輸入的資訊是否為Z { servo.write(45); // 馬達順時針慢速轉動 digitalWrite(led[0],0); digitalWrite(led[1],0); digitalWrite(led[2],0); digitalWrite(led[3],0); digitalWrite(led[4],1); Serial.println("順時針慢速旋轉"); } }} 上一 文章 自動追光系統 下一 文章 28BYJ-48步進馬達基本控制