步進電機:與Arduino集成

步進電機

電動馬達的需求日益增長,其中也許可以使用直流電的馬達脫穎而出,這是使用Arduino的製造商項目中最受歡迎的電動馬達,因為它們具有移動性。 其中,突出顯示 步進馬達 它們可用於多種應用,尤其是用於機器人技術,例如執行器等。

電動汽車,小型自動駕駛機器人,工業自動化應用,重複運動裝置等。 伺服電動機和步進電動機之所以能很好地用於這些應用,是因為它們可以 進行慢速或快速運動,但首先要控制。 此外,對於需要高精度停止和啟動的應用,驅動器是連續的。

電動機類型

電動機 以下類型可以突出顯示:

  • 直流或直流電動機: 顧名思義,直流電動機使用這種類型的電流工作。 它們的功率範圍從幾兆瓦到最大功率的幾兆瓦不等,用於工業應用,車輛,電梯,傳送帶,風扇等。 可以根據進給量調節其轉速(RPM)和施加的扭矩。
  • 交流或交流電動機(異步和繞線轉子):它們使用交流電工作,並且具有非常特殊的轉子,這要歸功於這些相位,通過電磁體的磁斥力,此類電流有助於產生旋轉,其方式類似於直流電。 它們非常便宜,可以達到幾千瓦。 可以通過旋轉速度來調節它們,但是調節元件比DC的昂貴。 這些通常用於家用電器。
  • 步進電機-也稱為步進器,它們在許多方面與DC相似,但旋轉速度和功率較低。 這裡突出的是軸的位置,即將它們放置在特定位置的精度。 它們的旋轉角度和速度可以控制很多,這就是為什麼在軟盤驅動器,硬盤驅動器(HDD),機器人,過程自動化等中使用它們的原因。
  • 伺服電機:可以說,這是步進電機的發展,在某些情況下,小功率和小轉速可以達到7000 RPM。 該電動機包含一個齒輪減速箱和一個控制電路。 它們具有與步進器相同的定位精度,並且在施加的扭矩方面非常穩定,使其成為某些機器人和工業應用的理想選擇。

步進電機和伺服電機

轉子和定子

您已經知道這兩種類型的電動機是什麼,但是我想說些什麼 有關步進器的更多信息。 他們的轉彎不是連續進行的,而是一步步完成,因此也叫出他們的名字。 轉子(旋轉的部分)具有齒輪的形狀,而定子(不旋轉的部分)由交錯的極化電磁體組成。 以此方式,當“激活”一個人時,在其側面的那些人不被激活,這將轉子齒吸引到轉子齒上,從而允許它們表徵的精確的前進。

驅動器8825
相關文章:
DRV8825:步進電機驅動器

取決於 轉子齒,則有可能反過來或多或少地前進。 如果您有更多的牙齒,則需要更多的步驟來完成轉彎,但是步驟會更短,因此將使馬達更精確。 如果您的牙齒少,則步伐會突然跳動,而沒有那麼高的精確度。 因此,步進電機完成旋轉必須採取的步驟將取決於角度步驟。

這些步驟 角度標準化,儘管您會找到一些具有非標準螺距的電動機。 角度通常為:1.8º,5.625º,7.5º,11.25º,18º,45º和90º。 要計算步進電機完成一整圈或一圈(360º)所需的步數,只需除以。 例如,如果您使用45º步進電機,則將有8步(360/45 = 8)。

偏置旋轉(相位)

在這些電動機中,您可以使用5或6根電纜的單極(最流行)或4根電纜的雙極。 據此,一個或另一個將被執行 極化序列 通過線圈的電流:

  • 極化 雙極:
埃爾帕索 終端A 航站樓B 航站樓C 航站樓D
1 +V -V +V -V
2 +V -V -V +V
3 -V +V -V +V
4 -V +V +V -V
  • 單極:
埃爾帕索 線圈A 線圈B 線圈C 線圈D
1 +V +V 0 0
2 0 +V +V 0
3 0 0 +V +V
4 +V 0 0 +V

兩種情況下的操作都相同,將線圈極化以將轉子吸引到要放置軸的位置。 如果你想 將其保持在一個位置,必須保持極化 對於那個職位,瞧。 如果您希望它向前移動,請極化下一個磁鐵,這將採取進一步的措施,依此類推...

如果您使用 伺服馬達,您已經知道它基本上是一個步進電機,因此所說的所有內容也對他們有用。 唯一包括這些減速齒輪的裝置便可以在每轉中獲得更多的步進,從而具有更高的精度。 例如,您發現每轉8步的電動機,如果它具有1:64變速箱,因為這意味著這64步的每一步都細分為512個較小的步,每轉最多可提供0.7步。 也就是說,每個步驟大約為XNUMXº。

l298n
相關文章:
L298N:用於Arduino的電機控制模塊

還要補充一點,您應該使用一些 調節器 例如,使用H橋來控制極化,速度等。 某些型號為L293,ULN2003,ULQ2003等。

哪裡買

在各種在線網站上購買 或在專門的電子商店中。 另外,如果您是初學者,則可以使用包含所需所有組件的套件,甚至包括餐盤 Arduino UNO 和手冊以開始試驗和創建項目。 在這些套件中,您需要的一切都包括在內,包括電動機本身,控制器,電路板,麵包板等。

Arduino的步進電機示例

帶有步進電機和控制器的Arduino

最後,顯示一個 Arduino的實際示例,使用ULN2003控制器和28BYJ-48步進電機。 這很簡單,但是您足以熟悉該操作就足夠了,這樣您就可以開始進行一些測試並查看其工作方式...

如所見 接線圖,電機線圈A(IN1),B(IN2),C(IN3)和D(IN4)已分別分配給Arduino板上的連接8、9、10和11。 另一方面,驅動器或控制器板必須以適當的電壓饋入其5-12V引腳(至Arduino的GND和5V),以便依次饋入連接至具有該驅動器或驅動器的白色塑料連接器的電機控制器。

28BYJ-48發動機 它是具有四個線圈的單極型步進電機。 因此,為了讓您了解其工作原理,您可以按照以下步驟從Arduino開發板向線圈發送HIGH(1)或LOW(0)值:

埃爾帕索 線圈A 線圈B 線圈C 線圈D
1
2
3
4

至於 草圖或代碼來編程您的運動,如下所示 Arduino IDE (對其進行修改並進行實驗,以測試運動的變化方式):

// Definir pines conectados a las bobinas del driver
#define IN1  8
#define IN2  9
#define IN3  10
#define IN4  11

// Secuencia de pasos a par máximo del motor. Realmente es una matriz que representa la tabla del unipolar que he mostrado antes
int paso [4][4] =
{
  {1, 1, 0, 0},
  {0, 1, 1, 0},
  {0, 0, 1, 1},
  {1, 0, 0, 1}
};

void setup()
{
  // Todos los pines se configuran como salida, ya que el motor no enviará señal a Arduino
  pinMode(IN1, OUTPUT);
  pinMode(IN2, OUTPUT);
  pinMode(IN3, OUTPUT);
  pinMode(IN4, OUTPUT);
}

// Bucle para hacerlo girar
void loop()
{ 
    for (int i = 0; i < 4; i++)
    {
      digitalWrite(IN1, paso[i][0]);
      digitalWrite(IN2, paso[i][1]);
      digitalWrite(IN3, paso[i][2]);
      digitalWrite(IN4, paso[i][3]);
      delay(10);
    }
}


成為第一個發表評論

發表您的評論

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

*

*

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