衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

通過Arduino控制步進電機速度和旋轉(zhuǎn)方向

454398 ? 來源:一板網(wǎng) ? 作者:風(fēng)箏 ? 2020-10-28 16:28 ? 次閱讀

在本篇文章中,我們將學(xué)習(xí)如何使用搖桿和Arduino開發(fā)板控制步進電機的知識。在這里,我們將使用Arduino UNO開發(fā)板和PS2游戲桿控制步進電機的速度和旋轉(zhuǎn)方向。

我們使用帶有內(nèi)部驅(qū)動器的單極5V DC步進電機28BYJ-48。因此,不需要任何步進電機驅(qū)動。相反,我們將使用ULN2003A達林頓電機驅(qū)動器IC。 PS2游戲桿由兩個10k歐姆的電位器組成,即一個用于X軸,另一個用于Y軸。它還包括一個按鈕。但是我們將僅使用X軸來控制步進電機的運動。

所需的組件

● Arduino UNO開發(fā)板

● 28BYJ-48 5V DC步進電機

● ULN2003芯片

● PS2游戲桿

● 5V DC電源

什么是步進電機

步進電動機(stepper motor)是一種無刷直流電動機,它將完整的全周長分為多個相等的步長。然后可以命令電機的位置移動并保持在其中一個步進,而無需任何位置傳感器進行反饋(開環(huán)控制器),只要在轉(zhuǎn)矩和速度方面仔細選擇適合電動機尺寸的電動機即可。

步進電機28-BYJ48的連接方式

步進電動機28-BYJ48是一個具有5引線線圈布置的單極電動機。必須按特定順序為四個線圈通電。紅線連接到+ 5V電壓,其余四根線將被拉到接地以觸發(fā)相應(yīng)的線圈。我們使用Arduino開發(fā)板以特定順序為這些線圈通電,并使電動機執(zhí)行所需的步數(shù)。

步進電機需要借助驅(qū)動器芯片才能進行操作。原因是控制器需要較高的電流才能運行,但是僅步進電機將無法從其I / O引腳提供足夠的電流來使電機運行。因此使用ULN2003作為驅(qū)動模塊,電流被放大了。

連接電路圖

要使用搖桿和Arduino控制步進電機,請如下圖所示組裝電路。

步數(shù)計算

在將代碼上傳到Arduino板上之前需要進行步數(shù)計算

在Arduino中,我們將以4步順序操作電機,因此需要計算步幅角(Stride Angle)。

步幅角= 5.625°

Arduino步驟順序= 4

所需步驟順序= 8

步數(shù)角度= 5.625 * 2 = 11.25

每轉(zhuǎn)的步數(shù)= 360 /步角= 360 / 11.25 =每轉(zhuǎn)32步。

源代碼/程序:

#include 《Stepper.h》

#define STEPS 32

// define stepper motor control pins

#define IN1 7

#define IN2 6

#define IN3 5

#define IN4 4

// initialize stepper library

Stepper stepper(STEPS, IN4, IN2, IN3, IN1);

// joystick pot output is connected to Arduino A0

#define joystick A0

void setup()

{

}

void loop()

{

// read analog value from the potentiometer

int val = analogRead(joystick);

// if the joystic is in the middle ===》 stop the motor

if( (val 》 500) && (val 《 523) )

{

digitalWrite(IN1, LOW);

digitalWrite(IN2, LOW);

digitalWrite(IN3, LOW);

digitalWrite(IN4, LOW);

}

else

{

// move the motor in the first direction

while (val 》= 523)

{

// map the speed between 5 and 500 rpm

int speed_ = map(val, 523, 1023, 5, 500);

// set motor speed

stepper.setSpeed(speed_);

// move the motor (1 step)

stepper.step(1);

val = analogRead(joystick);

}

// move the motor in the other direction

while (val 《= 500)

{

// map the speed between 5 and 500 rpm

int speed_ = map(val, 500, 0, 5, 500);

// set motor speed

stepper.setSpeed(speed_);

// move the motor (1 step)

stepper.step(-1);

val = analogRead(joystick);

}

}

}
編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 驅(qū)動器
    +關(guān)注

    關(guān)注

    53

    文章

    8272

    瀏覽量

    147070
  • 電位器
    +關(guān)注

    關(guān)注

    14

    文章

    1013

    瀏覽量

    66977
  • 步進電機
    +關(guān)注

    關(guān)注

    151

    文章

    3120

    瀏覽量

    147848
  • 步進電動機
    +關(guān)注

    關(guān)注

    0

    文章

    60

    瀏覽量

    12818
