市販のボードとオープンソースのソフトウェアを使用した、カスタムのHPテスト計測器の素早い開発

著者 Steve Leibson氏

DigiKeyの北米担当編集者の提供

実験や生産テストを目的として、カスタムの計測器を開発する必要がしばしば生じます。GPIB/IEEE-488によってつながり、デスクトップコンピュータやワークステーションによって制御される機器が、かつてのアプローチでした。現在では、PXIおよびPXI Expressラックシステムなどの、よりモジュール化されたアプローチが主流です。ただ、こうした構成は、特に1回限りのテストや使い捨てのスタックのための構成としては高価なものです。

開発の時間を速め、カスタム計測器のコストを低減するために、設計者は、十分なオンボードのアナログ-デジタル変換回路(ADC)またはデジタル-アナログ変換回路(DAC)を備え、組み込みのプロセッサと付随するFPGAによってすべてが制御される、単一ボードの計測器プラットフォームを代替として考慮する必要があります。

この記事では、プロセッサ/FPGAベースのシステムオンモジュール(SoM)を、提供された開発ツールとともに使用して、カスタムの計測器を開発する方法を示します。コミュニティによって支えられた、機器設計のオープンな市場を活用する機器開発のこのアプローチでは、ハードウェア開発の必要性を回避し、結果として多くのタイプの計測器を開発するためのコンパクトで手頃な価格のツールが得られます。

計測器システムの簡単な歴史

1950年代より前、すべてのテスト計測器は、電圧計とオシロスコープを含め、アナログでした。この状況は、1952年に、カリフォルニアのデルマーのNon-Linear Systems(NLS)が、ステッピングリレーと精密抵抗器を使用した最初のデジタル電圧計(DVM)を開発したことで変わり始めました。Hewlett-Packard Company(HP)がデジタル計測器に参入したのはタイマ/カウンタで、これはすぐにデュアルスロープインテグレーション回路を追加してDVMとなりました。

NLSのDVMとHPのデジタルテスト機器は内蔵のデジタルディスプレイを駆動していたため、読み取り値は内部的には2進化10進数(BCD)形式で使用可能でした。これらのBCD信号を機器の背面パネルのコネクタから取り出すのはたやすいことでした。最初は、これらのBCD信号は、プリンタを駆動して機器の読み取り値を記録していました。

さらに、1950年代に出現し始めたデジタル機器の多くは、計測範囲などのさまざまな計測設定について、外部からプログラムすることができました。プログラミングはリモートスイッチやリレーに、そして外部の論理回路につながる背面パネルの接続を通じて行われました。それぞれの機器がさまざまな読み取り値の形式とプログラミング要件をもっており、計測器の自動化という面では、バベルの塔状態となっていました。1960年代、この混在状態にコンピュータが機器制御装置として導入されることで、問題はさらに複雑になりました。その主な理由は、それぞれの機器にはさまざまな固有の配線スキームが必要であったためです。

この状況から、1960年代中盤、HPでは、機器の標準のデジタルインターフェースについて考え始めました。この問題についての8年間の考察とソリューションの開発の後、HPのエンジニアは、『HP Journal』1972年10月号で、HP Interface Bus(HPIB)を紹介しました。HPIBは、さまざまなベンダからの多様なタイプの機器との相互接続、および機器制御装置と接続可能な、「ラックアンドスタック」式の計測器システムの開発のきっかけとなりました。その後、HPIBはIEEE-488へと進化し、現在も使われています。

業界は自動化された計測器についてHPIBシステムから多くの知見を得ましたが、テスト要件は、こうしたシステムで実現できる性能を上回っていきました。ラックアンドスタックシステムは、主に、前面パネルにコントロールを備えた既存のテスト機器を使用して構築されていました。これらの機器は、主に、スタンドアロン機器として、手動で使用することを意図していました。前面パネルのコントロールとディスプレイはこれらの機器のコストを増加させるものであり、手動で制御されるテスト機器で必要と想定していた計測の速度は、自動化されたテストシステムの多くにおいては十分とはいえない、スタンドアロン機器となっていました。

機器が完全にデジタル化されると、ムーアの法則のとおり、テスト機器は高速になるとともに安価になりました。自動化されたテストにとってはどちらもよい傾向であり、やがて高価な前面パネルは無用のものとなりました。常時コンピュータの制御下にある機器では、前面パネルの存在意義はありません。

