色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創作中心

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

3天內不再提示

Arduino篇—步進電機的控制

冬至子 ? 來源:X的創客課堂 ? 作者:MRXY ? 2023-11-02 09:35 ? 次閱讀

課程目標

  • 了解步進電機的原理及應用
  • 學習步進電機的控制方式
  • 了解步進電機的不同勵磁方式

相關知識

步進電機: 步進電機是一種將電脈沖信號轉換成相應角位移或線位移的電動機。每輸入一個脈沖信號,轉子就轉動一個角度或前進一步,其輸出的角位移或線位移與輸入的脈沖數成正比,轉速與脈沖頻率成正比。簡單來說當步進驅動器接收到一個脈沖信號,它就驅動步進電機按設定的方向轉動一個固定的角度。

步進電機原理: 利用電磁鐵原理,各個線圈繞組通電,利用電生磁原理,產生磁力,帶動中央轉子鐵芯轉動從而將脈沖信號轉換成線位移或角位移。

圖片

步進電機介紹:

  • 步進電機每次能轉動的最小角度叫做步距角。
  • 每當步進電機接收到一個驅動信號后,步進電機將按照一定的方向轉動一個固定的角度。
  • 通過控制脈沖的個數來精確的控制步進電機的角位移量,通過控制脈沖的頻率來控制電機轉動的速度及加速度,從而達到調速的目的。
  • 步進電機按照相數不同分為單相、雙相、多相三種,勵磁方式分為全步勵磁和半步勵磁,全步勵磁分1相勵磁方式、2相勵磁方式;半步勵磁又稱1-2相勵磁方式。
    圖片

**ULN2003電機驅動:**由于Arduino開發板的通用IO驅動能力有限,有些外設不能直接使用IO進行驅動,需要借助一些驅動電路間接控制大功率器件。ULN2003是大電流驅動陣列,多用于單片機智能儀表、PLC、數字量輸出卡等控制電路中,可直接驅動繼電器等負載。

圖片

圖片

電路搭建

所需材料:

ArduinoUNO * 1
28BYJ-48步進電機 * 1
ULN2003電機驅動模塊 * 1
杜邦線若干

電路連接:

ULN2003驅動板上IN1、IN2、IN3、IN4分別連接UNO開發板的數字引腳2,3,4,5;驅動板電源輸入+、-引腳分別連接UNO開發板的5V、GND。

圖片

程序編寫

練習一:一相勵磁方式****控制步進電機正轉90°再反轉90°

一相勵磁控制方式及特點: 在每一個瞬間,步進電機只有一個線圈導通,每送一個信號,步進電機能轉1.8°。這種方式,其精確度好、消耗電力小,但是輸出轉矩最小,振動較大。

一相****勵磁順序表:

圖片

圖形化方式:

圖片

代碼方式:

/* 項目名稱:一相勵磁控制步進電機正反轉90°
 * 項目時間:2022.03.21
 * 項目作者:MRX
 */
void setup() {
  for (int i = 2; i < 6; i++) {
    pinMode(i, OUTPUT);
  }
}


void clockwise(int num)
{
  for (int count = 0; count < num; count++)
  {
    for (int i = 2; i < 6; i++)
    {
      digitalWrite(i, HIGH);
      delay(5);
      digitalWrite(i, LOW);
    }
  }
}


void anticlockwise(int num)
{
  for (int count = 0; count < num; count++)
  {
    for (int i = 5; i > 1; i--)
    {
      digitalWrite(i, HIGH);
      delay(5);
      digitalWrite(i, LOW);
    }
  }
}


void loop() {
  clockwise(130);
  delay(1000);
  anticlockwise(130);
  delay(1000);
}

練習二:二相勵磁方式控制步進電機正轉90°再反轉90°****

相勵磁控制方式及特點: 在每一個瞬間,步進電機有兩個線圈導通,每送一個信號,步進電機能轉1.8°。這種方式,其輸出轉矩最大,振動較小。是現在較常用的一種控制方式。

二相勵磁順序表:

圖片

圖形化方式:

圖片

