概要
Nema 17タイプのステッピングモータ を ドライバーIC A4988 搭載のモジュールで駆動してみた。
背景と目的
ある目的でステッピングモータを使用したい(3Dプリンタではない)のだが、以前、
において使用した 28BYJ-48 は今回の目的に対してはトルクが不足しており、よりトルクの大きいモータが必要となった。そこで、入手性が良く、28BYJ-48比べて十分大きなトルクが期待できるNema 17タイプのモータを使用することとした。今回はまずは駆動用のドライバーICが搭載されたモジュールを使って試しに動かしてみる。
詳細
1. 使用部品
Nema 17型ステッピングモータ 42mm × 23mm
Nema 17は規格名で、1.7インチ≒約42mm角の大きさのモータである。奥行き(厚み)は製品によりさまざまで、今回使用するのは、23mmと厚みの薄い製品でAmazonで約1500円と最も安価な部類である。相あたりの電流は、1A、保持トルクは13N・cmとのこと。ステップ角は1.8°なので200ステップで1回転である。
A4988 ステッピングモータドライバーモジュール
8-35Vまでの電源電圧が使用可能なドライバー。パルスを入力信号として与えることで、出力側のステッピングモータの駆動に必要な2相分のブリッジが駆動される。
https://www.amazon.co.jp/dp/B0CLR2KJC1?ref=ppx_yo2ov_dt_b_fed_asin_title
ESP-WROOM-32 DevKit-C
駆動用のステップパルスを発生させるため、マイコンとして使用する。
2. 配線
A4988 ドライバーモジュールの各ピンの接続は、以下とした。
モーター駆動電源は12Vで、ロジック部VDDはESP-WROOM-32のIOと同じく3.3Vである。励磁方式は、1-2相励磁とするため、MS1,2,3をこちらを参考に設定。
| ピン名 | 接続先/レベル | 備考 |
|---|---|---|
| ~EN | GND | イネーブル |
| MS1 | 3.3V | |
| MS2 | GND | |
| MS3 | GND | |
| ~RST | 3.3V | |
| ~SLP | 3.3V | |
| STEP | IO5 | ステップパルス信号 |
| DIR | GND | 回転方向 |
| VMOT | 12V | モータ駆動電源 |
| 1A | A+ | 赤 |
| 1B | A- | 青 |
| 2A | B+ | 緑 |
| 2B | B- | 黒 |
| VDD | 電源 | 3.3V|DevKit-Cの3.3V出力を使用 |
3. プログラム
ステップ角1.8°で1-2相励磁のため、200 * 2パルスで1回転である。そのため、400パルスで1秒となるように、パルス周期を2.5msecとしてIO5から出力する。
void setup() { // put your setup code here, to run once: Serial.begin(115200); pinMode(5, OUTPUT); } void loop() { // put your main code here, to run repeatedly: digitalWrite(5, HIGH); delayMicroseconds(1250); digitalWrite(5, LOW); delayMicroseconds(1250); }
4. 結果
オシロスコープにて出力を観察。4つの出力端子から信号が出ている。このときは上記のパルスよりも遅い20msec周期としてある。

モータを接続し、所定の周期のパルスを与えた結果は以下。1秒で1回転している。
なお、電源の出力電流は平均およそ360mAで、4.5W程度の消費。(手持ちの直流安定化電源での表示)。電流制限用の可変抵抗は、2の方向である。購入時では1の方向でその場合は約170mAだった。

まとめと今後の課題
Nema 17タイプ ステッピングモータ を ドライバーIC A4988 で駆動することができた。目的の機器への組込みを進めたい。