Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. Double-click the OptoScript block to open it.
  2. For each tag to be scanned, create a string element following the OptoScript Syntax and tag naming standard.
    IMPORTANT: Index number 0 (zero) must be the last item initialized in the OptoScript block

Code Block
titleEXAMPLE
/*
NOTES:
- All tags are readable. Use the .rw attribute to write to a tag. 
- Important! Initialize the element at Index 0 LAST. This indicates
  to the driver that all elements in stPublicListOfStrategyTags 
  have been initialized.
If the tag begins with a ' or a /, the tag is ignored.
Important! Initialize the first table element (at Index 0) last (because 
a blank string in Index 0 tells the driver that the
string table has not yet been initialized).
*/
stPublicListOfStrategyTags[0] = "";
stPublicListOfStrategyTags[1] = "f32.MyFloat.rw";
stPublicListOfStrategyTags[2] = "i32.MyInt32.rw";
stPublicListOfStrategyTags[3] = "i64.MyInt64.rw";
stPublicListOfStrategyTags[4] = "s.MyString.rw";
/* Use "t" for up and down timers. Timers are read-only.*/
stPublicListOfStrategyTags[5] = "t.MyUpOrDownTimer";
stPublicListOfStrategyTags[6] = "i32b.MyInt32UsedAsBoolean.rw";
/* For tables, enter the element's index or an index range in brackets. 
For example, "i32t.MyInt32Table[0].rw" or "i32t.MyInt32Table[0-0].rw" */
stPublicListOfStrategyTags[7] = "i32t.MyInt32Table[0-9].rw";
stPublicListOfStrategyTags[8] = "i64t.MyInt64Table[0-20].rw";
stPublicListOfStrategyTags[9] = "f32t.MyFloatTable[10-19].rw";
stPublicListOfStrategyTags[10] = "st.MyStringTable[0-9].rw";
stPublicListOfStrategyTags[11] = "dio.MyDiscretePoint";
stPublicListOfStrategyTags[12] = "aio.MyAnalogPoint.rw";
/* Use single-element table tags (i32te, i64te, f32te, stte) only with a
single index. For a range, use table element tags (i32t, i64t, f32t, st). */
stPublicListOfStrategyTags[13] = "i32te.MyInt32TableElement[5].rw";
stPublicListOfStrategyTags[14] = "i32tebp.MyInt32TableElementBitPick[9].2.rw";
stPublicListOfStrategyTags[15] = "i64tebp.MyInt64TableElementBitPick[5].8.rw";
stPublicListOfStrategyTags[16] = "i32bp.MyInt32BitPick.1.rw";
// Remember, initialize index 0 last!
stPublicListOfStrategyTags[0] = "dio.MyDiscretePointWrite.rw";

...

Data type description

Ignition data type

Data type code

Example tag name for OptoScript block

Example tag name for OptoScript block (writeable tag)

Notes

32-bit integer

Int4

i32

i32.MyIntVariable

i32.MyIntVariable.rw

 

64-bit integer

Int8

i64

i64.MyLongVariable

i64.MyLongVariable.rw

 

32-bit float

Float4

f32

f32.MyFloatVariable

f32.MyFloatVariable.rw

 

32-bit integer as a SCADA Boolean

Boolean

i32b

i32b.MyIntVariable

i32b.MyIntVariable.rw

 

String

String

s

s.MyStringVariable

s.MyStringVariable.rw

PAC Controllers support only 7-bit ASCII

Up or Down timer

Float4

t

t.MyUpOrDownTimer

Not applicable

Timers are only read-only

32-bit integer table element as a SCADA int4

Int4

i32te

i32te.My32BitIntegerTable[3]

i32te.My32BitIntegerTable[3].rw

 Used only with a single index. Synonymous with i32t.

32-bit integer table

See i32te.

i32t

i32t.My32BitIntegerTable[0-9]

i32t.My32BitIntegerTable[0-9].rw

To get individual table elements, use the stPublicListOfStrategyTags table to scan for specific tags.

i32tMyInteger[11-9] (backward index range)
i32MyInteger[3-3] (same index)"

64-bit integer table element as a SCADA int8

Int8

i64te

i64te.My64BitIntegerTable[302]

i64te.My64BitIntegerTable[302].rw

 Used only with a single index. Synonymous with i64t.

64-bit integer table

See i64te.

i64t

i64t.My64BitIntegerTable[0-35]

i64t.My64BitIntegerTable[0-35].rw

To get individual table elements, use the stPublicListOfStrategyTags table to scan for specific tags.

32-bit float table element as a SCADA float4

Float4

f32te

f32te.My32BitFloatTable[11]

f32te.My32BitFloatTable[11].rw

 Used only with a single index. Synonymous with f32t.

32-bit float table

See f32te.

f32t

f32.MyFloatTable[0-20]

f32.MyFloatTable[0-20].rw

To get individual table elements, use the stPublicListOfStrategyTags table to scan for specific tags.

String table

See stte.

st

st.MyStringTable[0-32]

st.MyStringTable[0-32].rw

PAC Controllers support only 7-bit ASCII

To get individual table elements, use the stPublicListOfStrategyTags table to scan for specific tags.

String table element as a SCADA string

String

stte

stte.MyStringTable[6]

stte.MyStringTable[6].rw

PAC Controllers support only 7-bit ASCII. Used only with a single index. Synonymous with st.

Analog input or output state

Float4

aio

aio.MyAnalogPoint

aio.MyAnalogPoint.rw

 

Discrete input or output state

Boolean

dio

dio.MyDiscretePoint

dio.MyDiscretePoint.rw

 

Bit-pick of a 32-bit integer variable

Boolean

i32bp

i32bp.My32BitIntegerVariable.31

i32bp.My32BitIntegerVariable.31.rw

 

Bit-pick of a 64-bit integer variable

Boolean

i64bp

i64bp.MyLongVariable.0

i64bp.MyLongVariable.0.rw

 

Bit-pick of a 32-bit integer table element

Boolean

i32tebp

i32tebp.My32BitIntegerTable[3].2

i32tebp.My32BitIntegerTable[3].2.rw

 

Bit-pick of a 64-bit integer table element

Boolean

i64tebp

i64tebp.My64BitIntegerTable[302].6

i64tebp.My64BitIntegerTable[302].6.rw

 

...