舵機是伺服電機的一種,伺服電機就是帶有反饋環節的電機,我們可以通過伺服電機進行精確的位置控制或者輸出較高的扭矩;
舵機舵機也叫也叫 RC 伺服器,通常用於機器人項目,也可以在遙控汽車,飛機等航模中找到它們。
類似舵機這樣的伺服系統通常由小型電動機,電位計,嵌入式控制系統和變速箱組成。
電機輸出軸的位置由內部電位計不斷採樣測量,並與微控制器(例如STM32,Arduino)設置的目標位置進行比較;
根據相應的偏差,控制設備會調整電機輸出軸的實際位置,使其與目標位置匹配。這樣就形成了閉環控制系統。
閉環系統變速箱降低了電機的轉速,從而增加了輸出軸上的輸出扭矩。輸出軸的最大速度通常約為60 RPM。
具體結構如下圖所示;
內部結構②:電位器:可以測量輸出軸的位置量,屬於整個伺服機構的反饋部分;③:內部控制器:處理來自外部控制的信號,驅動電機以及處理反饋的位置信號,是整個伺服機構的核心;④:電機:作為執行機構,輸出多少轉速,轉矩,位置;⑤:傳動機構/舵機系統:該機構根據一定傳動比,將電機輸出的行程縮放到最終輸出的角度上;內部解剖圖因此舵機是伺服電機的一種,整體電機就是一個閉環系統,輸入相應的信號,就能控制舵機輸出對應的位置量;
伺服控制通過向舵機的信號信號線發送PWM信號來控制舵機的輸出量;
上一篇文章有介紹過PWM,一般來說,PWM的周期以及佔空比,我們是可控的,所以PWM脈衝的佔空比直接決定了輸出軸的位置。
下面舉個例子;
當我們向舵機發送脈衝寬度為1.5毫秒(ms)的信號時,舵機的輸出軸將移至中間位置(90度);脈衝寬度為1ms時,舵機的輸出軸將移至最小的位置(0度);脈衝寬度為2ms時,舵機的輸出軸將移至最小的位置(180度);注意:不同類型和品牌的伺服電機之間最大位置和最小位置的角度可能會不同。許多伺服器僅旋轉約170度(或者只有90度),但寬度為1.5 ms的伺服脈衝通常會將伺服設置為中間位置(通常是指定全範圍的一半);
具體可以參考下圖;
轉動角度與輸入信號的關係伺服電動機的周期通常為20毫秒,希望以50Hz的頻率產生脈衝,但是許多伺服器在40至200 Hz的範圍內都能正常工作。
硬體連接舵機的硬體布線比較簡單,我們只需要三條線:電源線,信號線,地線;
如果單個舵機的電流比較小,例如SG90這種舵機,在空閒的時候大約只消耗10mA的電流,在旋轉的時候需要消耗100-250mA,因此,一般控制系統如果具備這樣的輸出能力,可以直接進行驅動;
如果舵機所需電流較大,則需要額外增加驅動電路,將數字控制端和功率端隔離開;
或者需要同時驅動多個舵機,可以使用PCA9685對多路PWM進行驅動;
下面是幾款幾款比較常見的舵機,我整理了一下它們的規格參數,在選型的時候,應該需要關注一下;
SG90這款比較便宜,如下圖所示;
SG90技術指標
Operating voltage4.8 VWeight9 gStall torque1.8 kg/cm (4.8 V)Gear typePOM gear setOperating speed0.12 sec/60° (4.8 V)Operating temperature0 – 55 °CMG90SMG90S技術指標
Operating voltage4.8 VWeight13.4 gStall torque1.8 kg/cm (4.8 V), 2.2 kg/cm (6.6 V)Gear type6061-T6 aluminumOperating speed0.10 sec/60° (4.8 V), 0.08 sec/60° (6.0 V)Operating temperature0 – 55 °CMG996RMG996R技術指標
Operating voltage4.8 – 6.6 VCurrent draw at idle10 mANo-load operating current draw170 mAStall current draw1400 mAWeight55 gStall torque9.4 kg/cm (4.8 V), 11 kg/cm (6.0 V)Gear typeMetal gearOperating speed0.19 sec/60° (4.8 V), 0.15 sec/60° (6.0 V)Operating temperature0 – 55 °C總結本文簡單介紹了舵機的基本結構和原理,以及如何通過PWM信號控制舵機,簡單介紹了如何同時控制多個伺服電機,最後介紹了幾款市面上比較常用的舵機。