MultifunctionI/Oの基本について解説します。

I/Oボード

MultifunctionI/Oを理解するには、一般的なI/Oボードを理解する必要があります。コンピュータの標準I/O(入出力)機能は、サウンドやビデオアウトプット、キーボードやポインティンデバイスなどですが、様々なFA分野に応用するには、センサやモータなど、イレギュラーで多種多様な外部機器を接続しなければなりません。このような外部機器を接続するためのアダプタの役割を担うのがI/Oボードです。I/Oボードは、USB、PCIバス、PCI-Expressバス、Ethernet(LAN)などを通じてコンピュータに接続します。I/Oボートは、扱う信号によって主に以下の6タイプに分類されます。

DIボード(デジタルインプット)

スイッチやリレーをはじめとする、デジタル信号=0/1の状態を入力するI/Oボード。0/1の状態とは、例えば、異常と正常、満タンと残量あり、制御受付可能と不可能など、目的に応じ0/1に任意の状態を割り付ける。

DOボード(デジタルアウトプット)

デジタル信号すなわち、0/1状態を出力するI/Oボードです。パトライトを鳴らしたり、リレーを駆動したり、デジタル入力を持つ装置をハンドリングします。

アナログ入力ボード(A/Dボード、AIボード)

センサや制御装置など、アナログ状態(物理量)を入力するI/Oボードです。一般にセンサのアナログ信号は線形ではなかったり(物理量と出力電圧が比例しない)、信号が小さかったりするので、アンプ(センサアンプとか、信号変換器と呼ばれる)を通すのが一般的で、アナログ入力ボードは数ボルトの比較的大きな電圧を扱います。

アナログ出力ボード(D/Aボード、AOボード)

アナログ電圧で出力するI/Oボードです。例えば、ライト制御信号やブザー音量(音響信号)、各種波形出力などがこれにあたります。

カウンターボード

物理的な構造はDIボードと同じです。カウンタボードは、0⇒1、1⇒0への変化(パルス)する数を数えます。流量計や雨量計は1パルスあたりの物理量が決まっており、パルス数を数えることで積算値を求めます。またモータやエンジンなどの回転数や回転方向を検出するセンサ(ロータリーエンコーダー)は、パルス数や、パルスの時間差で回転数や回転方向を表します。

PWMボード

物理的な構造はDOボードと同じです。但しPWMボードは、デジタルでありながら、アナログ量を出力できるのです。これは0/1を高速で繰り返し出力しながら、0/1の比率(デューティー)を変えることでアナログ量を擬似出力仕組みです。例えば0と1が50%つづなら0.5、0が25%、1が75%なら0.75というように、1の割合がアナログ量に相当します。モータの出力や、照明の輝度などのように応答の遅い制御対象は、アナログ出力ボードを使わず、このような制御をすることが多いのです。

MultifunctionI/O

このようにI/Oボードは、様々なタイプがあるので、目的のI/Oが複数必要だった場合、沢山のI/OボードをPCに搭載する必要があります。このためFAでは、一般的なPCを使うことはまれで、産業用PCと呼ばれる、拡張性の高いPCが必要でした。産業用PCは高額で、納期が長く、FA分野へのローコストPCの導入のハードルでした。一方でDELLやHPなど激安のPCが出現し、こうしたPCをFA用途に使うことが切望されていました。そこで弊社は上の6機能を統合した、MultifunctionI/Oボードを開発し、世に送り出しました。これまで部分的に機能を複合したI/Oボードは存在しましたが、上記6機能全てを統合したボードは存在しませんでした。しかも性能はアナログ入力ボード単体を上回り、価格はアナログ入力ボード単体とほぼ同等に抑えました。さらに従来は、高速の計測は短時間しか計測できませんでしたが、MultifunctionI/Oはリングバッファと呼ばれるメカニズムで、高速の計測を半永久的に繰返すことができるようになりました。

センサーアンプ(信号変換器)

アナログ入力ボードの項目で説明したとおり、I/Oボードは比較的大きな電圧を受けるので、従来はセンサの信号をI/Oボードで扱えるレベルまで増幅するセンサアンプ(信号変換器)が不可欠でした。主な信号の規格としては以下のようなものがあり、それぞれにセンサアンプが必要です。

微小電圧系温度センサ

熱電対K、熱電対J、熱電対E、熱電対T、熱電対R、熱電対S、熱電対N、熱電対Bなど様々ある。

抵抗変化温度センサ

白金測温抵抗体Pt100、白金測温抵抗体JPt100、サーミスタ

