デルタシグマA/Dを使った高精度DMM
無調整で4096.00mVまで測定可能な、高精度デジタルマルチ
メータです。
【概要】
マイクロチップ社から発売されている、22ビットという高分解能のデルタシグマA/D
コンバータ「MCP3550」を使って、高分解能のデジタルマルチメータを作ってみました。
これだけの分解能があれば、低い電圧でもアナログアンプで増幅しなくても直接
計測できますので、アンプのゲインなど調整が必要な部分を省略できます。
リファレンス電圧に、アナログデバイス社の「高精度リファレンスIC REF198ESZ」
を使いましたので0.05%で4.096Vという電圧精度を無調整で取り出せます。
これで完全に無調整で使える電圧計測器が実現できます。
MCP3550はデルタシグマ方式なので、変換速度は遅いのですが、ノイズに強く、
オフセットやゲインの補正も自動的に実行されるので、4.096Vフルスケールの測定を
10μV単位で計測できます。つまり "4000.00mV"という表示ができます。
オペアンプなどによる増幅が不要なので、調整部分がありませんから、誰でも
高精度の測定器が作れます。
測定項目ですが、基本のテスタ機能ということで、測定項目と精度を下表のような
内容で作ることとします。
測定項目 測定レンジと分解能 備考 電圧 1/1レンジ 4096.00mV 10μV A/Dコンバータ直接接続 電圧 1/10レンジ 40.9600V 100μV 抵抗で分圧 電流 409.600mA 1μA 0.1Ωの抵抗の電圧降下 抵抗 409.600kΩ 1Ω 1kΩ抵抗を基準とする
完成した高精度デジタルマルチメータの外観は下図のようになります。
小型アルミケースでバッテリ動作なので携帯できます。
【MCP3550の概要】
今回使用するデルタシグマA/DコンバータMCP3550の内部構成は下図のように
なっています。
差動の入力VIN+とVIN−を直接デルタシグマ変調器でA/D変換していますが、
内部でオフセットやゲインの補正を自動的に行っていますので、アナログ信号の誤差は
外部のパターンやリファレンスの精度だけに依存することになります。
高精度のデルタシグマA/Dコンバータのお陰で、電圧を10μVの単位で表示しても
ノイズの影響をほとんど受けず安定な表示をします。
しかし、この安定度と精度を実現するには、パターンや部品配置、さらにリファレンス
電圧精度などに十分配慮することが必要になります。
マイコンとのインターフェースはSPIとなっていますが、SDO出力がビジー信号も兼用
していますので、マイコンのSPIモジュールで接続するより、プログラムI/OでSPIを実現
した方がやりやすいと思います。
このSPIインターフェースのタイミングは単発変換の場合には下図のようになっています。
CSにLowパルスを入力するとA/D変換が開始されます。
このA/D変換にはMCP3550-50の場合は約80mescかかります。この間でCSを一度Low
にするとSDO出力がHighとなりビジー状態を表します。
このビジー状態の間は変換結果の通信はできません。また、このビジーチェックを
行わないと、次のデータ入力のためのCS信号を受け付けませんので注意が必要です。
データ入力のときのタイミングは下図のように標準的なSPI通信と同じです。
全体が24ビットで構成されています。読み込んだ24ビットのデータフォーマットは
図のように3バイトで構成されていて、下位の22ビットが符号付の変換結果のデータと
なっています。上位2ビットはオーバーフローのフラグビットとなっていますが、今回は
使用しません。
【回路構成】
全体回路図が下図となります。基板のアナログ部は0V 〜 4.096Vの電圧入力と
なっていますので、各測定レンジの回路をこれに合わせるようにして外部で切り
替えます。切替にはロータリースイッチを使います。4接点4回路が必要ですので
2段6回路4接点というものを使います。
電源にはリチウムイオン電池を2個直列接続しています。電源電流は通常3mA以下で、
抵抗測定時だけ最大8mA程度ですから、バッテリで十分長時間動作させることができます。
ボード部分の回路図が下図となります。マイコンにはPICマイコンの中でも最近よく使われ
ている18ピンのPIC16F819を使いました。
電源には特に注意が必要で、PICマイコン周りのデジタル回路には5Vを供給していますが、
アナログ系も同じ5Vを使います。しかしアナログ回路は22ビットという特に高精度になって
いますので、電源、グランド配線ともデジタル系とは完全に分離する必要があります。
5V電源には十分のフィルタを挿入してからアナログ側に供給します。グランド側もフィルタ
コイル経由でデジタルグランドと1ヶ所で接続しています。
さらに、デルタシグマA/D変換ICへの電源は5Vではなく、リファレンスICの出力の4.096Vを
使って電圧精度の確保と変動が無いようにしておきます。
電圧レギュレータの出力にもノイズ成分が含まれていますから、十分のフィルタを挿入して
ノイズの影響が出ないようにしています。
これで、電圧は10μVの単位の表示までしていますが、最下位が±1カウント程度の振れで
十分安定しています。
【外観】
完成したデジタルマルチメータの基板部の部品面とはんだ面です。
アナログ部ははんだ面側の表面実装なので、部品面はすっきりしています。
アナログ系のパターンはノイズ対策のためデジタル系と完全分離しています。
フィルタのバイパスコンデンサにはチップ型の大容量セラミックコンデンサを
使っています。
液晶表示器を基板にコネクタで
固定しています。
アナログ部は右下の部分で実装は
はんだ面となっています。
中央下に電源とグランド用のフィルタ
コイルが見えます。
はんだ面です。
左下側がアナログ部の島で、残りが
デジタル部となります。
パターンは完全に分離させています。
アナログ部の詳細です。
ICはSOタイプです。コンデンサはすべて
チップ型のセラミックコンデンサとしています。
入力部のフィルタ用コンデンサにもチップ型
のセラミックコンデンサを使いました。
この基板を小型アルミケースに実装します。液晶表示器の窓がちょっと面倒な工作ですが、
ハンドニブラとヤスリで仕上げました。
ケースの穴あけが終わったらレタリングで文字を貼り付けて測定器らしく仕上げます。
配線は、分圧抵抗を直接取り付けるため、ロータリスイッチ周りがこみいっていますが、
あとは簡単な配線です。内部実装状態が下図となります。
電流測定用の0.1Ωの抵抗には大電流が流れますから、端子に直接取り付けて配線による
電圧降下が無いようにしています。
電池の接続は電池スナップを使って2個の電池同士を直列接続し、両端のスナップ端子から
取り出しています。これは充電するとき簡単に接続がとりはずしできるようにするためです。
基板の取り付けは、液晶表示器の表示面がちょうど前面パネルにぴったりの位置になる
よう、基板をカラースペーサ(今回は6mm+3mmの2個のスペーサでぴったりでした)で浮かし
て固定します。これで前面パネルにねじ頭が出ませんからすっきりしたパネル面となります。
【プログラムの概要】
本DMMのプログラムは全てCCS社のC言語で記述されています。
★★★ プログラムファイル1式