代碼方式:

/* 項目名稱:二相勵磁控制步進電機正反轉90°
 * 項目時間:2022.03.21
 * 項目作者:MRX
 */
void setup() {
  for (int i = 2; i < 6; i++) {
    pinMode(i, OUTPUT);
  }
}


void clockwise(int num)
{
  for (int count = 0; count < num; count++)
  {
    digitalWrite(2,HIGH);
    digitalWrite(3,LOW);
    digitalWrite(4,LOW);
    digitalWrite(5,HIGH);
    delay(5);
    digitalWrite(2,HIGH);
    digitalWrite(3,HIGH);
    digitalWrite(4,LOW);
    digitalWrite(5,LOW);
    delay(5);
    digitalWrite(2,LOW);
    digitalWrite(3,HIGH);
    digitalWrite(4,HIGH);
    digitalWrite(5,LOW);
    delay(5);
    digitalWrite(2,LOW);
    digitalWrite(3,LOW);
    digitalWrite(4,HIGH);
    digitalWrite(5,HIGH);
    delay(5);
  }
}


void anticlockwise(int num)
{
  for (int count = 0; count < num; count++)
  {
    digitalWrite(2,HIGH);
    digitalWrite(5,LOW);
    digitalWrite(4,LOW);
    digitalWrite(3,HIGH);
    delay(5);
    digitalWrite(2,HIGH);
    digitalWrite(5,HIGH);
    digitalWrite(4,LOW);
    digitalWrite(3,LOW);
    delay(5);
    digitalWrite(2,LOW);
    digitalWrite(5,HIGH);
    digitalWrite(4,HIGH);
    digitalWrite(3,LOW);
    delay(5);
    digitalWrite(2,LOW);
    digitalWrite(5,LOW);
    digitalWrite(4,HIGH);
    digitalWrite(3,HIGH);
    delay(5);
  }
}


void loop() {
  clockwise(130);
  delay(1000);
  anticlockwise(130);
  delay(1000);
}

練習三:一二相勵磁方式控制步進電機正****

一二相勵磁控制方式及特點: 為一相和二相交替導通的方式,每送一個信號,步進電機能轉0.9°。這種方式,其分辨率高,運轉平滑。也是現在較常用的一種控制方式。

二相勵磁順序表:

圖片

圖形化方式:

圖片

代碼方式:

/* 項目名稱:1-2相勵磁控制步進電機正轉
 * 項目時間:2022.03.21
 * 項目作者:MRX
 */
void setup() {
  for (int i = 2; i < 6; i++) {
    pinMode(i, OUTPUT);
  }
}


void S1()
{
    digitalWrite(2,HIGH);
    digitalWrite(3,LOW);
    digitalWrite(4,LOW);
    digitalWrite(5,LOW);
    delay(5);
    digitalWrite(2,HIGH);
    digitalWrite(3,HIGH);
    digitalWrite(4,LOW);
    digitalWrite(5,LOW);
    delay(5);
    digitalWrite(2,LOW);
    digitalWrite(3,HIGH);
    digitalWrite(4,LOW);
    digitalWrite(5,LOW);
    delay(5);
    digitalWrite(2,LOW);
    digitalWrite(3,HIGH);
    digitalWrite(4,HIGH);
    digitalWrite(5,LOW);
    delay(5);
}


void S2()
 {
    digitalWrite(2,LOW);
    digitalWrite(3,LOW);
    digitalWrite(4,HIGH);
    digitalWrite(5,LOW);
    delay(5);
    digitalWrite(2,LOW);
    digitalWrite(3,LOW);
    digitalWrite(4,HIGH);
    digitalWrite(5,HIGH);
    delay(5);
    digitalWrite(2,LOW);
    digitalWrite(3,LOW);
    digitalWrite(4,LOW);
    digitalWrite(5,HIGH);
    delay(5);
    digitalWrite(2,HIGH);
    digitalWrite(3,LOW);
    digitalWrite(4,LOW);
    digitalWrite(5,HIGH);
    delay(5);
}