このことが、機器に関する進化の次の段階となりました。すなわち、PXI(PCI eXtensions for Instrumentation)バスです。これは、PCによっておなじみとなったPCIインターフェース標準を基にしたものであり、1997年に導入されました。PCIeインターフェース標準に基づくPXI Expressが、続いて2005年に登場しました。PXIとPXI ExpressはいずれもHPIBに比べてはるかに高いデータレートとずっと低いレイテンシをサポートしており、さらに高速なテストシステムの開発が可能となります。

PXIまたはPXI Expressシャーシは、プラグインモジュラー機器やI/Oモジュールに対して電力、冷却、通信バスを提供します。これらはすべて、プラグインコントローラまたは外部コンピュータによって制御されます。PXIおよびPXI Express計測器モジュールはこれらのシャーシに差し込まれ、その小さい前面パネルには信号の入出力のためのコネクタがあるだけです。PXIおよびPXI Expressシステムは、HPIBを介して相互に接続されたラックアンドスタックシステムと比較して、非常に高速で、概して安価ですが、それでもなお比較的高価です。これはモジュラー性の高さによるものであり、モジュラー性にはどうしてもある程度のコストがかかるためです。

計測器はいまだムーアの法則に則っている

絶え間なく続くムーアの法則の進行は、計測器が変化し続けるということを意味しています。ボードレベルのシステム全体がSoCとわずかなメモリとサポートチップに折り畳まれたように、1枚の小さいボードに全体が収まる計測器システムを開発することも可能です。好例として、Trenz Electronic(図1)のRed Pitaya STEMlab Starter Kit 125-14の一部であるRed Pitaya Open Instrumentation Platformがあります。

27761 Red Pitaya Open Instrumentation Platformの画像

図1:27761 Red Pitaya Open Instrumentation Platformは、カスタムの計測器の開発に使用できる、いくつかのアナログおよびデジタルの入出力を備えています。(画像提供:Red Pitaya)

このRed PitayaのボードはXilinx Zynq Z-7010 SoCに基づいており、次の計測器入出力を備えています。

  • 14ビット、125Ms/秒の高速アナログ入力×2
  • 14ビット、125Ms/秒の高速アナログ出力×2
  • 12ビット、100Ks/秒の低速アナログ入力×4
  • 12ビット、100Ks/秒の低速アナログ出力×4
  • 16本のデジタルI/Oピン

このRed Pitayaのボードは、1Gbit EthernetポートとUSB 2.0ポートも備えています。USBポートにはWi-Fiドングルも挿すことができ、無線オペレーションが可能です。

Zynq Z-7010 SoCは2つのArm® Cortex®-A9プロセッサとFPGAファブリックをオンチップで備えています。プロセッサはRed Pitayaの組み込みLinux OSを含むソフトウェアタスクを実行し、FPGAはRed Pitayaのオンボード周辺機器のリアルタイムの制御とインターフェースを提供します。FPGAとCPUの両方を有していることで、開発者はそれぞれに最も適した信号処理タスクを割り当て、最適なパフォーマンスを実現できます。FPGAは超高速のハードなリアルタイムのタスクを処理することができる一方で、CPUは(比較的低速ではあっても)任意の複雑なプロシージャを実行することに優れています。また、CPUは、Linuxのような標準のオペレーティングシステム、対話的なユーザーインターフェース、ウェブサーバの実行にも適しています。

27761キットには最新のRed PitayaソフトウェアのSDカード、電源、Ethernetケーブルが含まれています。ソフトウェアはRed Pitayaサイトからダウンロードできます。これにより、Red Pitayaボードは組み込みのLinux OSとウェブインターフェース、および初期の4つの機器構成(オシロスコープ、信号発生器、スペクトラムアナライザ、ボードアナライザ)とともに提供されます。

Red Pitayaサイトは、Red Pitaya Open Instrumentation Platformを操作するためのマスタインターフェースとして使用できます。ウェブページでは事前構成済みの機器をダウンロードして実行できます。また、非常にシンプルなVisual Programmingモードを含む、Red Pitayaのプログラミングモードの1つを開始できます。Visual Programmingモードでは、記号をドラッグアンドドロップして、アイコンからプログラムをグラフィカルに組み立てることができます。このプログラムは自動的にPythonに変換されます。プログラミング図から作成されたPythonコードを表示することができます。

Red Pitaya Open Instrument Platformをプログラミングする他の選択肢には、Jupyterノートブック(同じくPythonベース)とCがあります。Red Pitayaで独自のFPGA構成を開発する開発者は、Xilinx Vivado Tool Suiteを使用できます。

