舵機如上圖所示,左圖為9g舵機,右圖為55g舵機,與直流減速電機不同,它的工作方式是根據(jù)脈沖寬度轉(zhuǎn)到對應(yīng)的角度,轉(zhuǎn)角范圍是180度。PWM波控制信號的脈沖寬度對應(yīng)的舵機轉(zhuǎn)角如下圖所示。
舵機有一個三線的接口。脈沖信號端連接橙色線(或者黃色線),+4.8V~+6V電源連接紅線接,地線連接綠色線(或者棕色線)。
舵機可用作機械手、人形機器人、六足機器人、碼垛機器人的執(zhí)行元件。
一、庫函數(shù)1、打開DAHUME MINI.stw文件;
2、在STVD左側(cè)Workspace窗口Source Files目錄下找到main.c,雙擊打開;
3、編寫如下代碼;
#include "main.h"
void setup(void)
{
delay(10);
CLOCK(_16MHz);
PWM2_init(20, 20000);
//_asm("rim");//rim為打開總中斷,sim為關(guān)閉總中斷
}
main()
{
setup();
while (1)
{
PWM2(1, 1000);
delay(1000);
PWM2(1, 1500);
delay(1000);
PWM2(1, 2000);
delay(1000);
PWM2(1, 1500);
delay(1000);
}
}
舵機與單片機必須分開供電(共地),因為在舵機工作時,5V電源電壓會降低,影響單片機正常工作,比如掉電復(fù)位。
單片機改變脈沖寬度后,需要加一個合適的延時確保舵機有足夠時間轉(zhuǎn)到下一個角度。
二、練習(xí)1、用舵機實現(xiàn)電風(fēng)扇搖頭功能,動作要順滑;
2、用電位器控制舵機轉(zhuǎn)角。