Unit_AnalogInput_FP0R_AD8FP0R-AD8ユニットから読み出しを行うためのファンクションブロック。
このファンクションブロックは、アナログユニットのアナログ入力チャンネルから変換後のデジタル値を読み出します。アナログユニットからの変換後のデジタル値は、出力変数iInChannel0~iInChannel7にチャンネルごとに保存されます。
アナログ入力レンジもこのファンクションブロックで設定されます。
チャンネル数はディップスイッチで設定する必要があります。

入力
アナログユニットの装着位置に従って、WX/WYの先頭アドレスのオフセットを設定します。
CPUに直接接続されているアナログ増設ユニット(アダプタなし)の場合:ExpansionUnitToIOWordOffset_FP0を使用するか、以下の設定を行います。ユニット番号1は2 (WX2/WY2)、ユニット番号2は4 (WX4/WY4)、ユニット番号3は6 (WX6/WY6)。
アダプタを介してCPUに接続されているアナログ増設ユニットの場合: ExpansionUnitToIOWordOffset_FPX_FP0を使用するか、次のテーブルからオフセットを選択します。
アダプタに対するユニットの位置 |
CPUに対するアダプタの位置 |
|||||||
|---|---|---|---|---|---|---|---|---|
第1ユニット |
第2ユニット |
第3ユニット |
第4ユニット |
第5ユニット |
第6ユニット |
第7ユニット |
第8ユニット |
|
第1ユニット |
30 |
40 |
50 |
60 |
70 |
80 |
90 |
100 |
第2ユニット |
32 |
42 |
52 |
62 |
72 |
82 |
92 |
102 |
第3ユニット |
34 |
44 |
54 |
64 |
74 |
84 |
94 |
104 |
アナログ入力チャンネルの電圧または電流範囲を設定します。
出力
アナログユニットで変換されたデジタルデータをチャンネルごとに返します。
14ビットモードを使用するには、ディップスイッチ1と2をONにする必要があります。ディップスイッチ3と4はチャンネル数を設定するために使用され、ディップスイッチ5は平均化のオン/オフを切り替えるために使用されます。
ディップスイッチの設定は、電源をOFFからONにすると有効になります。
2 (0および1) |
4 (0~3) |
6 (0~5) |
8 (0~7) |
|
|---|---|---|---|---|
平均化なし: 変換データは、各チャンネルの、各A/D変換ごとに、指定された入力接点エリアにセットされます。
平均処理あり: 各チャンネルの、各A/D変換ごとに、最新の10回のデータのうち、最大値と最小値を除き、残りの8回のデータを平均して結果が決定されます。
平均化なし |
平均処理あり |
|
|---|---|---|
電圧入力 |
電流入力 |
|---|---|
VとCOM端子間に入力機器を接続します。 |
VとI端子を接続します。ブリッジとCOM端子間に入力機器を接続します。 |
-10V~+10V DC入力 |
-5V~+5V DC入力 |
0V~5V DC入力 |
|||
|---|---|---|---|---|---|
デジタル値(INT) |
アナログ値 |
デジタル値(INT) |
アナログ値 |
デジタル値(INT) |
アナログ値 |
-8000 |
-10V |
-8000 |
-5V |
0 |
0.0V |
-4000 |
-5V |
-4000 |
-2.5V |
4000 |
1.25V |
0 |
0V |
0 |
0V |
8000 |
2.5V |
+4000 |
+5V |
+4000 |
+2.5V |
8000 |
3.75V |
+8000 |
+10V |
+8000 |
+5V |
16000 |
5.0V |
0V~10V DC入力 |
0mA~20mA入力 |
||
|---|---|---|---|
デジタル値(INT) |
アナログ値 |
デジタル値(INT) |
アナログ値 |
0 |
0.0V |
0 |
0.0mA |
4000 |
2.5V |
3200 |
4.0mA |
8000 |
5.0V |
6400 |
8.0mA |
12000 |
7.5V |
9600 |
12.0mA |
16000 |
10.0V |
12800 |
16.0mA |
16000 |
20.0mA |
||
このコマンドの説明では、基本的なハードウェアのドキュメンテーションのみを提供します。技術的な内容の詳細については、マニュアルを参照してください。

