久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

如何使用Arduino舵機(jī)庫(kù)servo.h – 八色木

 MyFinoa 2020-02-13

文章目錄[隱藏]

我們都知道Arduino控制板支持PWM的引腳有限,,但如果在Arduino上需要控制超出PWM引腳數(shù)量的舵機(jī)怎么辦呢,?答案是使用servo.h庫(kù)文件,它是Arduino控制舵機(jī)的標(biāo)準(zhǔn)庫(kù)之一,。

舵機(jī)的內(nèi)部結(jié)構(gòu)

Servo.h

查看Arduino庫(kù)文件列表,,可通過(guò)Arduino IDE的“Help”菜單下的“Reference”查看。

Arduino Libraries
Arduino Libraries

我們可以看到在Arduino標(biāo)準(zhǔn)庫(kù)中的servo庫(kù),,單擊連接后進(jìn)入,,可查看servo.h文件更詳細(xì)的內(nèi)容。

Servo library
Servo library

在上圖左邊是對(duì)servo庫(kù)文件的基本介紹,,右邊是主要的函數(shù)和示例,。

Servo庫(kù)文件使用

我們知道舵機(jī)必須定期接收高電平脈沖控制信號(hào)才能維持轉(zhuǎn)動(dòng)。如果信號(hào)停止,,舵機(jī)也停止,。詳見(jiàn):舵機(jī)角度的控制。如果使用servo庫(kù)來(lái)設(shè)置控制信號(hào),就可以通過(guò)引入一些代碼,,實(shí)現(xiàn)如延遲,、檢查傳感器、等待等功能,。同時(shí),,由于servo庫(kù)一直在后臺(tái)運(yùn)行,而舵機(jī)一直在旋轉(zhuǎn),,它會(huì)經(jīng)常中斷其他正在執(zhí)行的代碼來(lái)啟動(dòng)那些高脈沖,,帶是這個(gè)切換的動(dòng)作快到我們感知不到。

使用servo庫(kù)來(lái)發(fā)送舵機(jī)控制信號(hào)一般需要四個(gè)步驟:

1,、 首先要告訴Arduino編程器,,希望在代碼開(kāi)始時(shí),即setup函數(shù)之前,,聲明使用Servo庫(kù)函數(shù),。

#include <Servo.h>          // Include servo library

2、 在#include和setup函數(shù)之間為要發(fā)送的信號(hào)命名servo庫(kù)的實(shí)例,。如下servoLeft就是指定的實(shí)例名稱,。

Servo servoLeft;            // Declare left servo

3、 在setup函數(shù)中,,使用給出的舵機(jī)信號(hào)的名稱后跟一個(gè)點(diǎn),,然后通過(guò)附加函數(shù)attach()調(diào)用信號(hào)引腳。這個(gè)例子告訴系統(tǒng)舵機(jī)信號(hào)servoLeft應(yīng)該通過(guò)數(shù)字引腳13來(lái)傳輸,。

servoLeft.attach(13);      // Attach left signal to pin 13

4,、writeMicroseconds()函數(shù),用于設(shè)置脈沖持續(xù)時(shí)間,。

servoLeft.writeMicroseconds(1500); // 1.5 ms stay-still signal

5,、write()函數(shù), 作用是將一個(gè)角度值寫入舵機(jī),,設(shè)置軸轉(zhuǎn)動(dòng)的角度(該值是指角度),,0為在一個(gè)方向全速轉(zhuǎn)動(dòng),,180為在另一個(gè)方向上全速轉(zhuǎn)動(dòng),,接近90為復(fù)位。

servoLeft.write(90);  // set servo to mid-point 

6,、attached()函數(shù),,用于檢測(cè)servo變量是否正確連接至Arduino對(duì)應(yīng)引腳上。返回值為 true 和 false ,。

servoLeft.attached()

7,、detach()函數(shù), 作用是從對(duì)應(yīng)引腳上分離舵機(jī)變量。如果要將所有舵機(jī)變量分離,,則使用analogWrite()函數(shù)將引腳9和引腳10用于PWM輸出,。

servoLeft.detach() 

8、read()函數(shù),, 用于讀取舵機(jī)的當(dāng)前角度值(傳遞給上次調(diào)用write()的值),。

servoLeft.read()  

以上是servo.h庫(kù)文件的基本函數(shù)講解,如有不當(dāng)之處請(qǐng)諒解,。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多