また、Red Pitayaの標準ソフトウェアはSCPI(Standard Commands for Programmable Instruments、発音は「skippy」)という、元はIEEE-488の上位に追加レイヤとして定義され、業界の多くのベンダの多くの機器で制御プロトコルとして使用されている計測器制御プロトコルをサポートしています。SCPIはハードウェアインターフェースから独立しており、ASCII文字列のみで構成されています。MathWorkのMATLAB、National InstrumentsのLabVIEW、Scilab、およびPythonなどの、幅広い計測器プログラミングアプリケーションでSCPIコマンドを使用してRed Pitayaを制御できます。

Red Pitayaのハードウェアプラットフォームと付随するソフトウェア開発ツールは、低価格で高性能の計測器システムを開発するための基盤として機能し、Red Pitaya MarketplaceはRed Pitayaプラットフォーム向けの機器アプリケーションを開発している人々のための交流の場となります。Marketplaceには、次のものを含む、9つの開発済みの機器があります。

  • PID(比例積分微分)コントローラ
  • ネットワークベクトルアナライザ
  • ソフトウェア定義の無線
  • RadioBox、統合RFレシーバおよびトランスミッタ
  • 物理システムのモデル化のためのDSPワークベンチ
  • 周波数応答アナライザ
  • 磁場計測用テスラメータ
  • インピーダンスアナライザ
  • マルチチャンネルパルス高アナライザ

Red Pitaya Bazaarには、いくつかのオシロスコープ、信号発生器、パワーアナライザ、インピーダンスアナライザを含む、Red Pitayaユーザーコミュニティで作成された、さらに多くの機器アプリケーションが含まれています(図2)。

Red Pitayaのアルミニウム筺体の画像

図2:Red Pitayaのアルミニウム筺体は、Red Pitayaボードを物理的に保護し、オンボードZynq Z-7010 SoCのヒートシンクにもなります。(画像提供:DigiKey)

Red Pitayaの付属品には次のものが含まれます。

Red Pitayaのアルミニウム筺体は、Red Pitayaボードを物理的に保護し、オンボードZynq Z-7010 SoCのヒートシンクにもなります。

Trenz Electronic Calibrated Diagnostic Kitにはアルミニウム筺体が含まれ、Wi-Fiドングル、Red PitayaのデジタルI/Oライン、計測器プローブ、ケーブル、コネクタ、Red Pitayaのさまざまなポート用のアダプタが追加されます(図3)。

Electronic Calibrated Diagnostic Kitの画像

図3:Electronic Calibrated Diagnostic Kitには、筺体、ケーブル、Wi-Fiドングルを含む、Red Pitaya用の多くの付属品が含まれています。(画像提供:DigiKey)

結論

計測器システムはより小さく、より手頃な価格になる一方で、より高い能力を有するようになっています。混在状態に対してマイクロプロセッサと、さらにはFPGAが追加されたことで、非常に複雑なカスタム計測器とテストシステムを、比較的低コストで開発できるようになりました。

Trenz Electronic Red Pitaya Open Instrumentation Platformは、テストシステムの進化の現状を示す例です。高速のアナログ入出力とデジタルI/Oラインを、すべて2つの32ビットプロセッサとFPGAの制御下で提供します。これらは、シンプルなビジュアルプログラミング言語から、CやPythonなどのより伝統的なプログラミング言語、Xilinx Vivado Tool SuiteとFPGAプログラミング環境まで、さまざまな開発ツールを使用してプログラミングすることができます。

 
DigiKey logo

免責条項:このウェブサイト上で、さまざまな著者および/またはフォーラム参加者によって表明された意見、信念や視点は、DigiKeyの意見、信念および視点またはDigiKeyの公式な方針を必ずしも反映するものではありません。

著者について

Image of Steve Leibson

Steve Leibson氏

Steve Leibson氏は、HPとCadnetixでシステムエンジニアを務め、EDNとMicroprocessor Reportで編集長として活躍し、XilinxとCadenceなどの企業では技術ブロガーを担当しました。また、同氏は、「The Next Wave with Leonard Nimoy」の2つのエピソードで技術専門家を務めました。同氏は、33年間にわたって、高速でかつ信頼性の高い優れたシステムを設計技術者が開発することを支援しています。

出版者について

DigiKeyの北米担当編集者