Arduino Elegoo MEGA2560 R3ボードとロータリーエンコーダを使用してステッピングモーターを制御してみます。
- ■用意したもの
- ■ロータリーエンコーダモジュールへの理解
- ■ブレッドボードに、ブレッドボード用電源モジュールを接続する
- ■ブレッドボードと、ULN2003 ステッパーモータードライバーモジュールを接続する
- ■ULN2003 ステッピングモータードライバーモジュールと、ステッパーモーターを接続する
- ■ULN2003 ステッピングモータードライバーモジュールと、MEGA2560 R3ボードを接続する
- ■ブレッドボードと、MEGA2560 R3ボードを接続する
- ■ロータリーエンコーダモジュールと、MEGA2560 R3ボードを接続する
- ■MEGA2560 R3ボードをPC(パソコン)に接続する
- ■ブレッドボード用電源モジュールにACアダプターを取り付ける
- ■コードをアップロードし、マイコンボードに書き込む
- ■ロータリーエンコーダモジュールで、ステッピングモーターを制御できるのかの検証
■用意したもの
・Arduinoバージョン1.8.13がインストールされているPC(Windows10)
・Elegoo MEGA2560 R3ボード、1個(https://amzn.to/2J3pzB2)
・BREADBOARD(ブレットボード) MB-102、1個(https://amzn.to/33l1nky)
・ブレッドボード用電源モジュール(Breadboard Power Supply)、1個(https://amzn.to/33kvhoY)
・ステッピングモーター(ステッパーモーター)(Stepper motor)、1個(https://amzn.to/3l8wGVK)
・ULN2003 ステッピングモーター(ステッパーモーター)ドライバーモジュール(stepper motor drivermodule)、1個(https://amzn.to/3l8wGVK)
・ロータリーエンコーダモジュール(Rotary Encoder Module)、1個(https://amzn.to/366ZuJP)
・ACアダプター 9V 1A、1個(https://amzn.to/2JaZHCN)
・メスからオスのデュポンワイヤーリボンケーブル(Female to Male DuPont wires)、9つ(https://amzn.to/3l95yFZ)
・オス – オス ジャンパー線(ジャンパーワイヤ)(M-M wires (Male to Male jumper wires))、1つ(https://amzn.to/2JhCEq5)
それぞれ(ELEGOO Arduino用のMega2560スタータキット最終版)に付属しているものです。
■ロータリーエンコーダモジュールへの理解
ロータリエンコーダは、ノブの角度位置 (回転)、ノブの回転方向を決定する出力信号(電気信号)に変換する位置センサーの一種です。出力信号(電気信号)に変換し、この信号を処理して位置、速度などを検出できます。ロボット、プリンタなどに使用されています。
エンコーダ内部には、ピンがあり、各ピンがアースに接続および切断するタイミングを追跡することで、これらが信号となり、信号の変化を使用して、ノブが回転している方向を決定・判断できます。
■ブレッドボードに、ブレッドボード用電源モジュールを接続する
それでは、 MEGA2560 R3ボードとロータリーエンコーダを使用してステッピングモーターを制御してみますので、まずブレッドボードに、ブレッドボード用電源モジュールを接続します。
接続する際は、ブレッドボードに記載されている「+」と「-」が、ブレッドボード用電源モジュールに記載されている「+」と「-」がそろうように接続します。
■ブレッドボードと、ULN2003 ステッパーモータードライバーモジュールを接続する
接続後、ブレッドボードと、ULN2003 ステッピングモータードライバーモジュールを接続します。
ブレッドボードに記載されている「+」と「-」、モジュールに記載されている「+」、「-」が合わさるように接続します。
■ULN2003 ステッピングモータードライバーモジュールと、ステッパーモーターを接続する
接続後、ULN2003 ステッピングモータードライバーモジュールと、ステッピングモーター(ステッパーモーター)を接続します。
配線を間違えないようにします。
■ULN2003 ステッピングモータードライバーモジュールと、MEGA2560 R3ボードを接続する
接続後、ULN2003 ステッピングモータードライバーモジュールと、MEGA2560 R3ボードを接続します。
配線を間違えないようにします。
■ブレッドボードと、MEGA2560 R3ボードを接続する
接続後、ブレッドボードと、MEGA2560 R3ボードを接続します。
配線を間違えないようにします。
■ロータリーエンコーダモジュールと、MEGA2560 R3ボードを接続する
接続後、ロータリーエンコーダモジュールと、MEGA2560 R3ボードを接続します。
配線を間違えないようにします。
■MEGA2560 R3ボードをPC(パソコン)に接続する
接続後、MEGA2560 R3ボードをUSBケーブルを使って、PC(パソコン)に接続する。
■ブレッドボード用電源モジュールにACアダプターを取り付ける
接続後、ブレッドボード用電源モジュールにACアダプターを取り付けます。
接続すると、モジュール本体の緑色LEDが点灯します。
■コードをアップロードし、マイコンボードに書き込む
接続後、ELEGOO Arduino用のMega2560スタータキット最終版に付属したCD-ROMをパソコンで読み取ります。
CD-ROMから「日本語」をクリックする。
「code」をクリックする。
「Lesson 33 Controlling Stepper Motor With Rotary Encoder」をクリックする。
「With_Encoder」をクリックする。
「With_Encoder.ino」をクリックする。
リックすると、「Arduino」が起動し、ウインドウ内に「With_Encoder」のコードが表示されます。
このコードをMEGA2560 R3ボードに書き込んでみたいと思いますが、このままコードを書き込んでしまうとエラーになってしまうので、ライブラリを追加する必要があります。
ライブラリを追加するには、CD-ROMの「Lesson 33 Controlling Stepper Motor With Rotary Encoder」の中にある「Stepper.zip」というファイルを、コピーし、ライブラリに追加します。
ライブラリの追加に関しては、「リモート(遠隔操作)でステッピングモーターを制御する」に記載してあります。
ライブラリが追加された状態で、「Arduino」の上部にある「マイコンボードに書き込む・書込装置を使って書き込み」ボタンをクリックします。クリックする際は、接続したPC(パソコン)でMEGA2560 R3ボードが認識されているかを確認し、クリックします。
クリックすると、「ボードへの書き込みが完了しました。」と表示され、書き込みが成功しました。
書き込みが成功すると、ロータリーエンコーダモジュールのノブを回すと、ULN2003 ステッピングモーター(ステッパーモーター)ドライバーモジュールのLEDが点灯し、ステッピングモーターを制御できます。
■ロータリーエンコーダモジュールで、ステッピングモーターを制御できるのかの検証
書き込み後、ロータリーエンコーダモジュールで、ステッピングモーターを制御できるのかの検証を行いました。
検証を行いましたが、ロータリーエンコーダモジュールのノブを回転・反回転させると、それにあわせてステッピングモーターを制御できることが確認できました。
コメント