Nema 17:關於Arduino兼容步進電機的所有信息

Nema 17

我們已經分析了有關 步進馬達 您可以在Arduino項目中使用,但其中的一種電機在其他模型(例如Nema 17)中脫穎而出,因為它是一款非常精確的電機,具有多種應用程序,包括替換損壞的電機的應用程序一些打印機3D。

使用該步進電機,您將能夠非常精確地控制其軸的旋轉,以達到 做精確的動作 從而控制機器或機器人的運動。 並且在本指南中,您可以獲得與您近距離了解他並開始與他合作所需要的所有信息。

Nema 17的技術特徵

步進電機 Nema 17是雙極型,其步距角為1,8º,也就是說,它可以將每一轉分為200步。 其內部的每個繞組在1.2v的張力下均支持4A的強度,利用該繞組,它可以產生3.2 kg / cm的相當大的力。

另外,這個引擎 Nema 17堅固耐用這就是為什麼在諸如家用3D打印機和其他需要高度一致性的機器人等應用程序中使用它的原因。 Prusa是使用此引擎作為其運動基礎的打印機的一個示例。 它也用於激光切割機,CNC機器,拾取和放置機器等。

但是,並非所有都是該引擎的奇蹟和優勢,因為它是 更有力 因此,從這個意義上說,可靠的平衡並不是那麼平衡...

簡而言之, 技術特徵 聲音:

  • 步進電機。
  • NEMA 17模型
  • 重量350克
  • 尺寸42.3x48mm(不含軸)
  • 軸徑5mm D
  • 軸長25mm
  • 每轉200步(1,8º/步)
  • 每個繞組電流1.2A
  • 電源電壓4v
  • 每個線圈的電阻3.3歐姆
  • 3.2 kg / cm電機扭矩
  • 每個線圈的電感2.8 mH

引腳和數據表

Nema 17引腳排列

El 這些步進電機的引腳排列 這很簡單,因為它們沒有太多的連接電纜,所以它們也有一個連接器,因此您可以更輕鬆地進行連接。 對於NEMA 17,您會發現一個如上圖所示的引腳。

但是,如果您需要了解有關NEMA 17可以使用的極限和範圍的更多技術和電氣詳細信息,則可以 搜索數據表 步進電機,從而獲得您正在尋找的所有補充信息。 在這裡你可以 下載PDF 舉個例子。

在哪裡購買和定價

你可以找到 以低廉的價格 在各種專門的電子商店和在線商店中。 例如,您可以在Amazon上使用它。 它們有不同的製造商和不同的銷售形式,例如,如果需要多個用於移動機器人的產品,則以3個或更多單位的包裝為一組,等等。 以下是一些超值優惠:

如何開始使用Nema 17和Arduino的示例

Nema 17和Arduino步進電機原理圖

一個簡單的例子開始使用 步進馬達NEMA 17 使用Arduino可以組裝這個簡單的原理圖。 我已經為DRV8825電機使用了驅動程序,但是如果您要更改項目並使其適應您的需要,則可以使用其他驅動器,甚至可以使用其他步進電機。 草圖代碼也會發生同樣的情況,您可以根據自己的喜好對其進行修改...

在使用驅動器的情況下,它可以承受45v和2A的強度,因此非常適合步進電機或中小型步進電機,例如NEMA 17雙極型。 但是,如果您需要“更重”的東西,那麼像 NEMA 23,則可以使用TB6600驅動程序。

請記住,您也可以使用該庫 加速器 以獲得更好的處理。 由Mike McCauley編寫的庫,對您的項目非常實用,並支持加速和減速,這對於多種功能來說是一個很大的優勢。

連接數 總結如下:

  • NEMA 17電機的GND和VMOT連接到電源。 圖像中的哪個與帶有射線和電容器的成分一起出現。 該源必須具有8至45v的電源,我添加的電容器可能為100µF。
  • 步進器的兩個線圈分別連接到A1,A2和B1,B2。
  • 潛水員的GND引腳連接到Arduino的GND。
  • 驅動器的VDD引腳連接到Arduino的5v。
  • 用於步進和方向的STP和DIR分別連接到數字引腳3和2。 如果您想選擇其他Arduino引腳,則只需相應地修改代碼即可。
  • RST和SLP要重置和休眠驅動程序,您必須將它們連接到Arduino板的5v。
  • EN或激活引腳可能會斷開,因為通過這種方式驅動器將處於活動狀態。 如果將其設置為HIGH而不是LOW,則會禁用驅動程序。
  • 其他引腳將斷開連接...

至於 草圖代碼要使NEMA 17正常工作並開始使用,就像想要的那樣簡單...

#define dirPin 2
#define stepPin 3
#define stepsPerRevolution 200
void setup() {
  // Declare pins as output:
  pinMode(stepPin, OUTPUT);
  pinMode(dirPin, OUTPUT);
}
void loop() {
  // Set the spinning direction clockwise:
  digitalWrite(dirPin, HIGH);
  // Spin the stepper motor 1 revolution slowly:
  for (int i = 0; i < stepsPerRevolution; i++) {
    // These four lines result in 1 step:
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(2000);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(2000);
  }
  delay(1000);
  // Set the spinning direction counterclockwise:
  digitalWrite(dirPin, LOW);
  // Spin the stepper motor 1 revolution quickly:
  for (int i = 0; i < stepsPerRevolution; i++) {
    // These four lines result in 1 step:
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(1000);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(1000);
  }
  delay(1000);
  // Set the spinning direction clockwise:
  digitalWrite(dirPin, HIGH);
  // Spin the stepper motor 5 revolutions fast:
  for (int i = 0; i < 5 * stepsPerRevolution; i++) {
    // These four lines result in 1 step:
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(500);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(500);
  }
  delay(1000);
  // Set the spinning direction counterclockwise:
  digitalWrite(dirPin, LOW);
  //Spin the stepper motor 5 revolutions fast:
  for (int i = 0; i < 5 * stepsPerRevolution; i++) {
    // These four lines result in 1 step:
    digitalWrite(stepPin, HIGH);
    delayMicroseconds(500);
    digitalWrite(stepPin, LOW);
    delayMicroseconds(500);
  }
  delay(1000);
}

更多信息,您可以參考編程課程 Arduino IDE 由Hwlibre。


成為第一個發表評論

發表您的評論

您的電子郵件地址將不會被發表。 必填字段標有 *

*

*

  1. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。