Home
Support
FPGA R シリーズ RIO でアナログ入力の読み取りが想定される値の10分の1になります。なぜでしょうか。
FPGA R シリーズ RIO でアナログ入力の読み取りが想定される値の10分の1になります。なぜでしょうか。
使用ソフトウェア:
使用ソフトウェア・バージョン: 1.0
使用ソフトウェア・バージョンに特化: N/A
二次のソフトウェア: N/A
ハードウェア: Reconfigurable I/O (RIO)>>R Series
問題: NI PCI-7831R (RシリーズマルチファンクションRIO)を使用してます。アナログ入力を取る際、読み取り値が想定される値の10分の1になります。デバイスが故障しているのでしょうか。
解決策: これはデバイスの故障ではなく、データが正しくスケールされていない可能性が高いです。そのため結果を10倍にする必要があります。
NI 783xR/784xR/785xR のアナログ入力チャンネルは逐次比較型のA/Dコンバータを使用し、データを2の補数で返します。これらのA/Dコンバータは16ビットの分解能をもち、65,536 (2^16)の返り値があります。
入力レンジは +/- 10 V に固定されています。読み取り値はスケールされていて、最も大きい整数(7FFF (hex))が +10 V を表現し、0000 (hex)が 0 V を表現し、最も大きい負数(8000 (hex))が -10 V を表しています。
アナログ入力電圧 |
コンバータ出力値 (十六進数) (2の補数) |
返り値 (十進数) = (コンバータ出力値) / (32,768) |
+ 9.999695 Volts |
7FFF |
+ 0.9999695 |
0.000000 Volts |
0000 |
0.0000000 |
- 10.000000 Volts |
8000 |
- 1.0000000
|
*コンバータ出力値は2の補数になります。
その為、返り値から集録した電圧値を割り出す事ができます。
集録した電圧値 = (返り値)X 10
下記はオンポードプロセスの上位図になります。
入力電圧:入力レンジは +/- 10 V に固定されています。
A/Dコンバータ:オンボードのA/Dコンバータは逐次比較型で0000 (hex)から8000 (hex)の値を返します。
コンバータ:コンバータはA/Dコンバータの16ビット出力を取り込み、2の補数に変換します。コンバータは32,767の正数、32,768の負数、そして0を出力します。
返り値:返り値はコンバータ出力値に分解能をかけたものです。
返り値 = コンバータ出力値 * (1 / 32,768)
返り値のレンジは + 0.9999695 から - 1.0000000です。
最終値 : 返り値に入力レンジ(20V)の半分(10V)を掛ける必要があります。FPGA を効率的に使用するためには、ホストVIでスケールを行うが適切です。
関連リンク: KnowledgeBase 4HUDE84H: Why am I Getting Large Binary Values From Analog FPGA Reading?
添付:
報告日時: 11/20/2011
最終更新日: 02/01/2015
ドキュメントID: 5RJFUX0
Other Support Options
Ask the NI Community
Collaborate with other users in our discussion forums
Request Support from an Engineer
A valid service agreement may be required, and support options vary by country.