抵抗変化圧力・偏移センサ

ロードセル、ストレーンゲージ各種(数百Ω~数KΩと沢山の種類がある)

Phセンサ(ガラス電極)

高インピーダンスの微小電圧(温度校正必要)

ガスセンサ(一酸化炭素、酸素、硫化水素、水素など)

高インピーダンスの微小電圧

汎用の電流インターフェース

4-20mA電流伝送、0-20mA電流伝送

汎用の電圧インターフェース(これらは信号変換器不要)

4-20mA電流伝送、1-5V、±10V、±1Vなど

MultifunctionI/Oにプログラマブル信号調節器を搭載

MultifunctionI/O ADXⅢ42***は、8チャンネルのアナログ入力を有し、1チャンネルごとに熱電対K-J-E-T-R-S-N-B、白金測温抵抗体Pt100-JPt100、4-20mA、0-20mA、±10mV(微小電圧)、±100mV(微小電圧)、±1V、±10V、4.096Vをソフトウェアで設定できるようになっています。例えば4-20mA機器、白金測温抵抗体、熱伝対K、熱伝対J、±10Vのアンプなどを各チャンネル毎に接続して運用できます。

注意点、サポート

アンチエイリアスフィルタ

サンプリング周波数1/2以上に信号(雑音)がある場合、折り返しノイズが発生するのでアンチエイリアスフィルタは必要です。サンプリング周波数1/2以上をローパスフィルタで十分に抑圧してください。

未使用の入力端子の処理

デジタル入力はプルアップ抵抗が内蔵されているので、オープンでよいです。アナログ入力はノイズを減らすにはグラウンドにショートすることを推奨します。

サンプリング周波数の設定と精度

ハードウェアでプリスケーラを持っており、この倍率をソフトウェアで設定する仕組みです。プリスケーラの入力は水晶発振器を使っているので、サンプリング周波数は水晶発振精度です。但しこれはリングバッファを使った場合です。ポーリングの場合、ソフトウェアで周期を生成するのでPCのタイマー精度に依存し、より間隔が短いほど精度が低下します。

PCI-Express系のMultifunctionI/Oボードが特定のPCで動かない

PCI-Expressスロットを動かす→使用していないペリフェラル(UARTやLPT・SOUND・USBなど)をディセーブルにするなどしてみてください。ただし必ずしも全てのPCでの動作を保証しているわけではありません。どうしても動かない場合には、別のPCに移植してみてください。

Ethernet系のMultifunctionI/Oボードが動かない

ネットワーク設定を見直してください。基本的にPCI-Express系のような相性問題が生じることはまずありえません。同じアドレスグループにあるか(192.168.1.xxxの上位3桁が一致しているか)、使用するポート番号がファイヤウィールでブロックされていないか、同じアドレスを使うクライアントがないか(アドレスのバッティング)、ターゲットボードのアドレスポート番号とソフトウェアで設定されたアドレスポート番号がミスマッチではないかなど、確認してみてください。

リングバッファでデータの取りこぼし(バッファオーバーラン)を防止して高速データ収集するには

スクリーンセーバーやソフトウェア自動アップデート、WindowsTime、ウィルスのスケジュール検索などはCPU負荷が大きく、データ収集に支障をきたす可能性があります。これ以外のバックグラウンドでスケジュールされているタスクやサービスなどを極力止める事を推奨します。またCPUパワー以上に、IOのスループットが最高速度を左右します。つまり高速のストレージを有し、遅くて占有時間の長いデバイスがないことなどが重要です。

ハードディスクを使った場合の高速化

ハードディスクは、回転が安定するのに時間がかかるので、最初にいきなりバッファオーバランに見舞われるケースがあります。これを防ぐにはデータ収集開始前にダミーのファイルを生成して、スピンドルアップを行う必要があります。Console2にはこうした機能が搭載されています。SSDなどではこうした処置の必要性は少なくなっていますが、回路がスリープから復帰するのに時間がかかう場合もあります。またハードディスクは連続領域でないとディスクアクセスに時間がかかるので、デフラグを施す、あるいは空き容量の大きいハードディスクを使うのが良いです。容量の大きなハードディスクは、そもそも高速です。このほかRAIDによるストライピング、SSDやRAMディスクなどは大きな効果があります。

"API"は"デルファイ"や"ボーランドC"からも呼び出すことができるのでしょうか ?

可能です。但しライブラリやサンプルソースは用意されていません。

信頼性

