バイポーラ駆動SteppingMotorDriver

このドライバは、gEdaの練習のついでに作った 回路を改良した物です。ここでは、この詳細な設計について述べます。

機能概要

以下の仕様です。

仕様
対象 ユニフィアラ巻きステッピングモータ
駆動方式 定電流 バイポーラ駆動(1-2相/2相)
CPU側I/F 10pin,(5V電源x2, 信号x8(各ピン-10mAの駆動能力があること)
モータ側I/F 4pin( A, *A, B, *B)
モータ電源電圧 10V〜
モータ駆動電流 〜1A(0.8A推奨)
ドライバ石 TA84002F
基盤サイズ 50x50[mm]
備考 モータ側とCPU側は絶縁

ブロック図



フォトカプラ
モータからのノイズをCPU側に伝えないように、フォトカプラで絶縁しま す。同相除去比が高いことが要求されます。また、CPUが壊れないようにする 保護回路の役割も持っています。
モータドライバ
出力電流を増幅します。駆動方式として定電流駆動を行うICを使用しま す。定電流方式を使うことで、同じモータを使用しても(定電圧駆動に比べ) 同じ発熱で√2倍のトルクが出せます。また、トルクが増えることで脱調しに くくなり最高速度も向上します。
5Vレギュレータ
フォトカプラでCPUボードとモータドライバは絶縁されていますが、この 出力側でも+5Vが必要になります。そこで、出力側でも独自に+5Vを生成して います。必要な電流がちょっと大きいのでツェナーではなく3端子レギュレー タを使用しています。

フォトカプラ周りの設計

カプラは必要ない場合も多いでしょう。私の場合は、ノイズによるトラブ ルだけでなく、「モータドライバなどの故障による」ショートによるCPUの破 損を未然に防ぎたくてカプラを積極的に入れています。ノイズだけであれば、 大概GNDと信号線だけつないで、電源を別にすれば問題ない と思います。ノイズの影響は、「信号線の電流分」だけですから。

デバイス選定

ドライブ能力も速度もいらないので、TLP555などの高速型ではなく、安価で入 手が容易なTLP521を使用します。ロボットの移動速度を500[mm/s]とし、車輪 径を50[mm]と仮定すると、回転速度は500/(π*50)=3.2[rot/s]となります。使 用するモータを400[pulse/rot]とすると、400*3.2=1280[pulse/s]=1.28[kHz] です。ON-OFF-ONのスイッチング時間は1/1.28k=781[μs]未満ならOKです。安 全係数50%として400[μs]未満とします。山勘ですが、この速度ならTLP521で も問題はないでしょう(設計して十分であることを確認します)。


入力側の設計

入力側ではフォトカプラ内のLEDを駆動するために大体1.5V、10mAが必要と します(仕様書の順方向電圧1.3V@10mAに余裕を見て)。この場合の電流制限抵 抗は、

( 5V - 1.5V ) / 10mA = 350Ω
この値をE12系に丸めると、330Ωとなります。

大概のCPUの出力は2mA程度なので直接駆動できません。例外的にH8やSH2の 一部ポートで定格電流が+2mA〜-10mAなどのように、吸い込み側の定格電流が 大きくなっています。そこで吸い込みで駆動するようにします(+5VがLEDのア ノード、CPUボードがLEDのカソード側に来るようにします)。

出力側の設計

コレクタ電流の大きさと、応答速度、次段の入力電流から電流検出抵抗の 大きさを決めます。

TLP521の入力電流-コレクタ電流曲線で、入力電流を10[mA]とするとコレク タ電流は10[mA]になります。出力側の電流検出抵抗は5[V]/10[mA]=500[Ω]以 上で十分です。

負荷抵抗-スイッチング時間曲線で、必要な応答速度(200[μs])を満たすに は出力段は80[kΩ]未満となります。

次段であるモータドライバの入力のプルアップ抵抗でもあるので、これも 考慮します。必要なドライブ能力は仕様書から最大20[μA]。5[V]で駆動する と、5[V]/20[μA]=250[kΩ]未満。

抵抗が大きい方が消費電流は小さくなるのでなるべく大きい値を選びたい のですが、その分ノイズに弱くなります。ここでは適当にE12系列の数値に丸 めて、2.2kとします。

モータドライバ周りの設計

TA84002Fを使用します。基本的にはリファレンス回路と同じです。

チョッピング周波数

チョッピング周波数は仕様書から、30kHz(typ)です。これを決めるのが端 子6/7に接続した1.1CRです。それらの値は

t_off = 1.1CR C=10E4[pF]として、 R = t_off / 1.1C = 1 / 1.1Cf = 1 / 1.1 / (10E4 * 1E-12) / 20E3 = 333[Ω] C=10E3[pF]として、 R = 3.3[kΩ]
のどちらかとなります。ここではC=10E3[pF]、R=33E2[Ω]の組合せを使用しま す。

出力電流

入手したジャンクはモータの巻き線抵抗が4.3[Ω]以上の事は不明です。と りあえず0.5[A]で駆動させる事とします。基準電圧Vrefが2.5V(typ)なので電 流検出抵抗は、

Io = ( Vref / 5 ) / Rnf - 0.05 Rnf = ( Vref / 5 ) / ( Io + 0.05 ) = 0.909[Ω]
です。E12系列で考え1[Ω]を使用します。また、1[A]、1[Ω]を流すというこ とで、発熱が問題となります。良く用いられる1/4[W]炭素皮膜抵抗は確実にア ウトです。金属抵抗やホーロー抵抗など、許容電力の大きな抵抗を使用して下 さい。

パスコン

パスコンも必要な部分だけ載せます。不足が有れば、適当に表面実装部品 を使います。

5Vレギュレータ周りの設計

スタンダードな4805を使用します。基本的に入出力両方に発振止めのコン デンサをつけるだけですが、このコンデンサの値は使用するレギュレータに合 わせて選択します。私はTA4805を使用しましたが、手元に合ったので出力側が 104(0.1[μF]、入力側を47[μF]にしました。

放熱フィンなしでもいけるかどうか、温度を計算します。消費電流は TLP521 が(5V/2.2k)*8=18mA。TA84002Fが最大180x2=360mA。以上から最大消費 電流は380mA。三端子レギュレータで10V→5Vと落とすので、(10[V]-5[V]) * 380[mA] = 1.9[W]。ここで、外気温を30[℃]として、外気との熱抵抗は仕様書 から62.5[℃/W]なので最高温度は30+62.5*1.9=150[℃]。定格の接合部温度が 150[℃]なのでギリギリなんとかなります...。かなりヤバイので安全のために 基板を放熱板にする方がいいでしょう。

インタフェース

CPU側

入力側は以下の通りです。使いやすさよりも配線しやすさを優先しました。

Pin機能 Pin機能
1 +5V 2 GND/NC
3 M1-EnableB 4 M2-PhaseA
5 M1-PhaseB 6 M2-EnableA
7 M1-EnableA 8 M2-PhaseB
9 M1-PhaseA 10M2-EnableB

注意)入力値は反転です。例えば、Pin2をHighにすると TLP521の入力側LEDがOffになり、TLP521の出力側のには電流が流れなくなり、結 果としてTA84002Fの入力端子PhaseAはLowになります。

モータ側

出力側は以下の通りです。

Pin機能 Pin機能
1 M1-B相+ 2 M2-A相+
3 M1-B相- 4 M2-A相-
5 NC 6 NC
7 M1-A相- 8 M2-B相+
9 M1-A相+ 10 M2-B相-

入力と出力の対応

モータを1-2相励磁する場合は以下の通りです。

Phase12345678
入力値0xa0x80xb0x30xf0xd0xe0x6
!PhaseA LLHHHHLL
!EnableAHLHHHLHH
!PhaseBLLLLHHHH
!EnableBHHHLHHHL
A相出力+0---0++
B相出力 +++0---0

設計

これ以降の詳細な作業は「gEda+pcb」を参照してください。

回路図は以下の通りです。gEdaで作成しました。
画像 PDF ファイル

上を元にpcbを使って作成しました。
画像 PDF ファイル

部品リストは以下の通りです

部品リスト
U2フォトカプラ TLP521-4 U3TA4805F(5V 三端子レギュレータ) U5フォトカプラ TLP521-4 U6モータドライバ TA84002F
U7モータドライバ TA84002F R1抵抗 10E-1 R2抵抗 10E-1 R3抵抗 33E2
R4抵抗 33E2 R5集合抵抗 33E1x4 R6抵抗 10E3 R7集合抵抗 22E2x4
R8抵抗 10E-1(1W) R9抵抗 10E-1(1W) R10抵抗 33E2 R11抵抗 33E2
R12集合抵抗 33E1x4 R13集合抵抗 22E2x4 C1セラミックC 10E3 C2セラミックC 10E3
C3セラミックC 10E4 C4電解C 47uF C5セラミックC 10E3 C6セラミックC 10E3
C7電解C 47uF C8セラミックC 10E4 C9セラミックC 10E4 C10セラミックC 10E4
C11電解C 47uF C12セラミックC 10E4 Z1ツェナーダイオード 2.5V CONN12pinコネクタ
J110pinヘッダコネクタ J210pinヘッダコネクタ P1チップ抵抗 0Ω 3216 P2チップ抵抗 0Ω 3216
P3チップ抵抗 0Ω 3216

実装

このように実装 しました。動作確認を行い、とりあえずきちんと動いていることは確認できま した。


参考文献/サイト

goto TOP
このドキュメントはフリーです。
勝手に再配布/変更しても構いません
$Date: 2006/11/07 03:20:40 $
$Revision: 1.1.1.1 $