Arduino的最吸引人的地方之一就是有豐富的例子,豐富的庫(kù)函數(shù),。 對(duì)于控制步進(jìn)電機(jī),,雖然是一正一負(fù)給出脈沖即可,但是自己從頭編寫(xiě)也不容易,。根據(jù)最近的搜索,,把了解到的步進(jìn)電機(jī)庫(kù)做一個(gè)簡(jiǎn)單羅列。 1,,Stepper庫(kù),。 (http:///en/Reference/Stepper)這個(gè)是Arduino自帶的庫(kù),這個(gè)庫(kù)比較老,,大概2010年成型的一個(gè)庫(kù),。采用獨(dú)占CPU(延時(shí)等待)的方式實(shí)現(xiàn)脈沖輸出。但是這個(gè)庫(kù)只能針對(duì)沒(méi)有標(biāo)準(zhǔn)驅(qū)動(dòng)器的單個(gè)步進(jìn)電機(jī),,即只能直接驅(qū)動(dòng)ULN2003,,L293D,SN7754410NE等H橋芯片來(lái)驅(qū)動(dòng)小步進(jìn)電機(jī),。實(shí)現(xiàn)的功能包括:轉(zhuǎn)速控制和轉(zhuǎn)動(dòng)多少步,。 2,Accelstepper庫(kù),。(http://www./mikem/arduino/AccelStepper/index.html)是一個(gè)第三方庫(kù),,相對(duì)Stepper庫(kù)的改進(jìn)巨大,具體包括如下幾個(gè)方面:1)支持加減速,;2)支持多電機(jī),;3)非獨(dú)占cpu;4)支持驅(qū)動(dòng)器,。 這個(gè)庫(kù)需要配合AFMotor庫(kù)一塊工作,。 3,AFMotor庫(kù) AFafruit是美國(guó)的一個(gè)電子制作網(wǎng)站+設(shè)計(jì)制作公司,。這個(gè)公司為他們自己開(kāi)發(fā)的電機(jī)驅(qū)動(dòng)板制作了專(zhuān)門(mén)的驅(qū)動(dòng)庫(kù)AFMotor庫(kù),。如果您還想用AFMotor擴(kuò)展板驅(qū)動(dòng)28BYJ-48步進(jìn)電機(jī)的話,AFMotor庫(kù)雖然也可以實(shí)現(xiàn)這一功能,,但是它的功能太簡(jiǎn)單了,。所以我們建議您使用AccelStepper庫(kù)來(lái)控制步進(jìn)電機(jī)。請(qǐng)注意:AccelStepper庫(kù)本身不能配合AFMotor電機(jī)擴(kuò)展板工作,。只有安裝了AFMotor庫(kù)以后,,AccelStepper庫(kù)在AFMotor庫(kù)的配合下才能用于AFMotor電機(jī)擴(kuò)展板驅(qū)動(dòng)步進(jìn)電機(jī)。 4,,關(guān)于步進(jìn)電機(jī)的細(xì)分 查詢的資料說(shuō):增加細(xì)分?jǐn)?shù)并不能增加力矩,。但是,細(xì)分后會(huì)運(yùn)行更平穩(wěn),,減少低頻振動(dòng)和噪聲,。驅(qū)動(dòng)器輸出的工作電流越大,力矩越大,。轉(zhuǎn)速越快,,工作電流會(huì)減小越快,力矩也會(huì)減小越快,。建議步進(jìn)電機(jī)轉(zhuǎn)速在800r/min以內(nèi),,大于這個(gè)轉(zhuǎn)速就要考慮用伺服電機(jī)了。 5,,其他 似乎arduino nano/UNO用了庫(kù)后,,每秒只能輸出5000個(gè)左右的脈沖,。也就是說(shuō)當(dāng)細(xì)分后,可能不能轉(zhuǎn)的很快,。 |
|
來(lái)自: 大傻子的文淵閣 > 《待分類(lèi)》