製品寿命を左右する電界コンデンサに105℃2000時間グレード以上のものを使用しています。あるいは、電解コンデンサを廃止しています。全ての入出力は保護回路を備えており、出力の短絡保護、電源オンオフに関わらず入力を保護します。

Linuxなど他のOSでの運用

Windows以外は、ドライバの提供は行っていませんが、レジスタマップ等の公開は可能です。

LabViewドライバは提供されますか。

されません。

シーケンシャル取り込みとは何ですか?

ハードウェアによって、アナログ入力チャンネルをサンプリングするたびに、順次自動切替えする機能です。

リモートIO(ADXⅢ***)で必要とされるネットワークリソースは

IPアドレスとポートが1つ必要です。このほかping(ICMPプロトコル)を使用します。

リモートIO(ADXⅢ42***)で零接点補償は何処で行っていますか?

端子台の裏で温度で補償しています。

リモートIO(ADXⅢ42***)で4-20mAを入力する場合、2線式と3線式がありますが、どちらも接続可能ですか ?

グラウンド(コモン)が接続できればどちらも可能です。

ホストとなるWindowsPCなしでも動くのでしょうか。

動きません。

リモートIO(ADXⅢ***)で時折アプリ(MultiLoggerX3)が固まります。

(ADXⅢ***)との通信が途絶したり、(ADXⅢ***)の電源が切れた場合、一定時間リンクを維持しようとして固まる場合があります。また通信が途絶した、電源が切れた状態では、定期的にMultiLoggerX3から、(ADXⅢ***)にアクセスしてリンクの回復を試みるので
ここで(ADXⅢ***)が準備できていない場合にも固まります。いずれもしばらく時間が経過すると通常の状態に戻りますので放置してください。

ADXⅢ42***の熱伝対の精度はどの程度でしょうか?

K型やJ型、白金測温抵抗体であれば、校正を行い、オートゼロを使用していれば(MultiLoggerX3の場合オートゼロが有効)おおよそ±1℃以内です。

ADXⅢ42***の4-20mA用の抵抗47Ωの精度はどの程度でしょうか?

初期精度0.5%、温度係数50ppm/℃です。

パルスのようなノイズが出る

使っていないチャンネルの入力容量にノイズが蓄積されてディスチャージされるときに発生するノイズです。この場合、未使用のアナログ入力チャンネルをグラウンドに短絡することで解消されます。

ADXⅡ85-1M-PCIEXで16ch取り込んだ場合の1chあたり速度はどうなりますか ?

最高で1MHzでサンプリングでき、これを16チャンネルでマルチプレクスするため62.5KHzになります。但し信号源の出力インピーダンスが高い場合で、サンプリング周波数が高い場合、チャンネル間の干渉が発生しますので十分低いインピーダンスで駆動(出力)することを推奨します。ハードを変更できない場合、チャンネル間干渉をなくすには、サンプリング周波数を低く設定するしかありません。信号源のインピーダンスが十分に低い場合、干渉が小さくなるサンプリング周波数は、700-800KHzおよび320KHz以下となります。

ADXⅡ85-1M-PCIEXで高速サンプリング時と、低速サンプリング時で直流精度が異なるようですが原因は何ですか?

約550KHzを境に、A/Dコンバータの動作モードが変わります。高速動作時には若干直流精度が落ち込みます。

複数チャンネルをデータ収集する場合チャンネル間の時間差はどの程度ですか?

ADXⅡ85-1M-PCIEXやADXⅢ***では、"サンプリング時間×(チャンネル数-1)"周波数分の位相差が出ます。従って低速のサンプリングであるほど顕著になります。ADXⅡ14-125M-PCIEXでは同時サンプリングなので時間差はありません。

ADXⅡ14-125M-PCIEXの連続データ収集のサンプリング速度はどの程度ですか ?

PC環境にもよりますが、A/D、D/Iのみで40MHz、A/D、D/I、D/A、D/Oを全部動かすと10MHzが上限です。この値はPCによって左右します。(※ファイル保存を行わず、メモリに記録した場合)

ADXⅡ14-125M-PCIEXで125MHzのデータ収集を実現するにはどうすればよいでしょうか。

サイクリックトリガ(A/D、D/Iのみ)を使った場合や、トリガイネーブルを使って取り込み率を少なくした場合に実現可能です。(A/D、D/Iのみ)

ADXⅡ14-125M-PCIEXでアナログ2chで同じデータを取り込んで、平均することでS/Nは改善されますか ?

ランダムノイズ(非周期性)の雑音ならばS/N比が3dB改善しますが、非ランダムノイズは改善されません。