「時代はアナログ」アナログに注意して設計する

そろそろ、アナログのお話の中心部へ向かっていく章。だんだん面倒なお話になってくのだけど、分かりにくい部分があったらご指摘いただければ幸いです。

●アナログに注意して設計する

そろそろ本題なのだが、アナログ的な要素に注意して回路を考えていく時にヲイラが注意してるポイントについて、あれこれと挙げてみようと思う。

【回路設計全般に関して】

さて、早速だが実際に回路を設計するにあたって、どういう点に注意が必要だろうか。様々な手法があると思うが、ヲイラが常に意識しているのは、デジタル回路にせよアナログ回路にせよ、その回路のインピーダンスがどうなっているか…だ。別の言い方をするなら、その回路の各部分には動作時に何Aの電流が流れているのかということ…ただしこれは厳密な値ではなく、ザックリと1Aとか10Aとか100mAとかそんな感じ。それと回路の各部分において、能動的に電流を流し込んでいる…もしくは吸い出している素子が持つ内部抵抗も合わせて検討してる。これは、端的にはナンボほど強引に電流を流すパワーを持っているかということ。内部抵抗が低い素子は、駆動力が高い。

これらに注目している理由は二つあって、一つは、単純にその能動素子の能力確認。当然のコトだけど、当該素子が扱えない電圧電流を想定した設計は破滅(笑)の元ですわな。電源を入れた瞬間にあのイヤーな匂いが空間に充満するコトになる。もう一つは、耐ノイズ特性の問題…基本的に、インピーダンスが低い回路はノイズに強く、逆に高い回路はノイズに弱い。たとえ能動素子が扱えるパワーが大きくても、それを受ける負荷のインピーダンスが高ければ回路にはあまり電流は流れず、ノイズに弱くなる場合もある。

(なお、高周波(電波を扱う領域)だとさらに別の観点も必要なのだが、そっちはあまりに奥深いのでここでは触れないコトにする。あの世界ではまた独特なノウハウが必要なのよ。AMラジオぐらいまでならまだある程度は共通なのだけど、アマチュア無線のMHz台とかFMラジオの領域はそろそろヤバくて、ケータイの電波とかWifi辺りになるともう大変。ヲイラは近寄りたくない(笑)。)

回路にあまり電流が流れない部分というのは、相対的に周囲からの影響を受けやすい。無論、電流がいきなり増えたり減ったりしないのはキルヒホッフの第一則で自明だけど、電圧は簡単に上下する。近傍の磁界の変動が引き起こす電磁誘導によって、配線自体が起電力を持ってしまうコトがあるためだ。なので、複数の配線が平行になりやすい信号配線なんかには特段の注意が必要というコトになる。多くの場合、信号配線は電圧を受け渡ししているうえに、入力側のインピーダンスは通常結構高い(=あまり電流のやり取りがない)ため、こういったノイズは致命的な問題を招くワケだ。

これに対する対策の一つに、オープンコレクタもしくはオープンドレインを用いた手法がある。デジタル回路の出力がこのようになっているものは必ずプルアップを設けなければならないが、そのプルアップを信号送信先に設置するのだ。そうすると、信号配線のインピーダンスは一気に下がるコトになり、ノイズに対する耐久性は高まるコトになる。ただし、この方法にも問題があって、一般にプルアップを要する回路というのは信号の立ち上がりや立ち下がりに問題がある場合が多く、端的に言えばあまり高速なやり取りには適していない。

したがって、高速に信号をやり取りする場合、できるだけ近傍の磁界の影響を受けないように配線し、できればシールド線を使うなりGNDとツイストペアを行うなりして、ノイズの元となる磁界の影響を減らす必要がある。ただし、後述するがこれにも実は問題が発生する可能性がある。

【デジタル信号に関して】

結構な割合で誤解されてるケースが多いみたいなんだけど、デジタル信号と言えども電気信号であり、その波形はアナログ的に動作した結果のものだ。また、デジタル信号ではゼロとイチしか扱わないワケだが、この事は中間電圧の揺れの問題を回避できる一方、その遷移(ゼロ→イチとかイチ→ゼロ)に関してはゼロ時間というワケにはいかず、必ずある程度のスロープが発生する。このスロープの時間は短ければ短いほど良いのだが、その為には扱う周波数の何倍もの周波数で動作できるだけの物理的な回路構成が必要になる。

どういうコトかというと、前述のとおりいわゆる矩形波(50%)というのは、その周波数の正弦波に奇数倍の正弦波(奇数倍高調波という)を重ね合わせたもので表現されるからだ。例えば1MHzの矩形波を扱おうと思ったら、少なくとも9MHzぐらいまでの帯域で問題がない回路になっていなければならない。もし、これらの高調波が通れないような回路構成になっていると、矩形波であったハズの波形が正弦波になってしまうというコトになる。いわゆる「波形の鈍り」が発生するワケだ。鈍りが発生する主な原因は、回路に直列のコイル成分が多すぎるか、並列のコンデンサ成分が多すぎる場合である。具体的に言えば、配線が長すぎるか、もしくはGND等との距離が近すぎる場合やな。そう、前述のようにノイズ対策のために行うシールド等の処置は、逆に信号の波形を鈍らせてしまう原因になりうるワケだ。

これに関しての簡単な解法は実は存在しないと思ってもらって構わないと思う。では皆どうしているのかというと、実は案外ケースバイケースだったりする。規格として決められているものも、必要な信号の周波数があらかじめ定義されているからソレに沿った配線なりを定義できているだけで、どんな時にでも万能な解決策というのは実は存在しないのではないだろうか。

