Siemens SIMATIC NET Interface to the PI System
for S5, TI505 Series PLC's and PCS
version 1.4.0 (and greater)
OSI Software, Inc.
OSI Software, Inc.
How to Contact UsPhone (510) 297-5800 (main number)
(510) 297-5828 (technical support)
Fax (510) 357-8136
Internet [email protected]
World Wide Web
http://www.osisoft.com
Bulletin Board
(510) 895-9423Telebit WorldBlazer modem (Hayes, MNP, or PEP compatible)8 data bits, 1 stop bit, no parity, up to 14400 bps downloadprotocols: Xmodem, Ymodem, Zmodem, Kermit
Mail OSI Software, Inc.P.O. Box 727San Leandro, CA 94577-0427USA
OSI Software GmbH Hauptstrae 30 D-63674 Altenstadt 1Deutschland
OSI Software, LtdP. O. Box 8256Level One, 6-8 Nugent StreetAuckland 3, New Zealand
Unpublished -- rights reserved under the copyright laws of the United States.RESTRICTED RIGHTS LEGEND
Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in Technical Data and Computer Software clause at DFARS 252.227-7013
Trademark statement—PI is a registered trademark of OSI Software, Inc. Microsoft Windows, Microsoft Windows for Workgroups, and Microsoft NT are registered trademarks of Microsoft Corporation. Solaris is a registered trademark of Sun Microsystems.
HP-UX is a registered trademark of Hewlett Packard Corp.. IBM AIX RS/6000 is a registered trademark of the IBM Corporation. DUX, DEC VAX and DEC Alpha are registered trademarks of the Digital Equipment Corporation.
document.doc PI-IN-SI-SIMAT-NT
1997 OSI Software, Inc. All rights reserved777 Davis Street, Suite 250, San Leandro, CA 94577
November 1998 ii
OSI Software, Inc.
Table of ContentsIntroduction....................................................................................................................6
Overview......................................................................................................................6
TI505 Series PLCs.......................................................................................................7
Schematic.....................................................................................................................8
Required Hardware and Software................................................................................9
PI Point Configuration.................................................................................................12Input Tag Configuraton...........................................................................................18
Output Tag Configuration.......................................................................................18
Tag Configuration for PCS Systems..........................................................................20Example install.tag file:.................................................................................................20
Install.CSV file.............................................................................................................21
Configuration Files......................................................................................................22SINET.CFG.............................................................................................................22
SINET.INI................................................................................................................22
The Windows NT Control Panel..................................................................................23Softnet – S7............................................................................................................23
Hardnet - CP1413...................................................................................................23
The COML1413 Setup Program..................................................................................24
S5 vs TI505 Connections.............................................................................................25S5 Configuration.....................................................................................................25
505 Configuration...................................................................................................25
Performance.................................................................................................................26Interface Performance............................................................................................26
Multiple Copies of the Interface..............................................................................26
Performance Point..................................................................................................27
IO Rate Tags.................................................................................................................28
Installation....................................................................................................................30
November 1998 3
OSI Software, Inc.
Pre-installation Notes..............................................................................................30
Additional Pre-installation for a PI 2 Home Node...................................................30
Installation..............................................................................................................30
Updating the Interface.................................................................................................34
The Startup Command File.........................................................................................35
Shutdown......................................................................................................................40
Error and Information Messages................................................................................41General...................................................................................................................41
The PIPC.LOG file..................................................................................................41
The Interface-specific Log File................................................................................41
Digital States that are Written to Tags when Errors Occur.....................................42
Siemens Simatic Net (TI-505, S5) Interface Operation..............................................43Data Acquisition.........................................................................................................43
Hints for the System Manager....................................................................................45
Native TCP/IP, RFC1006 TCP/IP, and H1....................................................................48
Troubleshooting...........................................................................................................49RB_RESPONSE=16 with CP1413 Card.................................................................49
Appendix A...................................................................................................................50Supported Data Types for Simatic TI505 PLCs......................................................50
Appendix B...................................................................................................................53Output Tag Configuration Examples.......................................................................53
Individual Writes.....................................................................................................53
Block Write Example...............................................................................................54
Appendix C...................................................................................................................57Tracing Send Receive Messages...........................................................................57
Appendix D The ISO/OSI Reference Model................................................................61
Appendix E....................................................................................................................62
November 1998 4
OSI Software, Inc.
November 1998 5
OSI Software, Inc.
IntroductionOverview
The SIEMENS SIMATIC NET Interface to the PI System runs under Windows NT Server or Workstation, Intel Platform.
The interface transfers data between
TI 505 Series PLC
S5 Series PLC
and the Plant Information (PI) System. Although the interface manual refers to Softnet-S7 software libraries, the interface does not support S7 PLCs. The “7” in the Softnet-S7 library name refers to the 7 layers in the ISO/OSI reference model (see Appendix D). However, the SIEMENS SIMATIC NET Interface to the PI System only utilizes the first 4 layers in the ISO/OSI reference model. That is, the interface is said to communicate via the so-called read/write protocol, which utilizes only the first 4 layers of the ISO/OSI reference model.
The read/write protocol allows the interface to read from and write to specific memory locations in S5 and TI505 PLCs. Since the read/write protocol only utilizes the first 4 layers of the ISO/OSI model, report by exception is not supported by the interface. In other words, the interface must poll the TI 505 or S5 PLCs to get data. One advantage of using only the first 4 layers of the ISO/OSI model is that a wide range of PLCs supports the 4-layer model. Even those PLCs that support the 7-layer model require programming before they support report by exception. The read/write protocol was chosen for its portability.
There are several references to the Siemens PCS in this manual. To clarify, this interface does not communicate to the Siemens PCS. The interface can merely read an install.tag file that can be downloaded from the Siemens PCS. The interface communicates directly to S5 PLCs or TI 505 PLCs.
Note:The current version of the interface went through limited tests of data types for the S5 Series PLC. See section "PI Point Configuration" later in this manual for supported data types. A customer who requires additional data type support must be prepared for onsite tests.
SINEC AP and SINEC TF are not supported. The protocols are described in detail in:
SIEMENS Publications:
SINEC CP 143 mit COM 143Bestell-Nr. 6GK1970-1AB43-0AA0
And
SIMATIC NETSEND/RECEIVE-Programmierschnittstelle
November 1998 6
OSI Software, Inc.
TI505 Series PLCs
TI505 PLCs have either TI545 or TI555 communications processor units (CPUs) associated with them. Both 545 and 555 CPUs are supported by this interface. Any PLC or CPU with a name of the form TI5X5 is part of the TI505 series PLCs and should be supported by this interface. The TI505 series PLCs are distinctly different from the TI500 series PLCs, which are not supported by this interface. The TI500 series PLCs have names of the form TI5X0. For example, TI520 and TI530 PLCs are part of the TI500 series and are not supported. The communications processors associated with TI500 series PLCs have names of the form TI5X0c, such as TI520c and TI530c (also not supported).
Even though TI500 series PLCs are not supported by this interface, it is worthwhile to discuss them a bit further, owing to the large amount of confusion surrounding this product line. TI500 series PLCs communicate via NITP (non-intelligent terminal protocol) or TBP (transparent byte protocol). One method of communicating to these PLCs is with a Task Code Driver that can communicate via NITP or TBP. OSI does not have such a task code driver. However, TI500 series PLCs also can communicate to a TIWAY driver, and OSI does have a TIWAY interface. If a TIWAY NIM (network interface module) is set up, OSI’s TIWAY interface should be able to communicate to TI500 series PLCs.
TI305 and TI405 PLCs are also a source of confusion. The Siemens Simatic Net Interface does not communicate to TI305 or TI405 PLCs, but they are still worth discussing. Siemens no longer supports these PLCs. TI305 PLCs use either TI330 or TI335 communication processor units (CPUs). TI405 PLCs use TI435 CPUs (there are probably other 400 series CPUs). Both TI305 and TI405 PLCs communicate via the Hostlink protocol across a serial line. Hostlink is a publicly published protocol. OSI does not have an interface that communicates via Hostlink. More information can be obtained about the Hostlink protocol from Siemens manual number 305-8102.
November 1998 7
OSI Software, Inc.
Schematic
November 1998 8
OSI Software, Inc.
Required Hardware and Software
The Communication Processors (CP) and the library are not part of this PI interface. They can be purchased from SIEMENS.
Supported Scenarios
System Network Remote CP Host CP(Hardware on interface node)
Library(Software on interface node)
TI 505 Series
H1 CP 1434 TFPPX:505-CP1434TF
CP 1413 (ISA)6GK1 141-3RB01
TF-14136GK1701-1TBxx-3AA0
CP 1613 (PCI)6GK1161-3AA00
TF-16136GK1716-1TBxx-3AA0
Windows NT compatible Ethernet Card
SOFTNET-S7 Basic6GK1704-1CWxx-3AA0
SOFTNET-S7 Extended6GK1704-1CXxx-3AA0
S5 H1 CP 1430 TF6GK1 143-0TA01
CP 1413 (ISA)6GK1 141-3RB01
TF-14136GK1701-1TBxx-3AA0
CP 1613 (PCI)6GK1161-3AA00
TF-16136GK1716-1TBxx-3AA0
Windows NT compatible Ethernet Card
SOFTNET-S7 Basic6GK1704-1CWxx-3AA0
SOFTNET-S7 Extended6GK1704-1CXxx-3AA0
PCS H1 TI 505/H1 TI 505/H1 TI 505/H1
The currently recommended hardware on the interface node is a CP 1613 communications processor. The CP 1613 is the replacement of the CP 1413, which is being phased out by Siemens. The throughput of the new CP 1613 is about 10 times faster than the old CP 1413 because the CP 1613 uses a PCI bus instead of an ISA bus. The TF-1613 software libraries come pre-installed on the CP 1613. This means that the TF-1613 software libraries do not need to be separately installed on the interface node if the CP-1613 processor is used.
While the CP1413 was being phased out and before the CP 1613 was released, OSI was recommending that the SOFTNET-S7 (basic or extended) software be installed on the interface node in conjunction with a standard Windows NT compatible Ethernet card. Although the difference is speed is not as great as between the CP 1413 and CP 1613, the CP 1613 processor is faster than the SOFTNET-S7/Ethernet Card combination. This is because the CP 1613 card, unlike the Ethernet card, has a built-in processor that can be used to process incoming transactions. With SOFTNET-S7, the CPU of the personal computer must process the incoming transactions.
Using a CP 1413 or CP 1613 is referred to as using “Hardnet.” Using SOFTNET-S7 in conjunction with a standard Windows NT compatible Ethernet card is referred to as using “softnet.”
November 1998 9
OSI Software, Inc.
November 1998 10
OSI Software, Inc.
Supported Features
Interface Platforms supported Windows NT (Intel)
Order Code GmbH
Vendor Software Required Yes
Sign up for Updates Yes
Exception Reporting yes
PI API Node Support Yes
UNIINT Yes
Input Scan based1
Outputs Event based2
Text Transfer Yes3
Configuration Data Half automatic for TI505 Systems
Multiple Links Yes
Failover No
Number of Points Unlimited
1 The interface supports scanning of tag caused by events from a PI tag (standard Uniint feature).2 Outputs are not tested for S5 yet and not implemented for Siemens S5 floating point numbers. Please contact OSI SOFTWARE GmbH for further information.3 Text transfer only supported for S5
November 1998 11
OSI Software, Inc.
PI Point ConfigurationThe following database details are necessary for configuring a PI point for use with the SIMATIC NET Interface.
Tag
This attribute is the name of the PI point. Any tag name can be used, according to the normal PI point naming conventions.
Extended Descriptor
Extended Descriptor keywords supported for both TI505 and S5 Series PLCs:
PERFORMANCE_POINTIf the keyword PERFORMANCE_POINT is specified in the extended descriptor, then the PI Point is a performance point. Performance points are described under the section entitled “Performance”.
EVENT=tagnameIf a tagname is specified using the EVENT keyword for an input point, then values for the input point are read only when tagname changes value. If the EVENT keyword is not specified, then the input point will be scanned periodically as described under the Location4 PI Point attribute and under the /f command-line argument. tagname can be any valid tag name. For example:EVENT=sinusoid
Z=InstZeroThe Z keyword is used to specify the instrument zero (InstZero). The instrument zero is used in the conversions that are described under the SquareRoot PI Point attribute. If the Z keyword is not found, then InstZero is assumed to be zero.
Extended Descriptor keywords supported only for S5 Series PLC:
BCD=#The BCD keyword is used to specify that the current memory word inside a DB is of BCD type. The number in a range of 1 to 8 defines the number of BCD digits stored in one word. It is only possible to use up to 8 BCD digits in one PI tag. The PI tag should be of type float to avoid overflows.
NOTE:
Floating point numbers do only have 6 significant numbers. If you need all BCD numbers significant you should limit BCD to 4!
PLCSIG=<BYTE,RBYTE,LBYTE,INT16,INT32,FLT>By default the interface will read the memory from the PLC in the following standard C data types:
PLCSIG PI Data Type I PI Data Type D PI Data Type F
<none> Unsigned short Short Integer
BYTE, LBYTE
Char - Char
RBYTE Char - Char
INT16 Unsigned short - Short
November 1998 12
OSI Software, Inc.
PLCSIG PI Data Type I PI Data Type D PI Data Type F
INT32 Unsigned integer - Integer
FLT Float - Float
STRG - - -
This may be changed by using the parameter PLCSIG in the extended descriptor.
Example:
Exdesc: PLCSIG=FLT, Instrumenttag: DB50,DW83
Read the DWORD 83 from DB 50 as a Siemens S5 floating point number
Exdesc: PLCSIG=INT32, Instrumenttag: DB50,DW83
Read the DWORD 83 from DB 50 as an integer
Exdesc: PLCSIG=STRG, Instrumenttag: DB50,W83,8
Read the WORD 83 from DB 50 and the following 8 Byte (4 WORDS) as string.
NOTE:
if the string is defined of length <x> (DB20,W1,<x>) the maximum string length to be read is <x>, while the maximum string length to be written is <x-1>. That is due to the interface writing a trailing NULL to the S5 memory. As an addition, the length of the string will be extended to fit the S5 memory (DB20,W1,3 will be extended to a 4 character string, as S5 word memory is 2 byte oriented).
MASK=0xhThe MASK keyword is used to specify the Mask which is applied (via logical AND) to the PLC value. If the MASK keyword is not found, then the Bitmask is assumed to be 0xffffffff.The result will be shifted to the first nonzero bit in the Bit mask, zero bits within the bit mask will not be compacted.
Extended Descriptor keywords supported only for TI505 Series PLC:
OUTPUT_MASTERThe interface can be configured to write data to individual memory locations or a block of memory locations. When a block of memory locations are written, the write is triggered with an output master tag. The output master tag must have the keyword “OUTPUT_MASTER” in the extended descriptor. See “Output Tag Configuration” for more information.
MASK=0xhThe MASK keyword is used to specify the Mask which is applied (via logical AND) to multibyte C memory locations. If the MASK keyword is not found, then the Bitmask is assumed to be 0xffffffff.The result will be shifted to the first nonzero bit in the Bit mask, zero bits within the bit mask will not be compacted.
MAP=mapThe MAP keyword is used to specify a bitmap. The bits from an integer word that is
November 1998 13
OSI Software, Inc.
read from the PLC are rearranged according to the bitmap, and the result is sent to PI. Bit mapping is supported only input tags. Moreover, the input tags must be integer or digital PI Points or else the bit map will not be applied.
The format of the bit map is: MAP=uuvvwwxxyyzz
where uu, vv, ww, yy, and zz each refer to a single bit. A leading zero is required if the referenced bit is less than 10. The lowest possible bit is 01 and the highest possible bit is 32. Up to 32 bits can be mapped.
A bitmap of 0307120802 will map the second bit of the original word to the first bit of the new word, the eighth bit to the second bit, the twelfth bit to the third bit, etc. The high-order bits of the new word are padded with zeros if the bits are not specified.
Say a single 16-bit PLC register holds the state of four different thermocouples. The first 4 bits correspond to the first thermocouple, the second 4 bits correspond to the second thermocouple, etc. Four different input tags with four different bitmaps could be used to read thermocouple states. The first input tag would use a bitmap of 04030201 to read the state of the first thermocouple, the second input tag would use a bitmap of 08070605 to read the state of the second thermocouple, and so on. If the sixteen bit word from the PLC was 0000 0000 0101 0111 or decimal 87, then the first thermocouple state would be interpreted as binary 0111 or decimal 7, the second thermocouple state would be interpreted as 0101 or decimal 5, etc.
OFFS=offsetThe OFFS keyword is used to specify an offset to the memory location. If the OFFS keyword is not found, then offset is assumed to be zero.Example:if the memory address is V.1234 and offset is specified as 4, the interface will read from memory location V.1238
Point Source
The point source is a single character, for example S (SIMATIC NET). For PI 2, the point source must be defined in the point source library.
Point Type
For a PI 2 home node, the Interface supports the PI point types real (R), integer (I) and digital (D).
For a PI 3 home node, the interface supports float16, float32, int16, int32, and digital. To simplify the discussion below, float16 and float32 will be referred to as R, int16 and int32 will be referred to as I, and digital will be referred to as D.
For S5 PLC’s the interface supports reading memory block and treating the bytes as characters. This requires string tags on the PI 3 home node.
Note on Point Type for S5 Series PLC:
See the description of the PLCSIG keyword under the description of the Extended Descriptor attribute above.
Note on Point Type for TI505 Series PLC:
The following applies to input points (Location5=0). When an input point has a PI point type of R, the interface assumes that the PLC stores its values according to standard TF
November 1998 14
OSI Software, Inc.
Encodings (see Appendix A). For example, the interface will assume that variables in V memory are stored in Integer16 format. Likewise, the interface assumes that variables in V. or VF memory are stored in floating-point format. Hence if all of the memory types that are being read from the PLC are stored according to the standard TF Encodings given in Appendix A, then one can safely use a point type of R for all PI Points and all values should be read correctly into PI.
However, not all variables are stored according to their standard TF Encoding. Namely, variables stored in V. or VF memory are sometimes stored in Integer32 format instead of in floating point format. For this reason, when an input point has a PI point type of I or D, the interface always assumes that the target variable is stored as an integer. Hence, one can define a PI point of type I or D and read an Integer32 from V. or VF memory.
Engineering Units
The Engineering Units have to be defined in accordance with the meaning of the measured values.
Scan flag
This is usually ON for all points of this interface. If you edit this Point Attribute to OFF, then the tag is OFFLINE (no values are exchanged for this tag).
Instrument TagFor S5 Series PLC
The memory location in the S5 that is targeted for reads or writes is defined in the InstrumentTag field. The syntax is Range[index],(type)[index](.bitnumber).
The (type) is optional. If not used, the interface will use the default type from the table below. In the current version the interface only supports DW for DWORD and W for word.
S5 Range Description Data type
DB Common Data Dword, 32 bit
MB Merker Bereich Byte, 8 bit
EB Process Input Byte, 8 bit
AB Process Output Byte, 8 bit
PB Peripheral Device Byte, 8 bit
ZB Counter Word, 16 bit
TB Timer Word, 16 bit
BS System Data Word, 16 bit
AS Absolute Memory Word, 16 bit
DX Extended DB Dword, 32 bit
DE External DB Dword, 32 bit
QB Extended Peripheral Device Byte, 8 bit
NOTE:The Interface is tested only with S5 Range DB, Data type Word, Dword
Examples of symbolic addresses that can be specified in the InstrumentTag field are given in the following table.
November 1998 15
OSI Software, Inc.
Symbolic Address Description
DB16,1 DB modul 16, Dword 1
DB16,W1 DB modul 16, word 1
DB16,1.1 DB modul 16, Dword 1, bit 1
DB16,DW1 DB modul 16, Dword 1
For TI505 Series PLC
For output master tags, this field should be set to the memory type that is associated with the output block (V for V memory, K for K memory, etc.,). A complete list of supported memory types is given in Appendix A. For all other tags, the InstrumentTag field should be defined as described below.
There are two options for designating the memory location in the PLC for reads or writes. For the first option, one directly specifies the symbolic address (e.g. V11 for memory type V, word number 11) that is targeted for reads or writes in the InstrumentTag field. As mentioned above, a complete list of supported memory types is given in Appendix A. Examples of symbolic addresses that can be specified in the InstrumentTag field are given in the following table.
Symbolic Address Description
V3 Variable Memory, Word number 3
C17 Control Register number 17
The second option is available for PCS systems. In PCS systems, PCS tags are mapped to memory locations in the PLC. This mapping is done in an ASCII file called the install.tag file. An example of an install.tag file is given below:
Example install.tag file:Record,ControlNode,TagType,Tag,Description,ProcessGroup,ManualSet,Parent,Attribute,Memory,Locations,Upload,Twenty%,Autolog,InitValueT,STATA,IVAR,78CMAPRODUCT,R78 CMA PRODUCT SELECTION,0xffffffff,NA,,,,,,,,H_RANGE,,,,,,5000A,,,,,,,,L_RANGE,,,,,,0A,,,,,,,,VALUE,V2010,1,N, ,N,0A,,,,,,,,STATUS,V2010,1,N, ,N,0T,STATA,IVAR,77CMAPRODUCT,R77 CMA PRODUCT SELECTION,0xffffffff,NA,,,,,,,,H_RANGE,,,,,,5000A,,,,,,,,L_RANGE,,,,,,0A,,,,,,,,VALUE,V2011,1,N, ,N,0A,,,,,,,,STATUS,V2011,1,N, ,N,0T,STATA,VLV2,CV647,BD SLOW CLOSE VALVE @ 1603,0xffffffff,NA,,,,,,,,SETPOINT,C39,1,Y, ,N,0A,,,,,,,,STATUS,C32,12,N, ,N,0
The PCS tag names are the fourth fields on the lines that begin with T. There are three PCS tags names that are listed in the above file: 78CMAPRODUCT, 77CMAPRODUCT, and CV647. Attributes for each of these tags are listed on the lines that begin with A. These attributes are mapped to memory locations in the PLC. For example, the VALUE and STATUS attributes for tag 78CMAPRODUCT are both mapped to memory location V2010. Similarly, the SETPOINT and STATUS attributes for tag CV647 are mapped to memory location C39 and C32, respectively.
A particular memory location is designated for the interface by assigning the InstrumentTag field a name of the form PCSTagname.Attribute. For example, if one
November 1998 16
OSI Software, Inc.
assigns CV647.STATUS to the InstrumentTag field, memory location C32 will be read by the interface. The InstrumentTag field is limited to 32 characters.
Note:For C memory locations it is possible to read up to 32 bytes and combine these to one 32 Bit value. To read for example C1234 and the next 11 bytes you have to use C1234,12 as the memory location. The Interface will take care of this if you use the INSTALL.TAG file. You may apply a Bit mask to the result to filter out necessary information. See the description of the BITMASK keyword under the description of the Extended Descriptor attribute for more information.IMPORTANT:If the array of up to 32 values will exceed the internal blocksize of 480 bytes, the array will be “cut down” to the available bytes. When this happens, a message to this effect will be written to the log file.
Location 1
This is the number of the interface process, which shall collect data for this tag. The interface can run multiple times and so distribute CPU power to groups of tags. E.g. it is possible to give a number of tags, to be scanned with high frequency, a separate process.
The interface number that is assigned to Location1 must correspond to the interface number defined by the /in flag in the startup command file of interface.
It is even possible to start multiple interface processes on different PI Nodes. But then a separate Software License for the Interface is required per PI Node.
Location 2
The Location2 attribute assigns a "logical PLC number" to the PI point. The logical PLC number that is assigned in Location2 must correspond to a logical PLC number in the SINET.CFG file, which is described in detail under the section called "Configuration Files." In the SINET.CFG file the logical PLC number is associated with a TSAP address / Ethernet (MAC) address pair that must be unique.
One connection can be established to a PCL for every logical PLC number that is assigned to the PLC. The same logical PLC number cannot be used to both read data from and write data to a PLC.
Location 3
For S5 Series PLC
Location3 is not used for reading data from S5 series PLCs.For TI505 Series PLC
Location3 is ignored for input tags.
Set location3 to 0 for individual writes, or set location3 to a non-zero integer to associated the tag with a given output block. Each tag in a given output block, including the output master tag, should have the same value for location3. See “Output Tag Configuration” for more information.
Location 4
Specifies the scan class used.
The startup command procedure has parameters like/f=00:00:30
November 1998 17
OSI Software, Inc.
This parameter specifies cycle time for scan groups. The first /f= relates to scan group 1 etc.
Location 5
Specifies the direction of data transfer. The interface is able to handle READ and WRITE Telegrams. As the interface has to open different connections for READ and WRITE, you have to configure a logical connection to the PLC (Location2 and configuration file) for each job (READ and WRITE) and PLC.
0 Input1 Output
SourceTag
The SourceTag attribute is ignored for input tags.
The SourceTag attribute defines the name of a PI Point that will be used to trigger outputs to a PLC. When a value is written to the SourceTag, an output is triggered. Either individual memory locations can be written (location3=0), or a block of memory locations can be written (location3!=0). When individual writes are of interest, it is appropriate to associate a SourceTag with each output tag. When block writes are of interest, it is only necessary to associate a SourceTag with the Output Master tag. For additional information, see “Output Tag Configuration” below.
SquareRoot
Conversions can be applied to input and output values for tags of type integer or real. The conversion that is applied depends upon the value of the SquareRoot PI Point attribute as described in the following table.
Conditions: Operation:
SquareRoot not equal to 1
No operation. Raw input values are sent to PI for Input Tags and raw values are output to the PLC for output tags.
SquareRoot=1 Input tags: Value = [ (Value - InstZero)/ Convers ] * Span + ZeroOutput tags: Value = [ (Value - Zero)/Span] *Convers + InstZero
Zero, Span, and Convers are standard PI Point attributes. InstZero must be specified in the extended descriptor. See the description of the extended descriptor for more information.
Exception Reporting
Standard PI usage, see PI System Manual I.
Zero, Span, Convers
Standard PI usage, see PI System Manual I.
Input Tag ConfiguratonInput tags are used to read data from a PLC into PI. A tag is an input tag if the value of location5 is set to 0.
November 1998 18
OSI Software, Inc.
Output Tag ConfigurationOutput tags are used to write values to memory locations in a PLC. A tag is an output tag if the value of location5 is set to 1.
NOTE: block writes are not supported for S5 series PLC’s!
Output tags can be configured for individual writes or block writes. Individual writes are assumed when location3 is set to, 0 and block writes are assumed when location3 is nonzero. Both individual writes and block writes are triggered. That is, outputs are written only when a value is sent to a given trigger tag. For individual writes, trigger tags are defined in the SourceTag attribute of each output tag. For block writes, trigger tags are defined in the SourceTag attribute of each output master tag. A tag is an output master tag if the key word “OUTPUT_MASTER” appears in the extended descriptor of the point.
There is one output master tag for each output block. Each tag in a given output block, including the output master tag, should have the same value for location3. Only contiguous registers can be written in an output block. There can be no gaps in the block. That is, one cannot, for example, write only to V11, V12, and V14 in a block. The block must also include V13. A total of 5 tags would need to be configured to write to V11 to V14. One output tag is required for each V memory location and one output master tag is needed.
Examples for configuring output tags for individual writes and block writes are given in Appendix B. The appendix also explains how particular values are written to particular PLC memory locations.
Ordinarily individual writes are sufficient for most tasks. One case where block writes should be used for downloading programs to a PLC. For downloading programs, the entire memory block must be written at once. One cannot take the chance that only part of the program will be downloaded.
November 1998 19
OSI Software, Inc.
Tag Configuration for PCS SystemsThe SIEMENS PCS System consists of TI 505 Series PLC and Engineering Stations. The PCS System knows Tagnames similar to PI Tagnames. Those Tagnames are created in the Engineering Station and are mapped to physical addresses within a certain PLC. In order to have maximum performance with our interface, we did not develop a separate PI interface running on the Engineering Station. Instead the interface PC is a member of the H1 network and gets the data from the PLC directly. This concept guarantees maximum speed. Since Tag handling and address mapping are done in the Engineering Station we of course need to make sure that we have the same information available for the interface configured for the PCS System. Therefore we provide 2 scenarios for the interface:
Option 1:The end user is able to retrieve the physical address for a specific value in the PLC from the Engineering Station and configures this physical address in form of symbolic address strings as shown under “PI Point Configuration - Instrument Tag”.
Note: Whenever a PCS Tag changes its location, the end user needs to track the change also in the PI System. The PI Tag needs to be edited and the interface will notify the change automatically (signup for update mechanism).
Option 2:All tag configuration information is stored in an ASCII file called install.tag at the Engineering Station. If the user copies the file to the interface computer on the interface startup directory, the interface can make use of the information contained in the file. In this way the InstrumentTag can be used to just contain the PCS tagname and the interface will automatically look into the install.tag file to calculate the physical address.
In case of multiple PLCs it is required to combine all install.tag files to one file. It is required that there are no identical tagnames on different PLCs as the interface does only refer to the tagname. The LOCATION2 parameter and the SINET.CFG file do the mapping to the different PLCs.
Note: If the install.tag file changes (the PCS Tag configuration has changed), a new copy action has to be done. The interface will only notify the change for a certain tag if the interface was restarted or the according tag was edited (signup for update mechanism). Just to copy the new install.tag file is not sufficient.
Example install.tag file:Record,ControlNode,TagType,Tag,Description,ProcessGroup,ManualSet,Parent,Attribute,Memory,Locations,Upload,Twenty%,Autolog,InitValueT,STATA,IVAR,78CMAPRODUCT,R78 CMA PRODUCT SELECTION,0xffffffff,NA,,,,,,,,H_RANGE,,,,,,5000A,,,,,,,,L_RANGE,,,,,,0A,,,,,,,,VALUE,V2010,1,N, ,N,0A,,,,,,,,STATUS,V2010,1,N, ,N,0T,STATA,IVAR,77CMAPRODUCT,R77 CMA PRODUCT SELECTION,0xffffffff,NA,,,,,,,,H_RANGE,,,,,,5000A,,,,,,,,L_RANGE,,,,,,0A,,,,,,,,VALUE,V2011,1,N, ,N,0A,,,,,,,,STATUS,V2011,1,N, ,N,0T,STATA,VLV2,CV647,BD SLOW CLOSE VALVE @ 1603,0xffffffff,NA,,,,,,,,SETPOINT,C39,1,Y, ,N,0A,,,,,,,,STATUS,C32,12,N, ,N,0
November 1998 20
OSI Software, Inc.
Install.CSV file
The interface generates a file install.csv anytime it reads the install.tag file. This file can be used to configure PI tags. The install.csv file is a comma delimited file of the format:
Select(x), Tag, LongName, Descriptor, InstrumentTag, Location1, Location2, Location4, PointSource, PI2PointType, PI3PointType, Precision, Span, Zero, TypicalValue, EngUnits
therefor it can be read into excel and used to configure tags in PI with PI-SMT. One has to edit this file according to the local installation. The following fields will be filled from the interface:
Attribute Install.Tag Attribute or source
Tag empty or PI Short Tagname
LongName Constructed by the interface in the way <ControlNode>:<Tag>.<Attribute>
Descriptor <Description>
InstrumentTag <Tag>.<Attribute>
Location1 Interface ID
Location2 Controlnode derived from SINET.CFG
Location4 1
PointSource Interface point source
PI2PointType R for all analog type, I else
PI3PointType float32 for all analog types, else int16
Precision S for I, F for R
Span <h_range>-<l_range> or 100
Zero <l_range> or 0
TypicalValue Zero
EngUnits <Units>
The install.csv file is controlled by the command line switch /CSV:
/CSV=ab a=1 all tags are written to install.csv
a=0 only tags that are not in PI will be written to install.csv. Note: if b=0 all tags will be written
b=1 load PI short tag name from PI, PI long tagname will be used as key to identify PI tag
b=0 don't check in PI for existing tags
for example /CSV=11 will write all tags to install.csv and will write the PI short tagname if available.
To use the Install.CSV file for point configuration one has to edit the file according to his needs. For a PI2 server the column PI3PointType has to be removed and the PI2PointType has to be renamed to PointType, for PI3 Systems the column Tag has to be removed and LongtagName has to be renamed to Tag, the columns PI2PointType and Precision have to be removed and PI3PointType has to be renamed to PointType.
November 1998 21
OSI Software, Inc.
Configuration FilesSINET.CFG
Each interface process needs a SINET.CFG file. This configuration file associates a "logical PLC number" with a local TSAP address, remote TSAP address, and Ethernet (MAC) address. Several logical PLC numbers can be associated with a single physical PLC. The logical PLC number that appears in the SINET.CFG file corresponds to the value of the LOCATION2 PI point attribute.
"Local" and "remote" are defined from the viewpoint of the interface. That is, the local TSAP addresses are the TSAP addresses on the interface side, and the remote TSAP addresses are the TSAP addresses of the PLC.
An example SINET.CFG file is shipped with the interface. This file must be edited manually.
The contents of the SINET.CFG file should look similar to the following.; LogPLC EthernetPLC LTSAP RTSAP; 1 48-49-50-51-52-54 TSAP005 RTSAP005 2 48-49-50-51-52-55 TSAP006 RTSAP006 3 48-49-50-51-52-56 TSAP007 RTSAP007 4 48-49-50-51-52-56 TSAP008 RTSAP008
SINET.INIEach interface process needs a configuration file, where the ACCESSPOINT is defined.
Example:[INIT]; A corresponding ACCESSPOINT must be configured in the control; panel application called "Setting the PG/PC interface".;; Example for hardnet (CP1413). Uncomment next line if; using hardnet.; ACCESSPOINT=CP_H1_1:;; Example for softnet. Comment out next line if; using hardnet.ACCESSPOINT=S7ONLINE
An ACCESSPOINT is simply an arbitrary name, such as S7ONLINE, that is associated with an Ethernet card. An ACCESSPOINT can be defined in the control panel called “Setting the PG/PC Interface.”
November 1998 22
OSI Software, Inc.
The Windows NT Control PanelCommunication on the PC side is configured from “Setting the PG/PC Interface” in the Windows NT control panel.
Softnet – S7If the Softnet-S7 drivers are used on the interface node, perform the following in the control panel.
1. Click on the “install” button to install the ISO Ind. Ethernet module. One may need to reboot after this is done. If the module has already been installed, its name will appear in the white box that begins with <None>.
2. From the same control panel add an ACCESSPOINT. Clicking on the down arrow underneath “Access Point of Application” will reveal an option to add or delete an Access Point.
3. To associate this ACCESSPOINT with an Ethernet Module, highlight the appropriate Ethernet Module name (which will appear somewhere beneath <None>).
4. Click the “Diagnostics” button and test the configuration. If this test does not pass, the interface will not be able to establish a connection to the PLC.
Hardnet - CP1413If the CP1413 drivers are used on the interface node, enable the TF in “setting the PG-PC interface” if the PLC has a TF connection configured for the PC.
November 1998 23
OSI Software, Inc.
The COML1413 Setup ProgramAdditional configuration outside of the Windows NT control panel needs to be performed on the interface node if the CP1413 drivers are used. The configuration is done using the COML1413 program. The node name, application name and server ID can be given any name that the user desires. “Connection” should be set to active, static. Note that the connection on the PLC itself should be configured as passive. The active connection type is configured on the PC side.
November 1998 24
OSI Software, Inc.
S5 vs TI505 ConnectionsAn S5 FETCH job is the same as a 505 READ job.
The S5 does not support the WRITE job type. Use RECEIVE/passive type instead.
S5 Configuration
505 Configuration
November 1998 25
505 CP1434 ServerLocal TSAP 1READ Passive (job 1) No DHB required
PC ClientLocal TSAP 1
ReadWrite
Local TSAP 2WRITE Passive (job 2) No DHB required
Connection 1
Connection 2
OSI Software, Inc.
PerformanceInterface Performance
Key factors that effect performance of an interface:
1. The number of data blocks that the interface requests and the frequency at which these requests are made.
2. The update time of the PLCs.
Every time that the interface requests a block of data, it must wait for the PLC to respond. Say that there are 30 request blocks associated with the interface and that the update time of the PLC is 30 milliseconds. It would take a minimum time of (30 blocks * 30 milliseconds/block = 900 milliseconds) to finish processing all 30 request blocks. The interface would be hard-pressed to scan all 30 blocks every second, but the interface should be able to scan all 30 blocks every 5 seconds without a problem. The above calculation provides the minimum time for a PLC to process a request. The calculation does not include the time it takes the PLC to process the request, which will be affected by block size. However, the testing indicated that the number of request blocks, not the size of the request blocks, is the major factor that affects performance.
The number of data blocks are affected by:
1. The number of logical PLCs that the interface is talking to.
2. The number of different memory types that the interface reads from.
3. The number of tags associated with the interface.
A request for a block of data can only be made to 1 PLC of 1 particular memory type at a time. In addition, a maximum number of 238 integer words or a maximum of 118 floating points can be requested in one block. For example, if memory locations V1 to V1000 need to be read, the interface would split the request into 5 blocks: V1 to V238, V239 to V476, V477 to V714, V715 to V952, and V953 to V1000. The request blocks always start at 1, 239, 477, etc, but the end of the request block depends upon the amount of data that is requested. That is, if tags have been configured to collect data for V100 to V300, then the interface will request V1 to V238 in one block and V239 to V300 in another block.
The user should avoid splitting a request block over 2 scan classes. That is, if the user has configured 50 tags with location4=1 (scan class 1) to collect data from memory locations V1 to V50 and 50 tags with location4=2 to collect data from memory locations V51 to V100, then the interface will request a block from V1 to V100 for each scan class. This only affects interface performance, not the end result.
Multiple Copies of the InterfaceInterface performance can be improved by running multiple copies of the interface. One interface copy per PLC is recommended.
For the H1 Industrial Ethernet with SOFTNET-S7 VERSION 2.2 EXTENDED, a maximum number of 64 TSAP connections can be made per Ethernet card. This limit drops to 8 TSAP connections for the non-extended version of the same software. Each
November 1998 26
OSI Software, Inc.
interface instance is associated with 1 read TSAP and 1 write TSAP. Hence a maximum of 32 copies of the interface can be run per Ethernet card that is installed for the extended software or 4 copies of the interface per Ethernet card for the non-extended software.
For the CP1613 a limit of 10 copies of the interface and 120 TSAP connections is valid. Hence a maximum of 10 copies of the interface can be run per Ethernet card connecting to 60 PLC's.
Performance PointOne can configure performance points to monitor the amount of time in seconds that it takes an interface to complete a scan for a particular scan class. The closer the scan time is to 0 seconds, the better the performance. The scan time is recorded to millisecond resolution
Performance point configuration is the same on all operating system platforms. Performance points are configured as follows.
1. Set the extended descriptor to:PERFORMANCE_POINTor toPERFORMANCE_POINT=interface_idwhere interface_id corresponds to the identifier that is specified with the /id flag on the startup command line of the interface. The character string “PERFORMANCE_POINT” is case insenstive. The interface_id does not need to be specified if there is only one copy of an interface that is associated with a particular point source.
2. Set Location4 to correspond to the scan class whose performance is to be monitored. For example, to monitor scan class 2, set Location4 to 2. See the /f flag for a description of scan classes.
3. Set the PointSource attribute to correspond to the /ps flag on the startup command line of the interface.
Set the PointType attribute to any of the floating-point point types that are supported by the PI server
November 1998 27
OSI Software, Inc.
IO Rate TagsAn IO Rate point can be configured to receive 10-minute averages of the total number of exceptions per minute that are sent to PI by the interface. An exception is a value that has passed the exception specifications for a given PI point. Since 10-minute averages are taken, the first average is not written to PI until 10 minutes after the interface has started. One IO Rate tag can be configured for each copy of the interface that is in use.
There are two configuration steps.
Step 1 – PI Point configuration on the PI ServerFor step 1 and 2, it is assumed that the name of the PI tag is inf001.
PI 3 Server Nodes:
Create an IO Rate Tag with the following point attribute values.
Attribute Value
PointSource L
PointType float32
Compressing 0
ExcDev 0
The default settings can be used for the remaining PI Point attributes. When Compressing is set to Zero the IO Rate Tag acts like a heartbeat tag for the interface, which can be examined easily in ProcessBook with markers turned on. If a value is not written to the IO Rate Tag every 10 minutes, then there is problem with the interface communication.
PI 2 Server Nodes:
Create an IO Rate Tag using one of the existing IO Rate Tags as a template. A listing of the IO Rate Tags that are currently being monitored can be obtained with the command@PISysDat:IOMonitor.com
The IOMonitor program is discussed on page DA-71 of PI System Manual I.
Step 2 – Configuration on the Interface NodeFor step 2, it is assumed that the name of the IO Rate point on the home node is inf001.
1. Edit/Create a file called iorates.dat in the PIHOME\dat directory. The PIHOME directory is defined either by the PIPCSHARE entry or the PHOME entry in the pipc.ini file, which is located in the \WinNT directory. If both are specified, the PIPCSHARE entry takes precedence. Since the PIHOME directory is typically C: \PIPC, the full name of the iorates.dat file will typically be C:\PIPC\dat\iorates.dat.
Add a line in the iorates.dat file of the form:inf001, x
where inf001 is the name of the IO Rate Tag and x corresponds to the first instance of the /ec=x flag in the startup command file. x can be any number between 1 and 34 or between 51 and 200, inclusive. However, it is best to use an event
November 1998 28
OSI Software, Inc.
counter, x, that is not equal to 1 because 1 is the default event counter for Uniint-based interfaces. To specify additional rate counters for additional copies of the interface, create additional IO Rate tags and additional entries in the iorates.dat file. The event counter, /ec=x, should be unique for each copy of the interface.
2. Set the /ec=x flag on the startup command file of the interface to match the event counter in the iorates.dat file.
3. The interface must be stopped and restarted in order for the IO Rate tag to take effect. IORates will not be written to the tag until 10 minutes after the interface is started.
The 10-minute rate averages (in events/minute) can be monitored with a client application such as Processbook.
November 1998 29
OSI Software, Inc.
InstallationPre-installation Notes
Before installing the Interface itself, the SIEMENS Library software needs to be installed and the appropriate connections have to be configured on the PLC side:
TI505 Configure the CP MAC address.
Set up a read passive job and configure the TSAPs. Set up a write passive job and configure a new TSAP. You may re-use the PC TSAP.
S5 Configure the CP MAC address.
Configure the TSAP.
Setup a fetch passive job on the PLC with read/write enabled.
To install the interface, you must define a point source code and modify the PI startup and shutdown command files on that node. You can optionally specify one performance monitoring tag as shown in section "Performance Point".
Additional Pre-installation for a PI 2 Home NodeIn the PI2 System Point Source Editor set up the following values:Point Source Code: SPoint Source Descriptor: TI505 PLC’s / H1
Location Minimum 1 1 0 0 0
Location Maximum 10 1000 0 10 1
To disable output (WRITE) tag configuration set up the following values:Point Source Code: SPoint Source Descriptor: TI505 PLC’s / H1
Location Minimum 1 1 0 0 0
Location Maximum 10 1000 0 10 0
Installation1. Insert the installation disk, and look for the following files on the disk.SINET5.BAT Startup command fileSINET5.EXE Program executableSINET.CFG example configuration file for logical PLC channelsSINET.INI Example configuration file for InterfaceLOGASSOC.BAT A command file to be run one time so that NT associates files
ending in .txt;1, .txt;2, and so on with text files.
2. Copy these files to a directory such as c:\pipc\interfaces\sinet\. The names of the sinet5.bat and the sinet5.exe can be freely altered as long as the root name of the
November 1998 30
OSI Software, Inc.
executable and the command file is the same. For example, for the first copy of the interface, one may wish to rename the executable and command file to sinet1.exe and sinet1.bat. If the .bat file and the .exe file do not have the same root name, then the executable will not be able to find the command-line arguments when the executable is started as a service.
3. Alter the command-line arguments in the sinet5.bat file as discussed under the section called “The Startup Command File.” Pay particular attention to the /output flag. It is used to specify the directory name and file name of the output log file. The sinet.ini file and the sinet.cfg file must be in the same directory as the output log file. The interface will not be able to start if a directory is specified that does not exist.
4. Try to start the interface interactively using the startup command file. If one cannot run the interface interactively, one will not be able to run the interface as a service. Once the interface is successfully running interactively, one can try to run it as a service by following the instructions below.
Running the Interface as a Service
The procedure for installing the interface as a service depends upon whether or not Bufserv is being used. Once the interface has been installed as a service, the procedure for starting, stopping, and removing the interface as a service is the same whether or not Bufserv is used. The purpose of the Bufserv utility is to continue to collect data from an interface in the event that the PI Data Archive is shut down for some reason. For example, if the interface is installed on the PI home node and the PI Data Archive is shut down for an upgrade, the Bufserv utility on the PI home node will buffer the data in a file until the PI Data Archive is brought back online. Another possibility is that the interface is installed on an API node. If there are problems with the PI home node, then the Bufserv utility on the API node will buffer the data in a file until the PI home node is brought back online.
The procedure for installing the interface in conjunction with the Bufserv Utility assumes that the user has Bufserv 1.04 or higher because the procedure implicitly assumes that Bufserv will be installed as a service. The actual installation of the Bufserv Utility itself is not discussed. For these instructions, the user is referred to the PI-API Bufserv 1.x Release Notes. Also, the installation procedure below does not discuss the details related to shutdown events that the user should be aware of when the Bufserv Utility is used. Once again, refer to the PI-API Bufserv 1.x Release Notes for more information.
In the procedure below, it is assumed that the interface name is sinet5.exe. However, one is free to change this name, and one must have a different name for each copy of the interface that is installed as a service. The only restriction on naming is that the executable and the bat file must have the same root name.
1. One can get help for installing the interface a service at any time by typing the following:Sinet5.exe -helpNote that the –query flag that is described when help is invoked is not implemented at this time.
The interface can be installed either as a manual or an automatic service. Automatic services are started automatically when the NT operating system is rebooted. This feature is useful in the event of a power failure. To install the interface as a manual service, execute the following command.
November 1998 31
OSI Software, Inc.
Without Bufserv:Sinet5.exe -install -depend tcpipWith Bufserv:Sinet5.exe -install -depend “tcpip bufserv”
To install the interface as an automatic service, execute the following command.
Without Bufserv:Sinet5.exe -install –auto -depend tcpip
With Bufserv:Sinet5.exe -install –auto -depend “tcpip bufserv”
Check the Microsoft Windows NT services control panel to verify that the service has been successfully added. One can use the services control panel at any time to change the interface from an automatic service to a manual service or vice versa.
Once the service has been installed, the rest of the procedure is the same whether or not Bufserv has been implemented. The service can be started from the services control panel or by executing the following command from the directory:Sinet5.exe -startA message will be echoed to the screen informing the user whether or not the interface has been successfully started as a service. If the service is successfully started, the interface will attempt to read the command-line arguments from the sinet5.bat file. For this to succeed, the root name (the part of the file name before the .exe and .bat extensions) of the batch file must be the same as the root name of the executable. Also, the batch file and the executable file must be in the same directory. If the interface is unable to read the command-line arguments or if the command-line arguments that the interface reads are invalid, the service will terminate with no error messages echoed to the screen. For this reason, the user MUST check the output log file to verify that the interface is running correctly.
If the service was successfully started, the user can verify that the service is still running from the services control panel. If the service has been terminated, the reason for its termination will be given in the output log file. If the service is still running, the user can use apisnap.exe, ProcessBook, or another client program to verify that data is being successfully transferred to the PI Data Archive.
The service can be stopped at any time by issuing the following command:Sinet5.exe -stopThe service can be removed bySinet5.exe -remove
2. If and only if the interface is installed as a manual service on the PI home node, the user may wish to edit the c:\PI\adm\pisrvsitestart.bat and the c:\PI\adm\pisrvsitestop.bat command files. These command files are invoked only when the PI data archive is started and stopped as a manual service with the c:\PI\adm\pisrvstart.bat and the c:\PI\adm\pisitestop.bat command files. In the c:\PI\adm\pisrvsitestart.bat file, make sure that the second to last line ends in& wait 5000 If not, append “& wait 5000” to the end of the line. In the same file, add the following command just above “:the end”C:\PI\interfaces\sinet\sinet5.exe -start & wait 5000
November 1998 32
OSI Software, Inc.
Add the following command to the c:\PI\adm\pisrvsitestop.bat file just above “:the end”C:\PI\interfaces\sinet\sinet5.exe -stopNote that the full path name to the executable must be given in both the c:\PI\adm\pisrvsitestart.bat and the c:\PI\adm\pisrvsitestop.bat command files.
November 1998 33
OSI Software, Inc.
Updating the InterfaceTo update the interface, simply replace the current Sint5.exe executable with the new executable on the update disk.
November 1998 34
OSI Software, Inc.
The Startup Command FileThe following are the command line parameters for the interface. These are set in the sinet5.bat file.
/ps=xrequired, no default
The /ps flag specifies the point source for the interface. x can be any single character. For example,
/ps=S
All copies of the TI505 interface should have the same point source. Likewise, all PI Points for the TI505 interface should be associated with this same point source. PI points are associated with a given point source via the PointSource attribute.
/id=#required,no default
The /id flag specifies the interface copy number for the interface. # is a unique identifier between 1 and 99 for each copy of the interface that is running. For example,
/id=1
Whereas the PointSource attribute associates a PI Point with the TI505 interface in general, the Location1 attribute associates a PI Point with a given copy of the interface.
/host=host:portrequired,no default
The /host flag is ignored if the interface is running on a PINET node because PINET nodes can only connect to one PI server.
The /host flag is used to specify the PI Home node. host is the IP address of the home node or the domain name of the home node. The optional parameter port is the port number for TCP/IP communication. When the home node is a PI 3 system, the port is always 5450. When the home node is on a PI 2 system, the port is always 545.
Defaults:
If the interface is will be run on a PI 3 home node or an API node, the default port name and server name is specified in the pilogin.ini or piclient.ini file. There may not be a piclient.ini file because it is only used with older versions of the PI-API. The piclient.ini file is ignored if a pilogin.ini file is found. Refer to appendices A and B of the PI-API Application Programming Manual for more information on the piclient.ini and pilogin.ini files.
Example:The interface is running on an API node and the domain name of the PI 3 home node is marvin. The IP address of marvin is 206.79.198.30. Valid /host flags would be:/host=marvin /host=marvin:5450 /host=206.79.198.30/host=206.79.198.30:5450
November 1998 35
OSI Software, Inc.
/output=filename
Recommended,default: /output=C:\sinet5.log
The /output flag specifies the name of the output log file where error messages will be sent. filename can be a full path name or a relative path name to an output file. The interface assumes that the sinet.cfg and sinet.ini files reside in the same directory that the output log file is located.
Examples:/output=.\sinet5.log /output=sinet5.log/output=c:\pipc\interfaces\sinet5.log
In the third example above, if the c:\pipc\interfaces directory does not exist, the program will not be able to open the sinet5.log file, and the interface will abort upon startup. Likewise, if the /output flag is omitted and the computer does not have a c: drive, then the interface will not be able to create the default log file, c:\sinet5.log, and the interface will abort upon startup.
For interfaces that are run as a service, one should use an unambiguous full path name to point to the output log file.
In the above examples, if the sinet5.log file already exists in the target directory, the interface will rename the existing log file to sinet5.log;1, unless sinet5.log;1file already exists, at which point the file will be renamed to sinet5.log;2, and so on.
Since NT does not recognize file extensions of the form “.log;n”, the logassoc.bat file can be run to associate extensions from .log;1 to .log;29 with text files.
/pass or/pass=password
optional,no default
(not recommended)
The /pass flag provides an optional mechanism for logging into a PI3 server under the piadmin account. The flag has no effect if one is connecting to a PI2 server. If the /pass flag is omitted altogether, then the PI3 server will use the standard proxy account mechanism to determine the user account that the interface node is associated with. The PI proxy table is discussed in the PI3 Data Archive Manual.
Passwords can only be upper case because the interface capitalizes all command-line arguments. If an incorrect password is entered on the command line and the interface is running as a service, the standard proxy account mechanism will kick in. If an incorrect password is entered on the command line and the interface is run interactively, then the interface will prompt the user for a password again until the correct password is offered.
Once login with a password is successful, the password will be encrypted and saved in a file called sinet.pwl. The sinet.pwl file will be located in the same directory as the output file, as indicated by the /output flag. If the /pass flag is provided on the command line without a password, then the interface will attempt to read an encrypted password from the sinet.pwl file. This avoids the situation of having a password in a startup-command file that everyone can read. If the sinet.pwl file is not found or if the password in the sinet.pwl file is incorrect, the standard proxy account mechanism will kick in, whether the interface is run interactively or as a service.
November 1998 36
OSI Software, Inc.
/f=HH:MM:SS
or
/f=HH:MM:SS,hh:mm:ss
required,no default
Each instance of the /f flag on the command line defines a scan class for the interface. Each scan class is, in turn, associated with a scanning frequency.
The time between scans for a class is given in terms of hours (HH), minutes (MM), and seconds (SS). The scans can be scheduled to occur at a particular offset with respect to the hour in terms of hours (hh), minutes (mm), and seconds (ss). The first occurrence of the /f flag on the command line defines the first scan class of the interface, the second occurrence defines the second scan class, and so on. All PI Points that have location4 set to 1 will receive values at the frequency defined by the first scan class. Similarly, all points that have location4 set to 2 will receive values at the frequency specified by the second scan class, and so on.
Two scan classes are defined in the following example:/f=00:01:00,00:00:05 /f=00:00:07The first scan class has a scanning frequency of 1 minute with an offset of 5 seconds with respect to the hour. This means that if the interface is started at 12:03:06, the first scan will be at 12:03:10, the second scan will be at 12:03:15, and so on. The second scan class has a scanning frequency of 7 seconds. Since there is no offset with respect to the hour, the absolute times at which the scans are made is not defined.
The definition of a scan class does not guarantee that the associated points will be scanned at the given frequency. If the interface is under a large load, then some scans may occur late or be skipped entirely.
If a large number or scans are skipped, then the interface will print out appropriate interface statistics as a warning.
/time=timesource
optional,default: /time=SERVER
The interface uses either the local time on the API node or the remote time on the PI Server node to timestamp values. It is highly recommended to use the server time to timestamp values (/time=SERVER). To use a local time, specify, /time=LOCAL.
/write=0 Disable write data (output) into PLC (security)
0 Enable
1 Disable
2 Disable everything else than writing into DB area
/ct=timeout
default: /ct=100
The /ct flag is used in conjunction with the /persistence flag.
The /ct flag is used to set a timeout in units of 51 milliseconds. For example, /ct=100 corresponds to a timeout of 5.1 seconds.
/persistence=persistence
optional,default: /persistence=10
persistence is the number of times that a send/receive call will be retried in the event that a send/receive call times out. For example, if /ct=100 and /persistence=10, a send/receive call that consistently times out will be retried every 5.1 milliseconds, up to a maximum of 10 times.
Ideally, the combination of the /ct and /persistence flags sets the maximum time that the interface will hang on a particular send/receive call. In practice, the timeout period appears to be "much longer" than the combination of the /ct and /persistence flags should dictate.
/rr1=rate1 /rr1 is short for retry rate 1. If there is a communication
November 1998 37
OSI Software, Inc.
optional,default: /rr1=30minimum: 10maximum: 3600
problem, the interface will try to reconnect to the PLC after rate1 seconds. If the reconnect is unsuccessful, subsequent retries will be attempted every rate2 seconds, where rate2 is specified by the /rate2 flag.
/rr2=rate2
optional,default: /rr2=120minimum: 120maximum: 28800
See the /rr1 flag.
/PLCTYPE=TI505 Type of the connected PLC for the Send/Receive interface. Choose TI505 for SMATIC 505 and S5 for SIMATIC S5.
/stopstator/stopatat=digstate
Optionaldefault: see right
If the /stopstat flag is present on the startup command line, then the digital state “I/O Timeout” will be written to each PI Point when the interface is stopped.
If /stopstat=digstate is present on the command line, then the digital state, digstate, will be written to each PI Point when the interface is stopped. For a PI 3 server, digstate must be in the system digital state table. For a PI 2 server, where there is only one digital state table available, digstate must simply be somewhere in the table. The interface uses the first occurrence in the table.
If neither /stopstat nor /stopstat=digstate is specified on the command line, then no digital states will be written when the interface is shut down.
Examples:/stopstat=shutdown“/stopstat=Bad Input”
The entire parameter is enclosed within double quotes when there is a space in digstate
There is some debate as to the recommended usage of the /stopstat parameter. To many, the default digital state, "IO Timeout", implies that there is some communication problem with the interface, not that the interface has stopped. There is also a problem with /stopstat=shutdown because shutdown is written to PI Tags when the PI Server is shut down. This makes it impossible to tell whether the shutdown digital state is from the interface shutting down or from PI shutting down. Unfortunately, there is no digital state that clearly indicates that an interface has been shut down. One solution is for the user to add an appropriate digital state, such as "Inf Down", to the PI 3 system digital state table or the PI 2 digital state table. Editing the PI 2 digital state table is straightforward. Editing the PI 3 digital state table must be done using the piconfig utility. The piconfig utility is described in the PI Data Archive Manual for NT and UNIX.
/ec=x
optional,no default
The /ec flag is used to specify a counter number, x, for an IO Rate Tag.
For additional configuration information regarding IORates, see the section entitled “IO Rate Tags.”
/sio
optional
sio stands for suppress initial outputs. If the /sio flag is not specified, the interface will behave in the following manner:
When the interface is started, the interface determines the current snapshot value of each output tag. Next, the interface writes this value to each output tag, as long as the value is
November 1998 38
OSI Software, Inc.
not a digital state such as “Point Created.” In addition, whenever an individual output tag is edited while the interface is running, the interface will write the current snapshot value to the edited output tag.
This behavior is suppressed if the /sio flag is specified on the command line. That is, outputs will not be written when the interface starts or when an output tag is edited.
/deb=level
optional,default: /deb=0
The /debug flag is used to set the debug level of the interface between 0 and 9, inclusive. At a debug level of 0, no debug messages are written to the output log file. At a debug level of 9, the maximum number of debug messages is written to the output log file.
/db=level
optional,default: /db=0
Optional debug switch for printing debug messages from UNIINT, which is OSI’s universal interface. The subroutines for the TI505 interface are compiled under UNIINT, the main subroutine.
/CSV=<a><b>
optional,default: /CSV=00
controls creation of the install.csv file:
a=1: all tags are writtena=0: only in PI not configured tags are writtenb=1: check PI for configured pointsb=0: don't check PI for configured points
/CPS= Optional TCP/IP port for control program. This feature has not been implemented yet.
November 1998 39
OSI Software, Inc.
ShutdownIf the Interface is running in a command window, hit control-c. Hitting control-c will call the exit handler of the interface. Do not hit control-c twice. Wait patiently for the interface to terminate. If one hits control-c twice, the question “Terminate Batch Job (y/n)?” will appear. Terminating the batch job from this prompt prevents the interface from cleaning up its PLC connections before it exits.
If the interface is running as a service, execute the command SINET.EXE –STOP to stop the interface. Alternatively, the service can be stopped from the service control panel.
It may take a while (~30 seconds) for the interface to close the PLC connections.
November 1998 40
OSI Software, Inc.
Error and Information MessagesGeneral
Some error and informational messages are written to the pipc.log file, but most of the error and informational messages are written to the interface-specific log file that is specified with the /output command-line argument. The initial startup messages are written to the pipc.log file until the interface-specific log file is opened.
The PIPC.LOG fileInitial startup messages and a few other informational messages are written to this file. The location of the pipc.log file is determined by the PIHOME entry in the pipc.ini file. The pipc.ini file should always be located in the WinNT directory (for more information see the description of the subroutine pilg_putlog in the PI Application Programming Interface manual). For example, if the PIHOME entry is c:\PIPC, then the pipc.log file will be located in the c:\PIPC\dat directory.
Aside from the initial startup messages of the interface, a few run-time messages are written to this file. The most important of these are interface statistics pertaining to the number of scans that are on time or skipped. Examples of such a message are:
29-Aug-98 19:13:21
SINET5> Class 1,(5 sec): Scans on time: 91.7%, Scans skipped: 0.0%
29-Aug-98 19:13:21
SINET5> Class 2,(120 sec): Scans on time: 100.0%, Scans skipped: 0.0%
The Interface-specific Log FileThe /output=filename flag specifies the name of the output log file where interface-specific error messages are sent. filename can be a full path name or a relative path name to an output file. If the interface is to be run as a service, then a full path name should be specified. The interface assumes that the sinet.cfg and sinet.ini files reside in the same directory that the output log file is located. For more information on using the /output flag, see the section “The Startup Command File.”
Error messages that are associated with the Send/Receive function calls of the interface can be categorized as follows:
1. Error messages that begin with GetLastError=. These are system errors that occur before any message can actually be sent to or retrieved from the PLC. For example, if the name of the access point is misspelled in the sinet.ini file, then the interface will not be able to establish the network card of interest as an access point, and the appropriate GetLastError code will be displayed.
2. Error messages that begin with RB_RESPONSE=. Errors of this sort may occur due to configuration problems, such as specifying improper network addresses or TSAP names in the sinet.cfg file.
3. Error messages that begin with RB_RESPONSE=255. 255 is not a true RB_RESPONSE code. When this message is displayed, it means that the interface never received a response from the PLC. All other RB_RESPONSE codes indicate
November 1998 41
OSI Software, Inc.
that a message was retrieved from the PLC, but there was some communication problem. RB_RESPONSE=255 is a serious error. It should never occur.
4. Error messages that begin with BYTE8=. These are similar to an RB_RESPONSE code in that a message was retrieved from the PLC, but there was some communication problem.
Digital States that are Written to Tags when Errors OccurBAD INPUT or I/O Timeout will be written to a PI tag when an error occurs in retrieving data for the tag. If the status of a value derived from the PLC is BAD, then BAD INPUT will be written. If there are connection problems to the PLC, then I/O Timeout will be written.
November 1998 42
OSI Software, Inc.
Siemens Simatic Net (TI-505, S5) Interface Operation
For each group of tags (Location 1 parameter) an according interface process must be started (/id=Location 1).
At startup, the Interface checks all command line parameters (given in SINET5.bat). If one of them is out of range, the interface generates an error-message and stops. If the parameters are all right, the interface runs the initialization part. First step is to open a connection to the PI Server in order to be able to retrieve necessary tag information. The interface has to make a login for security reasons. We support 3 methods of logging into the PI Server.1. If the interface runs on the PI Server itself, it can be started under “/hosts=localhost” and will not need an additional password. It uses the standard proxy account on the server.2. The administrator sets up a proxy account for the interface computer and “/host=hostname” will lead to r/w rights for the interface.3. The interface attempts a logon under “piadmin” account and will ask for the password when it was started first time (no SINET01.PWD file is found). The user enters the correct password and the interface stores this password into an encrypted file on the startup directory, where it will make use of it on future startups. Whenever the password for “piadmin” changes, the user has to type in the correct password again on a new startup of the interface.
Note: It may occur that the administrator changes the “piadmin” password and does forget to restart the interface in order to type in the new password. In this case the interface will not be able to connect to the PI Server when an automatic restart of the interface occurred (e.g. reboot of the interface computer caused by a power failure). If you want to avoid such a situation, use method 2, proxy account.
After successful connection to the PI Server, the interface opens a connection to the related SIEMENS library. If the library is not present, the interface will stop with an error message. Once connection is made a list of all the tags with the interface point source and configured for this special interface number is collected.
Data Acquisition
Input
After successful startup, the interface generates a list of PI tags assigned to this interface. Whenever the first tag for a new PLC channel (TSAP) is found, the interface tries to open the channel. The interface is configured to transfer up to 480 bytes in one block. This guarantees the best performance although the maximum number of bytes can be 4096. Therefore the interface group all tags together which are defined for the same PLC memory area. A DB range for example can have the following blocks: 0-479, 480-959, etc.
The final user can help to optimize the performance of the interface in grouping tags for the same memory block to the same scan class. In the above example all possible 240 Tags for the range 0-480 would generate one READ every cycle period.
November 1998 43
OSI Software, Inc.
Inputs are scan based and different scan classes can be defined. The smallest scan period is 1 second. But this scan period can only be achieved, if all connected PLCs are in normal operation. If there are channels not working properly the interface has to go through time-out situations, where a wait of 5 seconds is minimum.
Inputs can also be event based. Any PI tag can solve as trigger tag. Whenever this tag changes value, the interface tag will perform a block read. Collect Call mechanism for event triggered input is not recommended!
The source of the point will be distinguished in evaluating the symbolic address written in the Instrument Tagname field of a point. The interface will calculate the physical address of the value out of the symbolic address and request the according memory block from the PLC.For PCS Systems there are two options. If you have used the option to configure tags via symbolic address (see chapter “Tag configuration for PCS Systems”), then the interface treats the tags in the same way as if the system would be plain TI505 PLCs. If the tags are configured to contain the PCS Tagname in the Instrument Tagname field, then the interface looks in the copy of the engineering file (install.tag) to figure out the physical address. This of course requires that the engineering file install.tag be copied to the interface startup directory first.
A connection break to a single communication channel will mark all concerned tags for I/O Timeout but the interface will carry on reading blocks depending on the /rr1 switch in the startup line of the interface. The /rr2 switch defines the periods where the interface tries to close and reopen the channel.
If an error marked value is transferred by the interface, this value will be marked as BAD INPUT in the PI System.
Output
Output of data to the PLCs is internally handled by exception and downloaded whenever an input scan cycle (of whatever scanclass) is performed. If it is necessary to update values with 5-second accuracy, define a Scan-Class of at least 5 seconds (and at least 1 Input tag in that Scan Class). This does not mean that a write block is downloaded every 5 seconds. It means that if the value changes in PI, it gets downloaded within the next 5 seconds.
The mechanism of using the source point field makes it possible that another tag which could be an input tag of any (and even the same) interface, can be the data source of an Output Tag.
November 1998 44
OSI Software, Inc.
Hints for the System ManagerTransceivers on the H1 bus must have SQE switch enabled.
For CP1413: configure the PC with COML1413. Node name, application name and server ID is free. Connection is active, static.
For CP1413: Enable the TF in “setting the PG-PC interface” if the PLC has a TF connection configured for the PC.
For TI505 Series PLC
Configure the 505 with COM1434. You need to configure a peer service for read (if you want to read data from the PLC) and a peer service for write (if you want to write data to the PLC). A configuration example for fully specified communication is given below.
Make sure both configurations (PC and PLC) are identical for TSAPs and Ethernet (MAC) addresses:
November 1998 45
OSI Software, Inc.
A read-passive job must be configured on the PLC in order to read data.A write-passive job must be configured on the PLC in order to write data.
If an incorrect Ethernet address or TSAP address is configured for the remote node (the interface node in this case), the PLC will reject communication with an error of RB_RESPONSE=22. For this reason, a very good option is to use fully unspecified communication. To use unspecified communication, enter all zeros for the remote Ethernet address and all zeros for the remote TSAP. With fully unspecified communication, the interface can connect to the PLC from any node. Partially unspecified communication is when all zeros are entered for either the remote Ethernet address or the remote TSAP address, but not for both.
Unfortunately, it is also possible to get an RB_RESPONSE=22 if the if the control panel configuration under "Setting the PG/PC Interface" is not set correctly. When one brings up the control panel, one should make sure that the correct ethernet card and access point is highlighted at the time that the control panel is opened (before one types or clicks on anything). If not, the control panel configuration may be the problem. The access point in the control panel must match the access point in the sinet.ini file.
November 1998 46
OSI Software, Inc.
The Interface was tested under the following Test Environment:
HOST PC SIEMENS PLC
MS WindowsNT 4.0 SP3
MS Visual C++ V5.0 SP3 enterprise edition
PI 3.2 Build 329
SIEMENS CP1413
SIEMENS TF-1413 V4.01
SIEMENS SIMATIC 505 CPU 555
505-CP1434TF
MS WindowsNT 4.0 SP3
MS Visual C++ V5.0 SP3 enterprise edition
PI 3.2 Build 329
3Com EtherLink III (3C589) PCMCIA adapter
SOFTNET-S7 V2.2
SIEMENS SIMATIC 505SIMATIC TI55CPU
SINEC H1 Communication Processor505-CP-1434TF
MS WindowsNT 4.0 SP4
MS Visual C++ 6.0 enterprise edition
PI3.2SR1 build 357.11
DEC PCI Ethernet DECchip 21041
SOFTNWR-S7 V3.0
SIEMENS SIMATIC S5 155U CPU9486ES5948-3UA11
SIEMENS SIMATIC S5 135U CPU928B6ES5928-3UB21
SINEC H1 Communication Processor CP1436GK1143-0AA01
November 1998 47
OSI Software, Inc.
Native TCP/IP, RFC1006 TCP/IP, and H1H1 refers to the ISO industrial ethernet. RFC1006 TCP/IP refers to the packaging of ISO industrial ethernet packets within TCP/IP packets, whereas native TCP/IP implies that this packaging does not need to be done.
The Siemens Simatic Net interface to the PI System has been tested only on an H1 industrial ethernet. Theoretically, the interface can also communicate across a TCP/IP network via the RFC1006 packaging method, but the interface has not been tested in this environment. Note that the interface has no idea whether it is communicating via H1 or RFC1006 TCP/IP. The Siemens libraries handle the assembling of H1 packets and RFC1006 TCP/IP packets.
However, as described below, there are other limitations depending upon the type of PLC that the interface will be communicating to.
TI505 PLCs
The interface can communicate to TI505 PLCs only across an ISO industrial ethernet (H1). Although TI505 PLCs can communicate via RFC1006 TCP/IP with the use of a CP2572 ethernet adapter, the TI505 PLCs cannot understand the read/write messages that are sent by interface.
S5 and S7 PLCs
The interface can communicate to S5 and S7 PLCs across an ISO industrial ethernet. Theoretically, the interface can also communicate to S5 and S7 PLCs across a TCP/IP ethernet by means of RFC1006 TCP/IP. However, the interface has not been tested with TCP/IP.
November 1998 48
OSI Software, Inc.
Troubleshooting RB_RESPONSE=16 with CP1413 Card The symptoms at this time were:
1. After rebooting the S5 some number of times the cp1413 would start communication with the interface again. It didn't matter if the reboot was a cold, worm, or just a reset of the Ethernet card. What mattered was the time it took.
2. If the communication was established I could stop the interface for a few seconds and then restart it and communication would resume. If I stopped the interface for a few minutes the communication would not resume.
3. In the sinet.log file after the message RB_RESPONSE=16 there were a series of messages: Wed May 16 13:24:50 2001 DB[1]: connection opened, VCID: 849Wed May 16 13:26:55 2001 DB[1]: connection opened, VCID: 1105Wed May 16 13:29:00 2001 DB[1]: connection opened, VCID: 1361Wed May 16 13:31:05 2001 DB[1]: connection opened, VCID: 1617Wed May 16 13:33:10 2001 DB[1]: connection opened, VCID: 1873Wed May 16 13:35:15 2001 DB[1]: connection opened, VCID: 2129
This is the interface trying to reconnect though the cp the problem is cp1413 is still holding the old connection open.
Ray explained there were several ways to clear the old cp connection.
1. Disconnect the Ethernet cable for about 5 minutes. The cp goes through about 10 retries to reconnect at 30 seconds intervals then drops the connection.
2. Power down the PLC for 5 minutes.
3. Stop the interface. Then in control panel, setting the PC/PG interface, Properties, mode reset the cp1413 card. Then restart the interface.
I have tested option 3 and it worked every time.
With NT you have to reboot any time you do anything. I’m surprised this has not been a problem at other plants. The Intellution software here is using the same cp card and works fine. Maybe they force a reset on the card before the start of their interface.
Monitoring the Connection from the PLC SideIt is helpful to determine the status of the connection from the PLC side. For S5 PLCs this can be done using the COM143 or the COM1430 programs. The COM1430 program is a newer version then COM143. The test function of the COM143 or the COM1430 programs can be used to determine the status of the PLC connection.
November 1998 49
OSI Software, Inc.
SR TraceMessages from the interface can be monitored by turning on SR Trace. The trace is turned on from the control panel under Setting the PG/PC interface. While collecting a trace, the only 1 tag should be loaded for the interface and the interface should be run for a short period of time to keep the trace small. Otherwise, very large trace files will be generated.
November 1998 50
OSI Software, Inc.
Appendix ASupported Data Types for Simatic TI505 PLCs
Memory Type
TF Encoding Description
V Integer16 Variable Memory
V. Floating Point(see right)
Variable Memory (same as VF)
V. memory can be use to read either 32-bit floating points or 32-bit integers from a PLC.
Typically, the TF encoding for V. is a 32-bit floating point number. However, variables other than floating points can be stored in variable memory. For example, one could use V memory to hold an integer32. The interface assumes that a 32-bit floating-point number is stored in the variable memory if the corresponding PI tag is of type floating point. The interface assumes that a 32-bit integer is stored in the variable memory if the corresponding PI tag is of type integer or digital.
K Integer16 Constant
X Boolean Discrete Input
X/Y Boolean Discrete Input
Y Boolean Discrete Output
C Boolean Control Register
WX Integer16 Word Input
WY Integer16 Word Output
TCP Unsigned16 Timer/Counter Preset
TCC Unsigned16 Timer/Counter Current
DSP Unsigned16 Drum Step Preset
DSC Unsigned16 Drum Step Current
STW Unsigned16 System Status Words
DCC Unsigned32 Drum Current Count
VF Floating Point(see right)
Variable Memory (See descriptor of V. above)
KF Floating Point Constant Memory
LS Unsigned16 Loop Status
LM Unsigned16 Loop Mode
LKC Floating Point Loop Gain
LTI Floating Point Loop Reset Time (minutes)
LTD Floating Point Loop Rate Time (minutes)
LHA Floating Point Loop High Alarm Limit
November 1998 51
OSI Software, Inc.
Memory Type
TF Encoding Description
LLA Floating Point Loop Low Alarm Limit
LPV Floating Point Loop Process Variable
LPVH Floating Point Loop PV High Limit
LPVL Floating Point Loop PV Low Limit
LODA Floating Point Loop Orange Deviation Alarm Limit
LYDA Floating Point Loop Yellow Deviation Alarm Limit
LTS Floating Point Loop Sample Rate (seconds)
LSP Floating Point Loop Setpoint
LMN Floating Point Loop Output (percent)
LVF Unsigned16 Loop V-flags
LERR Floating Point Loop Error
LMX Floating Point Loop Bias
LHHA Floating Point Loop High-High Alarm Limit
LLLA Floating Point Loop Low-Low Alarm Limit
LRCA Floating Point Loop Rate-of-Change Alarm Limit
LSPH Floating Point Loop Setpoint High Limit
LSPL Floating Point Loop Setpoint Low Limit
LADB Floating Point Loop Alarm Deadband
LKD Floating Point Loop Derivative Gain Limiting Coefficient
LRSN Unsigned16 Loop Ramp/Soak Step Number
LACK Unsigned16 Loop Alarm Acknowledge Flags
AHA Floating Point High Alarm Limit
ALA Floating Point Low Alarm Limit
APV Floating Point Process Variable
APVH Floating Point PV High Limit
APVL Floating Point PV Low Limit
AODA Floating Point Orange Deviation Alarm Limit
AYDA Floating Point Yellow Deviation Alarm Limit
ATS Floating Point Sample Rate in Seconds
ASP Floating Point Alarm Setpoint
AVF Unsigned16 Alarm V-flags
ACF Unsigned32 Alarm C-flags
AERR Floating Point Alarm Error
AHHA Floating Point High-High Alarm Limit
ALLA Floating Point Low-Low Alarm Limit
ARCA Floating Point Rate-of-Change Alarm Limit
ASPH Floating Point Setpoint High Limit
November 1998 52
OSI Software, Inc.
Memory Type
TF Encoding Description
ASPL Floating Point Setpoint Low Limit
AADB Floating Point Alarm Deadband
GZ Integer16 Global Variables
GY Integer16 Global Variables
GX Integer16 Global Variables
GW Integer16 Global Variables
GV Integer16 Global Variables
GU Integer16 Global Variables
GT Integer16 Global Variables
GS Integer16 Global Variables
GR Integer16 Global Variables
GQ Integer16 Global Variables
GP Integer16 Global Variables
GO Integer16 Global Variables
GN Integer16 Global Variables
GM Integer16 Global Variables
GL Integer16 Global Variables
GK Integer16 Global Variables
GJ Integer16 Global Variables
GI Integer16 Global Variables
GH Integer16 Global Variables
GG Integer16 Global Variables
GF Integer16 Global Variables
GE Integer16 Global Variables
GD Integer16 Global Variables
GC Integer16 Global Variables
GB Integer16 Global Variables
GA Integer16 Global Variables
G Integer16 Global Variables
November 1998 53
OSI Software, Inc.
Appendix BOutput Tag Configuration Examples
Individual WritesSay one wishes to write the value 10 to V memory location 31 in logical PLC 1 for interface 1. One needs to define an output tag and a trigger tag (SourceTag as shown in the tables below.
To write a value of 10 to the PLC, a value of 10 must be written to the SourceTag. In this example, the SourceTag happens to be a “laboratory” tag, which simply means that the PointSource is L for the SourceTag. For the beginner, it may not be obvious how to write a value to a laboratory point. The PI-API is one option (the PI-API is OSI’s application programming interface). The SourceTag could have easily have been a calculation tag (PointSource C) or a Tag for the Siemen’s Simatic net interface itself (Pointsource S). Hence, one should not be overly concerned with writing values to laboratory points at this juncture. The important thing to note is that whenever a new value is written to the SourceTag, this value is also written to the PLC.
Output tag configuration
Attribute Value Description
Tag Test1.tag The name of the tag
PointType Float32 See the description of the PointType attribute.
Extended Descriptor
<blank> See the description of the Extended Descriptor attribute.
PointSource S A PointSource of S identifies this point as a Point for the Siemen’s Simatic Net Interface to the PI System.
InstrumentTag V31 Write to memory location V31
Location1 1 The interface number
Location2 1 The logical PLC number
Location3 0 Location3 should be zero for individual writes.
Location4 0 The value of location4 has no effect on output tags. Any value can be used.
Location5 1 A tag is an output tag if Location5 is 1.
SourceTag Test1.src Test1.src is the trigger tag for the write.
SquareRoot 0 Do not perform a conversion on the output.
SourceTag configuration
November 1998 54
OSI Software, Inc.
Attribute Value Description
Tag Test1.src The name of the trigger tag
PointType Float32 See the description of the PointType attribute.
PointSource L Any PI Point can serve as the trigger tag. A “laboratory” point (PointSource L) was chosen for this example. One could just have easily chosen a calculation point (PointSource C) or a point from the Siemen’s Simatic Net Interface itself (PointSource S). The advantage of using a calculation point is that the PE Scheduler can be used to periodically write a value to the trigger tag.
Block Write ExampleSay one wishes to write the values 11, 12, 13, and 14 to V11, V12, V13, and V14 respectively. The logical PLC number is 1 and the interface number is 1. One needs to define 4 output tags, one master tag, and one trigger tag as shown in the tables below. Next one would write a value of 11 to output tag 1, 12 to output tag 2, 13 to output tag 3, and 14 to output tag 4. These values are sent to the PLC when a new value is sent to the SourceTag that is associated with the output master tag.
Configuration for Output Tag 1
Attribute Value Description
Tag Output1.tag The name of the tag
PointType Float32 See the description of the PointType attribute.
Extended Descriptor
<blank> See the description of the Extended Descriptor attribute.
PointSource S A PointSource of S identifies this point as a Point for the Siemen’s Simatic Net Interface to the PI System.
InstrumentTag V11 Write to memory location V11
Location1 1 The interface number
Location2 1 The logical PLC number
Location3 1 This tag is a member of output block 1.
Location4 0 The value of location4 has no effect on output tags. Any value can be used.
Location5 1 A tag is an output tag if Location5 is 1.
SourceTag <blank> The SourceTag is only meaningful for the output master tag.
SquareRoot 0 The SquareRoot attribute is only meaningful for
November 1998 55
OSI Software, Inc.
the output master tag.
Configuration for Output Tag 2
Same configuration as Output Tag 1, except for the following attributes
Attribute Value Description
Tag Output2.tag The name of the tag
InstrumentTag V12 Write to memory location V12
Configuration for Output Tag 3
Same configuration as Output Tag 1, except for the following attributes
Attribute Value Description
Tag Output3.tag The name of the tag
InstrumentTag V13 Write to memory location V13
Configuration for Output Tag 4
Same configuration as Output Tag 1, except for the following attributes
Attribute Value Description
Tag Output4.tag The name of the tag
InstrumentTag V14 Write to memory location V14
Configuration for Output Mater Tag
Attribute Value Description
Tag Master1.tag The name of the tag
PointType Float32 See the description of the PointType attribute.
Extended Descriptor
OUTPUT_MASTER See the description of the Extended Descriptor attribute.
PointSource S A PointSource of S identifies this point as a Point for the Siemen’s Simatic Net Interface to the PI System.
InstrumentTag V The InstrumentTag field is set to the Memory Type that is to be read. In this case, V memory is being read.
Location1 1 The interface number
Location2 1 The logical PLC number
Location3 1 This tag is a member of output block 1.November 1998 56
OSI Software, Inc.
Location4 0 The value of location4 has no effect on output tags. Any value can be used.
Location5 1 A tag is an output tag if Location5 is 1.
SourceTag Source1.tag The SourceTag is only meaningful for the output master tag.
SourceTag configuration
Attribute Value Description
Tag Source1.tag The name of the trigger tag
PointType Float32 See the description of the PointType attribute.
PointSource L Any PI Point can serve as the trigger tag. A “laboratory” point (PointSource L) was chosen for this example. One could just have easily chosen a calculation point (PointSource C) or a point from the Siemen’s Simatic Net Interface itself (PointSource S). The advantage of using a calculation point is that the PE Scheduler can be used to periodically write a value to the trigger tag.
November 1998 57
OSI Software, Inc.
Appendix CTracing Send Receive Messages
It is possible to trace the send receive messages that the interface uses. This may be useful for debugging purposes, but it is not desirable to have tracing on during normal interface operation because tracing will have a detrimental effect on performance. The following screen shots demonstrate how tracing can be turned off or on for the interface.
Select Setting the PG/PC Interface from Control Panel
Select Diagnostics
November 1998 58
OSI Software, Inc.
The following message is displayed. Select OK.
Select the SR Protocol Diagnostics tab
November 1998 59
OSI Software, Inc.
Make sure that the Activate SR Trace option is unchecked
November 1998 60
OSI Software, Inc.
November 1998 61
OSI Software, Inc.
Appendix DThe ISO/OSI Reference ModelThe seven layers of the ISO/OSI reference model are:
Layer Name Function
7 Application layer Application functions
6 Presentation layer Data representation
5 Session layer Synchronization of communications (opening, end)
4 Transport layer Connection setup and clearance, acknowledgements, segmentation.
3 Network layer Addressing of other networks/network connections.
2 Data link layer Access methods, error-protected transmission.
1 Physical layer Physical conditions of transmission rights.
November 1998 62
OSI Software, Inc.
Appendix ESetting up a second ethernet card
In order to install a second ethernet card for PLC/DCS access, open control panels, then the Network control panel.
November 1998 63
OSI Software, Inc.
First pane from Network control panel
Select the Adapters tab. The result is below. (a step seems to be missing)
November 1998 64
OSI Software, Inc.
Scroll down to the type of hardware installed.=
We usually put the distribution files in the i386 folder on one of the local disks.
Select OK to continue.
November 1998 65
OSI Software, Inc.
Select Test.
Test in progress...
November 1998 66
OSI Software, Inc.
Successfully completed test. Select OK.
Go to the Bindings tab.
November 1998 67
OSI Software, Inc.
November 1998 68
OSI Software, Inc.
Select "all adapters" under the Show Bindings for box.
Disable TCP/IP, etc. on the new card if used for Siemens PLC access.
November 1998 69
OSI Software, Inc.
November 1998 70
OSI Software, Inc.
Disable WINS Client TCP/IP also.
November 1998 71
OSI Software, Inc.
November 1998 72
OSI Software, Inc.
Select Close. The following messages appear.
Select Yes and let the machine reboot.
November 1998 73
OSI Software, Inc.
Once placed in the CD drive, the Simatic Net Software Autorun will display this screen.
Select "Install Software SIMATIC NET"
Select Next
November 1998 74
OSI Software, Inc.
November 1998 75
OSI Software, Inc.
November 1998 76
OSI Software, Inc.
November 1998 77
OSI Software, Inc.
Select "IE SOFTNET-S7 EXT" or "IE SOFTNET-S7 BASIC" as appropriate to the license purchased.
November 1998 78
OSI Software, Inc.
November 1998 79
OSI Software, Inc.
It is best to just select Done, and restart Windows manually.
November 1998 80
OSI Software, Inc.
Open control panels, then the "Setting the PPPG/PC Interface" control panel.
November 1998 81
OSI Software, Inc.
Select "Install"
Select "ISO Ind. Ethernet" under Selection then select "Install"
November 1998 82
OSI Software, Inc.
Select "Add"
Select "SIEMENS Industrial Ethernet (ISO)", then OK.
November 1998 83
OSI Software, Inc.
We usually put the distribution files in the i386 folder on one of the local disks.
Once it is done, you will be back in the Network control panel. Select "Bindings".
November 1998 84
OSI Software, Inc.
Select "all adapters" under the Show Bindings for box.
If you are running multiple ethernet cards, select the card(s) that will NOT be used for Siemens PLC access and expand the view (+). Select "SIEMENS Industrial Ethernet (ISO)", then "Disable"
November 1998 85
OSI Software, Inc.
November 1998 86
OSI Software, Inc.
Once disabled on the ethernet adapter not connected to the PLC network, select close.
Windows will want to reboot. Select Yes.
After the reboot, open control panels, then the "Setting the PPPG/PC Interface" control panel.
November 1998 87
OSI Software, Inc.
November 1998 88
OSI Software, Inc.
Select "ISO Ind. Ethernet..." in the Module Parameter Set Used box.
November 1998 89
OSI Software, Inc.
November 1998 90
OSI Software, Inc.
Select (highlight in blue) S7ONLINE in the Access Point of Application box. Next, select Diagnostics.
Select Test under the "SOFTNET IE" tab.
November 1998 91
OSI Software, Inc.
November 1998 92
OSI Software, Inc.
Result from a successful installation.
November 1998 93
OSI Software, Inc.
Revision HistoryDate Author Comments
98 BB initial draft
29-Jul-99 AS changes for S5
21-Oct-99 GWM Changes for release of 1.3.5
27-Dec-99 GWM Connection should be active, static for 1434 card.
19-Apr-00 AS RBYTE, LBYTE and MASK for S5. CP 1613
November 1998 94