void loop() {
  for (int i = 1; i <= 130; i++) 
  {
    S1();
    S2();
  }
  delay(1000);
}

程序分析:

需求為旋轉90°,在程序中循環次數為什么是130次呢?這是根據我們使用的步進電機參數計算而來的:

1、步進電機電壓5V,步距角5.625,減速比1:64。

2、計算A-B-C-D通電一次轉動的角度5.625X2X4/64=0.703125 (2是表示1相勵磁方 式每步是2倍的步距角,4表示走了4步, 64指電機減速比)。

3、轉動360度循環ABCD通電的次數360/0.7031=512。

4、那么轉動90度循環ABCD通電的次數90/0.7031≈130。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 步進電機
    +關注

    關注

    152

    文章

    3145

    瀏覽量

    148747
  • 電磁鐵
    +關注

    關注

    2

    文章

    169

    瀏覽量

    15256
  • 脈沖信號
    +關注

    關注

    6

    文章

    402

    瀏覽量

    37394
  • Arduino
    +關注

    關注

    188

    文章

    6485

    瀏覽量

    189618
  • 步進驅動器
    +關注

    關注

    7

    文章

    81

    瀏覽量

    58479
收藏 1人收藏

    評論

    相關推薦

    通過Arduino控制步進電機速度和旋轉方向

    在本篇文章中,我們將學習如何使用搖桿和Arduino開發板控制步進電機的知識。在這里,我們將使用Arduino UNO開發板和PS2游戲桿
    的頭像 發表于 10-28 16:28 ?2.7w次閱讀

    blinker控制步進電機起保停相關資料分享

    blinker控制步進電機起保停,正反轉(Arduino uno+esp8266+TB6600驅動器)本文針對上一的《外部按鍵中斷精準
    發表于 06-29 06:25

    arduino步進電機控制器驅動兩個步進電機

    Arduino 2560控制兩個步進電機arduino步進
    發表于 08-31 06:13

    Stepper庫函數控制步進電機

    問題來源最近自學Arduino,在使用步進電機時開始沒能使步進電機轉起來,轉起來后感覺沒法調速,遂完成此
    發表于 09-07 09:15

    如何使用Arduino實現步進電機的分析與設計

    Arduino是一款便捷靈活、方便上手的開源電子原型平臺。與常見的 DSP PLC ARN51單片機不同Arduino具有編程簡單,操作方便,價格便宜等諸多優點。本文介紹基于 Arduino t的進步
    發表于 12-07 08:00 ?4次下載
    如何使用<b class='flag-5'>Arduino</b>實現<b class='flag-5'>步進</b><b class='flag-5'>電機</b>的分析與設計

    動手玩轉Arduino---運動控制(直流電機步進電機舵機)

    動手玩轉Arduino---運動控制(直流電機步進電機舵機)(電源技術是中文核心嗎)-該文檔為動手玩轉A
    發表于 09-23 09:22 ?36次下載
    動手玩轉<b class='flag-5'>Arduino</b>---運動<b class='flag-5'>控制</b>(直流<b class='flag-5'>電機</b><b class='flag-5'>步進</b><b class='flag-5'>電機</b>舵機)

    arduino+A4889+步進電機

    arduino下載數據線、杜邦線若干。主要原理步進電機(stepping motor)步進電機是一種將電脈沖轉化為角位移的執行機構。通俗一
    發表于 11-22 09:51 ?29次下載
    <b class='flag-5'>arduino</b>+A4889+<b class='flag-5'>步進</b><b class='flag-5'>電機</b>

    如何使用MATALB和Arduino控制步進電機

    今天我們將學習如何使用 MATALB 和 Arduino 控制步進電機
    發表于 11-01 17:45 ?3187次閱讀
    如何使用MATALB和<b class='flag-5'>Arduino</b><b class='flag-5'>控制</b><b class='flag-5'>步進</b><b class='flag-5'>電機</b>

    Arduino實驗16步進電機控制

    電機控制程序 實驗設備與環境 Arduino UNO套件、Arduino IDE、計算機、步進電機
    發表于 03-21 10:47 ?1次下載
    <b class='flag-5'>Arduino</b>實驗16<b class='flag-5'>步進</b><b class='flag-5'>電機</b>的<b class='flag-5'>控制</b>

    步進電機Arduino使用教程

    了解如何使用 Arduino 使用 ULN2003、L298N 和 A4988 等驅動器控制雙極和單極步進電機。在本文中,我將向您展示開始使用步進
    發表于 03-23 10:58 ?1次下載
    <b class='flag-5'>步進</b><b class='flag-5'>電機</b>與<b class='flag-5'>Arduino</b>使用教程

    Arduino RTOS控制多個步進電機

    Arduino RTOS控制多個步進電機 材料;1、arduino mega25602、3個M42S驅動器3、3個42
    發表于 03-24 11:47 ?4次下載
    <b class='flag-5'>Arduino</b> RTOS<b class='flag-5'>控制</b>多個<b class='flag-5'>步進</b><b class='flag-5'>電機</b>

    使用電位器和Arduino實現步進電機控制

    在本篇文章中,我們將學習如何使用電位器和Arduino開發板實現步進電機控制步進電機可用于軟盤
    發表于 03-24 11:19 ?2次下載
    使用電位器和<b class='flag-5'>Arduino</b>實現<b class='flag-5'>步進</b><b class='flag-5'>電機</b><b class='flag-5'>控制</b>

    Arduino mega 2560控制42步進電機接線

    Arduino mega 2560控制42步進電機接線圖 ****TB6600驅動器與42步進電機
    發表于 03-24 10:10 ?8次下載
    <b class='flag-5'>Arduino</b> mega 2560<b class='flag-5'>控制</b>42<b class='flag-5'>步進</b><b class='flag-5'>電機</b>接線

    arduino控制步進電機代碼

    Arduino是一種開放源代碼的電路板平臺,它可以用于控制各種不同的電子設備,包括步進電機步進電機
    的頭像 發表于 02-14 16:29 ?2651次閱讀

    arduino如何驅動步進電機

    隨著物聯網的不斷發展,電機控制技術得到了廣泛應用,其中步進電機作為一種常見的電機類型,在各行各業中得到了廣泛應用。而作為一種強大、靈活的開源
    的頭像 發表于 01-14 16:37 ?4182次閱讀
    主站蜘蛛池模板: 女人把腿张开叫男人桶免费视频 | 狠狠色狠狠色综合系列 | 亚洲精品嫩草AV在线观看 | 自拍偷拍12p | 5G在线观看免费年龄确认18 | 亚洲深夜在线 | 不良网站进入窗口软件下载免费 | 视频在线免费观看 | 国产高清视频在线播放www色 | 91福利国产在线观看网站 | 高清无码中文字幕在线观看视频 | 99re久久热在线播放快 | 国产在线精品亚洲一品区 | 亚洲一级电影 | 校花在公车上被内射好舒 | 啊灬啊灬啊灬快高潮视频 | 久久一级视频 | 久久国产亚洲精品AV麻豆 | 久久夜色精品国产亚州AV卜 | 为什么丈夫插我我却喜欢被打着插 | 伦理电影2499伦理片 | 亚洲国产精品久久无套麻豆 | 男人插曲女人的视频 | 天天影视网网色色欲 | 国产高清亚洲日韩字幕一区 | 人人草人人草 | 侮辱丰满美丽的人妻 | 浪荡受自我调教纯肉BL | 国产精品第一综合首页 | 国产久青青青青在线观看 | 欧美一区二区VA毛片视频 | 可以看的黄页的网站 | 久久久久久免费观看 | 国产剧果冻传媒星空在线观看 | 亚洲色图p | 精品亚洲大全 | 草莓视频免费在线观看 | 久久青草影院 | 国产精品嫩草影视在线观看 | 亚洲精品久久久WWW游戏好玩 | 干性感美女|

    電子發燒友

    中國電子工程師最喜歡的網站

    • 2931785位工程師會員交流學習
    • 獲取您個性化的科技前沿技術信息
    • 參加活動獲取豐厚的禮品