【概要】
小型液晶表示器と同じサイズのデジタル電圧計の製作例です。
8ピンのPIC12F1840を使って、I2Cモジュールを有効活用しています。
完成後の外観は下記のような感じになります。
【全体構成と仕様】
この小型デジタル電圧計の構成は下図のようにしました。8ピンのPIC12F1840を使って全体を制御し、【MCP3421 デルタシグマA/Dコンバータ】
計測は18ビットデルタシグマA/Dコンバータ(MCP3421)で行います。
電源は単4電池がリチウムイオン電池のバッテリ動作とし液晶表示器で計測値を表示します。
液晶表示器もA/DコンバータもI2C接続ですから、PICとの接続は、2ピンで済んでしまいます。
クロックも内蔵クロックで十分です。
デルタシグマA/Dコンバータには可変ゲインアンプが内蔵されていますから、これをフルに使って
レンジ切り替えができるようにします。
このレンジ切り替えもプログラムにより自動でできますからピンとしては必要ありません。
目標とする使用を下記のようにすることにしました。
項 目 仕 様 備 考 電源 バッテリ 3.6V〜5V
内蔵3端子レギュレータで3.3V生成
消費電流:5mA以下リチウムイオン充電池
またはアルカリ電池を使用
(単4を3本または4本)電圧測定 ハイレンジ
最大2.047V 分解能100μV
ローレンジ
最大250mV 分解能10μV
レンジ切り替えは自動精度約±0.1%
精度約±0.1%表示出力 液晶表示器 16文字×2行
測定値を1秒間隔で表示基板に直接実装
測定精度は、デルタシグマA/Dコンバータに内蔵の2.048Vの内蔵リファレンスと
内蔵アンプの精度で決まってしまいますが、この両方を含めた精度が±0.05%で、
温度変化も15ppm/℃ですから、無調整でも結構高精度で計測できます
(アンプ精度はゲイン=1の場合)。
本製作例では、18ビット分解能を持つマイクロチップ社製の18ビットデルタシグマA/Dコンバータ
「MCP3421」を使うことにしました。
このA/Dコンバータは最も簡単な構成で使える高性能かつ安価なA/Dコンバータです。
6ピンのSOT-23という米粒ほどの小型のパッケージとなっていて、次のような特徴を持っています。
・18ビット分解能のデルタシグマ方式A/Dコンバータ
・外部インターフェースはI2C
・差動入力でどちらの極性も入力可能
・変換ごとに内部オフセットとゲインを自動補正
・高精度電圧リファレンス内蔵 2.048V±0.05%
・可変ゲインアンプ内蔵 ゲイン=1、2、4、8倍
・クロック用発振器内蔵
・変換:1回ごとまたは連続の指定が可能
・低消費電流:145μA(Vdd=3V動作時)
・単電源:2.7V〜5.5V
・動作温度範囲:−40℃〜125℃
内部の構成は下図のようになっていて、マイコンとの接続インターフェースがI2Cとなっています。
18ビット分解能のデルタシグマA/Dコンバータ以外に、ゲイン可変のアンプと2.048V±0.05%という
高精度のリファレンス電圧を内蔵していますので外付け部品を必要としません。
【回路図と組み立て】この電圧計の回路図が下図となります。簡単な構成ですので回路図も【プログラム】
すっきりしたものになっています。
I2Cのプルアップ抵抗が15kΩと大きめになっていますが、これは液晶表示器の
ACKの駆動能力が低いため、あまり小さな値の抵抗にできないためです。
このため通信速度も遅めにしています
この回路図からプリント基板を作成組み立てています。組み立て完了後が
下記のようになります。
液晶表示器を外した状態
PICマイコンもA/Dコンバータ
も表面実装型を使いましたので
小型にできました。
この小型デジタル電圧計のプログラムは次の5つのファイルで構成されています。
・SmallMeter.c :電圧計のアプリケーション本体
・lcd_lib2.c :液晶表示器ライブラリ本体
・lcd_lib2.h :液晶表示器ライブラリ用ヘッダファイル
・i2c_lib2.c :I2Cライブラリ本体
・i2c_lib2.h :I2Cライブラリ用ヘッダファイル
これら5つのファイルをプロジェクトに登録して構成します。
アプリケーション本体の全体の流れは下図のようになっています。
全体が0.3秒間隔のステート関数として進むようになっています
プログラムのダウンロードは下記からできます。プロジェクトファイル一式
となっていますので、MPLAB X IDEでお使いください。
プロジェクトは「D:\F1Book\SmallMeter」 というディレクトリにあるものとして作成されています。
超小型電圧計のプログラムダウンロード