このドライバーは、DCモーター2つを制御できます。ネットで記事を探してもなかなか良い記事に出会えないのですが、この記事が参考になりました。
上の記事を読むと、マブチ130モーターでギリギリと書いてありましたが、FPV-TANK ver1.0ではモーターを計4つ接続したので、許容電流を超えていたんだと思います。ってことでver1.0でこの基盤2つ壊しました。そこで、ver2.0ではモーターを計2つにしたのです。
L9110Sの入力端子は次の6つです。
- A-1B
- A-1A
- VCC
- GND
- B-2A
- B-1A
ネーミングの法則がおかしいですよね。それは置いといて、以降 VCC, GND, A1, A2, B1, B2とします。
この基盤、使うのが簡単なんです。
VCCは2.5v~12vとなっています。つまり、このVCCはモーターのパワー電源も兼ねています。したがって、ロジック側のVCCじゃなく、バッテリーの電圧(7.4v)をそのまま入れてやります。
そして、A1をhigh(3.3v)にすれば、Aモーターが正転し、A2をhighにすれば、Aモーターが逆転します。スピードコントロールをしたい場合は、pwm信号を入れます。
FPV-TANKは、スピードコントロールしたいので、PCA9685からpwm信号を入れます。


とりあえず、走行実験したいので、A1, A2, B1, B2をPCA9685の 0ch, 1ch, 2ch, 3chに接続し、次のプログラムで、2秒間だけ全速前進させてみます。もし、モーターが逆転したら、1と2を逆に接続すれば、良いので、モータを繋いでテストしてみました。
import time
import Adafruit_PCA9685
pwm = Adafruit_PCA9685.PCA9685()
pwm.set_pwm_freq(60)
pwm.set_pwm(0, 0, 4095)
pwm.set_pwm(2, 0, 4095)
time.sleep(2)
pwm.set_pwm(0, 0, 0)
pwm.set_pwm(2, 0, 0)
結果、たまたま両方ともちゃんと接続されていました。
コメント