高速PCBや複雑な組み込みシステムを設計している場合でも、ある程度のテストが必要になります。高速およびRFシステムの場合、通常はVNAやスコープ測定と比較したシミュレーションが必要です。組み込みソフトウェアやファームウェアの場合、テスト手順はかなり異なる場合があります。実際、プロトタイプ設計で行うことで、テストプロセスを加速し、マルチメーターで探る必要をなくすことができることがいくつかあります。
この記事では、プロトタイプのテストとデバッグをはるかに簡単にするいくつかの簡単なコツを紹介します。これは、ソフトウェアとハードウェアの両方にテストのための設計アプローチを適用することを意味します。ヒント:組み込みシステムのテストに最適な方法は、テストパッドやテストポイントを配置するだけではありません。
PCB業界には多くのバズワードがあり、「テストのための設計」は通常、より広範なDfXバンドルにグループ化されます。多くの設計者は、組み込みコードを実行するボードのテストにアプローチする方法と同じ方法でテストのための設計に取り組みます。
これは通常、設計者が重要な信号に多くのテストポイントを配置することを意味しますが、それ以上のことはあまりありません。多くの組み込みプロトタイプは、メインプロセッサ上の考えられるすべてのものがピンヘッダーとテストポイントにルーティングされたArduino開発ボードのように見え始めます。
組み込みシステムボードや他のボードにピンヘッダーがあることに対して何も反対はありません。しかし、すべての信号とピンを監視しながら、ボード上でソフトウェアやファームウェアのテストとデバッグを試みるのは困難です。場合によっては、アプリケーションをテストするために実際にアプリケーションを書かなければならないこともあります。設計の機能にエラーが見られる場合、根本原因がコードにあるのか、PCBAにあるのかは常に明らかではありません。
ハードウェア側では、テストのための設計にこの簡略化されたアプローチに焦点を当てます:
Ari Mahpourがテストと継続的インテグレーションについて話し合ったこれらの概念については、多く議論されています。この記事を見ることで、このアプローチについてもっと学ぶことができます。コンピュータにデータを送り返したい場合、最も簡単な方法は、プロトタイプにUSBからシリアルインターフェースを追加することです。このプロジェクトを見ることで、Zach Petersonからリンク設計ファイルを入手できます。
次に、システムで組み込みアプリケーションを実行している場合、コードにエラーハンドリングやテストケースを含めることで、テストを迅速化することができます。ヘッダー、テストパッド、基本的なシリアルインターフェースへの接続を追加することは、組み込みボードをリアルタイムで監視するのに役立つ重要なステップです。目標は、ソフトウェアアプリケーションがハードウェアと並行してどのように動作するかを見ることです。
では、アプリケーションとハードウェアの進行状況を同時にどのように監視できるでしょうか?ソフトウェア開発者からヒントを得て、エラーハンドリングと各機能のステータスを表示するメッセージを追加します。これは、アプリケーション内の重要な機能が合格したか失敗したかを示すメッセージを表示するほど簡単なことです。すべてのエラーチェックを書き出すのには少し余分な時間がかかりますが、アプリケーション実行中にシステムが何をしているかを示す画面上のメッセージがあると、大量のデバッグを省略できます。
これは、C/C++で単純な関数(myFunction()と呼ばれる)と仮定のGPIOライブラリを使用して実装される方法の例です。gpio_init()、gpio_read()などの関数を提供する単純なGPIOライブラリを備えたプラットフォームで作業しているとしましょう:
#include |
アプリケーションが直接信号を監視している場合、そのコア機能の各ステップで結果を出力できます。重要な指標信号とともにこれらを画面上に表示することで、アプリケーションが進行するにつれて正確に何が起こっているかがわかりますし、外部ユニットでボード上のすべての信号を手動で測定する必要はありません。確かに、ボードを設計する際にGPIOへのいくつかの追加トレースをルーティングする必要がありますが、明らかな論理エラーが実際にはPCBの単純な接続エラーであることがわかるかもしれません。
忘れないでください、プローブに送る必要がある他の信号をヘッダーに持っていくこともできます。この方法で、それらの信号はスコープやデータ取得カードで測定することができます。一方、シリアルポートはアプリケーションロジックとの対話を助けるための多くの作業を行います。
何を設計したいかに関わらず、Altium Designer®の完全なPCB設計機能セットを使用して、革新的なテスト設計の実践を実装することができます。今日のクロスディシプリナリーな環境でのコラボレーションを実装するために、革新的な企業はAltium 365™プラットフォームを使用して設計データを簡単に共有し、プロジェクトを製造に移行しています。
Altium Designer on Altium 365で可能なことの表面をかすめただけです。今日からAltium Designer + Altium 365の無料トライアルを開始してください。