このドライバは、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の破 損を未然に防ぎたくてカプラを積極的に入れています。ノイズだけであれば、 大概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に余裕を見て)。この場合の電流制限抵 抗は、
この値をE12系に丸めると、330Ωとなります。( 5V - 1.5V ) / 10mA = 350Ω
大概の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です。それらの値は
のどちらかとなります。ここではC=10E3[pF]、R=33E2[Ω]の組合せを使用しま す。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Ω]
入手したジャンクはモータの巻き線抵抗が4.3[Ω]以上の事は不明です。と りあえず0.5[A]で駆動させる事とします。基準電圧Vrefが2.5V(typ)なので電 流検出抵抗は、
です。E12系列で考え1[Ω]を使用します。また、1[A]、1[Ω]を流すというこ とで、発熱が問題となります。良く用いられる1/4[W]炭素皮膜抵抗は確実にア ウトです。金属抵抗やホーロー抵抗など、許容電力の大きな抵抗を使用して下 さい。Io = ( Vref / 5 ) / Rnf - 0.05 Rnf = ( Vref / 5 ) / ( Io + 0.05 ) = 0.909[Ω]
パスコンも必要な部分だけ載せます。不足が有れば、適当に表面実装部品 を使います。
スタンダードな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[℃]なのでギリギリなんとかなります...。かなりヤバイので安全のために 基板を放熱板にする方がいいでしょう。
入力側は以下の通りです。使いやすさよりも配線しやすさを優先しました。
| 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 | 10 | M2-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相励磁する場合は以下の通りです。
| Phase | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
|---|---|---|---|---|---|---|---|---|
| 入力値 | 0xa | 0x8 | 0xb | 0x3 | 0xf | 0xd | 0xe | 0x6 |
| !PhaseA | L | L | H | H | H | H | L | L |
| !EnableA | H | L | H | H | H | L | H | H |
| !PhaseB | L | L | L | L | H | H | H | H |
| !EnableB | H | H | H | L | H | H | H | L |
| A相出力 | + | 0 | - | - | - | 0 | + | + |
| B相出力 | + | + | + | 0 | - | - | - | 0 |
これ以降の詳細な作業は「gEda+pcb」を参照してください。
回路図は以下の通りです。gEdaで作成しました。
画像/
PDF ファイル
上を元にpcbを使って作成しました。
画像/
PDF ファイル
部品リストは以下の通りです
| U2 | フォトカプラ TLP521-4 | U3 | TA4805F(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 | CONN1 | 2pinコネクタ |
| J1 | 10pinヘッダコネクタ | J2 | 10pinヘッダコネクタ | P1 | チップ抵抗 0Ω 3216 | P2 | チップ抵抗 0Ω 3216 |
| P3 | チップ抵抗 0Ω 3216 |
このように実装
しました。動作確認を行い、とりあえずきちんと動いていることは確認できま
した。