【専用A/DやD/Aに依存しないパルス密度変調型インターフェース】

最終更新日 /2006/07/17/


Page 1

パルス密度変調(PDM:Pulse Density Modulation)自体は非常によく知られた公知の技術ですが、ここでご紹介する方式は、ダイナミックレンジやオフセットを変更する機能を備えた任意の分解能を持つD/Aを実現する回路技術に関するもので、これを用いたDDS (Direct Digital Synthesizer)やA/Dの構成方法に関係しています。本技術の利用により、ワンチップマイコンの汎用ディジタルポートやFPGA、CPLDの入出力を自由度の高いアナログインターフェースとして使うことが可能になります。勿論、この方式が使えるケースはアプリケーションの仕様によって限定されたものであり、どのような場合でも適用できるとは限りません。(特許申請中。出願日2006/07/07)

このドキュメントの先頭へ戻る

進む

トップページに戻る


【計測・制御アプリケーションの悩み事】
●折角開発した計測・制御プリント基板に実装されている専用A/DあるいはD/Aが製造中止になってしまい、再開発しなければならなくなったという話を聞くことがよくあります。A/DやD/Aは種類が多い割には、マイコンやメモリほどの個数が製造されないために改廃が激しく、製品寿命が長いものを開発しようとすると問題になることが多いのです。
●A/DやD/Aが組み込まれたワンチップマイコンも数多く開発されていますが、その多くは分解能が10ビット程度に限られています。一般的にA/DやD/Aが内蔵されたマイコンは内蔵されていないマイコンに比べてチップ面積が大きくなる分、1枚のウェハーから製造できる個数が少なくなるのでチップ単価がどうしても高くなってしまいます。また、計測・制御アプリケーションでは12ビットから16ビット程度の精度を要求されるものが多いので、需要もA/DやD/Aが内蔵されていないチップよりも少なく、量産効果が生まれにくいという問題があります。
●例えば、2次電池の充放電試験システムでは、定電圧 (CV: Constant Voltage)、定電流 (CC: Constant Current)、それらを組み合わせたCC-CV充放電等の充放電制御を行うために、電池電圧、充放電電流を監視(monitor A/D)するとともに、適切な充放電制御を行う必要から最低2個のA/Dと、2個のD/Aが必要になります。電圧範囲を最大5Vとして、1mVステップでCV充電制御を行おうとすれば、0から5000までの5001階調のD/Aが必要になります。つまり13ビット以上のA/D、D/Aが必要になってしまうのです。しかもその場合、既存のA/D、D/Aは2のn乗単位の分解能しか持たないので、レンジ調整のための工夫が必要になってしまいます。こうしたことから、basicな回路だけで1セル(2次電池1個)当りの回路単価は3万5千円程度になってしまいます。さらに対象となる電池の容量が増えればパワーエレクトロニクス部分の比率が高くなりますます高価なシステムになってゆきます。しかし、一度に統計的に有意なデータ(例えば充放電寿命、安全性も含めたもの)を取ろうとすれば500セル単位のデータ取りが必須となり、2000万円から場合によっては億以上の投資が必要となるのです。
●こうした事情は計測・制御分野全体で殆ど変わりません。
●既存製品の高機能化によって多くの回路が必要になる場合もあります。測定レンジ数の増加は、アンプの切替えが必要になり、マルチプレクサを追加したり、各チャンネルのオフセットやゲインを調整したりと、回路の複雑化をまねきます。電子ボリュームや精密トリマがそこらじゅうに入ると基板が大きくなるだけでなく、製造コストも大幅に増加します。部品の増加は信頼性の低下をまねきます。
●また、上記とは別のケースですが、FPGAやCPLDで簡易なアナログ出力が必要な場合や、A/Dが内蔵されたマイコンであってもD/Aが内蔵されていないケースがあります。このような場合によく使われるテクニックはR-2R抵抗ネットワークを用いたラダー抵抗型D/Aを外付けで構成するテクニックや、パルス幅変調 (PWM: Pulse Width Modulation)回路で代用する方法があります。実際の例では秋月電子通商が販売しているWellpine社製DDSボードでは前者のラダー抵抗型D/Aが使われています。一般的にはこれらの簡易なD/Aでは分解能は10ビット程度が限界と考えられます。

                          【図1】 よく用いられる簡易D/A
              a) R-2Rラダー抵抗を用いたD/A      b) PWM(Pulse Width Modulation)を用いたD/A