実験2 PWM による複数 DC モーターの駆動
実験の目的:
- ブロックの関数の定義と使い方を学ぶ。2. 複数のモーターを駆動できるようになる。3. PWM の基本的な動作原理を理解し、PWM によるモーター速度の制御を実現する。
PWM の基本原理:
パルス幅変調(PWM)は、信号のデューティ比を調整することでモーターの速度とトルクを制御する技術です。
- PWM 信号の定義
デューティ比(Duty Cycle):PWM 信号の周期に対するハイレベル時間の割合です。デューティ比が高いほど、モーターにかかる平均電圧と電力が大きくなります。
周波数:PWM 信号の繰り返し周波数で、通常は数百ヘルツから数キロヘルツの範囲です。
- PWM による DC モーター制御の動作原理
スイッチ制御:PWM 信号はスイッチング素子(MOSFET や IGBT など)を介してモーターへの電源供給を制御します。スイッチング素子は PWM 信号のハイ/ローに応じて高速にオン/オフし、モーターを制御します。
平均電圧:モーターが受けるのは PWM 信号の瞬時電圧ではなく平均電圧です。デューティ比を変えることでモーターの速度を調整できます。
機能要件:
複数の DC モーターを回転させます。
ハードウェアの準備:
| 機器名 | 数量 | 備考 |
|---|---|---|
| ESP32 メインボード | 1 枚 | コア制御ユニット |
| DC モーター(TT モーター) | 2 | 駆動部品 |
| Type-C データケーブル | 1 本 | PC に接続してプログラムを書き込む |
| 2S バッテリーボックス + リチウム電池 | 1 セット | モーターに電源を供給(モーターの定格電圧に適合) |
回路接続:
ハードウェアモジュール
| 番号 | リンク | 重要度 | 役割 |
|---|---|---|---|
| 1 | Uni ESP32 メインボードおよび拡張ボードの説明【V3.0】 | 必読 | 開発ボードのインターフェースをすばやく確認できます。 |
| 2 | バッテリーモジュールの使用(必読) | 必読 | バッテリーの取り付け、接続、充電方法をすばやく理解できます。 |
| 3 | OpenBlock ソフトウェア環境の設定と使用【V3.0】 | 必読 | ソフトウェアの概要、インストール、基本的な使い方を理解できます。 |
| 4 | 電子モジュールの紹介 | 必要に応じて | リンクをクリックして DC モーター(TT モーター) を確認してください |
ピンの説明
| ハードウェア | ESP32 ピン |
|---|---|
| モーター 1 | 13 |
| 27 | |
| モーター 2 | 14 |
| 25 |
実物の配線
ソフトウェア設計
ソースコードのダウンロード
2 PWM による複数モーター駆動 - M1・M2 モーターの正逆転.rar
ブロックコード

操作手順:
-
グラフィカルプログラムをダウンロードします。ESP32 のバージョンを選択し、ESP32 ボードを PC の USB ポートに挿してから、接続してプログラムを書き込みます。
-
スイッチを入れて実行し、動作を確認します。
実験結果:
2 つのモーターの正転、停止、逆転を実現します。
ビデオチュートリアル
回路接続とプログラムのダウンロード
ハードウェアの準備、実物の回路接続の説明から、最後のプログラムのダウンロードとデモまで、全工程を紹介します。
PWM による 2 モーター駆動のプログラム作成と実行
PWM で複数の DC モーターを駆動します。以下は 2 つのモーターを駆動する例です。今後 3 つ、4 つのモーターへ拡張することもできます。
ハードウェアの準備と回路接続
プログラムの作成、保存、実行
ブロックのモジュール化
モーター制御ブロックのモジュール化、関数ブロックの定義と呼び出しを説明し、コードの可読性を高めます。
既存ブロックのコピー
目的:既存のブロックをコピーし、パラメーターを直接変更することで、プログラミングの効率を高めます。
ドキュメント