3.1 車をテストする

このセクションでは、車を前進させるためのスクリプトの書き方を学びますが、まずは カープロジェクト を参照して車の組み立て方や基本的な理解を得る必要があります。

プロジェクトを開始する前に、アップロードモード で PictoBlox を使用する手順を知っておく必要があります。

必要な部品

このプロジェクトでは、以下の部品が必要です。

キットでまとめて購入すると便利です。以下にリンクを掲載しています。

名前

このキットのアイテム

リンク

3 in 1 Starter Kit

380+

3 in 1 Starter Kit

以下のリンクから、部品を個別に購入することもできます。

コンポーネントの紹介

購入リンク

SunFounder R3ボード

BUY

L9110 モータードライバーモジュール

-

TTモーター

-

回路の作成

L9110モータードライバーモジュールは、DCおよびステッピングモーターを駆動するための高電力モータードライバーモジュールです。L9110モジュールは、最大4つのDCモーター、または2つのDCモーターの方向および速度制御を制御できます。

以下の図に従って、L9110モジュールとR3ボードの間にワイヤーを接続します。

L9110 Module

R3 Board

Motor

A-1B

5

A-1A

6

B-1B(B-2A)

9

B-1A

10

OB(B)

右モーターの黒ワイヤ

OA(B)

右モーターの赤ワイヤ

OB(A)

左モーターの黒ワイヤ

OA(A)

左モーターの赤ワイヤ

../../_images/car_21.png

プログラミング

1. 車を前進させる

上記の配線に基づいて、ピン5と6は右モーターの回転を制御するために使用され、ピン9と10は左モーターの回転を制御するために使用されます。では、車を前進させるスクリプトを書いてみましょう。

ボードをArduino Unoに選択した後、アップロードモード に切り替え、次の図に従ってスクリプトを書きます。

../../_images/1_test1.png

Upload Code ボタンをクリックして、コードをR3ボードにアップロードします。完了したら、車の両方のモーターが前進します(車を地面に置いている場合、まっすぐ前進しますが、両方のモーターの速度が少し異なるため、車は曲がるかもしれません)。

もし両方のモーターが前進しない場合、次の状況が発生した場合、両方のモーターの配線を再調整する必要があります。

  • 両方のモーターが同時に後方に回転する場合(左モーターは時計回りに回転し、右モーターは反時計回りに回転する)、左モーターと右モーターの配線を同時に交換します。OA(A)とOB(A)を交換し、OA(B)とOB(B)を交換します。

  • 左モーターが後方に回転する場合(時計回りに回転)、左モーターのOA(B)とOB(B)の配線を交換します。

  • 右モーターが後方に回転する場合(反時計回りに回転)、右モーターのOA(A)とOB(A)の配線を交換します。

2. ブロックを作成

スクリプトをよりクリーンで使いやすくするため、前進の動作を制御するすべてのブロックを1つのブロックにまとめ、使用するときはこのブロックを直接呼び出します。

My Blocks パレットの Make a Block をクリックします。

../../_images/1_test31.png

ブロックの名前を forward に設定し、 Add an input にチェックを入れ、入力名を speed に設定します。

../../_images/1_test32.png

車を前進させるためのブロックを forward にドラッグ&ドロップします。pin6とpin9にパラメーター speed を追加する必要があります。

../../_images/1_test33.png

作成したブロックを [Forward] ブロックの forward で呼び出します。Uploadモードでは、最初に [When Arduino Uno starts up] ブロックを追加する必要があります。

  • モーターの回転速度の範囲は100~255です。

../../_images/1_test3.png

3. モーターの速度を調整

2つのモーターの速度にわずかな違いがあるため、車がまっすぐ進むことができない場合、車ができるだけまっすぐ進むように、左と右のモーターに異なる速度を設定します。

私の車は右前方にゆっくりと進むので、左のモーターの速度を少し下げます。

../../_images/1_test2.png