工業製造
産業用モノのインターネット | 工業材料 | 機器のメンテナンスと修理 | 産業プログラミング |
home  MfgRobots >> 工業製造 >  >> Manufacturing Technology >> 製造プロセス

DACベースカスタムPCBによる高精度波形生成

DACベースカスタムPCBによる高精度波形生成

このガイドでは、C8051F360マイクロコントローラとAnalog Devices TxDACを使用して、高速で正確な任意波形を提供するファームウェアとハードウェア設計を説明します。

プロジェクト概要

ボードはC8051F360MCUとTxDACDACを中心に構成されています。2つのICはパラレルバスで通信し、MCUの100MHzコアクロックの限界までDAC更新レートを引き上げることができます。

以前の投稿で回路図、コンポーネント選定、PCBレイアウトを詳述しています。この記事では、メモリからDACへデータを移動するファームウェアフレームワークに焦点を当て、安定した高精度インターフェースを確保します。

設計目標

サンプリング戦略

ボードは±50ppm安定性のMEMSオシレーターを使用。ファームウェアはProgrammable Counter Array(PCA)経由でDAC用の500kHz基準クロックを生成。

設定はSilicon Labs Config2ユーティリティで実行。C8051F360はSimplicity Studioの内蔵ツールでサポートされていないためです。

主要PCA設定:

/* PCA有効化; タイムベースをシステムクロック(10MHz)に設定 */
PCA0MD = 0x01; // PCA有効化
PCA0CPM0 = 0x40; // タイマーモード、エッジトリガー
PCA0CPH0 = 0x00; // 比較値の上位バイト
PCA0CPL0 = 0x01; // 比較値の下位バイト(500kHz)

Tektronix MDO3104スコープでの測定により、50%デューティサイクルの500kHzクロックを確認。周波数の標準偏差は13.54Hz(0.0027%)、デューティサイクルは2.117×10⁻³(0.0042%)。ヒストグラム分析ではジッターは無視できるレベル。

データ更新の同期

DAC更新をクロックに合わせるため、500kHz矩形波の立下りエッジで/INT0をトリガー。DACは立上りエッジでデータをラッチするため、立下りエッジでの更新が安定したデータを保証します。

外部割り込み0をピンP0.7で立下りエッジ感度、最高優先度で設定。

割り込みサービスルーチン

すべてのデータ転送は/INT0ISR内で発生。プロセッサを他のタスクのためにフリーに保つ最小限のルーチン:

SI_INTERRUPT(INT0_ISR, INT0_IRQn) {
  DAC_WORD--;
}

ここでDAC_WORDはポートP2の#defineエイリアス。単一のデクリメント命令が線形ランプを生成し、0から255でラップアラウンドしてノコギリ波波形を生成。DACの反転出力アンプが電圧を反転させるため、アナログランプは増加しているように見えます。

検証

ファームウェア実行でクリーンなランプ波形を生成。スコープトレースは安定した1kHzランプ、5Vピークツーピーク振幅を示し、正しいタイミングとデータ処理を確認。

より高いサンプルレート(最大10MHz)でのさらなるテストでは、MCUを他のタスクでビジーに保ちながら、マルチMHz波形を生成するボードの能力を実証。

回路図、コンポーネント選定、PCBレイアウトの詳細については、このシリーズの関連投稿を参照してください。

独自の高精度AWGを構築する準備はできましたか?ソースをダウンロードし、コーディングを開始し、ファームウェアで次世代の信号忠実度を実現しましょう。

製造プロセス

  1. Raspberry PiとPythonでリモート温度センサーを構築 – ステップバイステップガイド
  2. 湿度センサーの検証とキャリブレーションで精密測定を実現
  3. DACベースカスタムPCBによる高精度波形生成
  4. Arduinoとスマホで作るスマート電圧計 – 簡単DIYプロジェクト
  5. Arduino NanoとRDA5807Mで作るコンパクトFMラジオ
  6. Arduino Nanoのみで作る高精度時計 ─ 内部クロック誤差をソフト補正
  7. ArduinoとProcessingで作るリアルタイムデジタルコンパス
  8. PCB試作メーカー選びの完全ガイド:失敗しないための5つの評価基準
  9. PCB試作の精度を支える技術:フロントエンドエンジニアリングから検査まで
  10. PCB製造でよくある失敗と対策:フレックスクラック、クリアランス、インピーダンス他
  11. 現代エレクトロニクスにおけるプリント基板の役割