久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

專(zhuān)注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> Arduino >> 瀏覽文章

基于Proteus的Arduino學(xué)習(xí)10-舵機(jī)與舵機(jī)的控制

作者:我不是奔跑哥   來(lái)源:我不是奔跑哥的blog   點(diǎn)擊數(shù):  更新時(shí)間:2014年06月08日   【字體:

在前面的幾節(jié)的學(xué)習(xí)筆記中,我們學(xué)習(xí)了幾種傳感器及用法,這一節(jié)學(xué)習(xí)筆記帶領(lǐng)大家學(xué)習(xí)舵機(jī)及使用Arduino對(duì)舵機(jī)進(jìn)行控制。

舵機(jī)(英文叫Servo):它由直流電機(jī)、減速齒輪組、傳感器和控制電路組成的一套自動(dòng)控制系統(tǒng)。通過(guò)發(fā)送信號(hào),指定輸出軸旋轉(zhuǎn)角度。舵機(jī)一般而言都有最大旋轉(zhuǎn)角度(比如180度。)與普通直流電機(jī)的區(qū)別主要在,直流電機(jī)是一圈圈轉(zhuǎn)動(dòng)的,舵機(jī)只能在一定角度內(nèi)轉(zhuǎn)動(dòng),不能一圈圈轉(zhuǎn)(數(shù)字舵機(jī)可以在舵機(jī)模式和電機(jī)模式中切換,沒(méi)有這個(gè)問(wèn)題)。普通直流電機(jī)無(wú)法反饋轉(zhuǎn)動(dòng)的角度信息,而舵機(jī)可以。用途也不同,普通直流電機(jī)一般是整圈轉(zhuǎn)動(dòng)做動(dòng)力用,舵機(jī)是控制某物體轉(zhuǎn)動(dòng)一定角度用(比如機(jī)器人的關(guān)節(jié))。【文獻(xiàn)1】如圖1所示為9g舵機(jī)。一般的舵機(jī)接線為三線,VCC、GND和信號(hào)線。
圖1 9g舵機(jī)實(shí)物圖
如圖2所示,舵機(jī)主要有以下幾部分組成:齒輪組、直流電機(jī)、電位器、電機(jī)控制板、殼體。其中,齒輪組通過(guò)降低速度以提高扭矩;直流電機(jī)提供舵機(jī)的動(dòng)力;電機(jī)控制板負(fù)責(zé)接收電位器的信號(hào),通過(guò)算法驅(qū)動(dòng)電機(jī);電位器為位置編碼器的作用,作為電機(jī)驅(qū)動(dòng)之后的反饋信號(hào)。【文獻(xiàn)1】
圖2 舵機(jī)的組成部分
舵機(jī)的控制信號(hào)是脈沖位置調(diào)制(PPM)信號(hào),是一種寬度可調(diào)的周期性方波脈沖信號(hào),周期一般為20ms,當(dāng)方波的脈沖寬度改變時(shí),舵機(jī)轉(zhuǎn)軸的角度發(fā)生變化,角度變化與脈沖寬度的變化成正比。一般舵機(jī)的輸出軸轉(zhuǎn)角與輸入信號(hào)的脈沖寬度之間的關(guān)系可用圖3表示。【文獻(xiàn)2】
 

圖3 脈沖與角度的關(guān)系圖
首先,我們需要proteus仿真里面添加舵機(jī),在元器件搜索欄中輸入“servo”,并添加至元器件選擇欄中,如圖4所示。并將其中間的管腳接至數(shù)字口9腳,也就是ATmega328P的15管腳,同時(shí)上管腳接至+5V,下管腳接至地端,修改后的Proteus仿真圖如圖5所示。
圖4 在proteus中添加"servo"

圖5 修改后的Proteus仿真圖
下面編寫(xiě)Arduino程序,實(shí)現(xiàn)舵機(jī)自動(dòng)旋轉(zhuǎn)180°,并旋轉(zhuǎn)回0°。
Arduino代碼清單:
#include <Servo.h> 
Servo myservo;  // create servo object to control a servo 
                // a maximum of eight servo objects can be created 
 
int pos = 0;    // variable to store the servo position 
 
void setup() 
  myservo.attach(9);  // attaches the servo on pin 9 to the servo object 
 
 
void loop() 
  for(pos = 0; pos < 180; pos += 1)  // goes from 0 degrees to 180 degrees 
  {                                  // in steps of 1 degree 
    myservo.write(pos);              // tell servo to go to position in variable 'pos' 
    delay(15);                       // waits 15ms for the servo to reach the position 
 
  for(pos = 180; pos>=1; pos-=1)     // goes from 180 degrees to 0 degrees 
  {                                
    myservo.write(pos);              // tell servo to go to position in variable 'pos' 
    delay(15);                       // waits 15ms for the servo to reach the position 
 
調(diào)試與演示

圖6 舵機(jī)旋轉(zhuǎn)至180°

圖7 舵機(jī)旋轉(zhuǎn)至137°
關(guān)閉窗口

相關(guān)文章

主站蜘蛛池模板: 一区二区精品 | 六月丁香综合 | 日本三级在线视频 | 久久精品久久久久 | 69精品人人人人 | 亚洲色综合 | 久在线视频 | 黄视频免费观看 | 日本一级大毛片a一 | 激情高潮到大叫狂喷水 | 夜色在线影院 | 亚洲精品在线视频 | 人人爽av| 中国av在线播放 | 一区二区三区视频 | 日本天天操 | 134vcc影院免费观看 | 成人免费网址 | 欧美xxxx网站 | 天天躁日日躁狠狠躁 | 久久久中文 | 国产一级大片 | 欧美激情一二三区 | 国产成人av网站 | 国产成人黄色 | 中文字幕黄色片 | 一区二区三区在线免费观看 | 成人性生活片 | 欧美日韩第一区 | 亚洲精品www久久久久久广东 | 日韩精品一区在线 | www.在线播放| av手机天堂 | 成人动漫一区二区 | 久久九 | 欧美亚洲在线观看 | av网站免费看 | 欧美啪啪网站 | 国产精品2 | 成人av在线看 | 日本久久久久 |