學習目標 : 認識faya雙軸伺服馬達模組的功能及使用方式
學習時間 : 45min
示範模組 : (1) faya brcickNano
(2) faya雙軸伺服馬達模組
(3) faya搖桿模組
工具 : (1) 樂高積木(相容)
====================功能介紹====================
faya雙軸伺服馬達模組利用2顆伺服馬達組合而成,伺服馬達型號SG-90,它將直流馬達、齒輪箱、與控制電路包在一藍色塑膠盒裡,並引出電源、地和控制腳位,只要使用符合規則的控制信號,就能夠操作連接齒輪上方控制柄的角度,範圍可達180度。
faya雙軸伺服馬達模組分成3大部分,上方的雲台區、中間的伺服馬達區(2顆)和下方的模組板,由於體積較大,買來後需要自行組裝下方的模組板,大家可以參考隨盒的組裝說明書,或從這邊下載! 比較需要注意的地方就是訊號/電源/地的接線部分,分別為橘色/紅色/棕色,請依序和面板上的 M / VCC / GND 相連
faya雙軸伺服馬達模組的面板如下所示,模組擁有兩個輸入埠,YM1和XM2,分別用來控制M1馬達(Y軸)和M2馬達(X軸),輸入埠的訊號格式為PWM訊號,我們會在原理知識介紹。
- 當輸入符合規則的PWM訊號到YM1埠時,可控制M1上方馬達
- 當輸入符合規則的PWM訊號到YM1埠時,可控制M2下方馬達
接下來介紹使用指令,Arduino內建了伺服馬達(Servo)的函示庫,透過寫好的函示,只要幾行指令就能夠精準地控制伺服馬達,以下介紹本範例中用到的函示
- #include<Servo.h>;
- Servo 物件名稱;
(例) 當建構物件名稱為"fayaServoYM1時",需宣告:
Servo fayaServoYM1;
- 物件名稱.attach(pin,min,max);
物件名稱: 程式開頭以建構的物件名稱
pin : 連接此伺服的腳位,一定要指定PWM腳,如3、5、6、9、10、11
(例) 當指定pin5連接到物件名稱為"fayaServoYM1",需宣告
fayaServoYM1.attach(5);
- 物件名稱.write(angle);
物件名稱: 程式開頭以建構的物件名稱
angle : 旋轉角度(0~180)
(例) 當要設定物件名稱為"fayaServoYM1"旋轉角度為100度時,需宣告
fayaServoYM1.write(100);
====================原理知識====================
以下解釋提供給有需要知道背後原理的人:
faya雙軸伺服馬達電路圖如下所示,除了外加電容和bead抗電源雜訊,其餘部分剩下電源、地和兩個馬達的訊號線,位於模組上的輸入埠 YM1、XM2。
伺服馬達SG90透過PWM脈波訊號來控制轉動位置,訊號的頻率為50Hz,也就是20ms的脈波寬度,透過脈波寬度的改變,就能改變馬達最後停止位置。
從datasheet可以得知控制角度為180度 (-90 ~ 0 ~ 90),欲從最左邊的-90度到最右邊的90度,相對的脈波寬度約為 (1ms ~1.5ms ~ 2ms)。
=====================範例實作====================
了解模組功能(原理)後,我們用以下範例來展示模組的功能:
目標:
(1) 左右移動搖桿時,伺服馬達左右擺動
(2) 上下移動搖桿時,伺服馬達逆順轉動
接線:
(1) 電源線連接
如下圖所示,連接的說明請看這篇文章 或簡易版。
(2) 訊號線連接
Arduino_5 ===> 雙軸伺服馬達模組_YM1
Arduino_6 ===> 串列七段顯示模組_XM2
Arduino_A5 ===> 搖桿模組_VRX
Arduino_A4 ===> 搖桿模組_VRY
範例程式:
備注:
- L34~L39 : 搖桿的X-Y軸讀取到的電壓值(0~1024),轉化成0~180的角度位置
- L26~L27 : 網路上有些文章在討論SG90伺服馬達的校正,由於Servo函示預設的脈衝寬度範圍是544到2400µs,但SG90是500到2400us,我們可以將此兩行程式修改成以下,再比較結果。
fayaServoYM1.attach(YM1,500,2400);
fayaServoXM2.attach(XM2,500,2400);
-L40 : 延遲讓馬達有時間能夠反應,太長的話,反應會不靈敏,太短的話,會反應不過來,大家可試試看!
範例結果:
討論:
faya雙軸伺服馬達模組,搭配了樂高雲台後,可在雲台上安裝不同的faya電子積塊,發揮大家的想像力,例如人體紅外線模組,追蹤人的位置,例如網路攝影機加上無線模組,就能夠做遠端要控和監控了!
有時間時,我們也來做做這些有趣的應用!
歡迎大家到我們的FB留言板討論!
====================================
fayalab 粉絲團
FB本篇留言版
沒有留言:
張貼留言