【電源に関して】

意外と多くの人が気づいてないポイントの一つが「電源の周波数特性」だろうか。交流ではなく、直流電源の周波数特性である。過渡応答特性という方が正しいかもしれない。多くの人が電源に求めるのは、動作電圧(出力電圧)と許容電流だろう。12Vが必要なトコロに6V出力ではダメだし、3A流せて欲しいのに電源が許容するのが1Aまでなんてのはお話にならない。ところが、正しく12Vで3A以上出せる電源があったとしても、実際にはきちんと動作しないコトがある。それは、負荷が瞬間的な電流を要求する場合。常時3A流れる負荷なら問題がない電源装置であっても、常時1Aで瞬間的に3A流れるような負荷の場合には、その瞬間に電圧が降下したりする。

これは電源装置自体が持つ特性で、その方式によっても様々なのだが、負荷の具合によって適切な電源を用いないと、動作するものも動作しなかったりする。よくある例としては、RCサーボ等を用いた二足歩行ロボットにおいて、バッテリでの動作と電源装置での動作が異なるケース。電源装置の容量に充分な余裕があっても、瞬間的な電源供給が追い付かないために、バッテリでは動作するのに電源装置ではダメだったり、電源装置で調整したものをバッテリで駆動すると動きすぎてハネたりする。

【パワー系の設計に関して】

特に最近はPowerMOS FETが普及しているので、多くの人がコレを使ったモータドライバ回路を作成していたりするワケなんだけど、ここにも意外と落とし穴がある。FETと聞くと、通常のトランジスタとは違って電圧駆動デバイスであり、ベースに相当するゲートには電圧さえ掛けておけば制御できると思っている人が今でも案外多い。もちろん、静的にはその通りで間違っていないんだけど、問題は動的特性…いわゆる過渡特性にある。

PowerMOS FETに限らず、トランジスタは本来アナログ的に動くようにできていて、指示された信号の何倍かの電流を流すようにできている。この時、トランジスタ自身の損失がどうなるか、まず少し考えてみよう。

ゲートやベースに対する指示がオフになっている時、ドレイン=ソース間やコレクタ=エミッタ間には基本的に電流が流れない。一方、それらの間にはおそらく電源電圧が掛かる。この時「トランジスタ自身が消費する電力」はどうなるのかというと、実質ゼロだ。なぜなら、電力は電圧と電流の積であり、電流が概ねゼロだからだ。

一方、指示がオンの時、ドレイン=ソース間やコレクタ=エミッタ間には負荷への電流が流れる。そして、負荷の両端に電源電圧が掛かると同時に、トランジスタ側の電圧は概ねゼロになる(実際には少し残るが)。この時も、実はトランジスタ自身が消費する電力は実質ゼロだ。今度は電圧が概ねゼロだからね。

では、指示が中途半端な時…つまり、オンでもオフでもないような中間の指示が来たらどうなるだろうか。電流はオン時の最大ではないものの半分ぐらいは流れ、電圧もオフ時の電源電圧ではないものの半分ぐらいは掛かっているコトになる。これを掛け算すると…そう、この瞬間こそが、最も「トランジスタ自身が電力を消費する瞬間=トランジスタ自身が発熱する瞬間」ってコトになるのが分かるだろうか。まずこれを念頭に置いてもらいたい。

さて、構造上、PowerMOS FETのゲートは、内部的にかなり大きな容量成分を持っている。ゲート=ソース間にもゲート=ドレイン間にも数百~数千pF程度のコンデンサが貼り付いているようなイメージで考えてもらえばよい。この事は、端的に言えば「すぐにはゲートがオンオフしない」という事を意味する。通常、ゲートには抵抗を介して電圧を掛けるので、そのコンデンサが充電完了されるまで、なだらかに電圧が上がっていくコトになる。逆も然りで、電圧を落としてもなだらかに電圧が下がるコトになる。

当然、これは非常にマズい。先の中途半端な時間が増えてしまうコトになり、異常発熱の元になる。また、PowerMOS FETをスイッチにしてHブリッジを組んだ場合、そのスイッチのオンオフに一定の時間が掛かるコトになってしまうため、場合によってはブリッジ上下のFETが同時にオンしてしまう可能性さえある。こうなると、貫通電流が流れて一気に大発熱→焼損ってコトになる。

では、その抵抗を除去すれば解決するのか?というとさにあらずで、電源をいきなりコンデンサに接続したコトがある人は気づくと思うのだけど、ラッシュ的に電流が流れ込み、酷いノイズの元になる。場合によってはゲートの電位が一時的に安定せず振動したりする。ゲート電位が振動すれば、これもまた中途半端な状態が繰り返されるコトになり、異常発熱の元になる。

従って、適度に抵抗で制限を掛けつつ、できるだけ一気に電流をブチこんでコンデンサを充電し、ゲートをオンしなければならない。また、オフの場合も同様にできるだけ一気にコンデンサを放電してやらないといけない。特にモータ相手にはPWM波形でパワーの制御を行う場合がほとんどなのだが、コアレス等のモータの場合は駆動周波数も非常に高いため、ココをミスすると絶大なロスが発生するだけでなく、最悪の場合は素子が壊れる。

余談だけど、パソコンとかマイコンをクロックアップすると発熱が増えるのはまさにコレが原因。一定時間内のオンオフの回数が増えれば、そりゃ熱くなりますわな。

(この章、ここまで)