趣味のマイコンいじり

安価なマイコンを利用して作成したアプリの紹介です。

格安モータドライブ基板を試してみました

以前注文したArduinoで利用するモータドライブ用の基板が届いたので
動作を確認しました。値段は120円ととても安かったのですが、
2チャンネルのDCモータの駆動およびバイポーラのステップモータを
目標通り動かす事ができました。値段が安いのでいろんな場面で気楽に
利用できるので大変良かったと思っています。
確認した内容とその時の状況は次の様なものでした。

<L9110 2CH モータドライバ の概要>
   購入した「L9110_2_CHANNEL_MOTOR_DRIVER」は中国メーカのチップを
   使用した基板で、次の様なものでした。
   イメージ 1

    ただし、DCモータ駆動の時のブレーキの機能は有りません。

<関連資料>
  ボードの資料としては次のものが参考となります。
  URL : 
         http://me.web2.ncut.edu.tw/ezfiles/39/1039/img/617/L9110_2_CHANNEL_MOTOR_DRIVER.pdf


  ドライバのチップ(L9110)のデータシートは次のURLから入手可能です
       URL : http://aitendo3.sakura.ne.jp/aitendo_data/product_img/motor/L9110/l9110.pdf

<テスト内容>
 モータドライブ基板のテストは次の様な内容で、バイポーラのステップモータと
 2つのDCモータのギアボックスを動作させる事にしました・

 [目的と結果]
    テストの確認目標は次のものでした。
    1.購入したものの動作方法の確認
    2.および、それが動作する事を確認
    3.バイポーラのステップモータと2チャンネルのDCモータが
      動作する状況を確認

   結果としては、バイポーラのステップモータおよび2チャンネルのDC
  モータの両方の動作とも期待した結果が得られました。

 [テストでの機器の接続]
  <バイポーラのステップモータ>
        イメージ 2 
        イメージ 3


  <2チャンネルDCモータ>        
        イメージ 4
        イメージ 5



 [テストコード]
  <バイポーラのステップモータ>
         テストコードは「バイポーラステップモータ」の項目を参照
         動作状況の確認はこちらから(Dropboxへのリンク)

  <2チャンネルDCモータ>
       /*
         <DCモータ駆動確認プログラム>
       */
      
       // 設定定義
       #define AIA    5    // モータAのA側ピン
       #define AIB    6    // モータAのB側ピン
       #define BIA   10    // モータBのA側ピン
       #define BIB   11    // モータBのB側ピン
      
       #define FSPD 255    // フルスピードの値
       #define SSPD  80    // スロースピードの値
      
       // the setup function runs once when you press reset or power the board
       void setup() {
         // ポート設定
         pinMode(AIA, OUTPUT);
         pinMode(AIB, OUTPUT);
         pinMode(BIA, OUTPUT);
         pinMode(BIB, OUTPUT);
       }
      
       // the loop function runs over and over again forever
       void loop() {
          // 両側フルスピードの正回転(2秒間)
          analogWrite(AIA, FSPD);
          analogWrite(AIB, 0);
          analogWrite(BIA, FSPD);
          analogWrite(BIB, 0);
          delay(2000);
          // 両側フルスピードの逆回転(2秒間)
          analogWrite(AIA, 0);
          analogWrite(AIB, FSPD);
          analogWrite(BIA, 0);
          analogWrite(BIB, FSPD);
          delay(2000);
          // 両側スロースピードの正回転(1秒間)
          analogWrite(AIA, SSPD);
          analogWrite(AIB, 0);
          analogWrite(BIA, SSPD);
          analogWrite(BIB, 0);
          delay(1000);
          // 方側スロースピードの正回転(1秒間)
          analogWrite(AIA, SSPD);
          analogWrite(AIB, 0);
          analogWrite(BIA, 0);
          analogWrite(BIB, 0);
          delay(1000);
          // 方側スロースピードの正回転(1秒間)
          analogWrite(AIA, 0);
          analogWrite(AIB, 0);
          analogWrite(BIA, SSPD);
          analogWrite(BIB, 0);
          delay(1000);
       }


      動作状況の確認はこちらから(Dropboxへのリンク)