---
title: 步進馬達的原理與驅動—PART9
description: 作者：Bird  上一回【Maker電子學】步進馬達的原理與驅動—PART8 我…
url: "https://makerpro.cc/docs/principles-and-drive-of-stepper-motor-part9/"
updated: "2025-04-17"
category: 步進馬達
---

# 步進馬達的原理與驅動—PART9

<strong>作者：Bird </strong>

上一回<a href="https://makerpro.cc/2024/02/principles-and-drive-of-stepper-motor-part8/" target="_blank" rel="noopener">【Maker電子學】步進馬達的原理與驅動—PART8</a> 我們說明了 A4988 的應用電路和幾個重要接腳所需要的零件如 charge pump、電流感測電阻、PWM 週期設定電阻等。

這一回我們要介紹一些使用 A4988 做成的模組以及我們如何應用這些模組。
 <h3><strong>模組</strong></h3>
 我們上一回介紹 A4988 的應用電路時，可以發現要讓 A4988 工作所需要的外部零件並不多，只需要幾個被動元件就可以讓它動起來。不過由於 A4988 是 QFN 包裝的 IC，嚴格來說它沒有接腳，只有長在封裝下方和側面一點點的焊接點，對於大部分的業餘愛好者或是 maker 來說，這種封裝的 IC 不太好焊接（雖然它不像 BGA 或 LGA 那樣一定要有熱風槍或鐵板燒才能焊，但用烙鐵處理 QFN 很容易弄得亂糟糟的）。

因此就有了模組的出現。

<img class="size-full wp-image-1554584" src="https://makerpro.cc/wp-content/uploads/2024/03/Screenshot-2024-03-19-224946.png" alt="" width="382" height="327" /> （圖片來源：Bird 提供）

坊間很容易買到這種用 A4988 做成的步進馬達驅動模組，仔細看它的電路板上確實沒幾個零件，只有 7 顆電容器、6 顆電阻，再加一個可變電阻。聰明的讀者應該猜到，最大顆的電容就是電源上的濾波電容、最大顆的兩顆電阻則是馬達相電流的感測電阻，而可變電阻則是連接在 Vref 上，讓我們可以很容易調整馬達的相電流。

這樣的模組，可以在各式各樣的供應商買到，而且接腳、電路幾乎都一樣。爲什麼會有這樣的巧合呢？難道這個模組有什麼標準嗎？

其實這個模組是從一片叫做 Arduino CNC Shied 的 Arduino 擴充板來的。
 <h3><strong>CNC Shield</strong></h3>
 <img class="size-full wp-image-1554585" src="https://makerpro.cc/wp-content/uploads/2024/03/Screenshot-2024-03-19-224953.png" alt="" width="379" height="335" /> （圖片來源：Bird 提供）

Arduino CNC Shield 是一片可以疊在 Arduino 主板上的擴充板，上面有四顆插座，可以插四組這樣的步進馬達驅動模組，因此它最多可以控制四顆步進馬達。四顆步進馬達可以做什麼呢？可以做一台 3D 列印機了。

三顆步進馬達分別控制 X、Y、Z 三軸的運動，第四顆步進馬達用來控制噴頭的擠料。CNC Shield 上還預留了連接限位開關的接點，讓步進馬達在歸零的時候不會跑過頭，因此 Arduino 搭配 CNC Shield，也可以變成 3D 列印機、寫字機、CNC 銑牀的控制器。

而這些步進馬達控制模組的接腳，就是來自 CNC Shield 上的模組插座所定義的。

我們來看一下典型的驅動模組電路圖：

<img class="size-full wp-image-1554586" src="https://makerpro.cc/wp-content/uploads/2024/03/Screenshot-2024-03-19-225003.png" alt="" width="572" height="457" /> （圖片來源：Bird 提供）

這個電路圖是不是和我們上一回介紹的 A4988 參考電路幾乎一模一樣？左邊那個 8-pin 的連接器包含了控制 A4988 所需要的所有訊號，像是 DIR、STEP、ENABLE、SLEEP、RESET，以及設定微步進大小的 MS1、MS2、MS3，而右邊的 8-pin 則包含了 4 支馬達線圈接腳、VMM 馬達驅動電路電源以及 VDD 邏輯電路電源。

SLEEP 和 ENABLE 接腳在模組上已經各自接了 pull-up 和 pull-down 電阻，因此如果你沒有需要控制它們的話，留著不接，A4988 就會處在可以工作的狀態，而 MSx 接腳在板子上沒有任何 pull-up/pull-down 電阻，但根據 A4988 的 datasheet，MS1 和 MS3 有 100 Kohm 左右的 internal pull-down，而 MS2 則有 50 Kohm 左右的 internal pull-down，因此如果這三支腳空接的話，A4988 就會在 full-step 的模式。
 <h3><strong>模組的使用</strong></h3>
 使用這個模組變得很簡單吧！只要接上步進馬達、邏輯電源、馬達電源，然後用 DIR 設定方向，再從 STEP 送入脈波，馬達就會轉了，而它標準的 2.54 mm 腳距，除了容易焊接外，在不方便焊接時，也讓我們很容易用麵包板或是杜邦連接線來使用它。

使用這個模組之前，請務必確認板子上的可變電阻設定在適當的值，確保馬達的相電流不會過大（因爲模組上是直接用一個可變電阻對邏輯電源 VDD 做分壓，就餵給 Vref，因此 Vref 的電壓可以在 VDD 到 0 之間變動），而根據我們上一回說明相電流設定的公式：
 <p style="text-align: center;"><strong>Imax = Vref /（8 * Rs）</strong></p>
 板子上的 Rs 是 0.05 ohm，代入上面的式子：
 <p style="text-align: center;"><strong>Imax = Vref / (8 * 0.05) = Vref / 0.4</strong></p>
 如果你不小心把 Vref 設在最大的 3.3 V，相電流就會變成 3.3 / 0.4 = 8.25 A；當然 A4988 根本不可能輸出這麼大的電流，但如果馬達的線圈阻抗很低，A4988 又沒有限制電流，最終的下場很有可能就是 A4988 過熱燒毀，因此在送電開始驅動馬達之前，請務必確定相電流的設定是正確的。
 <h3><strong>小結</strong></h3>
 這一回我們介紹了使用 A4988 的步進馬達驅動模組以及使用這種模組的方法，下一回應該是這一系列關於步進馬達原理與驅動的最終回，我們會介紹一些步進馬達應用上的一些小技巧和冷知識。

（責任編輯：賴佩萱）

 
