Spectrum Controls 2080sc-BAC User Manual

Page 34

Advertising
background image

3-16

Chapter 3: Configuring the Module

User’s Manual Pub. 0300274-01 Rev. A.0

tmp_index := param_offset;

tmp_raw_var :=

0

;

tmp_raw_var := tmp_raw_var + ANY_TO_ULINT(bac_raw_tbl[tmp_index]) *

1

;

tmp_index := tmp_index +

1

;

tmp_raw_var := tmp_raw_var + ANY_TO_ULINT(bac_raw_tbl[tmp_index]) *

16

#

100

;

tmp_index := tmp_index +

1

;

tmp_raw_var := tmp_raw_var + ANY_TO_ULINT(bac_raw_tbl[tmp_index]) *

16

#

10000

;

tmp_index := tmp_index +

1

;

tmp_raw_var := tmp_raw_var + ANY_TO_ULINT(bac_raw_tbl[tmp_index]) *

16

#

1000000

;

tmp_index := tmp_index +

1

;

tmp_raw_var := tmp_raw_var + ANY_TO_ULINT(bac_raw_tbl[tmp_index]) *

16

#

100000000

;

tmp_index := tmp_index +

1

;

tmp_raw_var := tmp_raw_var + ANY_TO_ULINT(bac_raw_tbl[tmp_index]) *

16

#

10000000000

;

tmp_index := tmp_index +

1

;

tmp_raw_var := tmp_raw_var + ANY_TO_ULINT(bac_raw_tbl[tmp_index]) *

16

#

1000000000000

;

tmp_index := tmp_index +

1

;

tmp_raw_var := tmp_raw_var + ANY_TO_ULINT(bac_raw_tbl[tmp_index]) *

16

#

100000000000000

;

(*
if param_mode == 1
convert ULINT variable tmp_raw_var to byte array bac_raw_tbl
This is for Analog Input Table
*)

ELSIF

param_mode =

1

THEN

tmp_index := param_offset;
tmp_raw_var := param_var;

bac_raw_tbl[tmp_index] := ANY_TO_BYTE(tmp_raw_var);

tmp_raw_var := tmp_raw_var /

256

;

tmp_index := tmp_index +

1

;

bac_raw_tbl[tmp_index] := ANY_TO_BYTE(tmp_raw_var);

tmp_raw_var := tmp_raw_var /

256

;

tmp_index := tmp_index +

1

;

bac_raw_tbl[tmp_index] := ANY_TO_BYTE(tmp_raw_var);

tmp_raw_var := tmp_raw_var /

256

;

tmp_index := tmp_index +

1

;

bac_raw_tbl[tmp_index] := ANY_TO_BYTE(tmp_raw_var);

tmp_raw_var := tmp_raw_var /

256

;

tmp_index := tmp_index +

1

;

bac_raw_tbl[tmp_index] := ANY_TO_BYTE(tmp_raw_var);

tmp_raw_var := tmp_raw_var /

256

;

tmp_index := tmp_index +

1

;

bac_raw_tbl[tmp_index] := ANY_TO_BYTE(tmp_raw_var);

tmp_raw_var := tmp_raw_var /

256

;

tmp_index := tmp_index +

1

;

bac_raw_tbl[tmp_index] := ANY_TO_BYTE(tmp_raw_var);

tmp_raw_var := tmp_raw_var /

256

;

tmp_index := tmp_index +

1

;

bac_raw_tbl[tmp_index] := ANY_TO_BYTE(tmp_raw_var);

tmp_index := tmp_index +

1

;

(*
if param_mode == 2
This is for Binary Output Table
*)

ELSIF

param_mode =

2

THEN

tmp_index := param_offset /

8

;

tmp1 :=

MOD

(param_offset,

8

);


tmp2 := ANY_TO_DINT(bac_raw_tbl[tmp_index]);
tmp2 :=

SHR

(tmp2, tmp1);

Advertising