センサのためのマイコンを選ぶ ──センサ利用のノウハウをファームウェアとして提供

三好 彰, 丸山久則

tag: 組み込み

技術解説 2004年10月 4日

●○● Column ●○●
◆A-Dコンバータと周波数カウンタ◆

● A-Dコンバータ

 A-Dコンバータは,センサ素子の出力が電圧変化,または電流変化の場合に使用します.電流変化の場合は,いったん電圧に変換してからA-Dコンバータでディジタル化します.

 A-Dコンバータの変換方式には,主に逐次比較型,並列比較型,2重積分型の三つがあります.それぞれの方式に特徴があり,それに合った分野で使用されています.

1) 逐次比較型

 入力電圧と一致するようなD-A出力になるD-A入力値を探し出し,その値をA-D変換値として出力する方式です.具体的には,逐次比較レジスタに最初は0を出力しておきます.変換を開始するとまず最上位ビットを1にして,コンパレータ出力が変化しなければそのままに,変化したら0に戻します.次に,一つ下のビットを1にして,同様の操作を繰り返し,最下位ビットまで変換を行います.

2) 並列比較型

 逐次比較型ではカウンタの値を1ビットずつ操作するので,それなりの変換時間がかかります.そこで,それを一括して変換しようとする方式が並列比較型です.例えば,8ビットのA-D変換を行う場合,あらかじめ28=256通りの基準電圧と,256個の比較器を用意し,変換したい電圧をすべての基準電圧と一度に比較します.

 この方式だと変換は非常に高速ですが,分解能(=ビット・レート)が細かくなるほど回路規模が非常に大きくなってしまい,コスト面での問題が出てきます.

3) 2重積分型

 積分回路(OPアンプの入力と出力をコンデンサでつないだ回路)で一定時間スイッチを閉じるとコンデンサは充電され,充電された電荷の量に比例した電圧が出力されます.2重積分型A-Dコンバータは,A-D変換したい電圧(Vin)でコンデンサを一定時間充電し,次に,極性が反対の基準電圧(V0)を加えてその電荷をすべて放電させ,放電に要する時間を測定することでA-D変換を行います.

 実際の回路には,コンデンサが放電したことを検出するための比較器やVin/V0の切り替え,時間測定のためのクロック回路,Vinを算出する機能などを含む必要があるので,回路規模は少々大きくなってしまいます.ただし,積分時間を長く取ることで,同じ回路構成で精度を上げることができます.この方法はノイズに強く,計測器などに用いられています.

 このように,2重積分型は低速ですが,安価で高精度/高分解能が得られます.逐次比較型はそこそこの速度で処理できますが,高精度/高分解能となるとコストが高いのが難点です.並列比較型は高速ですが,分解能を高くするとやはりコストが高くなります.

 また,電圧値をA-D変換する場合,基準電圧以外の誤差要因として直線性誤差,オフセット,ゲイン誤差などがあります.最終的な精度は変換値の誤差無効ビット数(±2LSBなど)で表します.

 一般に,電圧変化や電流変化によるA-Dコンバータの消費電流は1mA~数mA程度です.

● 周波数カウンタ

 周波数カウンタは,センサ素子の出力が周波数変化,または抵抗値変化の場合に使用します注A.抵抗値の場合は,いったん周波数に変換してから,周波数カウンタでディジタル化します.

 周波数カウンタは,基準時間内の入力パルス数をカウントします.このカウント値を基準時間で割ると,周波数が求められます.周波数は同じでも基準時間が長いほどカウンタ値は大きくなり,その分分解能を高くできますが,一方でノイズを拾いやすくなる,消費電流が大きくなるなどの不利な点も出てきます.

 一般に,周波数カウンタの消費電流は,発振に伴う基準容量の充放電電流程度(今回使用したものでは数十μA程度)です.変換速度は,カウントアップして計測するという性質上,A-Dコンバータに比べて遅くなります(本事例の周波数カウンタは100ms程度.例えば逐次比較型A-Dコンバータは,精度が16ビットの場合,16回の電圧比較,つまりマイコンの16命令程度で計測できる).

 注A;ただし,抵抗値を出力するセンサ素子(サーミスタ)でも,値を電圧値に変換してA-Dコンバータを使用することもある.

組み込みキャッチアップ

お知らせ 一覧を見る

電子書籍の最新刊! FPGAマガジン No.12『ARMコアFPGA×Linux初体験』好評発売中

FPGAマガジン No.11『性能UP! アルゴリズム×手仕上げHDL』好評発売中! PDF版もあります

PICK UP用語

EV(電気自動車)

関連記事

EnOcean

関連記事

Android

関連記事

ニュース 一覧を見る
Tech Villageブログ

渡辺のぼるのロボコン・プロモータ日記

2年ぶりのブログ更新w

2016年10月 9日

Hamana Project

Hamana-8最終打ち上げ報告(その2)

2012年6月26日