マイコン(MCU)システム開発入門編

第6回:アナログ入出力インターフェースの設計留意点

マイコンのシステム設計全体の留意点はすでに説明しましたが、今回はアナログ入出力インターフェースの設計で特に注意しなければならないポイントについてさらに詳細に説明します。

1.アナログフロントエンド(AFE)設計の留意点

マイコンに接続されるアナログインターフェースでは、入力と出力があります。いずれの場合にも、マイコンに直接接続できる場合は少なく、図-1のように何らかの回路が追加されます。これらの回路を「アナログフロントエンド(AFE)」と呼んでいます。

入力側の AFE 回路で調整されたアナログ信号がマイコンに接続され、マイコンの中では A/D コンバータやアナログコンパレータでデジタル信号に変換されます。アナログ出力の場合は、マイコン内の D/A コンバータでアナログ信号が生成され、出力側の AFE 回路を通して外部に出力されます。

図1:アナログフロントエンド(AFE)の役割

これらの AFE 回路設計上の留意点は次のようになります。

(1) パターン設計の留意点

プリント基板などに AFE 回路を構成する場合の留意点は、ノイズ対策が基本となります。

① グランドの分離

マイコンを含むデジタル回路と AFE 回路のグランドは、図1のように分離し、電源に近い場所の1か所で接続します。これで共通インピーダンスによるノイズ混入を回避できます。マイコンでアナロググランドピン(AVSS)とデジタルグランドピン(VSS)がある場合は、分離したグランドパターンにそれぞれ独立に配置します。

図2:グランドパターンの分離

② デジタル信号ラインと並行パターンにしない

特に高速に変化するデジタル信号ラインと近接並行パターンになっていると、クロストークによりアナログ信号パターンにノイズが混入します。パターン間の距離を離したり、間にグランドパターンを挿入したりして回避します。

(2) オペアンプ回路設計の留意点

アナログ信号を増幅したり、出力のインピーダンスを変換したりするためにオペアンプを使う場合の留意事項が次のようになります。

① オペアンプの入出力電圧範囲に留意

オペアンプの入力、出力は電源電圧までフルスイングすることはありません。レールツーレールのオペアンプを使っても数 10mV 程度、一般のオペアンプでは 1V 程度狭い範囲のスイング幅となります。これを意識した範囲で使う必要があります。

実際のレールツーレールのオペアンプのデータシートでは、表1のようになっています。これによれば数 10mV 狭い範囲のスイングとなります。

表1:MCP651の出力スイング

Output
Maximum Output Voltage Swing VOL, VOH VSS + 25 VDD – 25 mV VDD = 2.5V, G = +2, 0.5V Input Overdrive
VOL, VOH VSS + 50 VDD – 50 mV VDD = 5.5V, G = +2, 0.5V Input Overdrive
Output Short Circuit Current ISC ±50 ±95 ±145 mA VDD = 2.5V (Note 3)
ISC ±50 ±100 ±150 mA VDD = 5.5V (Note 3)

特に単電源動作でアナログ信号の 0V の計測や、0V 出力が必要な場合には注意が必要です。場合によってはオペアンプを両電源で動作させて0V出力を確保することが必要になります。

さらに高い電圧の両電源でオペアンプを使った入力回路の場合には、マイコンへ高電圧や、マイナス電圧を加えないように、ダイオードなどによる保護回路を追加する必要があります。

② 高速信号の場合は「Gain Bandwidth Product(GB 積)」に留意

高速で変化するアナログ信号を扱う場合には、オペアンプの周波数特性、つまり GB 積に注意する必要があります。実際に期待通りの増幅ができる範囲は、「GB 積 ÷ 増幅率」となりますから、高倍率で増幅する場合には特に GB 積の大きなものを使う必要があります。

③ 必要な周波数帯域幅の増幅とする

必要な周波数帯域より広すぎる増幅をすると、余計なノイズに悩まされることになります。通常はアンチエイリアシングフィルタとして、必要な周波数帯域の2倍程度とします。(ナイキスト周波数)

④ オペアンプの入力保護に留意

オペアンプの入力が直接外部に接続される場合には、静電気や過電圧などに対する保護回路を追加する必要があります。

⑤ 微小電圧を扱う場合の留意事項

直流のマイクロボルトやミリボルト単位の微小電圧を増幅する場合、特にオフセット電圧やドリフトに注意する必要があります。場合によってはゼロドリフトオペアンプなどを利用することも必要です。

2. AD コンバータを使う場合の留意点

マイコン内蔵の AD コンバータを使う場合の留意点は次のようになります。

(1) AD コンバータの種類と特性

マイコン内蔵の AD コンバータにはいくつかの方式があり、図3のような特徴があります。多くのマイコンが逐次変換型の AD コンバータです。とくに高分解能が必要な場合は、ΔΣ型を、特別に高速な変換をしたい場合はパイプライン型を選択することになりますが、いずれも分解能と変換速度には限界がありますから、必要な速度と分解能から選択することになります。

図3:マイコン内蔵の AD コンバータの種類と性能

(2) 分解能の実力値に留意

AD コンバータのデータシートには分解能について表-2のように記述されています。基本仕様は10ビット分解能ですが、各種のエラー項目があり、その分だけ実力値としては減るということになります。この実力値でも十分の分解能が得られるかどうかを確認する必要があります。

