DAC(デジタル-アナログ変換器)の主要タイプと用途を徹底解説
信号は大きく分けてデジタル信号とアナログ信号の2種類に分類され、それぞれ異なる用途で使用されています。例えば、電源スイッチやオペアンプなどのアナログ電子回路ではアナログ信号が使われます。一方、マイクロプロセッサ、マイクロコントローラ、フリップフロップ、論理ゲートなどのデジタル電子回路ではデジタル信号が使用されます。
両信号の機能を最大限に引き出すには、相互変換が不可欠です。そこで使用されるのがADC(アナログ-デジタル変換器)とDAC(デジタル-アナログ変換器)です。本記事ではDAC、別名D/AまたはD2Aに焦点を当てて解説します。
DAC(デジタル-アナログ変換器)とは
DACは、デジタルコード形式のデジタル値をアナログ電圧または電流に変換するICです。コンピュータはDACを用いて、携帯電話などの他のデジタルデバイスのアナログ動作を理解しています。

DACの動作原理
マイクロフォンで音声を録音し、コンピュータに取り込むケースを考えてみましょう。
音声信号は物理量であるため、コンピュータで記録するにはデジタル形式に変換する必要があります。ここでADC(アナログ-デジタル変換器)を使用します。

録音した音声をスピーカーで再生する際にはDACを使用します。DACはデジタル信号をアナログ信号に変換し、スピーカーから音声として出力します。
DACの主要タイプ
バイナリ加重抵抗型D/A変換器
このタイプでは、各デジタル入力ビットを電流源または抵抗で変換します。抵抗は総和点と入力に接続され、総和増幅回路を通じて出力が生成されます。

上図から以下のことがわかります:
- オペアンプ、帰還抵抗、オペアンプ入力端子に接続された4つの抵抗で構成される
- オペアンプ端子の抵抗は可変抵抗である
総和増幅回路の出力電圧は以下の式で求められます:
Vo = -R (DR + C2R + B4R + A8R)
ここで:
- D、C、B、Aはデジタル入力で、それぞれ異なる値を持つ。AはLSB(最下位ビット)、DはMSB(最上位ビット)
- V = 出力アナログ電圧
バイナリラダー型(R-2Rラダー)D/A変換器
R-2Rラダー型DACは、2RとRの2種類の抵抗値のみで構成されます。ただし、寄生容量の影響で変換速度が低下する傾向があります。
入力ビットがオペアンプの反転入力とグランド間のスイッチを制御します。バイナリ情報が抵抗(2R)に入力されると、バイナリラダーの底部から出力が得られます。

出力電圧の計算式は以下の通りです:
Vo = -R × (D2R + C4R + B8R + A16R)
セグメント型DAC
セグメント型DACは性能仕様に基づいて設計され、2つ以上のDACを組み合わせた構造です。例えば、サーモメータコードDACとバイナリ加重DACを組み合わせ、入力バイナリコードを2セグメントに分割します。

バイナリ加重構造はLSB側で、サーモメータコードDACはMSB側で動作します。これによりコンパクトなチップ設計が可能になります。入力ビット数が増えるとエンコーダサイズが大きくなり、より多くの相互接続とスイッチが必要になります。
デルタシグマ型DAC
デルタシグマ型DACは最も精度が高く、最高速のタイプです。以下のブロックで構成されます:
- 補間フィルタ: サンプリング時間を短縮し、サンプルレートを向上。サンプリング周波数を4倍に増加させ、フィルタ出力をモジュレータブロックへ入力
- デルタシグマモジュレータ: 入力信号にはローパスフィルタ、量子化ノイズにはハイパスフィルタとして機能
- 1ビットDAC: 各ビットをデジタルサンプルからアナログ形式に変換し、増幅用に出力
- アナログ出力フィルタ: DAC出力をフィルタリングし、アナログ信号を生成

DACのメリットとデメリット
メリット
- 高精度・高分解能が実現可能
- 実装が容易
- 加重抵抗型は他の変換方式と比較して高速変換が可能
デメリット
- バイナリ加重抵抗は高電力消費を伴う
- 回路内の抵抗が非線形性、オフセット誤差、ゲイン誤差の原因となる
- 一部のDAC回路タイプは追加部品が必要で非現実的。ただし、I2CやSPIでマイクロコントローラと通信可能なディスクリートDACチップが入手可能
- R-2Rラダー型は入力に応じたスイッチングが必要なため遅延が発生
- 高精度でも、バイナリ数が電圧ステップを決定するため連続的な電圧値の生成は不可能
- 加重抵抗型DACでは各入力の電圧レベルを同一にする必要があり、4ビット変換器なら4つの抵抗が必要
DACの使い方
DACはマイクロコントローラに内蔵されているか、単体のICとして使用されます。後者の方が一般的です。代表的なICにはDAC0808、DAC0832、DAC7715などがあります。
ここではMCP4725 DAC ICを例に、DACの使用方法を解説します。Arduinoと連携動作し、ライブラリやドキュメントが容易に入手できます。
MCP4725 DAC ICの特長
- SOT23-6パッケージで提供され、省スペース化を実現
- I2C通信インターフェース対応。シリアルクロックとシリアルデータの2ピンのみで接続可能。速度は100kHz〜3.4MHzの範囲
- I2CアドレスピンをGNDまたはVccに接続することで変更可能(複数デバイス使用時)
- 12ビット分解能でArduinoの8ビットより高精度。5V電源時、1ビットあたり1.22mV(5V/212)の電圧分解能
DACの主な用途
- デジタルポテンショメータ
- デジタルデータ収集システム
- デジタル信号処理(オーディオ編集など)
- マイクロコントローラ用デジタル電源
まとめ
DACはアナログとデジタル信号を繋ぐ不可欠なコンポーネントです。バイナリカウントを離散電圧レベルに変換することで、機器間の接続を可能にします。
ご質問やご不明点がございましたら、お気軽にお問い合わせください。
産業技術
- Raspberry Piでリニアホールセンサーを読み取り: JavaガイドとADC0832の知見
- 適切なパネル選択:デジタルとアナログソリューションの比較
- デジタル-アナログ変換の基礎:ADCとDAC
- R/2nR DACの解説:バイナリ重み付け入力型デジタル-アナログコンバータ
- R/2Rラダー型DACの理解:シンプルな抵抗構成で高性能を実現
- アナログとデジタル信号:産業計装の基礎
- アナログ vs デジタル IQ 結合:RF システムに最適なアプローチの選択
- デジタル・アナログマルチメータでコンデンサをテストする8つの実証済み方法
- 適切なファスナー選定ガイド:タイプと用途の包括的解説
- 吸着式ドライヤーの4つの主要タイプを解説
- アナログセンサーとデジタルセンサー:種類、応用、実例