POUヘッダには、このプログラムで使用するすべての入力変数と出力変数を宣言します。 POUヘッダは全プログラム言語で使用できます。

VAR
Inst_FP0R_AD8: Unit_AnalogInput_FP0R_AD8;
iAnalogIn0: INT:=0;
iAnalogIn1: INT:=0;
iAnalogIn2: INT:=0;
iAnalogIn3: INT:=0;
iAnalogIn4: INT:=0;
iAnalogIn5: INT:=0;
iAnalogIn6: INT:=0;
iAnalogIn7: INT:=0;
END_VAR
ExpansionUnitNumberToIOWordOffset_FP0またはExpansionUnitNumberToIOWordOffset_FPX_FP0を使用して、CPUに接続されたアナログユニットのワードオフセットを計算します。

BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 12 ;
NETWORK_BODY
B(B_COMMENT,,FP0R-A80,2,0,17,1,);
B(B_VARIN,,6,17,2,19,4,);
B(B_FB,Unit_AnalogInput_FP0R_AD8!,Inst_FP0R_AD8,19,1,34,12,,?BiIOWordOffset?BwInChannel0_Config?BwInChannel1_Config?BwInChannel2_Config?BwInChannel3_Config?BwInChannel4_Config?BwInChannel5_Config?BwInChannel6_Config?BwInChannel7_Config?CiInChannel0?CiInChannel1?CiInChannel2?CiInChannel3?CiInChannel4?CiInChannel5?CiInChannel6?CiInChannel7);
B(B_VAROUT,,iAnalogIn0,35,2,37,4,);
B(B_VARIN,,3,17,3,19,5,);
B(B_VAROUT,,iAnalogIn1,35,3,37,5,);
B(B_VARIN,,2,17,4,19,6,);
B(B_VAROUT,,iAnalogIn2,35,4,37,6,);
B(B_VARIN,,2,17,5,19,7,);
B(B_VAROUT,,iAnalogIn3,35,5,37,7,);
B(B_VARIN,,2,17,6,19,8,);
B(B_VAROUT,,iAnalogIn4,35,6,37,8,);
B(B_VARIN,,2,17,7,19,9,);
B(B_VAROUT,,iAnalogIn5,35,7,37,9,);
B(B_VARIN,,2,17,8,19,10,);
B(B_VAROUT,,iAnalogIn6,35,8,37,10,);
B(B_VARIN,,2,17,9,19,11,);
B(B_VAROUT,,iAnalogIn7,35,9,37,11,);
B(B_VARIN,,2,17,10,19,12,);
L(1,0,1,12);
L(34,3,35,3);
L(34,4,35,4);
L(34,5,35,5);
L(34,6,35,6);
L(34,7,35,7);
L(34,8,35,8);
L(34,9,35,9);
L(34,10,35,10);
END_NETWORK_BODY
END_NET_WORK
END_BODY
Inst_FP0R_AD8(iIOWordOffset := 6,
wInChannel0_Config := 3,
wInChannel1_Config := 2,
wInChannel2_Config := 2,
wInChannel3_Config := 2,
wInChannel4_Config := 2,
wInChannel5_Config := 2,
wInChannel6_Config := 2,
wInChannel7_Config := 2,
iInChannel0 => iAnalogIn0,
iInChannel1 => iAnalogIn1,
iInChannel2 => iAnalogIn2,
iInChannel3 => iAnalogIn3,
iInChannel4 => iAnalogIn4,
iInChannel5 => iAnalogIn5,
iInChannel6 => iAnalogIn6,
iInChannel7 => iAnalogIn7);