電子開發網

電子開發網電子設計 | 電子開發網Rss 2.0 會員中心 會員注冊
搜索: 您現在的位置: 電子開發網 >> 基礎入門 >> 伺服電機步進電機與控制 >> 正文

使用servo.h控制SG90舵機,伺服電機控制編程

作者:佚名    文章來源:本站原創    點擊數:    更新時間:2019/5/30

本文將繼續圍繞舵機的控制進行,我們將以Tower Pro (輝盛)SG90舵機的控制為例,因為SG90是市面上價格較便宜,也是實驗中用得最多的產品之一。

舵機

使用servo.h控制SG90舵機 

舵機(servo motor),常用于遙控模型飛機,所以又常稱為RC伺服電機(RC Servo,Radio Control Servo,Remote Control Servo)。詳見:什么是舵機?

舵機里含有直流馬達、齒輪箱、軸柄、以及控制電路,我們可透過信號控制軸柄的轉動角度,大概都是0到180度,但不同廠牌型號會有不同的范圍;經由齒輪箱降速后,變成適當可用的轉速,并且提供更高的轉矩(扭力)。詳見:舵機的工作原理

不過每個廠牌型號的舵機可允許旋轉的角度各不相同,也就是說可接受的信號脈沖范圍也不相同,必須查閱產品資料規格書,若超出范圍可能會損害舵機。下面是Tower Pro SG90的規格:

111

重量:9g

尺寸:23*12.2*29mm

工作電壓:4.8V轉矩:1.8kg-cm,當工作電壓為4.8V時

運轉速度:0.1秒 ∕ 60度 ,當工作電壓為4.8V時

脈沖寬度范圍:500~2400µs

死頻帶寬度(dead band width):10µs

從中我們可知,可允許的脈沖范圍是500~2400µs,也就是0.5~2.4ms,比剛剛說的一般范圍還要寬,也就代表這個舵機能旋轉的角度更大。另外有項值得一提的數據是死頻帶寬度,意思是說,因為信號可能不穩定而上下起伏,當這一次脈沖寬度與上一次相差不超過死頻帶寬度時,舵機便不會動作。

servo.h控制舵機

本次試驗,我們直接用Arduino的5V腳為舵機供電。若使用超過兩個舵機,則應該使用獨立的電源為舵機供電,記得共地。信號腳使用Arduino的D9。 Arduino內建操控舵機的標準庫,使用方法非常簡單。在如何使用Arduino舵機庫servo.h一文中,我們也進行了相關函數的介紹。下面以操控舵機的旋轉角度為例,來看看servo.h如何控制舵機。本實驗使用此servo.h代碼庫時,D9與D10無法輸出PWM信號,于是我們將舵機的信號線接在數位腳位9或10。 代碼如下:

#include <Servo.h>
Servo myservo; // 建立Servo實例,控制舵機
void setup()
{
myservo.attach(9); // 連接D9,舵機的信號線
}
void loop()
{
for(int i = 0; i <= 180; i+=1){
myservo.write(i); // 使用write,傳入角度值,從0度轉到180度
delay(20);
}
for(int i = 180; i >= 0; i-=1){
myservo.write(i);// 使用write,傳入角度值,從180度轉到0度
delay(20);
}
}

不過Servo.h預設的脈沖寬度范圍是544到2400µs,跟SG90舵機的500到2400差了一些些,我們可修正此點。

#include <Servo.h>
Servo myservo;
void setup()
{
myservo.attach(9, 500, 2400); // 修正脈沖寬度范圍
myservo.write(90); // 開始先置中90度
delay(3000);
}
void loop()
{
for(int i = 500; i <= 2400; i+=100){
myservo.writeMicroseconds(i); // 直接以脈沖寬度控制
delay(300);
}
for(int i = 2400; i >= 500; i-=100){
myservo.writeMicroseconds(i);
delay(300);
}
}

這里需要注意的,使用舵機前必須查詢舵機的規格參數表,查到正確的脈沖寬度范圍,如果與servo.h的預設范圍有偏差,需要采用“myservo.attach(9, 500, 2400)”的方式進行修正。使用writeMicroseconds函數時也要注意,不能傳入超出范圍的值,否則可能會損壞舵機。

Tags:舵機,伺服電機  
責任編輯:admin
請文明參與討論,禁止漫罵攻擊,不要惡意評論、違禁詞語。 昵稱:
1分 2分 3分 4分 5分

還可以輸入 200 個字
[ 查看全部 ] 網友評論
關于我們 - 聯系我們 - 廣告服務 - 友情鏈接 - 網站地圖 - 版權聲明 - 在線幫助 - 文章列表
返回頂部
刷新頁面
下到頁底
晶體管查詢
亚洲精品福利你懂| 久久午夜福利无码1000合集| 最新国产精品精品视频| 亚洲欧美国产精品完整版| 欧美成人免费一区二区| 亚洲黄色免费网址| 欧美日韩一区二区三区四区在线观看 | 久久18禁高潮出水呻吟娇喘| 成人永久福利在线观看不卡| 中文有码在线观看| 好硬好爽好湿好深视频| 一边摸一边揉一边做视频 | 啊轻点灬大ji巴太粗太长了欧美 | 日韩中文无码有码免费视频| 久久精品国产亚洲av无码麻豆 | 么公的好大好深视频好爽想要| 日本护士取精视频xxxxx全部 | 国产一区内射最近更新| 精品国产AV色欲果冻传媒| 北条麻妃作品在线观看| 热99re久久精品天堂vr| 亚洲精品国偷自产在线| 欧美一级欧美三级在线观看 | 凹凸在线无码免费视频| 波多野たの结衣老人绝伦 | 爱情岛论坛免费视频| 亚洲精品自产拍在线观看动漫| 欧美三级中文字幕在线观看| 亚洲av色影在线| 日本乱子伦xxxx| 丰满亚洲大尺度无码无码专线| 奇米影视国产精品四色| aa视频免费看| 国产破外女出血视频| 青青操在线免费观看| 国产AV人人夜夜澡人人爽麻豆| 男女无遮挡边做边吃视频免费| 亚洲综合无码一区二区三区| 最近最新在线中文字幕| 久久天天躁狠狠躁夜夜躁综合| 成人做受120视频试看|