Changes between Version 4 and Version 5 of DCMoterDriver
- Timestamp:
- May 19, 2015 4:11:38 PM (8 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
DCMoterDriver
v4 v5 12 12 ||Pololu||[https://www.switch-science.com/catalog/235/ デュアルモータードライバVNH2SP20(最大14A、電流センサ内蔵)]||235||2||5V||5.5V~16V||14A||30A||20kHz||回転方向切替:2本 回転速度:1本|| 13 13 ||Pololu||[https://www.switch-science.com/catalog/236/ デュアルモータードライバTB6612FNG]||236||2||2.7V~5.5V||4.5V~13.5V||1A||3A||100kHz||回転方向切替:2本 回転速度:1本|| 14 ||Pololu||[https://www.switch-science.com/catalog/237/ ハイパワー・モータードライバ18V15]||237||1||5V||5.5V~30V||15A||30A||40kHz||回転方向切替:1本 14 ||Pololu||[https://www.switch-science.com/catalog/237/ ハイパワー・モータードライバ18V15]||237||1||5V||5.5V~30V||15A||30A||40kHz||回転方向切替:1本 回転速度:1本|| 15 15 ||Pololu||[https://www.switch-science.com/catalog/238/ ハイパワー・モータードライバ36V9]||238||1||5V||5.5V~50V||9A||12A||40kHz||回転方向切替:1本 回転速度:1本|| 16 16 ||SparkFun||[https://www.switch-science.com/catalog/385/ デュアルモータードライバTB6612FNG]||385||2||2.7V~5.5V||2.7V~13.5V||1.2A||3.2A||100kHz||回転方向切替:2本 回転速度:1本|| … … 48 48 (OUT1 OUT2の状態はモータードライバの種類によって少し異なります。) 49 49 ||PWM||IN1||IN2||OUT1||OUT2||状態|| 50 || L||L||L||Z||Z||ストップ||51 || H||L||L||Z||Z||ストップ||52 || L||L||H||L||L||ショートブレーキ||53 || H||L||H||L||H||正転||54 || L||H||L||L||L||ショートブレーキ||55 || H||H||L||H||L||逆転||56 || L||H||H||L||L||ショートブレーキ||57 || H||H||H||H||H||ショートブレーキ||50 ||0||0||0||Z||Z||ストップ|| 51 ||1||0||0||Z||Z||ストップ|| 52 ||0||0||1||L||L||ショートブレーキ|| 53 ||1||0||1||L||H||逆転|| 54 ||0||1||0||L||L||ショートブレーキ|| 55 ||1||1||0||H||L||正転|| 56 ||0||1||1||L||L||ショートブレーキ|| 57 ||1||1||1||H||H||ショートブレーキ|| 58 58 59 59 例として[https://www.switch-science.com/catalog/236/ デュアルモータードライバTB6612FNG(連続最大1A)]を使ってみます。[[BR]] 60 60 このモータードライバはモーター駆動電源の推奨値が4.5V~13.5Vですが、下の図では3Vにしています。(非推奨ですが2.5Vから動作します。) 61 このように基本的にモータードライバーを使うときはマイコン用の電源とモーター用の電源の2種類を用意する必要があります。 61 このように基本的にモータードライバーを使うときはマイコン用の電源とモーター用の電源の2種類を用意する必要があります。[[BR]] 62 理由は次の通りです。 63 64 * モーターに使う電源の電圧と制御系の電源電圧が違う 65 * モーターの電流消費が大きく、大きなノイズも発生するので制御系への影響を少なくするため 66 67 今回の例で言うとVCCがロジック電源(制御系)、これはArduino Unoからもらっています。[[BR]] 68 VMOTがモーター用の電源です。モータードライバの種類によってはロジックとモーター用の電源端子が共通になっているものもあります。[[BR]] 69 62 70 AIN1とAIN2をArduino Unoのデジタル12、13番に接続し、PWMAをデジタル11番につなげました。 63 71 … … 65 73 [[Image(TB6612_3.png,360px)]] 66 74 75 サンプルスケッチです。正転と逆転を繰り返すようになっています。 76 77 {{{ 78 #define AIN1 13 79 #define AIN2 12 80 #define PWMA 11 81 82 void setup() { 83 pinMode(AIN1,OUTPUT); 84 pinMode(AIN2,OUTPUT); 85 pinMode(PWMA,OUTPUT); 86 87 } 88 89 void loop() { 90 int i=0; 91 //モーター停止 92 digitalWrite(AIN1,LOW); 93 digitalWrite(AIN2,LOW); 94 delay(500); 95 //モーター正回転・スピード変化 96 digitalWrite(AIN1,HIGH); 97 digitalWrite(AIN2,LOW); 98 for(i=0;i<256;++){ 99 analogWrite(PWMA,i); 100 delay(100); 101 } 102 for(i=255;i>=0;i--){ 103 analogWrite(PWMA,i); 104 delay(100); 105 } 106 //モーター停止 107 digitalWrite(AIN1,LOW); 108 digitalWrite(AIN2,LOW); 109 delay(500); 110 //モーター逆回転・スピード変化 111 digitalWrite(AIN1,LOW); 112 digitalWrite(AIN2,HIGH); 113 for(i=0;i<256;++){ 114 analogWrite(PWMA,i); 115 delay(100); 116 } 117 for(i=255;i>=0;i--){ 118 analogWrite(PWMA,i); 119 delay(100); 120 } 121 122 } 123 }}} 124 125 === 回転方向切替:1本 回転速度:1本 === 126 127 このタイプは回転方向の制御に信号線を1本、回転速度を指定するために信号線(PWM)を1本使います。[[BR]] 128 (OUT1 OUT2の状態はモータードライバの種類によって少し異なります。) 129 130 ||IN||EN||OUT1||OUT2||状態|| 131 ||0||PWM||PWM||L||正転|| 132 ||1||PWM||L||PWM||逆転|| 133 ||x||0||||L||L||ブレーキ|| 134 135 今回は例として[https://www.switch-science.com/catalog/1637/ デュアルモータードライバDRV8835]を使ってみます。 67 136 68 137 69