Version 10 (modified by 15 years ago) ( diff ) | ,
---|
BD62xxFモータードライバ
Hブリッジです。
- ブラシ付きモーター用
- 正転、逆転、ブレーキ、空走
- 無段階変速。入力はPWMまたはアナログ電圧。
- 電源電圧3~5.5V。
- ドライブ電流最大1A。
計画からずいぶん時間が経ってしまいました。 実は、基板屋にEagleの.brdファイルで依頼したら、Gerberへの変換ミスでシルクがぐちゃぐちゃになり、作り直してもらったのです。 そんなことがあるとは思いもしませんでした。 製造前にPDFで確認したときは大丈夫だったんですけど。
今回のロットは、なんと手付けです。 そのうち、「なんちゃってリフロー」で製造しますよ!。
良い点:
- 小型
- (たぶん)安い
- ブレーキ、空走機能付き
- 無段階変速
- この大きさで1Aまでドライブできる
- 保護回路いろいろ(過電流、温度、過電圧、低電圧)
悪い点:
- 信号系と負荷系の電源が分離されていない
モーターの定格電圧が信号系(マイコン)の電源電圧よりも低い場合は困ってしまいます。 モーターによっては、PWMで一定のデューティよりも上げないように注意すれば大丈夫な場合があります。
さて、お値段どうしましょう。
使い方
- VCC -- 電源3~5.5Vを接続
- GND -- グラウンド
- OUT1 -- モーター接続端子(出力)
- OUT2 -- モーター接続端子(出力)
ここまでは自明でしょう。
- FIN -- 制御端子(入力)
- RIN -- 制御端子(入力)
- VREF -- 制御端子(入力)出荷時は基板裏側でVCCに接続してあります。
使い方が2種類あります。
- PWM制御方式
-
- FINとRINにPWM信号を与え、回転方向および回転速度を制御する。
- VREFにはVCCを与えておく。出荷時状態なら、VCCに接続してあります。
- VREFアナログ制御方式
-
- FINとRINには論理1または0のデジタル信号を与えて回転方向を制御する。
- VREFに与えたアナログ電圧で、回転速度を制御する。基板裏のJ1のパターンをカッターで切り離して下さい。
PWM制御方式の場合、
FIN | RIN | 動作 |
論理0 | 論理0 | 空転 |
PWM信号 | 論理0 | 正転 |
論理0 | PWM信号 | 逆転 |
論理1 | 論理1 | ブレーキ |
PWMの周波数は20kHz~100kHzです。
VREFアナログ制御方式の場合、
FIN | RIN | 動作 |
論理0 | 論理0 | 空転 |
論理1 | 論理0 | 正転 |
論理0 | 論理1 | 逆転 |
論理1 | 論理1 | ブレーキ |
スケッチの例
int FIN = 5; int RIN = 6; int OFFSET = 1.0 * 256 / 5; int MAX = 1.5 * 256 / 5 - OFFSET; int degree = 0; void setup() { Serial.begin(9600); pinMode(FIN, OUTPUT); pinMode(RIN, OUTPUT); } void loop() { delay(100); degree += 1; degree %= 360; long v = int(sin(degree * 2 * PI / 360) * MAX); Serial.println(v); if (v > 0) { analogWrite(FIN, v + OFFSET); analogWrite(RIN, 0); } else if (v < 0) { analogWrite(FIN, 0); analogWrite(RIN, OFFSET - v); } else { Serial.println(); analogWrite(FIN, 255); analogWrite(RIN, 255); } }
(2009/4/10 - sgk)
Attachments (1)
- 1.jpg (68.6 KB ) - added by 15 years ago.
Download all attachments as: .zip
Note:
See TracWiki
for help on using the wiki.