表2:AD コンバータの分解能
Param. No. Sym. Characteristic Min. Typ† Max. Units Conditions
AD01 NR Resolution 10 bit
AD02 EIL Integral Error ±0.1 ±1.0 LSb ADCREF+ = 3.0V, ADCREF− = 0V
AD03 EDL Differential Error ±0.1 ±1.0 LSb ADCREF+ = 3.0V, ADCREF− = 0V
AD04 EOFF Offset Error 0.5 2.0 LSb ADCREF+ = 3.0V, ADCREF− = 0V
AD05 EGN Gain Error ±0.2 ±1.0 LSb ADCREF+ = 3.0V, ADCREF− = 0V

(3) 接続相手のインピーダンスに留意

AD コンバータは、変換する前にサンプルホールドキャパシタに充電し、その結果を変換します。したがってこの充電完了に必要な時間(アクイジションタイム)だけ待つ必要があります。

この時間は接続相手のインピーダンスに影響されます。つまり、高い出力インピーダンスの相手が接続された場合、充電時間が長くなりますから、十分の時間を待つ必要があります。そうしないと充電途中で変換を開始してしまいますから、本来の値より低い値として変換されてしまいます。

特に電圧測定の場合で、抵抗で分圧して測定するようなとき、抵抗値を大きな値のものを使うと問題となることがあります。

(4) AD 変換割り込みを使うか

AD 変換モジュールにも変換終了割り込みが用意されています。この場合割り込みを使うかどうかですが、AD 変換時間は変換速度にもよりますが、数 µsec から数 10µsec です。この時間を待てるかどうかで割り込みを使うかどうかを判断することになります。

多くの場合、この変換時間は十分短時間なので、割り込みは使わず、センスしながら待つ方式が使われます

(5) 演算機能付き AD コンバータを活用

最近のマイコンには、平均演算やローパスフィルタ、上下限監視などの演算機能が組み込まれているものがありますから、これらを活用すれば、プログラム開発量や実行時間を減らすことができます。

(6) 複数チャネルの同時データ取得

複数のアナログ信号を同時に計測したい場合には次の方法があります。

① 複数の AD コンバータを内蔵したマイコンを使う

② サンプルホールド回路を複数内蔵した AD コンバータを使う。この場合サンプルだけ同時に実行し、変換は順次行うという方法となります。

3. アナログコンパレータを使う場合の留意点

(1) 瞬時変化を検出するときの留意点

アナログコンパレータは、短時間のアナログ信号の変化を検出するために便利に使えますが、このときに注意する点は次のようになります。

① 極短時間のノイズによる誤動作対策が必要

コンパレータにノイズフィルタやグリッジ除去機能がある場合はこれを利用します。ない場合には入力にノイズフィルタなどの追加が必要です。

② ヒステリシス機能を使って発振防止

入力信号の変化が遅い場合、スレッショルド電圧付近でコンパレータの出力が発振状態となることがあります。多くのコンパレータにはこれを回避するためヒステリシス機能が設けられていますから、これを有効化します。

③ スレッショルド電圧は安定でノイズがないこと

スレッショルドにする電圧源は常に一定の電圧でノイズが含まれていないようにします。ノイズが含まれている場合、出力が不安定になりますから、コンデンサ等でノイズを除去しておきます。

4. DA コンバータを使う場合の留意点

DA コンバータを使えばアナログ電圧を出力できますが、その際に注意することは次のようになります。

(1) セトリングタイムに留意

高速で変化するアナログ信号を出力する場合、DA コンバータのセトリングタイムが変化の上限を決めます。このセトリングタイムはデータシートでは表-3のように記述されています。

Note の内容を含めると、ゼロから最大値までの全範囲の変化には10µsecがかかることになります。つまり100kHz以上の高速な変化をする信号には対応できないということになります。

表3:DA コンバータのセトリングタイム

DSB07* CST Settling Time(1) 10 µs

Note:

  1. Settling time measured while DACR[7:0] transitions from 'b00000000 to 'b11111111.

(2) 外部出力するにはオペアンプが必要

多くのマイコンの DA コンバータの出力は、大きな電流を流すことができません。このためオペアンプなどで電流駆動能力を大きくする必要があります。また、DA コンバータの出力インピーダンスは高いので、ノイズによる影響を受けやすくなっています。このためにもオペアンプを使ったバッファなどでインピーダンスを低くしてノイズに強く、配線を長くできるようにします。

以上がマイコンのアナログインターフェースを設計する際の留意事項となります。次回はシリアル通信 UART を使う場合の留意事項について解説します。

PDF 資料請求

特別連載_MCU_6:アナログ入出力インターフェースの設計留意点

著者プロフィール

後閑 哲也 Tetsuya Gokan

経歴 1971年 東北大学卒業後 大手通信機メーカにて各種の制御装置を開発
2003年 有限会社マイクロチップ・デザインラボ設立
現在の活動
  • マイコンや計測制御システムの開発コンサルタント、グローバル電子(株)顧問
  • 神奈川工科大学 非常勤講師としてモノづくりの基礎を指導
  • 書籍や雑誌記事の執筆
書籍
(技術評論社)
  • 電子工作の素(改定新版)
  • MCC、C言語によるPICプログラミング大全
  • マイコンの使い方がよくわかる本
  • 逆引きPIC電子工作やりたいこと事典
  • IoT電子工作やりたいこと事典

特別連載「マイコン(MCU)システム開発入門編」リンク

特別連載