DCモータードライバー 東芝TA7291P

 モーター制御のためにHブリッジを組むのはかなり面倒だし、オーバースペックにもなりがち。手頃な性能でもっと小型に作れないか?
 そこで、DCモータードライバーICを探して秋葉原へ。ところが、最近はロボットの流行で同じ悩みを持つ人間が多いらしく、PIC制御のモータードライバーがキットで売られていたのです!
 場所はツクモのロボット王国・・・さすがだ。

 TA7291Pを2つ使用し、2つのモーターを制御可能。中央にPIC16F84Aを差すソケットがあり、プログラム次第で目的の動きをさせられる。まさにこれから自作しようとしていた基板そのまんま。パーツ集めて自作に比べるとやや高価だが、タミヤのDMDユニットなんかと比べると安い。
 ハードウェアのバグで悩む必要がないのもメリットで、さっそく買って帰る。

 電源電圧6〜8.4Vなので、130モーターを4Nで動かしたい35分の1戦車などには不適。だが、ニッケル水素6Nにはピッタリなので、東京マルイのバトルタンクを無段階変速改造するような場合に適している。
 電源電圧はともかく、半固定抵抗でモーター電圧を下げられるため、空間にそれなりに余裕がある戦車に組み込む場合は応用範囲が広い。マルイのバトルタンクだと280タイプだがかなり高電圧仕様のモーターなので、6Nそのままが適当。

 受信機のパルスを読んで左右のキャタピラの動きに翻訳し、モーターをPWM制御。それがPICのプログラムだけで出来てしまう。ハードの製作はこのキットだけでOKなのだ★
 ま、キットが入手出来なくても、TA7291PというICがモーター制御に使い物になると分かっただけでも価値はある。

 

配線の実際

 歴史的経緯(汗)により、前後をスロットル、左右をエルロンと称している。しかし実際にはR500のエレベータをRB1に、ラダーをRB2に接続している。 
 

RA2 OUT 右キャタ制御 左キャタ制御 OUT RA1
RA3 OUT 右キャタ制御 左キャタ制御 OUT RA0
RA4 セラロック
20MHz
CLK
リセット CLK
GND VDD
RB0 尾灯LED OUT RB7
RB1 IN スロットル入力 尾灯LED OUT RB6
RB2 IN エルロン入力 RB5
RB3 RB4

 

信号変換

 縦軸はアクセル(スロットル)操作で、横軸はハンドル(エルロン)操作です。それぞれの操作を行った時に、左右のキャタピラの移動ベクトルがどうなるかを黄色の線で表しています。
 PIC内部演算ではキャタの動きについて、停止を128、最大前進を255、最大後退を1として8ビットで表現しています。そしてこの図の9*9=81個所の点のキャタ移動量をテーブルとして持っているのです。1個所につき左右2バイト必要なので162ワードを消費しますが、1Kワードあるので大丈夫です。代償として、後で動きを容易に変更可能となります。
 アクセルとハンドルの位置がこの図のどの位置に来るかを見て、近傍4個所の値から内挿してキャタの移動量を計算します。 

 16分の1用DMDを自作した時とは異なり、タミヤのレオパルド2A6に操作を合わせることにした。ラジコンカーと同じような動きをさせる。
 そして、「停止」状態の場合はハンドルを見て、超信地旋回させる処理を別途記述。

 

PICソースリスト dmdpt.lzh

 これ、ウエイトが10MHz用のままというバグ発覚!まあその上で動いていることは動いている (^_^;)

 実際に24分の1レオパルド2A5(マルイのバトルタンクの中国製パチモン ^_^;)に搭載し動作確認(尾灯以外)したPIC16F84用のソースリストです。
 秋月電子のキットを前提にしているため、他のアセンブラではうまくアセンブル出来ません。受信機はR500で、サーボパルスのキャリブレーション機能なし(別途測定して固定的に記述・プログラムコード量を減らすため)
 例によって保証はありません。利用は個人の責任でお願いします。また、ソースリストの内容に関する質問はお受け出来ません。

 このキットを使う上で不安だったのは、TA7291PがPWMモードを持っていないこと。モータードライバーICの中でもPWMモードを持っているものは、フライホイールダイオードが働いてモーターの動きが滑らかになるようなモードを持っている。だが、TA7291Pは正転・逆転・停止・ブレーキの4モードしかなく、果たして無段階変速がスムーズに可能なのか?
 試すと、ちょっとした工夫で全然問題なし。その工夫とは、PWMの周波数です。20Hz程度になっています。20KHzではありません。R500のサーボパルス3回に1回のタイミングになるよう調整してあります。

 戦車は減速比が大きく、ギアボックスの慣性が極めて大きい。そのせいか、PWMが高周波だと回転開始がスムーズにならない。なかなか動かないしなかなか止まらないので、20Hzなんて超低周波がハマる。
 タミヤDMDで、超スローあるいは動き出す寸前に、ピーという甲高い音が出るけど、これはモーターに通電していても回り始められない時です。超低周波PWMだと、この耳障りなピーが殆ど発生しません★

 

戻る