アナログ演算

image\block_analogmath_sn.gif

簡単な説明

アナログ演算ブロックは、ユーザー定義のオペランドおよび演算子から作成された式 の値AQを計算します。

 

接続

説明

入力En

アナログ演算ファンクションブロックを有効にします。

パラメータ

V1: 1: 1オペランド

V2: 2: 2オペランド

V3: 3: 3オペランド

V4: 4: 4オペランド

 

演算子1: 1演算子

演算子2: 2演算子

演算子3: 3演算子

 

優先度1: 最初の操作の優先度

優先度2: 2番目の操作の優先度

優先度3: 3番目の操作の優先度

 

p: 小数点以下の桁数
値の範囲: 0, 1, 2, 3

出力AQ

出力AQはオペランド値および演算子から作成された式の結果です。 AQは、0による除算またはオーバーフローが発生した場合32767に、負のオーバーフローが発生した場合(アンダーフロー)32768に設定されます。

 

image\0ba3_logo_sn.gif

FL1AFL1D: FL1Eよりも前には、アナログ演算ファンクションブロックは存在しませんでした。

 

パラメータV1V2V3V4

V1V2V3V4の値は、既にプログラムされた別のファンクションの値によって指定す ることができます。

パラメータp(小数点以下の桁数)

パラメータpは、メッセージ出力V1V2V3V4AQの表示に適用されます。

ファンクションの詳細

アナログ演算ファンクションは、4つのオペランドおよび3つの演算子を組み合わせて、式を作成します。演算子は、次の標準的な 4つの演算子のどれかにすることができます。+-*、または/。各演算子では、高("H")、中("M")、または低("L")の固有の優先度を設定する必要があります。優先度が高の演算は最初に 実行され、そのあとに優先度が中の演算、さらに優先度が低の演算が実 行されます。各優先度の演算子は正確に1つだけ必要になります。 オペランド値は定義済みの別のファンクションを参照して値を与えることができ ますアナログ演算ファンクションは、演算結果四捨五入し、整数

オペランド値の数は4に固定され、演算子の数は3に固定されています。これより少ない数のオペランドを使用する必要がある場合 、+ 0または"* 1"などの構文を使用して残りのパラメータを満たす必要があります。

有効化パラメータ"En"=0のときに、ファンクションの動作を設定することもできます。ファンク ションブロックは、最後の値を保持するか、または0に設定することができます。

発生可能なエラー: ゼロによる除算とオーバーフロー

アナログ演算ファンクションブロックを実行した結果、ゼロによる除算またはオーバ ーフローが発生すると、発生したエラーのタイプを示す内部ビットが設定されます。 使用する回路プログラムにアナログ演算エラー検出ファンクションブロックをプログラムして、これらのエラーを検出し、 必要なプログラム動作を制御することができます。 1つの特定のアナログ演算ファンクションブロックを参照するために、1つのアナログ演算エラー検出ファンクションブロックをプログラムします。

次の表は、アナログ演算ブロックのパラメータの簡単な例、結果の式、および出力値を示してい ます。

 

V1

演算子1

(優先度1)

V2

演算子2

(優先度2)

V3

演算子3

(優先度3)

V4

12

+ (M)

6

/ (H)

3

- (L)

1

: (12 + (6 / 3)) - 1

結果: 13

 

V1

演算子1

(優先度1)

V2

演算子2

(優先度2)

V3

演算子3

(優先度3)

V4

2

+ (L)

3

* (M)

1

+ (H)

4

: 2 + (3 * (1 + 4))

結果: 17

 

V1

演算子1

(優先度1)

V2

演算子2

(優先度2)

V3

演算子3

(優先度3)

V4

100

- (H)

25

/ (L)

2

+ (M)

1

: (100 25) / (2 + 1)

結果: 25

 

概要