課題5 モーター

課題5-1

  1. TINKERCADのサイトにアクセスしてログインする。
  2. 「新規作成」→「回路」をクリックする。
  3. 入れる部品の種類を「コンポーネント すべて」に切り替え、「Arduino Uno R3」「Hブリッジモータードライバ」「抵抗(10kΩ)」「電位差計」「コンデンサ(1μF)」「電源」「DCモーター」を選んで入れ、図のように配線する。
  4. (「Hブリッジモータードライバ」は「電源管理」のグループの中にある)


  5. コードを「文字」に切り替え、以下のコードをコピー&ペーストする。
  6. int mPin1=4; // モーターの制御用のピン
    int mPin2=5; // モーターの制御用のピン
    int dPin=A0;  // 電位差計用のピン
    
    void setup(){
      // ピンの入出力設定
      pinMode(mPin1, OUTPUT);
      pinMode(mPin2, OUTPUT);
      pinMode(dPin, INPUT);
    }
    void loop(){
      int v=analogRead(dPin); // 電位差計の値(0~1023)
      if (v<1024/4){ // 0~1/4の範囲なら左回転
        digitalWrite(mPin1, HIGH);
        digitalWrite(mPin2, LOW);
      } else if (v<1024*3/4){ // 1/4~3/4の範囲なら停止
        digitalWrite(mPin1, LOW);
        digitalWrite(mPin2, LOW);
      } else { // 3/4~1の範囲なら右回転
        digitalWrite(mPin1, LOW);
        digitalWrite(mPin2, HIGH);
      }
      delay(10);
    }

  7. 実行して電位差計のダイヤルを回し、位置に応じてモーターが左回転・停止・右回転することを確認する。


  8. 名前を「課題5-1」に変更し、トップページに戻ってこの回路を公開する。

課題5-2

  1. 新しい回路「課題5-2」を作って公開する (「新しい回路」ボタンからでもよいし、「課題5-1」のコピーでも構わない)。

  2. 「課題5-2」を編集し、「DCモーター」「エンコーダ付きDCモーター」「マイクロサーボ」「ホビー用ギアモーター」のうち、少なくともどれか1つを使った機能をつくる。
  3. 以下に例を挙げるが、これらと全く同じものはNG。

    例1 : 2つのDCモーターを同時にコントロールする。
    素子・配線
    (Hブリッジモータードライバの右側の端子を使う)
    (水色・紫色と抵抗につながっている配線は左右別々に機能し、電源系(黒・マゼンタ)は共通)


    コード
    (課題5-1の処理が2セット分になるため、配列にして繰り返す)


    実行結果



    例2 : 超音波距離センサーを使い、障害物までの距離が1m以内ならモーターを停止させる
    素子・配線
    (「LCD 16x2 (I2C)」を使い、図のように配線する)


    コード
    (センサーからパルスを出すとき、それを受け取るときでArduino側のピンの入力・出力の設定を切り替える)


    実行結果
    (実行状態でセンサーをクリックし、障害物の円をドラッグして動かす)
    (障害物が1m以内に入るとモーターが止まる)

提出

inserted by FC2 system