Japaninoロボ Ep.1 Japaninoとモーター、電源の接続
2015/10/24
・モータードライバの選択・
Japaninoで動くものを作るときには必然的にモーター制御が課題となる。また、Japanino経由で取り出せる電流が400mAまで、ということを考えると、モータードライバICと別電源を用意する必要がある。
モータードライバに関して、現実的選択肢は(というか、課題研究で試したのは)汎用モータードライバICTA7291Pを用いるか、Ardumotoなどのモータードライバシールドを活用するかということになる。
結果的に上手くいったのは前者、つまりTA7291Pを使用する方法であった。
TA7291P使用のメリットは…
1.ブラックボックス的部分が少なく不具合の特定が容易。
2.Ardumotoが順転・逆転を1本のpinのHIGH/LOWで制御するのに対し、TA7291Pは2本のpinのHIGH/LOWで順転・逆転・停止を制御できる。実際にプログラミングしてみると、pwmの値を変更することなく停止できる利点があった。
3.コストパフォーマンスに優れている。(Ardumoto2,495円、TA7291Pは2個で300円)
4.結線を自分で考えて行う分教育的である。
・結線図・(中部大学自由研究発表会ポスターより)
(2015.10)この画像に関して、ピン番号の振り方が逆であるというご指摘をいただきました。正しくは欠けているほうが1番ピンです。この画像はピン番号と結線の関係の表は正しく、TA7291Pの画像がさかさまになっています。お詫び、訂正いたします。
・備忘録・
・結線に関して・
TA7291Pの各pinの役割は図の通り。TA7291Pの電源にあたる7番ピンにJapaninoの+5Vピンを接続する(赤)。モーターの回転方向を制御する5番、6番ピンはデジタル信号で制御するため、digitaWriteのピンを接続する(緑、青)。モーターの電圧を制御する4番ピンはPWM信号で制御できるので、analogWriteのピンと接続する(紫)。
・Japaninoの電源・
今回、電源にはすべて単3のEVOLTA充電池を用いることにした。必然的に、得られる電圧は大体1.2Vの整数倍(強)になる。まずJapaninoの電源であるが、Japanino自体は3.3V~5Vで駆動する。つまりEVOLTAは3本(1.2×3=3.6V)ないしは4本(1.2×4=4.8V)必要である。ただ、TA7291Pの駆動電圧が4.5V以上であり+5Vピンには実際にはJapaninoの電源電圧より0.3V程度低い電圧が出力されることを考えれば、EVOLTA3本の場合出力電圧は3.6-0.3=3.3V程度となりTA7291Pの動作電圧に届かない。必然的に、Japaninoの電源はEVOLTA4本(4.8V。実測4.95V程度)とした。
・モーター用の電源・
8番ピンには、モーター駆動用の電源を接続する必要がある。TA7291Pの動作条件として、8番ピンの電圧(Vs)が4番ピンの電圧(Vref)を上回る必要がある。Japaninoの電源電圧をEVOLTA4本とすると、4番ピンには4.5~5V程度が出力される。必然的に8番ピンには5本(1.2×5=6V)以上のEVOLTAを接続する必要があるが、電池ケース入手の都合により、EVOLTA6本を接続する(実測7.6~8.4V)ことにした。(今思えば6本用の電池ケースに5本だけ入れればそれでよかったのかもしれない…。ただ、基本EVOLTAは充電も販売も2本、4本の偶数単位なので…)
・モーターの選択・
先述のように電源選択、結線を行い、JapaninoのPWM信号を変化させたときの、TA7291Pの出力電圧(OUT、2番ピンと10番ピンの電位差)は右表のようになった。また、左表は比較的入手が容易な2つのモーターFA-130と、RE-260の適正電圧、電流値である。
PWM信号を最大値255としたときに、OUTは5.5Vとなる。これは、このあたりのページに記述があるTA7291Pの内部電圧降下2.5Vを考えると、妥当な値といえる。(EVOLTA6本の8V程度の電圧から2.5V降下するので、モーターには最大5.5V程度が印加される、、という感じ。)
TA7291Pの最大電流(1A)は、2つのモーターいずれに対しても十分である。最大電圧が5.5V程度であることを考慮し、今回はRE-260モーターを使い、PWMの値を100として以降の実験を進めることにした。(暴走したときに追いかける苦労と、電池の消耗による再現性の低下を考慮した、ということにしておきます。)