收藏 人收藏

    評論

    相關(guān)推薦

    行星減速步進電機步進電機的區(qū)別

    步進電機是一種將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移的開環(huán)控制電機。其工作原理是通過電子電路將直流電分為多相序
    的頭像 發(fā)表于 11-16 15:11 ?409次閱讀
    行星減速<b class='flag-5'>步進</b><b class='flag-5'>電機</b>與<b class='flag-5'>步進</b><b class='flag-5'>電機</b>的區(qū)別

    步進電機轉(zhuǎn)速怎么控制高低

    步進電機按設(shè)定的方向轉(zhuǎn)動一個固定的角度,稱為“步距角”,它的旋轉(zhuǎn)是以固定的角度一步一步運行的。可以通過
    的頭像 發(fā)表于 10-22 15:55 ?767次閱讀

    步進電機的伺服控制方法有哪些

    和脈沖序列,使電機準確移動到目標(biāo)位置。這種控制模式適用于需要精確定位的應(yīng)用場景。 2. 速度模式 定義 :在速度模式下,步進伺服
    的頭像 發(fā)表于 09-04 09:48 ?697次閱讀

    無刷電機遇到旋轉(zhuǎn)方向相反,應(yīng)如何處理

    在處理無刷電機旋轉(zhuǎn)方向相反的問題時,需要從多個角度進行分析和解決。 1. 無刷電機的基本原理 無刷電機(BLDC)是一種沒有電刷的
    的頭像 發(fā)表于 09-03 14:16 ?2032次閱讀

    基于STM32單片機的步進電機控制系統(tǒng)設(shè)計

    系統(tǒng)內(nèi)使用按鍵進行步進電機控制,可以控制步進電機的啟動和關(guān)閉,使用按鍵進行加速和減速以及進行
    的頭像 發(fā)表于 06-25 14:14 ?1277次閱讀
    基于STM32單片機的<b class='flag-5'>步進</b><b class='flag-5'>電機</b><b class='flag-5'>控制</b>系統(tǒng)設(shè)計

    步進電機控制器電路圖 步進電機控制器的分類及其特點

      步進電機控制器是一種專門用于控制步進電機的設(shè)備,它通過
    的頭像 發(fā)表于 06-24 17:12 ?3699次閱讀
    <b class='flag-5'>步進</b><b class='flag-5'>電機</b><b class='flag-5'>控制</b>器電路圖 <b class='flag-5'>步進</b><b class='flag-5'>電機</b><b class='flag-5'>控制</b>器的分類及其特點

    旋轉(zhuǎn)編碼器控制電機速度

    旋轉(zhuǎn)編碼器控制電機速度
    發(fā)表于 06-24 09:16 ?4次下載

    什么是步進電機控制器?步進電機控制器電路圖

    步進電機控制器是一種專門用于控制步進電機運行的裝置。步進
    的頭像 發(fā)表于 06-20 16:14 ?2257次閱讀
    什么是<b class='flag-5'>步進</b><b class='flag-5'>電機</b><b class='flag-5'>控制</b>器?<b class='flag-5'>步進</b><b class='flag-5'>電機</b><b class='flag-5'>控制</b>器電路圖

    如何改變步進電機方向的方法

    步進電機作為一種精密的控制電機,其方向控制對于許多應(yīng)用至關(guān)重要。本文將詳細介紹幾種改變
    的頭像 發(fā)表于 06-14 09:56 ?2891次閱讀

    步進控制要點多,你可知曉?

    通過控制脈沖的個數(shù)來控制角位移,從而達到精確定位的目的;同時通過控制脈沖頻率可以控制
    的頭像 發(fā)表于 06-13 09:00 ?317次閱讀

    步進電機旋轉(zhuǎn)角度與哪個參數(shù)有關(guān)

    步進電機旋轉(zhuǎn)角度的影響,以及如何通過調(diào)整這些參數(shù)來實現(xiàn)精確控制步進
    的頭像 發(fā)表于 06-12 09:51 ?1185次閱讀

    步進電機通過什么控制轉(zhuǎn)動角度

    步進電機是一種電磁驅(qū)動的旋轉(zhuǎn)電機,它具有精確控制轉(zhuǎn)動角度的特性。步進
    的頭像 發(fā)表于 06-12 09:49 ?1798次閱讀

    步進電機控制器怎么調(diào)速度

    引言 步進電機是一種將電脈沖信號轉(zhuǎn)換為角位移的電機,具有控制精度高、響應(yīng)速度快、結(jié)構(gòu)簡單等優(yōu)點。在自動化設(shè)備、機器人、數(shù)控機床等領(lǐng)域得到了廣
    的頭像 發(fā)表于 06-12 09:17 ?2374次閱讀

    步進電機如何減速?

    步進電機是一種直接將電脈沖轉(zhuǎn)化為機械運動的機電裝置,通過控制施加在電機線圈上的電脈沖順序、 頻率和數(shù)量, 可以實現(xiàn)對
    的頭像 發(fā)表于 03-23 08:42 ?521次閱讀
    <b class='flag-5'>步進</b><b class='flag-5'>電機</b>如何減速?

    arduino控制步進電機代碼

    Arduino是一種開放源代碼的電路板平臺,它可以用于控制各種不同的電子設(shè)備,包括步進電機步進電機
    的頭像 發(fā)表于 02-14 16:29 ?2184次閱讀
    百家乐现场投注平台| 德州扑克发牌视频| 百家乐群121398015| 百家乐分析下载| 吉利百家乐官网的玩法技巧和规则| 百家乐官网注册开户送现金| 新利国际开户| 申城棋牌2.0| 大发888老虎机游戏| 乐天堂百家乐赌场娱乐网规则| 百家乐新台第二局| 泰来百家乐导航| 汇丰百家乐官网娱乐城| 盛大百家乐官网的玩法技巧和规则| 百家乐官网游戏机论坛| 百家乐官网小型抽水泵| 百家乐优惠现金| 百家乐总厂在哪里| 百家乐赢的技巧| 百家乐娱乐天上人间| 百家乐视频游戏平台| 百家乐游戏机博彩正网| 永利高百家乐信誉| 百家乐开户送彩金28| 金花百家乐娱乐城| 百家乐技巧打| 卢克索百家乐的玩法技巧和规则| 澳门百家乐小| 大发888官方df888gwyxpt| 德州扑克游戏下载| 博狗娱乐场| 保单百家乐官网技巧| ez百家乐官网技巧| 天猫百家乐官网娱乐城| 宾利百家乐现金网| 百家乐赌博技巧网| 全讯网网址导航| 德州扑克冠军| 百家乐官网单跳双跳| 连环百家乐官网怎么玩| 荷规则百家乐官网的玩法技巧和规则 |