IEC 61131User Manual CONTROL MICROSYSTEMS SCADA products...
IEC61131 Reference and User Manual Copyright 2007 Control Microsystems Inc. All rights reserved. Printed in Canada. Trademarks TelePACE, SCADASense, SCADAServer, SCADALog, RealFLO, TeleSAFE, SCADAPack, TeleBUS, SCADAWave and ClearSCADA are registered trademarks of Control Microsystems. All other product names are copyright and registered trademarks or trade names of their respective owners.
Table of Contents Table of Contents ................................................................................................................. i Index of Figures .................................................................................................................. v Overview ............................................................................................................................. 1 Supported Languages .....................................................................
I/O Boards .................................................................................................................. 142 I/O Equipment ............................................................................................................ 184 Custom Function Reference ........................................................................................... 226 clearsf ........................................................................................................................
protinfo ....................................................................................................................... 331 rxstring ....................................................................................................................... 333 setclock ...................................................................................................................... 334 setcom ...........................................................................................................
DNP3 USER AND REFERENCE MANUAL ........................................................................ 445 DNP3 Protocol Overview ................................................................................................ 445 DNP Architecture ....................................................................................................... 445 Modbus Database Mapping ....................................................................................... 453 SCADAPack DNP Operation Modes .........
Slave Mode ..................................................................................................................... 594 Broadcast Messages ................................................................................................. 594 Function Codes .......................................................................................................... 594 Master Mode ...................................................................................................................
Figure 25: Figure 26: Figure 27: Figure 28: Figure 29: Figure 30: Figure 31: Figure 32: Figure 33: Figure 34: Figure 35: Figure 36: Figure 37: Figure 38: Figure 39: Figure 40: Figure 41: Figure 42: Figure 43: Figure 44: Modbus RTU Configuration (Information) Dialog Box ...................................................... 73 Modbus RTU in TCP Configuration (General) Dialog Box ............................................... 74 Modbus RTU in TCP Configuration (Advanced) Dialog Box .........................
Overview Control Microsystems IEC 61131-3 implementation enables the programming of SCADAPack controllers using the IEC 61131-3 programming languages. The programming environment uses the ISaGRAF Workbench to create, load and debug IEC 61131-3 application programs. Supported Languages ISaGRAF Workbench supports the five standard IEC 61131-3 programming languages and a sixth language called Flow Chart. These languages may be mixed and matched within an application to provide an optimum control strategy.
modems, HART Interface modules, Store and Forward messaging, PID controllers and Modbus master and slave protocols. Custom functions are integrated into the ISaGRAF Workbench application programming environment. Custom I/O Connections All 5000 Series I/O modules and SCADAPack I/O modules are fully supported by the enhanced ISaGRAF Workbench. The ISaGRAF Workbench I/O connection dialog is used to add selected modules to the I/O connection list.
Custom Function Reference section describes custom functions and function blocks used with SCADAPack controllers. Control Microsystems Technical Support Telephone, facsimile and e-mail support is available from 8:00 to 18:30 (North American Eastern Time Zone) at the following numbers. When calling, please ask for a Technical Support Representative. Direct Worldwide: (613) 591-3878 Toll Free within North America: 1 (888) 267-2232 E-Mail: support@controlmicrosystems.
IEC 61131-3 Installation System Requirements The ISaGRAF Workbench requires the following minimum system configuration. Microsoft Windows NT4, Windows 2000 or Windows XP PRO operating systems. NOTE: Windows 95, 98 and ME operating systems are no longer supported. Pentium 133MHz or better. Minimum 32 MB of RAM, 64MB recommended. Mouse or compatible pointing device. Hard disk with approximately 35 Mbytes of free disk space.
From the Windows start menu select Run. Enter d:\Firmware Loader\setup (where d is your CD-ROM drive) and click OK. Follow the on-screen instructions. Demo Mode When first installed ISaGRAF will run in the Demo Mode until a permanent license is installed. The Demo version will run for a maximum of 30 days. The following message is displayed when Projects is selected from the ISaGRAF 3.5 program group.
ISaGRAF 3.5 Licensing The ISaGRAF Workbench 3.5 provides two types of licenses, a software license and a hardware license. If you are using a Hardware License see the section Install Sentinel Driver and Key. The ISaGRAF License Manager is used to enable the I/O variable capacity used in projects and to enable the features not supported in the Demo Mode. The following sections of this user manual describe the ISaGRAF License Manager.
The Add Licensing tab displays the dialog necessary to add a permanent ISaGRAF license. In the Configuration area of the dialog the Available Components section displays the licensing formats available. From the Available Components window click on ISaGRAF 3 Software License and then click the Add button to move the selection to the Selected Components window. The following dialog is displayed. Select the number of IO variables shown on the ISaGRAF CD jewel case and select the OK button.
Click the Proceed button. New user codes are created and a prompt to call or email CMI is displayed. Click the Yes button to automatically generate an License Request email as shown below.
Enter the fields displayed and send the email. If you wish you can phone Customer Support at 888-267-2232 for telephone support of the licensing installation. You will receive a return email containing the registration keys needed to activate your license. There are two sets of four registration keys that need to be entered in the License Manager. Enter the first four registration keys in the appropriate entry windows of the Registration section of the dialog.
Click the Register button and enter the second set of registration keys. The following dialog is displayed to prompt you to enter the second set of registration keys. When the second set of registration keys are entered click the Register button. The following dialog is then displayed to indicate the license has been enabled.
Click the OK button to close the Registration Manager. Transferring ISaGRAF License To transfer a license from one PC to another PC select the tab Transfer Licensing on the License Manger dialog. ISaGRAF must be installed on both the source and the target PC‟s. The License Manager must be opened on both the target and the source PC‟s. To open the License Manager: From the Windows Start menu select Programs then select the ISaGRAF 3.5 program group and then select Licensing.
Removing ISaGRAF License The following procedure describes how to permanently remove your ISaGRAF 3.5 license. All licensing functions are done using the ISaGRAF License Manager. To open the License Manager: From the Windows Start menu select Programs then select the ISaGRAF 3.5 program group and then select Licensing. The License Manager dialog will be displayed as shown below.
The Remove Licensing tab displays the dialog necessary to remove an ISaGRAF license. In the Configuration area of the dialog the Licensed Components section displays the licenses available. From the Available Components window click on ISaGRAF 3 Software License (Active)– WDL and then click the Add button to move the selection to the Selected Components window. Click the Proceed button and the following dialog is displayed.
Click the Yes button to automatically generate an email as shown below. Enter the fields displayed and send the email. If you wish you can phone Customer Support at 888-267-2232 for telephone support of the licensing installation. You will receive a return email containing the registration keys needed to remove your license. There are four registration keys that need to be entered in the License Manager.
Click the Register button and the following dialog is displayed indicating the license has been removed.
Install Sentinel Driver and Key Note: ISaGRAF 3.5 does not support hardware Keys used with ISaGRAF 3.32. A replacement Hardware Key or Software License must be obtained. If you are using a hardware key for your license you will need to connect the hardware key to any parallel port on your PC, or a USB port if you have a USB key, and install the Sentinel driver for the key. The following procedure describes the steps required to install the hardware key and Sentinel driver.
Upgrading your ISaGRAF License This section of the manual covers software and hardware license upgrades. Upgrades include: Increasing the IO Count Upgrading from a hardware to software key Upgrading the license from one version to another, e.g. 3.32 to 3.5 To perform a remote hardware license upgrade, ISaGRAF License Manager 3.5Revb is required. Note that this version of the License Manager is more current than the one installed with ISaGRAF 3.54.
Note: Hardware Keys used with ISaGRAF 3.32 are not supported by ISaGRAF 3.5. A replacement Hardware Key or Software License must be obtained. 4. Existing projects and any restored projects must be recompiled completely: Open the project and select Touch from the Make menu on the Programs dialog. This will select a full make the next time Make application is selected. Select Make application from the Make menu. Un-installing ISaGRAF 3.32 This choice requires that all projects be archived first.
1. Open the project and select Touch from the Make menu on the Programs dialog. This will select a full make the next time Make application is selected. 2. Select Make application from the Make menu. 3. If there are no make errors, the restored project may now be downloaded to the controller.
Project Development Overview This section of the manual is intended as a starting point in the development of an ISaGRAF application. Each of the steps listed below is fully described in the following sections. It is intended that this manual and the ISaGRAF User‟s Guide be used together to provide the information needed to create, load and run an application. 1. IEC 61131-3 Installation 2. Initialize the target controller. 3. Create an ISaGRAF project. 4. Declare variables. 5. Select I/O hardware. 6.
Install ISaGRAF Extensions The ISaGRAF Extensions provide a driver to communicate with Control Microsystems controllers and a set of functions that are specific to the controllers. The following procedure installs the ISaGRAF Extensions. Insert the ISaGRAF CD in your CD-ROM drive. From the Windows start menu select Run. Enter d:\ISaGRAF Extensions\setup (where d is your CD-ROM drive) and click OK. Follow the on-screen instructions.
Cold Boot Procedure A cold boot is performed after installing new controller firmware. When the SCADAPack controller starts in the cold boot mode: The default serial communication parameters are used. The ISaGRAF application program is erased. The C program is erased. The controller is unlocked. A cold boot is performed using the following procedure: 1. 2. 3. 4. Remove power from the SCADAPack controller. Hold down the LED POWER button. Apply power to the controller.
Modbus Registers Modbus registers are called network addresses in the Dictionary; see section A 10.2 setting network addresses in the User‟s Guide. All analog variables declared in the Dictionary are 32-bit format. This means two Modbus registers will be automatically assigned to an analog variable within the controller. Refer to the section Modbus Addressing in this manual for further information on using Modbus registers.
Custom Function Reference section of this manual. Configure PC to Controller Link A communication link is used to connect the ISaGRAF debugger and the target SCADAPack controller. The ISaGRAF debugger controls the downloading of applications to the target controller and the starting and stopping of applications in the target controller. Refer to the PC to Controller Link section of this manual for complete information.
5. Click on the Select button to select the target and then click the OK button to close the dialog. 6. Select Make application from the Make menu in the Programs window. 7. The Code Generator window opens and a listing of the compiler output messages are displayed as the application is made. 8. If there are any errors, shown in red text, the application is not made. The indicated errors must be corrected before the application will be made.
PC to Controller Link A communication link is used to connect the ISaGRAF debugger and the target SCADAPack controller. The ISaGRAF debugger controls the downloading of applications to the target controller, monitoring the applications running in the target controller and the starting and stopping of applications in the target controller. Configuring PC-PLC Link Parameters The ISaGRAF PC-PLC Link parameters define how the communication link between the PC and the target controller functions.
Configuring PC Communication Settings The PC Communication Settings command defines the communication protocol and communication link used for communication between the PC and a SCADAPack or SCADASense controller. When the command is select the Communication Protocols Configuration dialog is displayed as shown below. Figure 1: Communication Protocols Configuration dialog.
ClearSCADA The ClearSCADA protocol driver is used for communicating with a local or remote ClearSCADA server. The ClearSCADA server will then, in turn, communicate with devices as per its configuration. The ClearSCADA protocol driver communicates with the ClearSCADA server using a TCP connection. To configure a ClearSCADA protocol connection, highlight ClearSCADA in the Communication Protocols window and click the Configure button. The ClearSCADA Configuration window is displayed.
0.0.0.0 through 0.255.255.255 127.0.0.0 through 127.255.255.255 (except 127.0.0.1) 224.0.0.0 through 224.255.255.255 255.0.0.0 through 255.255.255.255. The TCP Port Number entry specifies the TCP port on the ClearSCADA server. The valid range is 0 to 65535. The default value is 49155 Click Restore Defaults to restore default values to all fields on this page, except for the IP Address / Name field. The contents of this field will remain unchanged.
Information Information displays detailed driver information. When the Information tab heading is clicked the Information dialog is opened as shown below. Figure 4: ClearSCADA Configuration (Information) Dialog Box The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC).
DNP The DNP protocol driver is used to communicate over a serial DNP network to SCADAPack controllers configured for DNP communication. To configure a DNP protocol connection, highlight DNP in the Communication Protocols window and click the Configure button. The DNP Configuration window is displayed. To select a configured DNP protocol connection, highlight DNP in the Communication Protocols window and click the OK button. To close the dialog, without making a selection click the Cancel button.
The RTU Station parameter sets the target DNP station number. Valid entries are 0 to 65519. The default address is 1. The Timeout parameter sets the length of time, in seconds, to wait for a response from the controller before retrying (see Attempts), or ultimately failing. Valid entries are 1 to 255. The default is 3. The Attempts parameter sets number of times to send a command to the controller before giving up and reporting this failure to the host application. Valid entries are 1 to 20.
Figure 6: DNP Configuration (Flow Control) Dialog Box The RTS/CTS Flow Control grouping contains two mutually exclusive options, Use Hardware Control Lines and Use CTS Delay Time. These options enable the driver to communicate over radio or leased-line networks using modems that require RTS/CTS handshaking. The Use Hardware Control Lines option specifies a half-duplex connection requiring the use of the Request to Send (RTS) and Clear to Send (CTS) hardware control lines to control the flow of data.
The Hold Time parameter specifies the time, in milliseconds, that the driver will hold RTS after the last character is transmitted. This is useful for devices that immediately end transmission when RTS is turned off. The value of this field must be smaller than the Time Out value set in the General parameters dialog. For example, if the Timeout value is set to 3 seconds, the CTS Delay Time can be set to 2999 milliseconds or less. The minimum value for this field is 0 milliseconds.
The Dial Attempts parameter specifies how many dialing attempts will be made. Valid values are 1 to 10. The default value is 1. The Connect Time parameter specifies the amount of time in seconds the modem will wait for a connection. Valid values are 6 to 300. The default value is 60. The Pause Time parameter specifies the time in seconds between dialing attempts. Valid values are 6 to 600. The default value is 30.
The Master Station parameter is the DNP station address assumed by this communication component. When this driver sends out commands, responses form the controller will be directed to this address. The default value is 100. The Message Size grouping parameters are used to control the message size for the protocol. Control over message length is needed when writing large amounts of data over certain communication networks.
Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC). Runtime is the version of the Common Language Runtime (CLR) the driver was built against. Copyright indicates the copyright information of the protocol driver.
DNP/TCP The DNP/TCP protocol driver is used to communicate over an Ethernet DNP network to SCADAPack controllers configured for DNP/TCP communication. To configure a DNP/TCP protocol connection, highlight DNP/TCP in the Communication Protocols window and click the Configure button. The DNP/TCP Configuration window is displayed. To select a configured DNP/TCP protocol connection, highlight DNP/TCP in the Communication Protocols window and click the OK button.
The Attempts parameter specifies the number of times to send a command to the controller before giving up and reporting this failure to the host application. Valid values are 1 to 20. The default value is 3 attempts. The Host Network Details grouping contains information about the IP network including the target‟s IP address or name, and the TCP port number on which it is listening. More details on these below.
The Master Station parameter specifies the DNP station address of the RealFLO application. When RealFLO sends out commands, responses from the target controller will be directed to this address. The valid range is 0 to 65519, except that this value cannot be the same as the target RTU Station number. The default value is 100. The Maximum selection indicates that you want the host application to package messages using the maximum size allowable by the protocol.
Information Page The Information page displays detailed driver information. When the Information tab is clicked the Information dialog is opened as shown below. The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC).
DNP/UDP The DNP/UDP protocol driver is used to communicate over an Ethernet DNP network to SCADAPack controllers configured for DNP/UDP communication. To configure a DNP/UDP protocol connection, highlight DNP/UDP in the Communication Protocols window and click the Configure button. The DNP/UDP Configuration window is displayed. To select a configured DNP/UDP protocol connection, highlight DNP/UDP in the Communication Protocols window and click the OK button.
The Attempts parameter specifies the number of times to send a command to the controller before giving up and reporting this failure to the host application. Valid values are 1 to 20. The default value is 3 attempts. The Host Network Details grouping contains information about the IP network including the target‟s IP address or name, and the UDP port number on which it is listening. More details on these below.
The Master Station parameter specifies the DNP station address of the RealFLO application. When RealFLO sends out commands, responses from the target controller will be directed to this address. The valid range is 0 to 65519, except that this value cannot be the same as the target RTU Station number. The default value is 100. The Maximum selection indicates that you want the host application to package messages using the maximum size allowable by the protocol.
Information Page The Information page displays detailed driver information. When the Information tab is clicked the Information dialog is opened as shown below. The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC).
To close the dialog, without making a selection click the Cancel button. General Parameters When Modbus ASCII is selected for configuration the Modbus ASCII Configuration dialog is opened with the General tab selected as shown below. The Modbus Communication Settings grouping contains Modbus specific communication settings including the addressing mode, the station address, the timeout interval as well as the number of attempts. The Addressing parameter selects standard or extended Modbus addressing.
This Serial Port Settings grouping contains details directly related to the PC‟s communication port including the port number, the baud rate, parity and stop bit settings. The Port parameter specifies the PC serial port to use. The DNP driver determines what serial ports are available on the PC and presents these in the drop-down menu list. The available serial ports list will include any USB to serial converters used on the PC. The default value is the first existing port found by the driver.
The RTS/CTS Flow Control grouping contains two mutually exclusive options, Use Hardware Control Lines and Use CTS Delay Time. These options enable the driver to communicate over radio or leased-line networks using modems that require RTS/CTS handshaking. The Use Hardware Control Lines option specifies a half-duplex connection requiring the use of the Request to Send (RTS) and Clear to Send (CTS) hardware control lines to control the flow of data.
transmission when RTS is turned off. The value of this field must be smaller than the Time Out value set in the General parameters dialog. For example, if the Timeout value is set to 3 seconds, the CTS Delay Time can be set to 2999 milliseconds or less. The minimum value for this field is 0 milliseconds. The value is initially set to 0 by default. Click Restore Defaults to restore default values to all fields on this page.
The Connect Time parameter specifies the amount of time in seconds the modem will wait for a connection. Valid values are 6 to 300. The default value is 60. The Pause Time parameter specifies the time in seconds between dialing attempts. Valid values are 6 to 600. The default value is 30. Check the Inactivity Timeout check box to automatically terminate the dialup connection after a period of inactivity. The Inactivity Time edit box is enabled only if this option is checked. The default state is checked.
The Message Size grouping parameters are used to control the message size for the protocol. Control over message length is needed when writing large amounts of data over certain communication networks. A larger value can improve communication speed but can increase the number of failed transmissions. A smaller value can reduce the number of failed transmissions but may reduce throughput.
The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC). Runtime is the version of the Common Language Runtime (CLR) the driver was built against. Copyright indicates the copyright information of the protocol driver.
Modbus ASCII The Modbus ASCII protocol driver is used to communicate over a serial network, using Modbus ASCII framing, to SCADAPack controllers configured for Modbus ASCII protocol. To configure a Modbus ASCII protocol connection, highlight Modbus ASCII in the Communication Protocols window and click the Configure button. The Modbus ASCII Configuration window is displayed.
The Addressing parameter selects standard or extended Modbus addressing. Standard addressing allows 255 stations and is compatible with standard Modbus devices. Extended addressing allows 65534 stations, with stations 1 to 254 compatible with standard Modbus devices. The default is Standard. The Station parameter sets the target station number. The valid range is 1 to 255 if standard addressing is used, and 1 to 65534 if extended addressing is used. The default is 1.
Modbus ASCII Configuration dialog. When the Flow Control tab heading is clicked the Flow Control dialog is opened as shown below. Figure 11: Modbus ASCII Configuration (Flow Control) The RTS/CTS Flow Control grouping contains two mutually exclusive options, Use Hardware Control Lines and Use CTS Delay Time. These options enable the driver to communicate over radio or leased-line networks using modems that require RTS/CTS handshaking.
value set in the General parameters dialog. For example, if the Timeout value is set to 3 seconds, the CTS Delay Time can be set to 2999 milliseconds or less. The minimum value for this field is 0 milliseconds. The value is initially set to 0 by default. The Hold Time parameter specifies the time, in milliseconds, that the driver will hold RTS after the last character is transmitted. This is useful for devices that immediately end transmission when RTS is turned off.
The Phone Number parameter specifies the telephone number of the remote controller. A maximum of 32 characters can be entered. All characters are valid. This field‟s default value is blank. The Dial Type parameter specifies the dialing type. Valid values are Pulse and Tone. The default value is Tone. The Dial Attempts parameter specifies how many dialing attempts will be made. Valid values are 1 to 10. The default value is 1.
Figure 13: Modbus ASCII Configuration (Advanced) Dialog Box The Message Size grouping parameters are used to control the message size for the protocol. Control over message length is needed when writing large amounts of data over certain communication networks. A larger value can improve communication speed but can increase the number of failed transmissions. A smaller value can reduce the number of failed transmissions but may reduce throughput.
Figure 14: Modbus ASCII Configuration (Information) Dialog Box The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC). Runtime is the version of the Common Language Runtime (CLR) the driver was built against. Copyright indicates the copyright information of the protocol driver.
Modbus ASCII in TCP Modbus ASCII in TCP message format is exactly same as that of the Modbus ASCII protocol. The main difference is that Modbus ASCII in TCP protocol communicates with a SCADAPack controller through the Internet and Modbus ASCII through the serial port. The Modbus ASCII in TCP protocol does not include a six-byte header prefix, as with the Modbus\TCP, but does include the Modbus „CRC-16‟ or „LRC‟ check fields.
The Addressing parameter selects standard or extended Modbus addressing. Standard addressing allows 255 stations and is compatible with standard Modbus devices. Extended addressing allows 65534 stations, with stations 1 to 254 compatible with standard Modbus devices. The default is Standard. The Station parameter sets the target station number. The valid range is 1 to 255 if standard addressing is used, and 1 to 65534 if extended addressing is used. The default is 1.
Figure 16: Modbus ASCII in TCP Configuration (Advanced) Dialog Box The Message Size grouping parameters are used to control the message size for the protocol. Control over message length is needed when writing large amounts of data over certain communication networks. A larger value can improve communication speed but can increase the number of failed transmissions. A smaller value can reduce the number of failed transmissions but may reduce throughput.
Figure 17: Modbus ASCII in TCP Configuration (Information) Dialog Box The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC). Runtime is the version of the Common Language Runtime (CLR) the driver was built against.
Modbus ASCII in UDP Modbus ASCII in UDP protocol is similar to Modbus ASCII in TCP protocol. It has the same message format as the Modbus ASCII in TCP. The only difference between them is one uses TCP protocol and another uses UDP protocol. To configure a Modbus ASCII in TCP protocol connection, highlight Modbus ASCII in UDP in the Communication Protocols window and click the Configure button. The Modbus ASCII in UDP Configuration window is displayed.
The Station parameter sets the target station number. The valid range is 1 to 255 if standard addressing is used, and 1 to 65534 if extended addressing is used. The default is 1. The Timeout parameter sets the length of time, in seconds, to wait for a response from the controller before retrying (see Attempts), or ultimately failing. Valid entries are 1 to 255. The default is 3.
Figure 19: Modbus ASCII in UDP Configuration (Advanced) Dialog Box The Message Size grouping parameters are used to control the message size for the protocol. Control over message length is needed when writing large amounts of data over certain communication networks. A larger value can improve communication speed but can increase the number of failed transmissions. A smaller value can reduce the number of failed transmissions but may reduce throughput.
Figure 20: Modbus ASCII in UDP Configuration (Information) Dialog Box The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC). Runtime is the version of the Common Language Runtime (CLR) the driver was built against.
Modbus RTU Introduction The Modbus RTU protocol driver is used to communicate over a serial network, using Modbus RTU framing, to SCADAPack controllers configured for Modbus RTU protocol. To configure a Modbus RTU protocol connection, highlight Modbus RTU in the Communication Protocols window and click the Configure button. The Modbus RTU Configuration window is displayed.
The Addressing parameter selects standard or extended Modbus addressing. Standard addressing allows 255 stations and is compatible with standard Modbus devices. Extended addressing allows 65534 stations, with stations 1 to 254 compatible with standard Modbus devices. The default is Standard. The Station parameter sets the target station number. The valid range is 1 to 255 if standard addressing is used, and 1 to 65534 if extended addressing is used. The default is 1.
Figure 22: Modbus RTU Configuration (Flow Control) The RTS/CTS Flow Control grouping contains two mutually exclusive options, Use Hardware Control Lines and Use CTS Delay Time. These options enable the driver to communicate over radio or leased-line networks using modems that require RTS/CTS handshaking. The Use Hardware Control Lines option specifies a half-duplex connection requiring the use of the Request to Send (RTS) and Clear to Send (CTS) hardware control lines to control the flow of data.
The Hold Time parameter specifies the time, in milliseconds, that the driver will hold RTS after the last character is transmitted. This is useful for devices that immediately end transmission when RTS is turned off. The value of this field must be smaller than the Time Out value set in the General parameters dialog. For example, if the Timeout value is set to 3 seconds, the CTS Delay Time can be set to 2999 milliseconds or less. The minimum value for this field is 0 milliseconds.
The Dial Attempts parameter specifies how many dialing attempts will be made. Valid values are 1 to 10. The default value is 1. The Connect Time parameter specifies the amount of time in seconds the modem will wait for a connection. Valid values are 6 to 300. The default value is 60. The Pause Time parameter specifies the time in seconds between dialing attempts. Valid values are 6 to 600. The default value is 30.
Figure 24: Modbus RTU Configuration (Advanced) Dialog Box The Message Size grouping parameters are used to control the message size for the protocol. Control over message length is needed when writing large amounts of data over certain communication networks. A larger value can improve communication speed but can increase the number of failed transmissions. A smaller value can reduce the number of failed transmissions but may reduce throughput.
Figure 25: Modbus RTU Configuration (Information) Dialog Box The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC). Runtime is the version of the Common Language Runtime (CLR) the driver was built against. Copyright indicates the copyright information of the protocol driver.
Modbus RTU in TCP Modbus RTU in TCP message format is exactly same as that of the Modbus RTU protocol. The main difference is that Modbus RTU in TCP protocol communicates with a controller through the Internet and Modbus RTU protocol through the serial port. The Modbus RTU in TCP protocol does not include a six-byte header prefix, as with the Modbus\TCP, but does include the Modbus „CRC-16‟ or „LRC‟ check fields. The Modbus RTU in TCP message format supports Modbus RTU message format.
addressing allows 65534 stations, with stations 1 to 254 compatible with standard Modbus devices. The default is Standard. The Station parameter sets the target station number. The valid range is 1 to 255 if standard addressing is used, and 1 to 65534 if extended addressing is used. The default is 1. The Timeout parameter sets the length of time, in seconds, to wait for a response from the controller before retrying (see Attempts), or ultimately failing. Valid entries are 1 to 255. The default is 3.
Figure 27: Modbus RTU in TCP Configuration (Advanced) Dialog Box The Message Size grouping parameters are used to control the message size for the protocol. Control over message length is needed when writing large amounts of data over certain communication networks. A larger value can improve communication speed but can increase the number of failed transmissions. A smaller value can reduce the number of failed transmissions but may reduce throughput.
Figure 28: Modbus RTU in TCP Configuration (Information) Dialog Box The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC). Runtime is the version of the Common Language Runtime (CLR) the driver was built against. Copyright indicates the copyright information of the protocol driver.
Modbus RTU in UDP Modbus RTU in UDP protocol is similar to Modbus RTU in TCP protocol. It has the same message format as the RTU in TCP message. The only difference between them is one uses TCP protocol and another uses UDP protocol. To configure a Modbus RTU in UDP protocol connection, highlight Modbus RTU in UDP in the Communication Protocols window and click the Configure button. The Modbus RTU in UDP Configuration window is displayed.
The Station parameter sets the target station number. The valid range is 1 to 255 if standard addressing is used, and 1 to 65534 if extended addressing is used. The default is 1. The Timeout parameter sets the length of time, in seconds, to wait for a response from the controller before retrying (see Attempts), or ultimately failing. Valid entries are 1 to 255. The default is 3.
Figure 30: Modbus RTU in UDP Configuration (Advanced) Dialog Box The Message Size grouping parameters are used to control the message size for the protocol. Control over message length is needed when writing large amounts of data over certain communication networks. A larger value can improve communication speed but can increase the number of failed transmissions. A smaller value can reduce the number of failed transmissions but may reduce throughput.
Figure 31: Modbus RTU in UDP Configuration (Information) Dialog Box The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC). Runtime is the version of the Common Language Runtime (CLR) the driver was built against. Copyright indicates the copyright information of the protocol driver.
Modbus/TCP Modbus/TCP is an extension of serial Modbus, which defines how Modbus messages are encoded within and transported over TCP/IP-based networks. The Modbus/TCP protocol uses a custom Modbus protocol layer on top of the TCP protocol. Its request and response messages are prefixed by six bytes. These six bytes consist of three fields: transaction ID field, protocol ID field and length field.
The Modbus Communication Settings grouping contains Modbus specific communication settings including the addressing mode, the station address, the timeout interval as well as the number of attempts. The Addressing parameter selects standard or extended Modbus addressing. Standard addressing allows 255 stations and is compatible with standard Modbus devices. Extended addressing allows 65534 stations, with stations 1 to 254 compatible with standard Modbus devices. The default is Standard.
Figure 33: Modbus/TCP Configuration (Advanced) Dialog Box The Message Size grouping parameters are used to control the message size for the protocol. Control over message length is needed when writing large amounts of data over certain communication networks. A larger value can improve communication speed but can increase the number of failed transmissions. A smaller value can reduce the number of failed transmissions but may reduce throughput.
Figure 34: Modbus/TCP Configuration (Information) Dialog Box The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC). Runtime is the version of the Common Language Runtime (CLR) the driver was built against. Copyright indicates the copyright information of the protocol driver.
Modbus/UDP Modbus/UDP communication mode is similar to Modbus/TCP communication mode. It has the same message format with the Modbus/TCP. The only difference between them is one uses TCP protocol and another uses UDP protocol. To configure a Modbus/UDP protocol connection, highlight Modbus/UDP in the Communication Protocols window and click the Configure button. The Modbus/ UDP Configuration window is displayed.
The Station parameter sets the target station number. The valid range is 1 to 255 if standard addressing is used, and 1 to 65534 if extended addressing is used. The default is 1. The Timeout parameter sets the length of time, in seconds, to wait for a response from the controller before retrying (see Attempts), or ultimately failing. Valid entries are 1 to 255. The default is 3.
Figure 36: Modbus/UDP Configuration (Advanced) Dialog Box The Message Size grouping parameters are used to control the message size for the protocol. Control over message length is needed when writing large amounts of data over certain communication networks. A larger value can improve communication speed but can increase the number of failed transmissions. A smaller value can reduce the number of failed transmissions but may reduce throughput.
Figure 37: Modbus/UDP Configuration (Information) Dialog Box The Information grouping presents informative details concerning the executing protocol driver. Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC). Runtime is the version of the Common Language Runtime (CLR) the driver was built against. Copyright indicates the copyright information of the protocol driver.
Modbus/USB This driver provides the means to communicate with SCADAPack controllers equipped with a Universal Serial Bus (USB) peripheral port using Modbus/USB messaging. The driver does not require configuration making it possible to connect and communicate with a SCADAPack controller almost instantaneously. To configure a Modbus/USB protocol connection, highlight Modbus/USB in the Communication Protocols window and click the Configure button. The Modbus/ USB Configuration window is displayed.
Figure 39: Multiple Controller USB Error Dialog Note that this option is selected by default. Select Connect to controller with this ‘Controller ID when multiple controllers are present on the bus. A typical scenario involves more than one USB equipped SCADAPack controller connected via a USB hub to the host PC. If multiple controllers exist on the bus, the controller ID drop down box will display a list of all identifiable devices.
Information Page The Information page identifies the driver type and author. This page further provides detailed driver information which can be useful in identification and troubleshooting scenarios. Figure 41: Modbus/USB Configuration (Information) Dialog Box Module is the physical name of the driver. File Version is the version number of the driver. In GAC indicates whether the module (assembly) was loaded from the Global Assembly Cache (GAC).
SCADAServer The SCADAServer protocol specifies a SCADAServer Host connection. Applications will act as an OPC client and route all programming commands through the SCADAServer Host to the SCADAPack controller. The type of connection to the field device: no flow control, hardware flow control or dial-up modem is configured in the SCADAServer Host itself. To configure a SCADAServer protocol connection, highlight SCADAServer in the Communication Protocols window and click the Configure button.
remote PC. If the SCADAServer installation is located on a separate machine, check this option and enter the host name or IP address of the remote PC into the “IP Address / Name” edit box. If the SCADAServer installation is located on the same PC as the client application leave this box unchecked. The default state for this check box is unchecked.
The Maximum selection indicates that the host application is to package messages using the maximum size allowable by the protocol. The Custom Value selection specifies a custom value for the message size. This value indicates to the host application to package messages to be no larger than what is specified, if it is possible. Valid values are 2 to 246. Click Restore Defaults to restore default values to all fields on this page. Information Information displays detailed driver information.
IEC61131 User and Reference Manual April 22, 2008 97
Controller Menu Commands Controller and Option commands are specific to the operation of SCADAPack controllers. These commands are selected from the menu bar in the ISaGRAF Workbench Programs window. Operating parameters are configured using selected controller commands. Controller commands are selected from the Controllers selection in the Tools menu of the Programs window.
SCADAPack 334 Select the appropriate target controller this application is intended for. Selecting OK saves the setting and closes the dialog. Selecting Cancel closes the dialog without saving any changes. ISaGRAF verifies the controller type when writing to the target controller. If the controller type selected is different than the target controller connected, then the following error message is displayed: "Cannot write to a different type or model of controller.
SCADAPack and SCADAPack 32 Controllers For SCADAPack and SCADAPack 32 controllers, the Initialize dialog shown below appears when the command is selected. Check the Erase IEC 61131 Application selection to erase the ISaGRAF application program in the target controller. Check the Erase C Program selection to erase the C application program in the target controller. Check the Initialize Controller selection to reset the target controller to default settings.
SCADAPack 330/334, SCADAPack 350 and SCADASense Controllers For SCADAPack 330/334, SCADAPack 350 and SCADASense 4202 and 4203 Series of controllers (SCADASense 4202 DR, SCADASense 4202 DS, SCADASense 4203 DR and SCADASense 4203 DS), the Initialize dialog shown below appears when the command is selected. Select the Initialize All to Factory Settings radio button to reset the target controller to default settings.
Select the Initialize radio button to initialize only the selected items. The items that may be selected are as follows: Check the Erase IEC 61131 Application selection to erase the IEC 61131 application in the controller. Check the Erase All C/C++ Programs selection to erase all C/C++ programs in the controller. Check the Initialize Controller selection to reset the target controller to default settings.
Controller Serial Ports Command This command is used to configure the serial port settings of the target controller serial ports. When selected this command opens the Controller Serial Ports dialog. Options presented in this dialog depend on the controller type selected in the Controller Type menu. The Port drop down menu selects the controller serial port to configure. The settings for the port are displayed in the Port Settings controls section of the dialog.
Controller Type com1 SCADASense 4202 DR SCADASense 4202 DS SCADASense 4203 DR SCADASense 4203 DS X X X X com2 X X X X com3 com4 X X X X The Protocol drop down menu selects the communication protocol type. Valid protocols depend on the controller type as shown in the following table.
Controller Type Valid Protocols Default Protocol DF1 Half Duplex CRC DNP The Addressing drop down menu selects the addressing mode for the selected protocol. The control is disabled if the protocol does not support it. Valid addressing modes depend on the selected protocol as shown in the following table.
Controller Type SCADAPack Light SCADAPack LP SCADAPack 100 SCADAPack 32 SCADAPack 32P SCADASense 4202 DR SCADASense 4202 DS SCADASense 4203 DR SCADASense 4203 DS SCADAPack 330/334 SCADAPack 350 com1 com2 com3 Valid Def. Valid Def.
SCADAPack 100: 1024K Com 1, Com 2 115200 57600 38400 19200 9600 4800 2400 600 300 Controller 1200 Baud Rate X X X X X X X X X X X X X X X X X X X X X X X X X X SCADAPack32P Com 1, Com 2, Com 4 X X X X X X X X X X SCADAPack 330/334 Com 1, Com2, Com3 X X X X X X X X X X SCADAPack 350 Com 1, Com2, Com3 X X X X X X X X X X SCADASense Series of Programmable Controllers Com1 X Com2 X X X X X Com3 X X X X X X X X X X X SCADAPack32 Com 1, Com 2,
Controller Type SCADAPack Light SCADAPack LP SCADAPack 100 com1 none even odd none even odd com2 none even odd none even odd none even odd none even odd none even odd none even odd none even odd none none even odd none even odd SCADASense 4203 DR SCADASense 4203 DS none SCADAPack 330/334 SCADAPack 350 none even odd none even odd none even odd SCADAPack 32 SCADAPack 32P SCADASense 4202 DR SCADASense 4202 DS com3 com4 7 bits 8 bits 7 bits space mark N/A mark space mark even odd s
Protocol Controller com1 com2 com3 com4 DF1 Full CRC DF1 Half BCC DF1 Half CRC DNP SP SP Plus SP Light SP LP SP 100 SP 32 SP 32P SCADASense 4202 DR SCADASense 4202 DS SCADASense 4203 DR SCADASense 4203 DS SCADAPack 330/334 SCADAPack 350 Micro16 SP None None None None None None None N/A None None None None None None None None N/A None none N/A N/A None None N/A N/A None None None N/A None N/A None N/A None Ignore CTS None None None None None None None None None N/A N/A N/A N/A SP Plus None
Protocol Controller com1 com2 com3 com4 SP 100 None Xon/Xoff None None None none Xon/Xoff None None None None None None None N/A None None None N/A None Modbus RTU None None None Queued Queued None None Queued Queued None None Queued Queued N/A N/A Queued Queued SP 32 SP 32P SCADASense 4202 DR SCADASense 4202 DS SCADASense 4203 DR SCADASense 4203 DS SCADAPack 330/334 SCADAPack 350 SP 32 SP 32P PPP N/A The Tx Flow drop down menu selects the transmitter flow control for the selected port.
Protocol Controller com1 com2 com3 com4 SP Light None Xon/Xoff None Xon/Xoff None Xon/Xoff None Ignore CTS N/A None Ignore CTS N/A SP 32P None Ignore CTS SCADASense 4202 DR SCADASense 4202 DS SCADASense 4203 DR SCADASense 4203 DS SCADAPack 330/334 SCADAPack 350 N/A None Xon/Xoff None Xon/Xoff None Xon/Xoff None Ignore CTS None Ignore CTS None N/A None None Ignore CTS None None None None None None None SP LP SP 100 SP 32 None Ignore CTS N/A N/A None Ignore CTS None Ignore CTS N/A N
Controller Type com1 com2, com4 com3 Micro16 SCADAPack SCADAPack Plus SCADAPack Light RS-232 RS-232 dial-up modem RS-232 Collision Avoidance RS-485 RS-232 RS-232 dial-up modem RS-232 Collision Avoidance S-232 RS-232 dial-up modem SCADAPack 32 SCADAPack 32P RS-232 RS-232 dial-up modem RS-232 Collision Avoidance Note: com4 is available on the SCADAPack Light and Plus only.
Controller Type com1 com2, com3 SCADASense Programmable Controllers (4202 DR, 4202 DS, 4203 DR and 4203 DS). N/A (RS-232) RS-232 RS-232 Dialup Up Modem (com 2 only) NOTE: RS-232 Port Type applies for RS-232 or RS-485 operation. SCADAPack 100 RS-232 RS-232 Collision Avoidance NOTE: Port type RS-232 applies for RS-232 or RS-485 operation on Com 1.
The Store and Forward drop down menu selects whether store and forward messaging is enabled for the port. Valid selections are enabled and disabled. If this option is enabled, messages will be forwarded according to the settings in the store and forward routing table. The default selection is disabled. This control is disabled when PPP protocol is selected for a serial port, or if any of the DF1 protocols are selected and for com 1 on the SCADASense series of programmable controllers.
Controller IP When the IP Configuration menu item is clicked under the Controller menu the IP Configuration dialog is opened. This dialog is available only when the controller type is set to SCADAPack 330/334, SCADAPack 350, SCADAPack 32 or SCADAPack 32P. The IP Configuration dialog has a tree control on the left side of the window. The SCADAPack 32 and SCADAPack 32P support Point-To-Point Protocol (PPP) on the serial ports.
LAN Port The LAN Port property page is selected for editing by clicking LAN Port in the tree control section of the Controller IP Configuration dialog. When selected the LAN Port property page is active. The IP Address is the address of the controller LAN port. The IP address is statically assigned. Contact your network administrator to obtain an IP address for the controller. The default value is 0.0.0.0. The Subnet Mask is determines the subnet on which the controller LAN port is located.
page is active. This page configures the IP settings for com1 when the PPP protocol is selected for this serial port. The Enable Auto Answer (PPP Server) checkbox enables the PPP Server on this serial port. Check this box if you want to allow a remote PPP client to connect to this port. This checkbox enables the remaining settings in the page. The IP Address is the address of this serial port. The IP address is statically assigned.
Handshake Authentication Protocol (CHAP). PAP and CHAP usernames and passwords are configured on the PPP Login page. The Inactivity Timeout is the inactivity timeout for this serial port. If there has been no activity on an existing PPP connection for the selected number of minutes, then the connection is automatically closed. If there is a modem connected it is hung up. Setting this value to zero disables the timeout.
Select the Add button to enter a new username to the list. Selecting the Add button opens the Add PPP Username dialog. Select the Edit button to edit the username highlighted in the list. Selecting the Edit button opens the Edit PPP Username dialog. This button is disabled if there are no entries in the list. The Delete button removes the selected usernames from the list. This button is disabled if there are no entries in the list. Add PPP Username dialog This dialog selects a new PPP username and password.
The OK button to accepts all changes made to this dialog and exits the dialog. Edit PPP Username dialog This dialog edits a PPP username and password selected from the list. The Username edit box selects the username. A username is any alphanumeric string 1 to 16 characters in length, and is case sensitive. The Password edit box selects the password. A password is any alphanumeric string 1 to 16 characters in length, and is case sensitive. The Verify Password edit box selects the verify password.
The Addressing menu selects standard or extended Modbus addressing. Standard addressing allows 255 stations and is compatible with standard Modbus devices. Extended addressing allows 65534 stations, with stations 1 to 254 compatible with standard Modbus devices. The default value is standard. The Station menu sets the station number of the controller. The valid range is 1 to 255 if standard addressing is used, and 1 to 65534 if extended addressing is used. The default value is 1.
The Server selection selects whether the server is enabled. If this option is enabled the controller supports incoming slave messages. Disabling this option prevents the controller from processing slave messages. Master messaging is always enabled. The Master Idle Timeout determines when connections to a slave controller are closed. Setting this value to zero disables the timeout; the connection will be closed only when your program closes it. Any other value sets the timeout in seconds.
Modbus RTU in UDP The Modbus RTU in UDP property page is selected for editing by clicking Modbus RTU in UDP in the tree control section of the IP Configuration dialog. When selected the Modbus RTU in UDP property page is active. The Server selection selects whether the server is enabled. If this option is enabled the controller supports incoming slave messages. Disabling this option prevents the controller from processing slave messages. Master messaging is always enabled.
Modbus ASCII in UDP The Modbus ASCII in UDP property page is selected for editing by clicking Modbus ASCII in UDP in the tree control section of the IP Configuration dialog. When selected the Modbus ASCII in UDP property page is active. The Server selection selects whether the server is enabled. If this option is enabled the controller supports incoming slave messages. Disabling this option prevents the controller from processing slave messages. Master messaging is always enabled.
DNP in TCP The DNP in TCP property page is selected for editing by DNP in TCP in the tree control section of the IP Configuration dialog. When selected the DNP in TCP property page is active. The Protocol selection selects whether the DNP in TCP protocol is enabled. If this option is enabled the controller supports DNP in TCP protocol. Disabling this option prevents the controller from processing DNP in TCP protocol messages. Master messaging is always enabled. The default selection is disabled.
DNP in UDP The DNP in UDP property page is selected for editing by DNP in UDP in the tree control section of the IP Configuration dialog. When selected the DNP in UDP property page is active. The Protocol selection selects whether the DNP in UDP protocol is enabled. If this option is enabled the controller supports DNP in UDP protocol. Disabling this option prevents the controller from processing DNP in UDP protocol messages and sending DNP in UDP master messages. The default selection is disabled.
The Enable Friendly IP List checkbox enables or disables the friendly IP list. Check this box to accept messages from only the IP addresses in the list. Uncheck this to accept message from all IP addresses. Select the Add button to enter a new row in the Friendly IP list. Selecting the Add button opens the Add Friendly IP address dialog. The button is disabled if the Enable Friendly IP List control is not checked. The button is disabled if the table is full. Up to 32 entries can be added to the table.
Start Address specifies the starting IP address in the range. Enter any valid IP address. End Address specifies the ending IP address in the range. Enter a valid IP address that is numerically greater than or equal to the IP Start Address. This field can be left blank if only a single IP address is required. The OK button adds the IP address range to the list and closes the dialog. An error is displayed if the address range is invalid. The Cancel button closes the dialog without making any changes.
Controller time shows the current time and date in the controller. It is updated continuously while the dialog is open. The time and date are displayed in the short time format as defined in the Windows Control Panel. The Set to PC Time radio button selects setting the controller time to match the PC time. The current PC time and date are shown to the right of the button. The time and date are displayed in the short format as defined in the Windows Control Panel.
The Indicate I/O errors on STAT LED and output selection enables error indication. The Disable I/O error indication selection disables error indication. The OK button saves the parameters to the configuration file and closes the dialog. The Cancel button discards changes and closes the dialog. Lock Controller Command The Lock Controller command locks the target controller to prevent unauthorized access. The target controller rejects commands sent to it when it is locked.
To unlock the target controller enter the password that was used to lock the controller in the Password edit box. Any character string up to eight characters in length may be entered. Typing in this edit box is masked. An asterisk is shown for each character typed. The Cancel button closes the dialog without any action. The OK button sends the Unlock Controller command to the controller. If the password is correct the controller will be unlocked.
The C/C++ Program Loader dialog presented is the same for all controller types. For all controllers except the SCADAPack 330/334 or SCADAPack 350, this dialog may be used to load, run, stop or delete just one C/C++ program.
File Name specifies the C/C++ Program to write to controller. The file name may be selected in a number of ways. Click on the Browse button to open a standard file open dialog. Use the drop-down menu to select the file from a list of previously written files. Type the path and file name directly into the edit box. The Write button writes the selected file to the controller. The communication progress dialog box displays information about the write in progress, and allows you to cancel the write.
Note: When using DNP communication between ISaGRAF and the target controller the DNP Application Layer timeout may need to be increased if a large C/C++ application is added. The default Application Layer timeout of 5 seconds may not be long enough. The Run, Stop and Delete buttons apply to the C/C++ program selected from the list of loaded C/C++ programs. These buttons are disabled when there are no C/C++ programs loaded. The Run button stops and restarts the selected C/C++ program in the controller.
Information displayed in the Memory Usage section shows the memory usage by the IEC61131 program. For memory usage by a C program, refer to the C program map file. RAM Allocated by IEC-61131 – This memory includes RAM allocated for the IEC-61131 application code and data. RAM Allocated by OS – This memory includes RAM allocated by the OS for the ISaGRAF function blocks dlogcnfg, flow, and total when these are used in the IEC-61131 application.
Information displayed in the Memory Usage section shows the memory usage by the IEC61131 program. For memory usage by a C/C++ program, refer to the C/C++ program map file. Flash Memory Section Flash Used by IEC-61131 – The IEC-61131 application code is saved to flash when downloaded to the controller. If the source code is embedded with the application, it is also saved to flash. Flash Remaining for IEC-61131 – Unused flash available to save the IEC-61131 application code.
SRAM Allocated by C/C++ Program – This memory includes SRAM allocated by a C/C++ application when the function allocateMemory() is called (e.g. the Flow Computer application). SRAM Remaining – Unused SRAM memory available to IEC-61131 and C/C++ applications. There is approximately 1 MB of SRAM allotted for the C/C++ and IEC-61131 applications. Dynamic Memory (DRAM) Section DRAM Used by IEC-61131 – This memory includes DRAM allocated for the IEC-61131 application code and data.
dlogcnfg, flow, and total when these are used in the IEC-61131 application. This memory is also used by a C/C++ application when the function allocateMemory() is called (e.g. the Flow Computer application). Memory Remaining – describes the unused memory available to all programs. Options Command The Options command sets workbench options unique to Control Microsystems. The Options command is selected from the Workbench selection in the Tools menu of the Programs window.
The conflicting addresses should be corrected and then saved again. It is not required that any corrections be made to the Conflict Table. The table only displays detected conflicts. Modbus Addressing The ISaGRAF Dictionary is used to assign Modbus register addresses to declared variables. Assigning a network address for the variable in the edit variable dialog does this. To open the Edit Variable dialog select Dictionary from the File menu in the ISaGRAF Programs window.
may also be assigned to a coil or status register. And a Boolean variable may be assigned to an input or holding register, instead of a status or coil register. When variable types Real, Integer, Timers, Messages or Boolean are assigned to a coil or status register each variable requires only one unique Modbus address, the assigned Network Address.
Permanent Non-Volatile Modbus Registers By default, the controller has a selection of Modbus registers already defined.
the data saved in a Permanent Register to a Dictionary variable using one of these Function Blocks: Function Block Description getregb getregf getregsl getregss getregus Get value of boolean register. Get value of floating point register. Get value of signed long integer register. Get value of signed short integer register. Get value of unsigned short integer register.
I/O Connection Reference The term I/O hardware refers to the physical input and output devices that are accessed by the application program in the target controller. The I/O hardware is divided into two types, I/O boards and I/O equipment. I/O boards are 5000 Series I/O modules and controller onboard I/O such as counter/digital inputs, interrupt input, RAM battery voltage and board temperature.
ain5501 Analog input module 5501 Description The ain5501 I/O module provides eight I/O channels from 5501 Analog Input hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the 5501 Analog Input module. Set the ain5501 module_address to match the address switches on the 5501 Analog Input hardware.
ain5502 Analog input module 5502 Description The ain5502 I/O module provides eight I/O channels from 5502 Differential Analog Input hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the 5502 Differential Analog Input hardware. Set the ain5502 module_address to match the address switches on the 5502 Differential Analog Input hardware.
ain5503 Analog input module 5503 Description The ain5503 I/O module provides four I/O channels from 5503 RTD Analog input hardware. Data for each of the four I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the 5503 RTD Analog input hardware. Set the ain5503 module_address to match the address switches on the 5503 RTD Analog input hardware.
ain5504 Analog input module 5504 Description The ain5504 I/O module provides eight I/O channels from 5504 Thermocouple Analog input hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the 5504 Thermocouple Analog input hardware. Set the ain5504 module_address to match the address switches on the 5504 Thermocouple Analog input hardware.
ain5521 Analog input module 5521 Description The ain5521 I/O module provides eight I/O channels from 5521 Potentiometer Analog input hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the 5521 Potentiometer Analog input hardware. Set the ain5521 module_address to match the address switches on the 5521 Potentiometer Analog input hardware.
ain8pt Generic 8 point AIN module Description The ain8pt I/O module provides eight I/O channels from Generic 8 Point Analog input hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the Generic 8 Point Analog input hardware. Set the ain8pt module_address to match the address switches on the Generic 8 Point Analog input hardware.
ainbatt RAM battery voltage Description The ainbatt I/O module provides a single I/O channel for the RAM backup battery voltage of the SCADAPack controller. This module provides an I/O channel for the Input voltage of the SCADASense series of programmable controllers (4202 DR, 4202 DS, 4203 DR and 4203DS). Data for the I/O channel may be connected to a user-defined variable with the I/O connection editor. The connected variable is updated continuously with data read from the controller.
aintemp Temperature Description The aintemp I/O module provides two analog input I/O channels for the circuit board temperature of the SCADAPack controller. Channel 1 data is circuit board temperature in degrees Celsius. Channel 2 data is circuit board temperature in degrees Fahrenheit. The ambient temperature input measures the temperature at the controller circuit board.
aout2pt Generic 2 point AOUT module Description The aout2pt I/O module provides two I/O channels for Generic 2 Point Analog output hardware. Data for each of the I/O channels may be connected to user-defined variables with the I/O connection editor. The analog outputs are updated continuously with data read from the variables. Set the aout2pt module_address to match the address switches on the Generic 2 Point Analog output hardware.
aout4pt Generic 4 point AOUT module Description The aout4pt I/O module provides four I/O channels for Generic 4 Point Analog output hardware. Data for each of the four I/O channels may be connected to user-defined variables with the I/O connection editor. The analog outputs are updated continuously with data read from the variables. Set the aout4pt module_address to match the address switches on the Generic 4 Point Analog output hardware.
aout5301 Analog output module 5301 Description The aout5301 I/O module provides two I/O channels for 5301 Analog Output hardware. Data for each of the I/O channels may be connected to user-defined variables with the I/O connection editor. The analog outputs are updated continuously with data read from the variables. Set the aout5301 module_address to match the address switches on the 5301 Analog Output hardware.
aout5302 Analog output module 5302 Description The aout5302 I/O module provides four I/O channels for 5302 Analog Output hardware. Data for each of the four I/O channels may be connected to user-defined variables with the I/O connection editor. The analog outputs are updated continuously with data read from the variables. Set the aout5302 module_address to match the address switches on the 5302 Analog Output hardware.
aout5304 Analog output module 5304 Description The aout5304 I/O module provides four I/O channels for 5304 Analog Output hardware. Data for each of the four I/O channels may be connected to user-defined variables with the I/O connection editor. The analog outputs are updated continuously with data read from the variables. Set the aout5304 module_address to match the address switches on the 5304 Analog Output hardware.
cntrCtrl Counter inputs counter Description The cntrCtrl I/O module provides three I/O channels for the three counter inputs on the SCADAPack controller. Data for each of the three I/O channels may be connected to userdefined variables with the I/O connection editor. Connected variables are updated continuously with data read from the counter inputs. I/O Connection Module address Library type Data type Channel type Number of channels No physical module address is required.
cntr5410 Counter input module 5410 Description The cntr5410 I/O module provides four I/O channels for 5410 High Speed Counter Input hardware. Data for each of the four I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data read from the counter inputs. Set the cntr5410 module_address to match the address switches on the 5410 High Speed Counter Input hardware. The maximum count is 4,294,967,295.
cntrint Interrupt input counter Description The cntrint I/O module provides an I/O channel for the SCADAPack controller interrupt input counter. Data for the I/O channel may be connected to a user-defined variable with the I/O connection editor. The connected variable is updated continuously with data read from the SCADAPack controller interrupt input counter. I/O Connection Module address Library type Data type Channel type Number of channels No physical module address is required.
din16pt Generic 16 point DIN module Description The din16pt I/O module provides sixteen I/O channels from Generic 16 Point Digital input hardware. Data for each of the sixteen I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from digital inputs. Set the din16pt module_address to match the address switches on the Generic 16 Point Digital input hardware.
dinCtrl Counter input status Description The dinCtrl I/O module provides three I/O channels from SCADAPack controller digital inputs. Data for each of the three I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the SCADAPack controller. I/O Connection Module address Library type Data type Channel type Number of channels No physical module address is required.
din5401 Digital input module 5401 Description The din5401 I/O module provides eight I/O channels from 5401 Digital I/O hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the digital inputs. Set the din5401 module_address to match the address switches on the 5401 Digital I/O hardware.
din5402 Digital input module 5402 Description The din5402 I/O module provides sixteen I/O channels from 5402 Digital I/O hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the digital inputs. Set the din5402 module_address to match the address switches on the 5402 Digital I/O hardware.
din5403 Digital input module 5403 Description The din5403 I/O module provides eight I/O channels from 5403 Digital Input hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the digital inputs. Set the din5403 module_address to match the address switches on the 5403 Digital Input hardware.
din5404 Digital input module 5404 Description The din5404 I/O module provides sixteen I/O channels from 5404 Digital Input hardware. Data for each of the sixteen I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the digital inputs. Set the din5404 module_address to match the address switches on the 5404 Digital Input hardware.
din5405 Digital input module 5405 Description The din5405 I/O module provides thirty-two I/O channels from 5405 Digital Input hardware. Data for each of the thirty-two I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the digital inputs. Set the din5405 module_address to match the address switches on the 5405 Digital Input hardware.
din5414 Digital input module 5414 Description The din5414 I/O module provides sixteen I/O channels from 5414 Digital Input hardware. Data for each of the sixteen I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the digital inputs. The module_address parameter defines the module address of the sp5414 I/O module. The address on the module is selected via dipswitches on the module.
Enter the scan frequency, 0 or 1, in the Value: entry field and click OK. I/O Connection Module address Library type Data type Channel type Number of channels This module is assigned a unique module address between 0 and 15. No other digital input-type module may use this module address. IO board Boolean Input 16 Notes Refer to the 5414 Digital Input Module User Manual for further information.
din5421 Digital input module 5421 Description The din5421 I/O module provides eight I/O channels from 5421 Toggle Switch Digital Input hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the digital inputs. Set the din5421 module_address to match the address switches on the 5421 Toggle Switch Digital Input hardware.
din8pt Generic 8 point DIN module Description The din8pt I/O module provides eight I/O channels from Generic 8 Point Digital input hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. Connected variables are updated continuously with data from the digital inputs. Set the din8pt module_address to match the address switches on the Generic 8 Point Digital input hardware.
dinint Interrupt input status Description The dinint I/O module provides an I/O channel for the SCADAPack controller interrupt input. Data for the SCADAPack controller interrupt input may be connected to a user-defined variable with the I/O connection editor. The connected variable is updated continuously with data read from the SCADAPack controller interrupt input. I/O Connection Module address Library type Data type Channel type Number of channels No physical module address is required.
dinoptsw Option switches Description The dinoptsw I/O module provides three I/O channels for the SCADAPack controller option switches. Data for the three I/O channels may be connected to user-defined variables with the I/O connection editor. The connected variables are updated continuously with data read from the SCADAPack controller option switches. I/O Connection Module address Library type Data type Channel type Number of channels No physical module address is required.
dout16pt Generic 16 point DOUT module Description The dout16pt I/O module provides sixteen I/O channels for Generic 16 Point Digital output hardware. Data for each of the sixteen I/O channels may be connected to user-defined variables with the I/O connection editor. The digital outputs are updated continuously with data read from the variables. Set the dout16pt module_address to match the address switches on the Generic 16 Point Digital output hardware input hardware.
dout5401 Digital output module 5401 Description The dout5401 I/O module provides eight I/O channels for 5401 Digital I/O hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. The digital outputs are updated continuously with data read from the variables. Set the dout5401 module_address to match the address switches on the 5401 Digital I/O hardware.
dout5402 Digital output module 5402 Description The dout5402 I/O module provides sixteen I/O channels for 5402 Digital I/O hardware. Data for each of the sixteen I/O channels may be connected to user-defined variables with the I/O connection editor. The digital outputs are updated continuously with data read from the variables. Set the dout5402 module_address to match the address switches on the 5402 Digital I/O hardware.
dout5406 Digital output module 5406 Description The dout5406 I/O module provides sixteen I/O channels for 5406 Relay Output hardware. Data for each of the sixteen I/O channels may be connected to user-defined variables with the I/O connection editor. The digital outputs are updated continuously with data read from the variables. Set the dout5406 module_address to match the address switches on the 5406 Digital I/O hardware.
dout5407 Digital output module 5407 Description The dout5407 I/O module provides eight I/O channels for 5407 Relay Output hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. The digital outputs are updated continuously with data read from the variables. Set the dout5407 module_address to match the address switches on the 5407 Digital I/O hardware.
dout5408 Digital output module 5408 Description The dout5408 I/O module provides eight I/O channels for 5408 Digital Output module. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. The Digital outputs are updated continuously with data read from the variables. Set the dout5408 module_address to match the address switches on the 5408 Digital I/O hardware.
dout5409 Digital output module 5409 Description The dout5409 I/O module provides eight I/O channels for 5409 Digital Output hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. The digital outputs are updated continuously with data read from the variables. Set the dout5409 module_address to match the address switches on the 5409 Digital I/O hardware.
dout5411 Digital output module 5411 Description The dout5411 I/O module provides thirty-two I/O channels for 5411 Digital Output hardware. Data for each of the thirty-two I/O channels may be connected to user-defined variables with the I/O connection editor. The digital outputs are updated continuously with data read from the variables. Set the dout5411 module_address to match the address switches on the 5411 Digital I/O hardware.
dout5415 Digital output module 5415 Description The dout5411 I/O module provides twelve I/O channels for 5415 Digital Output hardware. Data for each of the twelve I/O channels may be connected to user-defined variables with the I/O connection editor. The digital outputs are updated continuously with data read from the variables. Set the dout5415 module_address to match the address switches on the 5415 Digital I/O hardware.
dout8pt Generic 8 point DOUT module Description The dout8pt I/O module provides eight I/O channels for Generic 8 Point Digital output hardware. Data for each of the eight I/O channels may be connected to user-defined variables with the I/O connection editor. The digital outputs are updated continuously with data read from the variables. Set the dout8pt module_address to match the address switches on the Generic 8 Point Digital output hardware.
hart5904 HART modem Description The hart5904 module provides control of 5904 HART Interface modules. When configured the module maintains communication with a 5904 HART interface. The hart5904 module does not have physical I/O channels; instead it returns the 5904 HART interface communication status as a digital input. Set the hart5904 module_address to match the address switches on the 5904 HART interface.
Spaout SCADAPack analog output module Description The spaout I/O module provides two I/O channels for SCADAPack Analog output hardware. Data for each of the I/O channels may be connected to user-defined variables with the I/O connection editor. The analog outputs are updated continuously with data read from the variables. I/O Connection Module address Library type Data type Channel type Number of channels This module has a fixed address of 0.
I/O Equipment I/O equipment are defined using the I/O connection dialog in ISaGRAF. To open the I/O connection dialog select I/O connection from the Project menu in the Programs window. Refer to section A.11.1 Defining I/O boards in the User‟s Guide for complete information on defining I/O boards and equipment.
ain5505 5505 Analog Input Module Description The ain5505 module provides four RTD analog input points from a 5505 RTD module. A maximum of sixteen 5505 RTD modules may be installed on the I/O bus. The 5505 RTD module can operate in Native mode or in 5503 Emulation Mode. The operating mode is determined via a DIP switch on the 5505 RTD module. Refer to the Control Microsystems Hardware Manual for details on the DIP switch settings for the module.
Enter the module address, 0 through 7, in the Value: entry field and click OK. The ain0_type parameter sets the measurement type for analog input channel 1. There are four input types available. An ain_type of 0 sets the input point measurement type to degrees Celsius. An ain_type of 1 sets the input point measurement type to degrees Fahrenheit. An ain_type of 2 sets the input point measurement type to degrees Kelvin.
Enter the analog input filter type, 0 through 3, in the Value: entry field and click OK. DIN Sub Module The DIN sub module provides sixteen I/O channels for input status from the 5505 RTD Analog input hardware. Data for each of the sixteen I/O channels may be connected to userdefined variables with the I/O connection editor. Connected variables are updated continuously with data from the 5503 RTD Analog input hardware. DIN channel 1 returns RTD status for AIN channel 0. OFF = channel 0 RTD is good.
DIN channel 14 returns measurement status for AIN channel 3. OFF = channel 0 data is in range. ON = channel 0 data is in out of range. DIN channel 15 returns the measurement type for AIN channel 3. OFF = channel 0 RTD is using 3-wire measurement. ON = channel 0 RTD is using 4-wire measurement. DIN channel 16 is reserved for future use.
ain5506 5506 Analog Input Module Description The ain5506 I/O module is comprised of two different types of I/O channels. The SCADAPack 5506 I/O hardware contains eight analog inputs and eight digital inputs. Each of these types of I/O is represented as a sub module in the ain5506 I/O module. These sub modules are named AIN for analog input I/O channels and DIN for digital input I/O channels. The ain5506 I/O module provides eight analog inputs from a 5506 Analog Input module.
Enter the module address, 0 through 15, in the Value: entry field and click OK. The ain0_type parameter sets the analog input type for analog input channel 1. There are four input types available. An ain_type of 0 sets the input type to measure 0 to 5V input signals. An ain_type of 1 sets the input type to measure 1 to 5V input signals. An ain_type of 2 sets the input type to measure 0 to 20mA input signals. An ain_type of 3 sets the input type to measure 4 to 20mA input signals.
An ain_filter value of 2 sets the input filter for 11Hz and the response time to 45ms at 60Hz and 55ms at 50Hz. An ain_filter value of 3 sets the input filter for 30Hz and the response time to 30ms at 60Hz and 30ms at 50Hz. To set the ain_filter parameter, click the ain_filter icon and then select the set / channel parameter command from the Edit menu. The I/O Board parameter dialog is opened as shown below.
Digital Input channel 3 returns the status of AIN channel 2. OFF = AIN 0 is OK. ON = AIN 0 is over or under range. Digital Input channel 4 returns the status of AIN channel 3. OFF = AIN 0 is OK. ON = AIN 0 is over or under range. Digital Input channel 5 returns the status of AIN channel 4. OFF = AIN 0 is OK. ON = AIN 0 is over or under range. Digital Input channel 6 returns the status of AIN channel 5. OFF = AIN 0 is OK. ON = AIN 0 is over or under range.
ss4202 SCADASense 4202 DR I/O without digital output Description The ss4202 IO module is used with older SCADASense 4202 DR controllers that are not equipped with a digital output. This module comprises three different types of I/O channels: analog, counter, and a digital input. The I/O hardware on older SCADASense 4202 DR‟s manufactured prior to July 2004, consists of three analog and counter inputs, a digital input and one analog output.
Notes Refer to the SCADASense 4202 DR Hardware Manual for further information on the SCADASense 4202 DR.
ss4202ds SCADASense 4202 DS I/O Description The ss4202ds I/O is used for the SCADASense 4202 DS controller. This IO module comprises three different types of I/O channels: analog, counter, and digital I/O. The SCADASense 4202 DS hardware contains five analog and counter inputs, a digital input, and two digital outputs. Each of these types of I/O is represented as a sub module in the ss4202ds I/O module.
Notes Refer to the SCADASense 4202 DS Hardware Manual for further information on the this controller‟s I/O hardware.
ss4202dr SCADASense 4202 DR Extended I/O Description The ss4202dr I/O is used with a SCADASense 4202 DR controller equipped with a digital output. The I/O boards on these SCADASense controllers, typically referred to as the 4202 DR Extended I/O, contains three analog and counter inputs, a digital input, a digital output, and one analog output. Each of these types of I/O is represented as a sub module in the ss4202dr I/O module.
Channel type Number of channels Output 1 Notes Older versions of the 4202 DR I/O board will not support this I/O module. Use the ss4202 I/O module instead. Refer to the SCADASense 4202 DR Hardware Manual for further information on the SCADASense 4202 DR with Extended I/O.
ss4203dr SCADASense 4203 DR Description The ss4203dr I/O is used with a SCADASense 4203 DR controller equipped with a digital output. The I/O boards on these SCADASense controllers contain three analog and counter inputs, a digital input, a digital output, and one analog output. Each of these types of I/O is represented as a sub module in the ss4203dr I/O module.
Number of channels 1 Notes Refer to the SCADASense 4203 DR Hardware Manual for further information on the SCADASense 4203 DR controller.
ss4203ds SCADASense 4203 DS I/O Description The ss4203ds I/O is used for the SCADASense 4203 DS controller. This IO module comprises three different types of I/O channels: analog, counter, and digital I/O. The SCADASense 4203 DS hardware contains five analog and counter inputs, a digital input, and two digital outputs. Each of these types of I/O is represented as a sub module in the ss4203ds I/O module.
Notes Refer to the SCADASense 4203 DS Hardware Manual for further information on the this controller‟s I/O hardware.
sp100 SCADAPack 100 I/O Module Description The sp100 I/O module is comprised of three different types of I/O channels. The SCADAPack 100 I/O hardware contains seven analog and counter inputs, six digital inputs and six digital outputs. Each of these types of I/O is represented as a sub module in the sp100 I/O module. These sub modules are named AIN for analog input I/O channels, DIN for digital input I/O channels and DOUT for digital output I/O channels.
Notes Refer to the SCADAPack 100 Hardware Manual for further information on the SCADAPack 100 I/O hardware.
sp330 SCADAPack 330 I/O Description The sp330 I/O module is comprised of three different types of I/O channels. The SCADAPack 330 I/O hardware contains three analog inputs, one digital input and two digital outputs. Each of these types of I/O is represented as a sub module in the sp330 I/O module. These sub modules are named AIN for analog input I/O channels, DIN for digital input I/O channels and DOUT for digital output I/O channels.
Channel type Number of channels DIN sub-module Data type Channel type Number of channels DOUT sub-module Data type Channel type Number of channels Notes Input 3 Boolean Input 1 Boolean Output 2 Refer to the SCADAPack 330 Hardware Manual for further information on the SCADAPack 330 I/O hardware.
sp350 SCADAPack 350 I/O Description The sp350 I/O module is comprised of four different types of I/O channels. The SCADAPack 350 I/O hardware contains eight analog inputs, two analog outputs, thirteen digital inputs and eleven digital outputs. Each of these types of I/O is represented as a sub module in the sp350 I/O module. These sub modules are named AIN for analog input I/O channels, AOUT for analog output I/O channels, DIN for digital input I/O channels and DOUT for digital output I/O channels.
Digital input channel 10 returns the VLOOP over-current status. This indicates VLOOP over-current has been detected. This input clears when VLOOP output is off, or the over-current condition clears. 0 = off 1 = on Digital input channel 11 returns the digital output mismatch status. Known outputs are compared to the corresponding inputs to detect incorrect outputs. A point is compared if it has been turned on at any time since controller reset. This input indicates if one or more outputs mismatch.
Digital output channel 10 is used to control the Com3 (HMI) power. 0 = off 1 = on Data for each of the I/O channels may be connected to user-defined variables with the I/O connection editor. The SCADAPack 350 I/O hardware digital outputs are updated continuously with data read from the variables.
sp5601 SCADAPack 5601 I/O module Description The sp5601 I/O module is comprised of three different types of I/O channels. The SCADAPack sp5601 I/O hardware contains eight analog inputs, sixteen digital inputs and twelve digital outputs. Each of these types of I/O is represented as a sub module in the sp5601 I/O module. These sub modules are named AIN for analog input I/O channels, DIN for digital input I/O channels and DOUT for digital output I/O channels.
sp5602 SCADAPack 5602 I/O module Description The sp5602 I/O module is comprised of three different types of I/O channels. The SCADAPack sp5602 I/O hardware contains five analog inputs, five digital inputs and two relay digital outputs. Each of these types of I/O is represented as a sub module in the sp5602 I/O module. These sub modules are named AIN for analog input I/O channels, DIN for digital input I/O channels and DOUT for digital output I/O channels.
sp5604 SCADAPack 5604 I/O module Description The sp5604 I/O module is comprised of four different types of I/O channels. The SCADAPack 5604 I/O hardware contains ten analog inputs, two analog outputs, thirty-five digital inputs and thirty-six digital outputs. Each of these types of I/O is represented as a sub module in the sp5602 I/O module.
The sp5604 I/O Module provides thirty-two universal digital inputs or outputs. Outputs are open-collector/open drain type. These are defined as digital output channels 0 to 31. 0 = output transistor off 1 = output transistor on The sp5604 I/O module also provides two internal digital outputs. Digital output channel 32 is used to control the DC/DC converter. 0 = DC/DC converter off 1 = DC/DC converter on Digital output channel 33 is used to control the VLoop power supply.
sp5606 SCADAPack 5606 I/O module Description The sp5606 I/O module is comprised of four different types of I/O channels. The SCADAPack 5606 I/O hardware contains eight analog inputs, two optional analog outputs, forty digital inputs and sixteen digital outputs. Each of these types of I/O is represented as a sub module in the sp5606 I/O module.
Enter the analog input type, 0 through 3, in the Value: entry field and click OK. The ain1_type parameter sets the analog input type for analog input channel 2. See ain0_type description above. The ain2_type parameter sets the analog input type for analog input channel 3. See ain0_type description above. The ain3_type parameter sets the analog input type for analog input channel 4. See ain0_type description above. The ain4_type parameter sets the analog input type for analog input channel 5.
A scan_freq value of 0 synchronies the input scanning to 60Hz. A scan_freq value of 1 synchronies the input scanning to 50Hz. To set the scan_freq parameter, click the scan_freq icon and then select the set / channel parameter command from the Edit menu. The I/O Board parameter dialog is opened as shown below. Enter the scan frequency, 0 or 1, in the Value: entry field and click OK. The aout_type parameter sets the analog output type for both optional analog output channels.
The 5606 I/O Module provides 8 internal digital inputs, which indicate if the corresponding analog input is in or out of range. Digital Input channel 32 returns the status of AIN channel 0. OFF = AIN 0 is OK. ON = AIN 0 is over or under range. Digital Input channel 33 returns the status of AIN channel 1. OFF = AIN 0 is OK. ON = AIN 0 is over or under range. Digital Input channel 34 returns the status of AIN channel 2. OFF = AIN 0 is OK. ON = AIN 0 is over or under range.
Data type Channel type Number of channels DIN sub-module Data type Channel type Number of channels DOUT sub-module Data type Channel type Number of channels Integer / real Output 2 Boolean Input 32 Boolean Output 16 Notes Refer to the SCADAPack System Manual for further information on the SCADAPack 5606 I/O hardware.
sp5607 SCADAPack 5607 I/O module Description The sp5607 I/O module is comprised of four different types of I/O channels. The SCADAPack 5607 I/O hardware contains eight analog inputs, two optional analog outputs, twenty four digital inputs and ten digital outputs. Each of these types of I/O is represented as a sub module in the sp5607 I/O module.
Enter the analog input type, 0 through 3, in the Value: entry field and click OK. The ain1_type parameter sets the analog input type for analog input channel 2. See ain0_type description above. The ain2_type parameter sets the analog input type for analog input channel 3. See ain0_type description above. The ain3_type parameter sets the analog input type for analog input channel 4. See ain0_type description above. The ain4_type parameter sets the analog input type for analog input channel 5.
A scan_freq value of 0 synchronizes the input scanning to 60Hz. A scan_freq value of 1 synchronizes the input scanning to 50Hz. To set the scan_freq parameter, click the scan_freq icon and then select the set / channel parameter command from the Edit menu. The I/O Board parameter dialog is opened as shown below. Enter the scan frequency, 0 or 1, in the Value: entry field and click OK. The aout_type parameter sets the analog output type for both optional analog output channels.
The 5606 I/O Module provides 8 internal digital inputs, which indicate if the corresponding analog input is in or out of range. Digital Input channel 16 returns the status of AIN channel 0. OFF = AIN 0 is OK. ON = AIN 0 is over or under range. Digital Input channel 17 returns the status of AIN channel 1. OFF = AIN 0 is OK. ON = AIN 0 is over or under range. Digital Input channel 18 returns the status of AIN channel 2. OFF = AIN 0 is OK. ON = AIN 0 is over or under range.
Data type Channel type Number of channels DIN sub-module Data type Channel type Number of channels DOUT sub-module Data type Channel type Number of channels Notes Integer / real Output 2 Boolean Input 16 Boolean Output 10 Refer to the SCADAPack System Manual for further information on the SCADAPack 5607 I/O hardware.
splp SCADAPack LP I/O Module Description The splp I/O module is comprised of four different types of I/O channels. The SCADAPack LP I/O hardware contains eight analog inputs, two analog outputs, sixteen digital inputs and twelve relay digital outputs. Each of these types of I/O is represented as a sub module in the splp I/O module. These sub modules are named AIN for analog input I/O channels, AOUT for analog output I/O channels, DIN for digital input I/O channels and DOUT for digital output I/O channels.
Notes Refer to the SCADAPack LP Hardware Manual for further information on the SCADAPack LP I/O hardware.
Custom Function Reference The following sections describe Custom Functions and Custom Function Blocks that are specific to SCADAPack controllers. Custom functions return only one parameter and have no static data and custom function blocks return more than one parameter or have internal static data. Note: The Simulate mode in ISaGRAF does not support Control Microsystems custom function blocks. Custom functions available are described in this section of the manual.
clearsf Clear store and forward table Description The clearsf function clears all entries in the controller store and forward translation table. clearsf clearSFTable Q Arguments Inputs clearSFTable Type Boolean Description Store and forward table is cleared when TRUE. This signal must be set to FALSE once the store and forward table is cleared. Outputs Q Type Boolean Description TRUE if clearSFTable is TRUE. FALSE in all other cases.
cominfo Serial port status Description The cominfo function block provides diagnostic data about a specific serial port. cominfo comX clearErrorCntrs framingErrors parityErrors charOverrunError bufferOverrunErr portIOLineStatus Arguments Inputs comX Type Integer Description Communication port to get status information. Valid values are 1 to 4. clearErrorCntrs Boolean Serial port counters are cleared when TRUE. Serial port counters accumulate when FALSE.
Outputs portIOLineStatus Type Integer Description Serial port I/O line status. Bit 0 = state of CTS input Bit 1 = state of DCD input Notes Extended addressing is supported only by the Modbus RTU and Modbus ASCII protocols. Refer to the TeleBUS Protocols User Manual for further information on protocols. For SCADAPack & Micro16 controllers: Com3 is supported only when the SCADAPack Lower I/O module is installed. Com4 is supported only when the SCADAPack Upper I/O module is installed.
ctlrstat Get controller status code Description The ctlrstat function returns the controller status code. Use this code to monitor controller operation. ctlrstat statusOfCtrl Arguments Inputs This function block has no inputs. Outputs statusOfCtlr Type Integer Description Controller status code. 0 = Normal 1 = I/O module communication failure Notes When the Status LED flashes the error code 1 (i.e. a short flash, once every second), there is a communication failure with one or more I/O module.
devConf Device Configuration The devConf function block provides a method for users to assign an ID number to the applications running in a SCADAPack or SCADASense controller. This module is supported on all SCADAPack controllers with 2.44 (or later) firmware; SCADAPack 32 controllers with 1.92 (or later) firmware and SCADAPack 350/SCADASense controllers with 1.25 (or later) firmware. The devConf function block sets the Company ID, Logic Application number and logic Application version.
Device Configuration Read Only Registers The Device configuration is stored in Modbus input (3xxxx series) registers as shown below. The registers are read with standard Modbus commands. These registers cannot be written to. Device configuration registers used fixed addresses. This facilitates identifying the applications in a standard manner. Note: These registers must not be used for other purposes in a logic or C application.
Register Description 39829 39832 39835 39838 39841 39844 39847 39850 39853 39856 39859 39862 39865 39868 39871 39874 39877 39880 39883 39886 39889 39892 39895 39898 39901 39904 39907 39910 39913 to 39999 Application identifier 5 (see format below) Application identifier 6 (see format below) Application identifier 7 (see format below) Application identifier 8 (see format below) Application identifier 9 (see format below) Application identifier 10 (see format below) Application identifier 11 (see format be
dial Control dialup modem Description The dial function block connects an internal modem or an external modem to a remote modem. Only one Control dialup modem function block may be active on each serial communication port at any one time. The dial function block handles all port sharing and multiple dialing attempts. The dial-up connection handler prevents outgoing calls from using the serial port when an incoming call is in progress and communication is active.
Inputs dialType Type Integer Description The types of dialing used, tone or pulse. 0 = tone dialing 1 = pulse dialing initModemString Message The initialization string to be sent to the modem. The string must not be more than 32 characters long. The function block automatically adds the "AT" and "DT" or "DP" commands. These commands must not be included in the string. For example the initialization string &F0 S0=1 is acceptable but he initialization string AT&F0 S0=1 is not.
Error Code 9 Description “Serial port is not available” error occurs when the DIAL function attempts to use the serial port when another ladder communication element, C program or an incoming call has control of the port.
dlog Data Logger Function Block Description The d log function block logs an entry in the data log identified by LogID. A maximum of 16 data logs, labeled 1 to 16 are available for use. Entries to the data log are called records. Each record contains 1 to 8 fields of data. The number of data fields in a record and the data types of the fields are defined using the dlogcnfg function block. Each record in the data log is assigned a sequence number to identify the record.
Outputs Error Type Boolean status Integer Description TRUE if there is a data logging error, or if there was a creation or configuration error. FALSE in all other cases. The status code. See the Status Code table below. Status Code Code Description 10 The configuration is valid, or data is successfully logged. 12 The log ID is invalid or has not been created. 17 Undefined status. This should never occur.
dlogcnfg Data Logger Configuration Function Block Description The d log cn f g function block creates a data log identified by LogID. A maximum of 16 data logs, labeled 1 to 16 are available for use. Entries to the data log are called records. Each record contains 1 to 8 fields of data. The number of records in the log, the number of data fields in a record and the data types of the fields are defined using the dlogcnfg function block. Unused data inputs must be set to the Real value 0.0.
Inputs type2 type3 type4 type5 type6 type7 type8 Type Integer Integer Integer Integer Integer Integer Integer Description Field #2 data type (see data types below) Field #3 data type (see data types below) Field #4 data type (see data types below) Field #5 data type (see data types below) Field #6 data type (see data types below) Field #7 data type (see data types below) Field #8 data type (see data types below) Outputs Error Type Boolean Status Integer Description TRUE when there is a creation or de
Code Description 16 The log was successfully deleted. No log configuration exists. 17 Undefined status. This should never occur. Example The following example is used to create a data log with logID = 5. The input variables define the inputs to the dlogcnfg function block. The maximum number of records in the log is 225 (maxRecords = 225). The number of data fields is 4 (numFields = 4). The first field is boolean (boolType = 0). The second field is integer (intType = 3).
dlogread Data Logger Extract Function Block Description The d log r e ad function block reads a single record in the data log identified by LogID. Each record in the data log is assigned a sequence number to identify the record. The d log r e ad function block and the SCADALog application use this sequence number to identify records in the data log. The number of data fields in a record and the data types of the fields are defined using the dlogcnfg function block.
Outputs error Type Boolean status seqNum Integer Integer data1 data2 data3 data4 data5 data6 data7 data8 hundredthSeconds real real real real real real real real integer Description TRUE if the log is not configured or if there was a data reading error. FALSE in all other cases. The status code. See the Status Codes table. Same as the seqNo if it is present in the log; or the sequence number of the oldest record if the seqNum is within the size of the log preceding the oldest sequence number.
Example The following example reads a record with four fields from the data log with logID=5. The log has been created using the dlogcnfg function block (See the example for dlogcnfg). The first and second fields are Boolean and Integer. These outputs must be converted from Real into Boolean and Integer before connecting to the output variables. The third field is Real; its output can connect directly to the output variable. The fourth field is date; it creates two outputs, i.e.
dlogfcfg Configure Data Log to File Data Log to File Operation Overview The SCADAPack 330 and SCADAPack 350 controllers and SCADASense 4203 support data logging to the internal file system and the SCADAPack 330 and SCADAPack 350 controllers support data logging to a mass storage device connected via the USB host port. Each data log can be independently configured to write data to either the internal file system or a mass storage drive connected through the USB host interface.
configured. The log file will be deleted and a new log file created when all records are filled. The way full files are handled limits the effectiveness of a single log file. The file system on the internal drive of the SCADAPack 330, SCADAPack 350 and SCADASense 4203 supports multiple data log files. The number of log files that can be configured for a each instance of the DLGF function is a maximum of 65535.
If the full file handling is configured to Stop logging when the maximum number of records and maximum number of log files has been reached and the buffer is filled then data logging fails. If Logging mode is set for Internal drive then the log file is saved on the internal drive. If the logging mode is set for Internal drive, auto copy then once a mass storage drive is inserted in the USB host port the data files are copied to the mass storage device.
Log File Names Log file names are created using the Log file name entry in the DLGF Element Configuration dialog. When the files are saved to the internal drive or the mass storage device additional information is added to the file name. Data logs files are named according to the convention: Annnnnn_logfile_YYYYMMDD_HHMMSS.nlg Where: Annnnnn is the controller ID logfile is the path qualified log file name as created in the DLGF Element Configuration..
There is no limit to the number of items that can be listed in the securityTokens section. The file may contain more information than that listed above, but any additional information will not be used. Any token listed must be represented as a hex value without any prefix or suffix, for example: A1B2C3D4 The security tokens are not keyed to the mass storage device that they reside on.
dlogcfg Description The dlogcfg function block creates a data log to file identified by LogName. Entries to the data log are called records. Each record contains 1 to 8 fields of data. The size of the log, the number of data fields in a record and the data types of the fields are defined using the dlogfcfg function block. Unused data inputs must be set to the Real value 0.0. This function block is supported by the SCADAPack 350, SCADAPack 330, and the SCADASense 4203.
Inputs Type Description numLo (numLogFile) Integer The maximum number of log files that will be used. maxLo (maxLogFile) Integer The number of records in each (full) log file. A minimum of 600 records per file is required fullH (fullHandle) Integer Specify the action to take when all the log files are full. 0 = overwrite oldest, 1 = stop logging. logMo (logMode) Integer Specify how logging is to be performed.
Data Types Data Type Description 0 16 bit unsigned integer / ISaGRAF integer unsigned lower word / ISaGRAF Boolean 1 16 bit signed integer / ISaGRAF integer signed lower word 2 32 bit unsigned integer / ISaGRAF timer 3 32 bit signed integer / ISaGRAF integer 4 32 bit floating point / ISaGRAF real 5 Days and hundredths of seconds in two 32 bit unsigned integers Notes As noted in the dlogf function description, all data fields must be input to the dlogf as type Real.
dlogf Write Record to Data Log to File Description Refer to the Data Log to File Operation Overview section of the dlogfcfg function for an explanation of data logging to file operation. The dlogf function block logs an entry in the data log identified by LogID. The logID is obtained from dlogfcfg. Entries to the data log are called records. Each record contains 1 to 8 fields of data. The number of data fields in a record and the data types of the fields are defined using the dlogfcfg function block.
Inputs Type Description data4 Real Real type input of Field #4 data. data5 Real Real type input of Field #5 data. data6 Real Real type input of Field #6 data. data7 Real Real type input of Field #7 data. data8 Real Real type input of Field #8 data. suspe (suspend) Boolean When TRUE this suspends writing to file. This should be enabled prior to removing an external mass storage device.
0 Media is present. 1 No external media present.
dnpconn Get DNP connection status Description This module determines the connection status of a remote DNP station, by repeatedly sending a short message to the selected remote station and monitoring the response. This function is available for SCADAPack 330, SCADAPack 350 and SCADAPack 32 controllers. dnpconn address period status Arguments Inputs Address Type Integer Description DNP station address. Period Integer Time period for sending check message (in seconds).
dnpevent Get DNP change event statistics Description This module provides diagnostic data about DNP change events. The number of change events stored in the event buffers is totalled for all DNP classes and for all DNP point types. dnpevent clear BI CI16 CI32 AI16 AI32 AISF cls1 cls2 cls3 Arguments Inputs clear Type Boolean Description Set to TRUE to clear all DNP change event buffers.
dnplog Log a DNP event for a point Description This function logs a DNP change event for the specified DNP point. A change event is logged for the pType and pAddress specified when the enable input changes from OFF to ON. The error output is not energized if the function is successful and a change event was logged. The error output is energized if the function failed and a change event was not logged.
dnppoll Trigger a DNP class poll of a slave device Description This function triggers a DNP Class Poll message to request the specified data classes from a DNP slave. The DNP class poll is sent to the station when the enable input changes from OFF to ON. The error output is set to false if the function was successful. The error output is set to true if the class poll message failed.
dnpport Get DNP diagnostic data for a port Description This function block provides DNP diagnostic data for a specific communication port. Diagnostic information is totaled for all DNP connections on the selected communication port. dnpport iType clear success failTotal failNew formatErrors fRcvd fSent mRcvd mSent Arguments Inputs iType Type Integer Description Communication interface.
Outputs mSent Type Integer Description Number of complete DNP messages sent on this communication interface.
dnpstn Get DNP diagnostic data for a remote station Description This function block provides DNP diagnostic data for a specific DNP remote station address. Diagnostic information is totaled for all DNP communication with the station. dnpstn address clear success failTotal failNew formatErrors fRcvd fSent mRcvd mSent Arguments Inputs address Type Integer Description DNP address. clear Boolean Set to TRUE to clear all counters for selected DNP station.
dnpsync Trigger DNP clock synchronization to a slave device Description This function sends a Clock Synchronization message to a DNP slave. The Clock Synchronization message is sent to the station when the enable input changes from OFF to ON. The error output is set to false if the function was successful. The error output is set to true if the Time Synchronization message failed.
dnpunsol Trigger a DNP unsolicited response message Description The dnpunsol function triggers a DNP unsolicited response message of the specified class or classes. The unsolicited response for the specified Classes (Cls0, Cls1, Cls2, Cls3) is triggered when the enable input changes from OFF to ON. The error output is set to false if the message was triggered successfully. The error output is set to true if the unsolicited response message failed.
dtroff Control DTR Description The dtroff function provides a way of controlling the DTR signal for a specific serial port. When the state input is set to TRUE DTR for the serial port is de-asserted. DTR is constantly turned off when the state input is set to TRUE. When the state input is set to FALSE DTR for the serial port is asserted. The DTR signal is not constantly asserted. It is asserted on the transition from TRUE to FALSE on the state input.
flow Flow Accumulator Description The flow function accumulates flow from pulse type devices such as turbine flow meters. When the accumulate input is ON the function accumulates volume and calculates the flow rate. When the Log Data input goes from OFF to ON, the accumulated volume is saved in the history registers. Older history is pushed down and the oldest record is discarded. The Log Data input must be triggered at least once every 119 hours (at the maximum pulse rate of 10kHz).
Inputs input type Type Integer Integer units Integer period ID Integer Integer Outputs status Type Integer rate vol1 end1 Real Real Integer time1 Integer volP endP Real Integer timeP Integer Description Pulse Input Input type 0 = 32 bit running counter 1 = 32 bit difference Rate period 0 = seconds 1 = minutes 2 = hours 3 = days Specified record to be displayed (1 to 35). Identifies the internal flow accumulator (1 to 32).
forceled Get force LED state Description The forceled function returns the „forced‟ or „locked‟ state of the controller. A controller running ISaGRAF firmware is considered „forced‟ or „locked‟ if an I/O variable is forced to some state or value. If equipped, the Controller Force LED is ON when an I/O variable is locked. forceled stateOfForceLED Arguments Inputs This function block has no inputs.
getclock Get current date and time Description The getclock function block returns the controller real time clock information. getclock hour minute second year month day weekday Arguments Inputs This function block has no inputs. Outputs Hour Type Integer Description Real time clock hour, 0 to 23. Minute Integer Real time clock minute, 0 to 59. Second Integer Real time clock second, 0 to 59. Year Integer Real time clock year, 00 to 99. Month Integer Real time clock month, 1 to 12.
getcom Get serial port settings Description The getcom function block returns the configuration settings for a serial port. getcom type baud fullDuplex parity dataBits stopBits rxFlowControl txFlowControl timeOut comX Arguments Inputs comX Type Integer Description Communication port to get serial port settings, 1 to 4.
Outputs dataBits Type Integer Description Number of data bits 7 = 7 bits 8 = 8 bits stopBits Integer Number of stop bits 1 = 1 bit 2 = 2 bits rxFlowControl Boolean Enable receiver flow control when TRUE. Disable receiver flow control when FALSE. txFlowControl Boolean Enable transmitter flow control when TRUE. Disable transmitter flow control when FALSE. timeOut Integer Serial time-out delay in tenths of seconds. Valid values are 0 to 65535.
gethart Get HART module configuration Description The gethart function block returns the configuration parameters for a 5904 HART Interface module. gethart attempts preambles useAutoPreamble typeDevice module Arguments Inputs module Type Integer Description The module address of the HART 5904 module. Valid values are 0 to 3. Outputs attempts Type Integer Description The number of times each HART command will be sent. preambles Integer The number of preambles to send if fixed preambles selected.
getipi Get Interface IP Address The getipi function is used to get IP settings for a specific communication interface. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only. getipi ipConfigMode ipAddress subnetMask gateway ifType Arguments Inputs ifType Type Integer Description Communication interface to get IP settings.
getled LEDsDefaultState minutesToDefault Arguments Inputs This function block has no inputs. Outputs LEDsDefaultState Type Boolean Description The LED default state is ON when TRUE. The LED default state is OFF when FALSE. minutesToDefault Integer Time in minutes to return to the default state, 1 to 65535 minutes. See Also setled getmbip Get Modbus IP Protocol Settings The getmbip function is used to obtain the configured settings for a Modbus IP protocol.
connection will wait for the user to send the next command before ending the connection. TCP protocols only. Not used by UDP protocols. srvrIdleTimeout Integer The length of time, in seconds, that a server connection will wait for a message before ending the connection. TCP protocols only. Not used by UDP protocols. Q Boolean TRUE when operation is successful. FALSE when typeProtocol is invalid. Operation is unsuccessful.
getmtcp Get Modbus/TCP Settings The getmtcp function is used to obtain the configured settings for the Modbus/TCP protocol. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only. getmtcp statusOfServer port mstrIdleTimeout srvrIdleTimeout maxSrvrConnects Arguments Inputs This function block has no inputs.
getmtcpi Get Modbus/TCP Interface The getmtcpi function is used to obtain the protocol interface settings used by all Modbus IP protocols on the specified communication interface. See also the function getmtpi2, which supports Enron Modbus parameters. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only. getmtcpi ifType stn addrMode SandFEnabled Q Arguments Inputs ifType Type Integer Description Communication interface to get protocol settings.
getmtpi2 Get Modbus/TCP Interface method 2 The getmtpi2 function is used to obtain the protocol interface settings used by all Modbus IP protocols on the specified communication interface. This function supports Enron Modbus parameters. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only. getmtpi2 ifType stn addrMode SandFEnabled EnEnabled EnStn Q Arguments Inputs ifType Type Integer Description Communication interface to get protocol settings.
See Also setmtpi2, setmtcpi, getmtcpi IEC61131 User and Reference Manual April 22, 2008 280
getpmode Get controller power mode Description The getpmode function block returns the current power mode settings for the controller. Note: only. This function block is used by the SCADAPack 330 and SCADAPack 350 controllers getpmode LAN power USBHo Arguments Inputs This function block has no inputs. Outputs Type Description LAN Boolean The LAN is enabled when TRUE. The LAN is disabled when FALSE.
getprot Get protocol settings Description The getprot function block returns the protocol settings for a specific serial port. getprot prtcltype stn addrMode SandFEnabled comX Arguments Inputs ComX Type Integer Description Communication port to get port protocol settings, 1 to 4.
getprot2 Get protocol settings method 2 Description The getprot2 function block returns the protocol settings for a specific serial port. This function supports Enron Modbus parameters. getprot2 prtcltype stn addrMode SandFEnabled comX EnEnabled EnStn Arguments Inputs comX Type Integer Description Communication port to get port protocol settings, 1 to 4.
See Also setprot2, setprot, getprot, protinfo IEC61131 User and Reference Manual April 22, 2008 284
getregb Get value of boolean register Description The getregb function returns the state of specified Modbus register. If the register is found, its state is returned; otherwise FALSE is returned. The validity of the specified Modbus register is not checked. If the register is found and its current value is > 1, then TRUE is returned; otherwise FALSE is returned.
getregf Get value of floating point register Description The getregf function returns the floating-point value that is assigned to the two consecutive Modbus registers starting at address. The lower numbered register must be assigned to the higher order word. The value returned is an IEEE single precision floating point number. The validity of the specified Modbus register is not checked. If the registers are found, their current values are used to form the floating-point value returned.
getregsl Get value of signed long integer register Description The getregsl function returns the signed long integer value that is assigned to the two consecutive Modbus registers starting at address. The lower numbered register must be assigned to the higher order word. The value returned has a range of -2,147,483,647 to 2,147,483,647. The validity of the specified Modbus register is not checked. If the registers are found, their current values are used to form the signed long integer value returned.
getregss Get value of signed short integer register Description The getregss function returns the signed short integer value that is assigned to the one Modbus register specified. The value returned has a range of -32,768 to 32,767. The validity of the specified Modbus register is not checked. If the register is not found, then 0 is returned. This function provides a method for accessing database registers defined in a C Application database handler, such as the RealFLO database handler.
getregus Get value of unsigned short integer register Description The getregus function returns the unsigned short integer value that is assigned to the one Modbus register specified. The value returned has a range of 0 to 65,535. The validity of the specified Modbus register is not checked. If the register is not found, then 0 is returned. This function provides a method for accessing database registers defined in a C Application database handler, such as the RealFLO database handler.
getsf Get store and forward entry Description The getsf function block returns the store and forward information for the entry at the index location. The function clearsf is used to clear the store and forward table. getsf indexInTable comA stnA comB stnB Arguments Inputs indexInTable Type Integer Description The index of the entry in the store and forward table. Valid values are 0 to 127.
getsfip Get Store and Forward Entry Use the function block getsfip2 instead of getsfip. The getsfip2 FB supports a forwarding time-out for each table entry. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only. The getsfip function is used to obtain one translation from the Store and Forward Table.
Outputs ifFwd Type Integer Description Communication interface to forward command message from, as master, for selected table entry. When forwarding interface uses a Modbus IP protocol, ifFwd selects the type of protocol network. When a Modbus IP protocol is selected for the Forward Interface, the IP Stack automatically determines which interface to use (Ethernet or existing PPP connection) to find the requested Forward IP Address.
getsfip2 Get Store and Forward Entry method 2 The getsfip2 function is used to obtain one translation from the Store and Forward Table. This function block is used by the SCADAPack 350 and SCADAPack 32 controller series only. getsfip2 indexInTable ifSlave stnSlave ifFwd stnFwd ipFwd timeOut Arguments Inputs indexInTable Type Integer Description Index of the entry in store and forward table. Valid values are 0 to 127.
Outputs ifFwd Type Integer Description Communication interface to forward command message from, as master, for selected table entry. When forwarding interface uses a Modbus IP protocol, ifFwd selects the type of protocol network. When a Modbus IP protocol is selected for the Forward Interface, the IP Stack automatically determines which interface to use (Ethernet or existing PPP connection) to find the requested Forward IP Address.
hart0 Send HART command 0 Description The hart0 function block sends a HART protocol command 0 (“read the device identifier”) to a HART device and processes the response. This command is also the link initialization command. The Send HART command function blocks hart1, hart2, hart3 and hart33 perform link initialization automatically. The user does not have to send this command unless the device identifier is needed.
Outputs error Type Boolean Description TRUE when the enable input is TRUE and a there is an error in the command, or if the HART device fails to respond to any of the attempts. FALSE in all other cases. Status Integer This output contains the status of the HART command sent to the HART device.
Bit 5 4 3 2 1 0 Description overrun error framing error longitudinal parity error reserved – always 0 buffer overflow undefined If bit 7 of the high byte is cleared, the high byte contains a command response summary. The following table shows common values. Other values may be defined for specific commands. Consult the documentation for the HART device.
hart1 Send HART command 1 Description The hart1 function block sends a HART protocol command 1 (“read primary variable”) to a HART device and processes the response. hart1 enable module addressOfDevice e done error status code v1 u1 Arguments Inputs enable Type Boolean Description Set to TRUE to send one HART command. Enable must then be set to FALSE and back to TRUE to send another command. Each command is complete when either the done or error output is TRUE.
Outputs code Type Integer Description This output contains one of the following depending on the command status. The number of the current command attempt, or, Zero if the hart device does not respond after all command attempts, or, The response code from the HART device to the command sent. See the Response Code section below for information on response codes.
Bit 4 3 2 1 0 Description more status available (use command 48 to read) primary variable analog output fixed primary variable analog output saturated non-primary variable out of limits primary variable out of limits IEC61131 User and Reference Manual April 22, 2008 300
hart2 Send HART command 2 Description The hart2 function block sends a HART protocol command 2 (“read primary variable and percent of span”) to a HART device and processes the response. hart2 enable module addressOfDevice e done error status code v1Current u1Current v1Percent u1Percent Arguments Inputs enable Type Boolean Description Set to TRUE to send one HART command. Enable must then be set to FALSE and back to TRUE to send another command.
Outputs code Type Integer Description This output contains one of the following depending on the command status. The number of the current command attempt, or, Zero if the hart device does not respond after all command attempts, or, The response code from the HART device to the command sent. See the Response Code section below for information on response codes.
Bit 7 6 5 4 3 2 1 0 Description field device malfunction Configuration changed cold start more status available (use command 48 to read) primary variable analog output fixed primary variable analog output saturated non-primary variable out of limits primary variable out of limits IEC61131 User and Reference Manual April 22, 2008 303
hart3 Send HART command 3 Description The hart3 function block sends a HART protocol command 3 (“read dynamic variables and primary variable current”) to a HART device and processes the response. hart3 enable module addressOfDevice e done error status code v1Current u1Current v1 u1 v2 u2 v3 u3 v4 u4 Arguments Inputs enable Type Boolean Description Set to TRUE to send one HART command. Enable must then be set to FALSE and back to TRUE to send another command.
Outputs status Type Integer Description This output contains the status of the HART command sent to the HART device. 0 =HART interface module is not communicating 1 =Command ready to send to device 2 =Command sent to device 3 =Response received 4 =No valid response received after all attempts made 5 =HART interface is not ready to transmit code Integer This output contains one of the following depending on the command status.
Bit 1 0 Description buffer overflow undefined If bit 7 of the high byte is cleared, the high byte contains a command response summary. The following table shows common values. Other values may be defined for specific commands. Consult the documentation for the HART device. Code 32 64 Description Busy – the device is performing a function that cannot be interrupted by this command Command not Implemented – the command is not defined for this device. The low byte contains the field device status.
hart33 Send HART command 33 Description The hart33 function block sends a HART protocol command 33 (“read specified transmitter variables”) to a HART device and processes the response. hart33 enable module addressOfDevice ev0Code v1Code v2Code v3Code done error status code v0 u0 v1 u1 v2 u2 v3 u3 Arguments Inputs enable Type Boolean Description Set to TRUE to send one HART command. Enable must then be set to FALSE and back to TRUE to send another command.
Inputs v3Code Type Integer Description Transmitter variable code 3. The variable code specifies which variable is read from the HART device. See the documentation for your HART device for valid values. Outputs done Type Boolean Description TRUE when the enable input is TRUE and a response is received from the HART device. FALSE in all other cases. error Boolean TRUE when the enable input is TRUE and a there is an error in the command, or if the HART device fails to respond to any of the attempts.
HART Device Response Codes The code output of the function block contains the response code from the HART device contains communication error and status information. The information varies by device, but there are some common values. If bit 7 of the high byte is set, the high byte contains a communication error summary. This field is bit-mapped. The following table shows the meaning of each bit as defined by the HART protocol specifications.
inimodem Initialize modem Description The inimodem function block is used to initialize an internal modem or an external modem, typically to set it to receive calls. Only one inimodem function block may be active on each serial communication port at any one time. inimodem enable comX initModemString done error status Arguments Inputs enable Type Boolean Description Set to TRUE to send an initialization string once. Do not set Enable from TRUE to FALSE until either done or error output is TRUE.
Initialize modem status codes Error Code 0 1 2 3 6 9 Description No Error Bad configuration error occurs when an incorrect initialization string is sent to the modem. This usually means the modem does not understand a specific command in the initialization string. The controller serial port is not set to RS232 Modem. Initialization error occurs when the modem does not respond to the initialization string and may be turned off. Call aborted by the program.
ipstatus Summary of IP Connections The ipstatus function provides a summary of the IP connections. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only. ipstatus slaveConnections mstrConnections freeConnections Arguments Inputs This function block has no inputs. Outputs slaveConnections Type Integer Description Number of current slave IP connections. mstrConnections Integer Number of current master IP connections.
master Send Modbus master command Description The master function block exchanges data with another controller using either Modbus communication protocol or DF1 protocols. Note that only one master function block may be active on each serial communication port at any one time. master enable comX function slaveStn sAddress mAddress length timeOut done error statusMasterCmd Arguments Inputs enable Type Boolean Description Set to TRUE to send one master message.
Inputs mAddress Type Integer Description Modbus master register address. The first register where data will be written to or read from in this, the master controller. The register type does not have to match the type of the slave register address. It is possible to store input registers from a slave into output registers on the master and vice-versa. length Integer For Modbus protocols the length input specifies how many registers are to be transferred.
Outputs statusMasterCmd Type Integer Description The master command status codes for Modbus protocols: 00 = message sent – waiting for response 01 = response received (no error occurred) 03 = bad value in function code register 04 = bad value in slave controller address register 05 = bad value in slave register address register 06 = bad value in length register 07 = serial port or protocol is invalid 12 = response timeout 24 = exception response: invalid function code 25 = exception response: invalid addr
Function Code Purpose Description Maximum Registers 16 Write Multiple Holding Registers Write analog output registers. 60 DF1 Function Codes Function Code 00 Description Protected Write 01 Unprotected Read 02 Protected Bit Write 05 Unprotected Bit Write 08 Unprotected Write Purpose Writes words of data to limited areas of the database. Reads words of data from any area of the database. Sets or resets individual bits within limited areas of the database.
masterip Send Modbus IP Master Command Description The masterip function block exchanges data with another controller using a Modbus IP communication protocol. This function block sends a master message to a remote IP address. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only.
Inputs Type Description SlaveStn Integer Modbus station address of the slave station. Valid range is 0 to 255 if standard addressing is used, and 0 to 65534 if extended addressing is used. SAddress Integer Modbus slave register address. The first register where data will be read from or written to in the slave controller. MAddress Integer Modbus master register address. The first register where data will be written to or read from in this, the master controller.
* Function Code Purpose Description Maximum Registers 16 Write Multiple Holding Registers Write analog output registers. 60 For SCADASense Series controllers, the masterip function can read a maximum of 123 registers with a single MSIP function.
Code 14 15 16 17 18 19 20 21 22 24 25 26 27 28 29 30 Description disconnecting from slave IP address is in progress. connection to slave IP address is disconnected. invalid connection ID. invalid protocol type. invalid slave IP address. last message is still being processed. Master connection has been released. error while connecting to slave IP address. no more connections are available.
remote end. This idle timeout is configurable and applies to all master messages for the selected TCP protocol. Idle timeout is not applicable to UDP protocols.
mbusinfo Modbus Protocol Status The mbusinfo function block provides diagnostic data about Modbus protocols for a specific communication interface. Diagnostic information is totaled together for all Modbus protocols active on the selected communication interface. When multiple Modbus IP connections exist on the same interface, diagnostic information is totaled for all connections. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only.
Outputs sCmdRcvd Type Integer Description Number of master commands received on this communication interface. sRspSent Integer Number of master command responses sent on this communication interface. msgsStored Integer Number of store and forward messages received on this communication interface. msgsForwarded Integer Number of store and forward messages forwarded on this communication interface.
pida Analog Output PID Function Block Description The pida function block performs a PID algorithm and calculates an analog output. In automatic mode, the output is calculated using the PID algorithm. A new calculation is done at the rate specified by cycleTime. In manual mode (auto = FALSE), the output is set to the value of the outManual input. The output is limited to the range set by full and zero.
Inputs deadband Type Real Description The setpoint deadband is used by the PID algorithm to determine if the process requires control outputs. If the absolute value of the error is less than the deadband, then the function block skips execution of the control algorithm. This permits faster execution when the error is within a certain acceptable range or deadband. Valid range is any value greater than 0. full Real The full input is used in limiting the maximum output value of the pida function block.
The above parameters are fully described below. Setpoint The setpoint is a floating-point value representing the desired value of the process value. The error value is the difference between the process value and the setpoint. error = process value – setpoint (+/- deadband). Process Value The process value is a value that represents the actual state of the process being controlled. Gain The proportional (P) part of the PID algorithm is the gain.
Zero The zero setting is used in limiting the minimum output value of the PIDA function. If the PID algorithm calculates an output quantity that is less than the value stored in zero, the output quantity is set equal to the value stored in zero. The zero setting should always be less than the full setting. Cycle Time The cycle time is the floating-point value of the PID algorithm execution period measured in seconds. Any value greater than or equal to 0.001 seconds (1 ms) may be specified.
pidd Discrete Output PID Function Block Description The pidd function block performs a PID algorithm and controls two discrete outputs. The output is a duty cycle of a Boolean value. The duty cycle depends on the value of the output. The increase output, iOut, is cycled when the outputPercent is greater than zero. The decrease output, dOut, is cycled when the outputPercent is less than zero. In automatic mode, the output is calculated using the PID algorithm.
Inputs reset Type Real Description The reset time, in seconds. This controls the reset gain (or magnitude of integral action) in a PI or PID controller. Valid range is any value greater than 0. A value of 0 disables the reset action. rate Real The rate time, in seconds. This controls the rate gain (or magnitude of derivative action) in a PD or PID controller. Valid range is any value greater than 0. A value of 0 disables the rate action.
T R mn mn1 K en en1 en p n 2 p n1 p n2 Ti T where en s n p n and: e = error s = setpoint p = process value K = gain T = execution period Ti = integral or reset time R = rate gain m = output The above parameters are fully described below. Setpoint The setpoint is a floating-point value representing the desired value of the process value. The error value is the difference between the process value and the setpoint. error = process value – setpoint (+/- deadband).
Deadband The deadband parameter is used by the PID algorithm to determine if the process requires the control outputs to be changed. If the absolute value of the error is less than the deadband, then the function block skips execution of the control algorithm. This prevents changes to the output when the process value is near the setpoint and can reduce wear on the control elements. Valid range is any value greater than 0.
protinfo Protocol status Description The protinfo function block provides diagnostic data about a specific serial port. The status information is written to integer variables. The integer variables are updated continuously with data concerning the protocol status of the serial port. protinfo cmdEr forma check mCmdS mRspR sCmdR sRspS status msgsS msgsF comX clear Arguments Inputs comX Type Integer Description Communication port to read protocol status. Valid values are 1 to 4.
Outputs forma Type Integer Description Protocol format errors are the number of received messages that don't have the correct framing or internal formatting. This is a count of how many messages are garbled.
rxstring Receive a Message String Description This function receives a message string on the specified communications port of a controller. rxstring done enabl comX lenRe strin Arguments Inputs enable Type Boolean comX Integer lenRequest Integer Outputs done Type Boolean string Message Description Set to TRUE to receive the string. While this input is on and the complete message has not yet been received, characters will continue to be received and appended to the output string.
setclock Set current date and time Description The setclock function sets the controller real time clock. setclock set hour minute second year month day Q weekday Arguments Inputs set Type Boolean Description Sets the controller real time clock (RTC) when TRUE. Set this input to FALSE once the date and time have been set. hour Integer Real time clock hour. Valid values are 0 to 23. minute Integer Real time clock minute. Valid values are 0 to 59. second Integer Real time clock second.
setcom Set serial port settings Description The setcom function sets the configuration settings for a serial port. Use this function only when serial port settings need to be changed within a program. It is more convenient to use the Controller Serial Ports Settings dialog to download settings with the program. Serial port settings are set to the default values when the controller is initialized.
Inputs Type Description 10 =38400 baud 11 = 115200 baud 12 = 57600 baud Default = 8 fullDuplex Boolean Full-duplex operation when TRUE. Half-duplex operation when FALSE. For SCADAPack and Micro16 controllers: Default = TRUE for com1 and com2. Default = FALSE for com3 and com4. For SCADAPack 32 controllers: Default = TRUE for com1, com2 and com4. Default = FALSE for com3.
Inputs Type Description may be set to TRUE or FALSE when the protocol type is Modbus ASCII. For com3 or com4 this parameter is set to TRUE when the protocol type is Modbus RTU. This parameter is set to FALSE when the protocol type is Modbus ASCII. For SCADAPack 32 controllers: For all com ports this parameter is set to TRUE when the protocol type is Modbus RTU. This parameter is set to FALSE when the protocol type is Modbus ASCII. txFlowControl Boolean Enable transmitter flow control when TRUE.
sethart Set HART module configuration Description The sethart function sets the configuration settings for a 5904 HART Interface module. sethart set module attempts preambles useAutoPreamble typeDevice Q Arguments Inputs set Type Boolean Description Sets the HART module configuration when TRUE. Set this input to FALSE once the HART module configuration has been set. module Integer The module address of the HART 5904 module. Valid values are 0 to 3.
The number of preambles must be set even if the auto-preamble control is selected. The preambles value will be used for the link initialization command which determines the number of preambles requested by the device. In most sensor networks, the controller is the primary master device. A hand-held programmer is typically a secondary master device. Set the device type to primary unless another HART primary master device is connected to the network.
setipi Set Interface IP Address The setipi function is used to set IP settings for a specific communication interface. Message type variables are used for ipAddress and netMask to make user entry of addresses easier: e.g. 255.255.255.255. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only.
setled Set LED power settings Description The setled function sets the power settings for the controller LEDs. The state of the LEDsDefaultState input is the default state for the LED power. The time to return to the Default State is contained within the minutesToDefault input. setled set LEDsDefaultState minutesToDefault Q Arguments Inputs set Type Boolean Description Sets the LED power settings for the controller when TRUE. Set this input to FALSE once the LED power settings have been set.
setmbip Set Modbus IP Protocol Settings The setmbip function is used to configure settings for a Modbus IP protocol. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only. setmbip set typeProtocol enableServer port mstrIdleTimeout srvrIdleTimeout Q Arguments Inputs set Type Boolean Description Sets the protocol settings when TRUE. Set this input to FALSE once the settings has been set.
srvrIdleTimeout Integer The length of time, in seconds, that a server connection will wait for a message before ending the connection. 0 = disable timeout and let client close connection. TCP protocols only. Not used by UDP protocols. Outputs Q Type Boolean Description TRUE when set input is TRUE and operation is successful. FALSE when set input is FALSE. FALSE when set input is TRUE and an invalid input is used.
setmtcp Set Modbus/TCP Settings The setmtcp function is used to configure settings for the Modbus/TCP protocol. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only. setmtcp set port mstrIdleTimeout srvrIdleTimeout maxSrvrConnects Q Arguments Inputs set Type Boolean Description Sets the Modbus/TCP settings when TRUE. Set this input to FALSE once the settings has been set.
setmtcpi Set Modbus/TCP Interface The setmtcpi function block is used to set the protocol interface settings used by all Modbus IP protocols on the specified communication interface. See also the function setmtpi2 which supports Enron Modbus parameters. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only.
setmtpi2 Set Modbus/TCP Interface method 2 The setmtpi2 function block is used to set the protocol interface settings used by all Modbus IP protocols on the specified communication interface. This function supports Enron Modbus parameters. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only.
Inputs Type Description EnStn Integer Enron Modbus/TCP station number 1 to 255 in standard Modbus 1 to 65534 in extended Modbus Default = 1 Outputs Type Description Q Boolean TRUE when set input is TRUE and operation is successful. FALSE when set input is FALSE. FALSE when set input is TRUE and an invalid input is used.
setpmode Set controller power mode Description The setpmode function provides control over the power consumption of the controller. The LAN port and USB host port can be individually disabled to conserve power. The controller processor can also run at reduced speed to conserve power. The state of the LAN input enables or disables the LAN port. The power input selects the power mode for the controller. Note: This function block is used by the SCADAPack 330, SCADAPack 350 and SCADASense 4203 controller only.
setprot Set protocol settings Description The setprot function sets the protocol settings for a specific serial port. Use this function only when protocol settings need to be changed within a program. It is more convenient to use the Controller Serial Ports Settings dialog to download protocol settings with the program. setprot set comX prtclType stn addrMode SandFEnabled Q Arguments Inputs set Type Boolean Description Sets the protocol settings for the serial port when TRUE.
Inputs SandFEnabled Type Boolean Description Store and forward enable Enable store and forward when set to TRUE. Disables store and forward when set to FALSE. Default = FALSE Outputs Q Type Boolean Description TRUE if set input is TRUE. FALSE in all other cases. Notes Com3 is supported only when the SCADAPack Lower I/O module is installed. Com4 is supported only when the SCADAPack Upper I/O module is installed. Extended addressing is supported only by the Modbus RTU and Modbus ASCII protocols.
setprot2 Set protocol settings method 2 Description The setprot2 function sets the protocol settings for a specific serial port. This function supports Enron Modbus parameters. Use this function only when protocol settings need to be changed within a program. It is more convenient to use the Controller Serial Ports Settings dialog to download protocol settings with the program.
Inputs Type Description addrMode Integer Protocol addressing mode 0 = standard 1 = extended Default = 0 SandFEnabled Boolean Store and forward enable Enable store and forward when set to TRUE. Disables store and forward when set to FALSE. Default = FALSE EnEnabled Boolean Enron Modbus enable Enable Enron Modbus when set to TRUE. Disables Enron Modbus when set to FALSE.
setregb Set value of boolean register Description The setregb function writes the state of the input value to the specified Modbus register. If the register is found, the variable assigned to that register is set to 1 if value is TRUE; or to 0 if value is FALSE. If the register is not found, nothing is done. The validity of the specified Modbus register is not checked. It is assumed that address is one coil or status register.
setregf Set value of floating point register Description The setregf function writes the input floating point value to the specified Modbus register. The function writes to two consecutive registers starting at address when the floating-point value is written. If the registers are found, their current values are updated. If the registers are not found, nothing is done. The validity of the specified Modbus register is not checked. It is assumed that address is an input or holding register.
setregsl Set value of signed long integer register Description The setregsl function writes the input signed long integer value to the specified Modbus register. The function writes to two consecutive registers starting at address when the integer value is written. If the registers are found, their current values are updated. If the registers are not found, nothing is done. The validity of the specified Modbus register is not checked. It is assumed that address is an input or holding register.
setregss Set value of signed short integer register Description The setregss function writes the input signed short integer value to the specified Modbus register. The function writes to one Modbus register when the integer value is written. If the register is found, the integer assigned to that register is updated. If the register is not found, nothing is done. The validity of the specified Modbus register is not checked. It is assumed that address is an input or holding register.
setregus Set value of unsigned short integer register Description The setregus function writes the input unsigned short integer value to the specified Modbus register. The function writes to one Modbus register when the integer value is written. If the register is found, the integer assigned to that register is updated. If the register is not found, nothing is done. The validity of the specified Modbus register is not checked. It is assumed that address is an input or holding register.
setResp Control Modbus Exception Response Description The setResp function controls if a Modbus exception response is sent when an unavailable register is accessed by the Modbus protocol. See the Modbus Addressing section for details on Modbus registers. setResp except Q Arguments Inputs except Type BOOLEAN Description If TRUE an exception is sent when an unavailable register is read or written.
setsf Set store and forward entry Description The setsf function sets entries in the store and forward table. The store and forward table may contain a maximum of 128 entries. The function clearsf is used to clear the store and forward table. setsf set indexInTable comA stnA comB stnB status Arguments Inputs set Type Boolean Description When TRUE the entry is written to the store and forward table. Set this input to FALSE once the entry has been written.
Outputs status Type Integer Description Status code returned from last set operation 0 = valid entry 1 = index for entry is out of range 2 = no translation (A and B entries are equal) 3 = invalid serial port 4 = invalid station address 5 = entry already defined Notes Refer to the TeleBUS Protocols User Manual for further information on Store and Forward messaging. Com3 is supported only when the SCADAPack Lower I/O module is installed.
setsfip Set Store and Forward Entry Use the function block setsfip2 instead of setsfip. The setsfip2 FB supports a forwarding time-out for each entry. A default timeout of 10 seconds is set when setsfip is used. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only. The function block setsfip is used to define one translation in the Store and Forward Table.
Inputs stnSlave Type Integer Description Station address used in slave command message for selected table entry. 1 to 255 in standard Modbus 1 to 65534 in extended Modbus This station address must be different from the station address assigned to ifSlave. ifFwd Integer Communication interface to forward command message from, as master, for selected table entry. When forwarding interface uses a TCP or UDP protocol, ifFwd selects the type of protocol network.
Notes Translations may involve any combination of Serial Modbus or Modbus/TCP interfaces: Slave Interface Forwarding Interface Serial Modbus Interface: e.g. com1, com2, com3, or com4 Modbus IP Interface: e.g. Ethernet Serial Modbus Interface: e.g. com1, com2, com3, or com4 Serial Modbus Interface: e.g. com1, com2, com3, or com4 Serial Modbus Interface: e.g. com1, com2, com3, or com4 Modbus IP Network: e.g. Modbus/TCP, Modbus RTU over UDP, or Modbus ASCII over UDP Modbus IP Network: e.g.
setsfip2 Set Store and Forward Entry method 2 The function block setsfip2 is used to define one translation in the Store and Forward Table. This function block is used by the SCADAPack 330, SCADAPack 350 and SCADAPack 32 controller series only. Translations describe the communication path of the master command: e.g. the slave interface which receives the command and the forwarding interface to forward the command.
Inputs IfFwd Type Integer Description Communication interface to forward command message from, as master, for selected table entry. When forwarding interface uses a TCP or UDP protocol, ifFwd selects the type of protocol network. The IP Stack automatically determines the exact interface (e.g. Ethernet1) to use when it searches the network for the forward IP address.
Notes Translations may involve any combination of interfaces. The interfaces may be running a Serial Modbus or Modbus IP protocol. Slave Interface Forwarding Interface Serial Modbus Interface: e.g. com1, com2, com3, or com4 Modbus IP Interface: e.g. Ethernet Serial Modbus Interface: e.g. com1, com2, com3, or com4 Serial Modbus Interface: e.g. com1, com2, com3, or com4 Serial Modbus Interface: e.g. com1, com2, com3, or com4 Modbus IP Network: e.g.
sleep Put controller in sleep mode Description The sleep function places the SCADAPack controller into sleep mode. Sleep mode reduces power consumption to a minimum by halting the microprocessor clock and shutting down the power supply. Note: SCADAPack32 and SCADAPack32P controllers do not support the sleep function. Application programs containing the sleep function will continue to execute but the controller will not enter the sleep mode. All programs halt until the controller resumes execution.
Inputs Minute Type Integer Description Real time clock minutes for absolute time alarm, valid values 0 to 59. Number of minutes for elapsed time alarm, valid values 0 to 1439. Second Integer Real time clock seconds for absolute time alarm, valid values 0 to 59. Number of seconds for elapsed time alarm, valid values 0 to 65535. Outputs wakeSource Type Integer Description The reason the controller left sleep mode.
toeeprom Save settings to EEPROM Description The toeeprom function block saves controller settings to EEPROM. toeeprom save Q Arguments Inputs save Type Boolean Description When TRUE save the following controller settings: Serial port settings Protocol settings Enable store and forward settings LED power settings Mask for wake-up sources HART interface configuration The save input must be set to FALSE and back to TRUE to save controller settings again.
total Non-Volatile Totalizer Description The total function block reads a rate input and integrates it over the sample interval to accumulate a total. Up to 32 total function blocks can be added to a program. When the accumulate input is ON the function accumulates the total. The time1 and timeP outputs report the totals. When the enable input is ON, accumulation is enabled. When the enable input is OFF, the accumulated values and the logged data are deleted.
units Integer Input Rate period 0 = second 1 = minute 2 = hour 3 = day interval Integer The interval specifies the sample interval at which the rate input will be sampled. A sample is taken and a calculation performed if the time since the last sample is greater than or equal to the sample interval. Valid values are 1 to 65535 tenths of a second.
log input to save the accumulated value and start a new accumulation when the accumulated value grows large. The log input must be triggered at a suitable rate or the accumulator will overflow, and the accumulated value will not be accurate.
txstring Transmit a Message String Description This function transmits a message string on the specified communications port of a controller. txstring done enab comX strin Arguments Inputs Type Description enable Boolean Set to TRUE to transmit the string. Enable must then be set to FALSE and back to TRUE to send the string again. comX Integer string Message Communications Port.
TeleBUS Protocols Overview The TeleBUS communication protocols provide a standard communication interface to SCADAPack and TeleSAFE controllers. The TeleBUS protocols are compatible with the widely used Modbus RTU and ASCII protocols. Additional TeleBUS commands provide remote programming and diagnostics capability. The TeleBUS protocols operate on a wide variety of serial data links. These include RS-232 serial ports, RS-485 serial ports, radios, leased line modems, and dial up modems.
writing to the I/O database from a C or ladder logic application program; or writing to the I/O database remotely from a Modbus compatible device. To configure a serial port through the I/O database, add the module, CNFG Serial port settings, to the Register Assignment Table.
RTU Protocol Parameters The TeleBUS RTU protocol is an eight bit binary protocol. The table below shows possible and recommended communication parameters.
ASCII Protocol Parameters The TeleBUS ASCII protocol is an seven bit character based protocol. The table below shows possible and recommended communication parameters.
Baud Rate The baud rate sets the communication speed. The type of serial data link used determines the possible settings. The table below shows the possible settings for SCADAPack and TeleSAFE controllers. Note that not all port types and baud rates are available on all controller ports.
Duplex The TeleBUS protocols communicate in one direction at a time. However the type of serial data link used determines the duplex setting. The table below shows the possible settings for SCADAPack and TeleSAFE controllers. Note that not all port types are available on all controllers. Port Type RS-232 or RS-232 Dial-up modem RS-485 Possible Settings half duplex full duplex half duplex full duplex Recommended Setting Use full duplex wherever possible. Use half duplex for most external modems.
Protocol Type The protocol type may be set to emulate the Modbus ASCII and Modbus RTU protocols, or it may be disabled. When the protocol is disabled, the port functions as a normal serial port.
Station Number The TeleBUS protocol allows up to 254 devices on a network using standard addressing and up to 65534 devices using extended addressing. Station numbers identify each device. A device responds to commands addressed to it, or to commands broadcast to all stations. The station number is in the range 1 to 254 for standard addressing and 1 to 65534 for extended addressing. Address 0 indicates a command broadcast to all stations, and cannot be used as a station number.
Task Priority A task is responsible for monitoring each serial port for messages. The real time operating system (RTOS) schedules the tasks with the application program tasks according to the task priority. The priority can be changed only with the set_protocol function from an application program. The default task priority is 3. Changing the priority is not recommended.
Store and Forward Messaging Store and forward messaging re-transmits messages received by a controller. Messages may be re-transmitted on any serial port, with or without station address translation. A userdefined translation table determines actions performed for each message. The Store and Forward Messaging section below describes this feature in detail. Store and forward messaging may be enabled or disabled on each port. It is disabled by default.
Coil and Status Registers Coil and status registers contain one bit of information, that is, whether a signal is off or on. Writing any non-zero value to the register turns the bit on. Writing zero to the register turns the bit off. If the register is assigned to an I/O module, the bit status is written to the module output hardware or parameter. Reading a coil or status register returns –1 if the bit is on, or 0 if the bit is off. The stored value is returned from general purpose registers.
Input and Holding Registers Input and holding registers contain 16 bit values. Writing any value to a general purpose register stores the value in the register. Writing a value to an assigned register, writes the value to the assigned I/O module. Reading a general purpose register returns the value stored in the register. Reading an assigned register returns the value read from the I/O module.
Exception Status The exception status is a single byte containing controller specific status information. It is returned in response to the Read Exception Status function (see the Slave Mode section). A C language application program can define the status information. The modbusExceptionStatus function sets the status information. Ladder logic programs cannot set this information.
Slave ID The slave ID is a variable length message containing controller specific information. It is returned in response to the Report Slave ID function (see the Slave Mode section). A C language application program can define the information and the length of the message. The modbusSlaveID function sets the information. Ladder logic programs cannot set this information. Extended Station Addressing The TeleBUS RTU and ASCII protocols support two type of Modbus station addressing.
The TeleBUS protocols emulate the Modbus protocol functions required for communication with a host device. These functions are described below. It also implements functions for programming and remote diagnostics. These functions are not required for host communication, so are not described here. A technical specification for the TeleBUS protocol is available from Control Microsystems. It describes all the functions in detail. In most cases knowledge of the actual commands is not required.
Read Coil Status The Read Coil Status function reads data from the digital output section of the I/O database. Any number of registers may be read up to the maximum number. The read may start at any address, provided the entire block is within the valid register range. Each register is one bit.
Read Input Status The Read Input Status function reads data from the digital input section of the I/O database. Any number of registers may be read up to the maximum number. The read may start at any address, provided the entire block is within the valid register range. Each register is one bit.
Read Holding Register The Read Holding Register function reads data from the analog output section of the I/O database. Any number of registers may be read up to the maximum number. The read may start at any address, provided the entire block is within the valid register range. Each register is 16 bits.
Read Input Register The Read Input Register function reads data from the analog input section of the I/O database. Any number of registers may be read up to the maximum number. The read may start at any address, provided the entire block is within the valid register range. Each register is 16 bits.
Force Single Coil The Force Single Coil function writes one bit into the digital output section of the I/O database. The write may specify any valid register.
Preset Single Register The Preset Single Register function writes one 16 bit value into the analog output section of the I/O database. The write may specify any valid register.
Read Exception Status The Read Exception Status function reads a single byte containing controller specific status information. The information is defined by the application program. This function is included for compatibility with devices expecting to communicate with a Modicon PLC.
Force Multiple Coils The Force Multiple Coils function writes single bit values into the digital output section of the I/O database. Any number of registers may be written up to the maximum number. The write may start at any address, provided the entire block is within the valid register range. Each register is 1 bit.
Preset Multiple Registers The Preset Multiple Register function writes 16 bit values into the analog output section of the I/O database. Any number of registers may be written up to the maximum number. The write may start at any address, provided the entire block is within the valid register range. Each register is 16 bits.
Report Slave ID The Report Slave ID function reads a variable length message containing controller specific information. The information and the length of the message is defined by the application program. This function is included for compatibility with devices expecting to communicate with a Modicon PLC. Modbus Master Mode The TeleBUS protocol may act as a communication master on any serial port. In master mode, the controller sends commands to other devices on the network.
Read Coil Status The Read Coil Status function reads data from coil registers in the remote device. Data can be written into the digital input or the digital output sections of the I/O database. Any number of registers may be read up to the maximum number supported by the slave device or the maximum number above, whichever is less. The read may start at any address, provided the entire block is within the valid register range. Each register is one bit.
Read Input Status The Read Input Status function reads data from input registers in the remote device. Data can be written into the digital input or the digital output sections of the I/O database. Any number of registers may be read up to the maximum number supported by the slave device or the maximum number above, whichever is less. The read may start at any address, provided the entire block is within the valid register range. Each register is one bit.
Read Holding Register The Read Holding Register function reads data from holding registers in the remote device. Data can be written into the analog input or the analog output sections of the I/O database. Any number of registers may be read up to the maximum number supported by the slave device or the maximum number above, whichever is less. The read may start at any address, provided the entire block is within the valid register range. Each register is 16 bits.
Read Input Register The Read Input Register function reads data from input registers in the remote device. Data can be written into the analog input or the analog output sections of the I/O database. Any number of registers may be read up to the maximum number supported by the slave device or the maximum number above, whichever is less. The read may start at any address, provided the entire block is within the valid register range. Each register is 16 bits.
Force Single Coil The Force Single Coil function writes one bit into a coil register in the remote device. The data may come from the digital input or digital output sections of the I/O database. The write may specify any valid coil register in the remote device.
Preset Single Register The Preset Single Register function writes one 16 bit value into a holding register in the remote device. The data may come from the analog input or output sections of the I/O database. The write may specify any valid holding register in the remote device.
Force Multiple Coils The Force Multiple Coils function writes single bit values coil registers in the remote device. The data may come from the digital input or digital output sections of the I/O database. Any number of registers may be written up to the maximum number supported by the slave device or the maximum number above, which ever is less. The write may start at any address, provided the entire block is within the valid register range of the remote device. Each register is 1 bit.
Preset Multiple Registers The Preset Multiple Register function writes 16 bit values into holding registers of the remote device. The data may come from the analog input or output sections of the I/O database. Any number of registers may be written up to the maximum number supported by the slave device or the maximum number above, which ever is less. The write may start at any address, provided the entire block is within the valid register range of the remote device. Each register is 16 bits.
Variable Types There are ranges of Enron registers to hold short integers, long integers and single precision floats. The ranges are as follows. Range 1001 - 1999 3001 - 3999 5001 - 5999 7000 - 9999 Data Type Boolean Short integer Long integer Float In general, both Numeric and Boolean function codes can be used to read and write all types of registers. Consult the Enron Modbus specification for details. Boolean Registers Enron Modbus Boolean registers are usually numbered 1001 to 1999.
Enron Modbus Function Codes The following table shows the implemented function codes for Enron Modbus. The maximum number of registers that can be read or written with one message is shown in the maximum column. The slave device may support fewer registers than shown; consult the manual for the device for details. Functions 129, 130, 132, 133, 135, 136, 138, and 139 may be broadcast, but some Enron Modbus slave devices may not support broadcast messages. Consult the manual for the device for details.
A communication error has occurred if the slave does not respond within the expected maximum time for the complete command and response. The application program is responsible for detecting this condition. When errors occur, it is recommended that the application program retry several times before indicating a communication failure.
The Slave Interface entry contains the receiving slave interface the message is received from for each translation. The Slave Station entry contains the Modbus station address of the slave message. The Forward Interface entry contains the interface the message is forwarded from. When forwarding to a TCP or UDP network, the protocol type is selected for the Forward Interface. The IP Stack automatically determines the exact interface (e.g.
Table Size The translation table holds 128 translation entries. This is sufficient to re-transmit one-half of 256 possible addresses. On a single port controller only 128 translations are required since each address must translate to a different address for re-transmission on the same port see Invalid Translations. Invalid Translations The following translations are not valid. The described action is taken when these translations are encountered.
SCADAPack Controller An application program, written in TelePACE Ladder Logic or TelePACE C Tools and ISaGRAF IEC61131 or ISaGRAF IEC61131 C Tools programming, enables and configures store and forward messaging. A HMI host may enable and configure store and forward messaging through the controller I/O database. TelePACE Ladder Logic 1.
ISaGRAF IEC61131 C Tools The ISaGRAF C language application program interface provides the following functions. Refer to the ISaGRAF C Tools Reference and User Manual for details. The getSFTranslation function returns an entry from the store and forward translation table. The entry consists of two port and station address pairs. The setSFTranslation function writes an entry into the store and forward translation table. The entry consists of two port and station address pairs.
SCADAPack Light Controller An application program, written in TelePACE Ladder Logic or TelePACE C Tools and ISaGRAF IEC61131 or ISaGRAF IEC61131 C Tools programming, enables and configures store and forward messaging. A HMI host may enable and configure store and forward messaging through the controller I/O database. TelePACE Ladder Logic 1.
ISaGRAF IEC61131 C Tools The ISaGRAF C language application program interface provides the following functions. Refer to the ISaGRAF C Tools Reference and User Manual for details. The getSFTranslation function returns an entry from the store and forward translation table. The entry consists of two port and station address pairs. The setSFTranslation function writes an entry into the store and forward translation table. The entry consists of two port and station address pairs.
SCADAPack Plus Controller An application program, written in TelePACE Ladder Logic or TelePACE C Tools and ISaGRAF IEC61131 or ISaGRAF IEC61131 C Tools programming, enables and configures store and forward messaging. A HMI host may enable and configure store and forward messaging through the controller I/O database. TelePACE Ladder Logic 1.
ISaGRAF IEC61131 C Tools The ISaGRAF C language application program interface provides the following functions. Refer to the ISaGRAF C Tools Reference and User Manual for details. The getSFTranslation function returns an entry from the store and forward translation table. The entry consists of two port and station address pairs. The setSFTranslation function writes an entry into the store and forward translation table. The entry consists of two port and station address pairs.
SCADAPack LP Controller An application program, written in TelePACE Ladder Logic or TelePACE C Tools and ISaGRAF IEC61131 or ISaGRAF IEC61131 C Tools programming, enables and configures store and forward messaging. A HMI host may enable and configure store and forward messaging through the controller I/O database. TelePACE Ladder Logic 1.
ISaGRAF IEC61131 C Tools The ISaGRAF C language application program interface provides the following functions. Refer to the ISaGRAF C Tools Reference and User Manual for details. The getSFTranslation function returns an entry from the store and forward translation table. The entry consists of two port and station address pairs. The setSFTranslation function writes an entry into the store and forward translation table. The entry consists of two port and station address pairs.
SCADAPack 100 Controller An application program, written in TelePACE Ladder Logic or TelePACE C Tools and ISaGRAF IEC61131 or ISaGRAF IEC61131 C Tools programming, enables and configures store and forward messaging. A HMI host may enable and configure store and forward messaging through the controller I/O database. TelePACE Ladder Logic 1.
ISaGRAF IEC61131 C Tools The ISaGRAF C language application program interface provides the following functions. Refer to the ISaGRAF C Tools Reference and User Manual for details. The getSFTranslation function returns an entry from the store and forward translation table. The entry consists of two port and station address pairs. The setSFTranslation function writes an entry into the store and forward translation table. The entry consists of two port and station address pairs.
SCADAPack 330, SCADAPack 350, SCADAPack 32 and 32P Controller An application program, written in TelePACE Ladder Logic or TelePACE C++ Tools and ISaGRAF IEC61131 or ISaGRAF IEC61131 C++ Tools programming, enables and configures store and forward messaging. A HMI host may enable and configure store and forward messaging through the controller I/O database.
The getSFTranslation function returns an entry from the store and forward translation table. The entry consists of two port and station address pairs. The setSFTranslation function writes an entry into the store and forward translation table. The entry consists of two port and station address pairs. The function checks for invalid translations; if the translation is not valid it is not stored. The function returns a status code indicating success or an error if the translation is not valid.
Only one default gateway may be assigned to the controller. A PPP connection may be configured as the gateway. PPP Client Setup in Windows 2000 This section describes the procedure for setting up a PPP client from a Windows 2000 PC. Client setup for a dialup PPP connection and a direct serial PPP connection are presented.
Direct Serial PPP Connection using Windows 2000 Connection Setup Use this connection when an only serial cable is used to establish a PPP connection between a Windows 2000 PC and a SCADAPack 32, without a dialup modem. 1. From the Start menu, right click Network and Dial-up Connections from the Settings group, and select Open. The Network and Dial-up Connections dialog is displayed. 2. Double click the item Make New Connection from the Network and Dial-up Connections dialog.
4. For Network Connection Type select the type Connect directly to another computer and select the Next button. The Host or Guest options dialog is displayed. 5. Select the Guest option and the Next button. The Select a Device dialog is displayed.
6. From the menu select the serial port on your PC that will be used to connect to the SCADAPack 32. Select the Next button. The Connection Availability dialog is displayed. 7. Select either option and then select the Next button. The Connection Name dialog is displayed.
8. Enter a name for the connection and select the Finish button. The username and password prompt is displayed. 9. Select the Cancel button. The Network and Dial-up Connections dialog should be visible again.
10. Right click your new Direct Connection icon from the Network and Dial-up Connections dialog and select Properties from the list. The Properties dialog is displayed. 11. Select the Configure button from the General page. The Modem Configuration dialog is displayed.
12. There is no modem in this direct serial connection so uncheck all items including hardware flow control. Select the baud rate you intend to use (e.g. 9600 bps). Select OK to return to the Properties dialog. 13. From the Properties dialog select the Networking page.
Uncheck all components except the component Internet Protocol (TCP/IP). Select the component Internet Protocol (TCP/IP) and select the Properties button. The Internet Protocol (TCP/IP) Properties dialog is displayed.
1. The SCADAPack 32 does not have a DHCP server to automatically provide an IP address. Instead the PC‟s serial port must be given a fixed IP address to use for PPP connections. Select the option Use the following IP address. Enter an IP address to assign to your PC‟s serial port. Obtain this IP address from your Network Administrator. Then select OK to return to the Properties dialog. 2. Select OK again to close the dialog.
2. Right click your Direct Connection icon that was setup in the previous section and select Connect from the list. A prompt for username and password is displayed. 3. Enter a valid PAP or CHAP username and password. Valid usernames and passwords are configured on the PPP Login page of the Controller IP Configuration dialog and must be downloaded to the SCADAPack 32. Then select the Connect button. If neither PAP nor CHAP is being used, ignore the prompt and just select the Connect button. 4.
5. You may now connect to the IP address assigned to SCADAPack 32 PPP serial port using an appropriate application and a supported protocol (e.g. Modbus/TCP). In the example below, Firmware Loader is used to connect over PPP to the SCADAPack 32. From the PC Communication Settings dialog, the IP address assigned to the SCADAPack 32 PPP serial port is selected as the Connect to Host. Disconnecting a PPP Connection To disconnect a PPP connection made using the Windows PPP Client, do the following: 1.
2. Your Direct Connection icon should display the word Connected in the Status column. To disconnect, right click your Direct Connection icon and select Disconnect from the list.
Dial-up PPP Connection using Windows 2000 Connection Setup using Windows 2000 Use this connection when a dial-up modem is used to establish a PPP connection between a Windows 2000 PC and a SCADAPack 32. 1. From the Start menu, right click Network and Dial-up Connections from the Settings group, and select Open. The Network and Dial-up Connections dialog is displayed. 2. Double click the item Make New Connection from the Network and Dial-up Connections dialog. The connection wizard dialog is displayed. 3.
4. For Network Connection Type select the type Dial-up to private network and select the Next button. If there is more than one modem installed on the PC, the Select a Device dialog is displayed. If not, proceed to the next step.
5. From the menu select the modem installed on your PC that will be used to connect to the SCADAPack 32. Select the Next button. The Phone Number to Dial dialog is displayed. 6. Enter the phone number to dial (this can be changed later) and select the Next button. The Connection Availability dialog is displayed.
7. Select either option and then select the Next button. The Connection Name dialog is displayed. 8. Enter a name for the connection and select the Finish button. The username and password prompt is displayed.
9. Select the Cancel button. The Network and Dial-up Connections dialog should be visible again. 10. Right click your new Dial-up Connection icon from the Network and Dial-up Connections dialog and select Properties from the list. The Properties dialog is displayed.
11. From the Properties dialog select the Networking page.
12. Uncheck all components except the component Internet Protocol (TCP/IP). Select the component Internet Protocol (TCP/IP) and select the Properties button. The Internet Protocol (TCP/IP) Properties dialog is displayed. 13. The SCADAPack 32 does not have a DHCP server to automatically provide an IP address. Instead the PC‟s serial port must be given a fixed IP address to use for PPP connections. Select the option Use the following IP address. Enter an IP address to assign to your PC‟s serial port.
2. Right click your Dial-up Connection icon that was setup in the previous section and select Connect from the list. A prompt for username and password is displayed. 3. Enter a valid PAP or CHAP username and password. Valid usernames and passwords are configured on the PPP Login page of the Controller IP Configuration dialog and must be downloaded to the SCADAPack 32. Then select the Dial button. If neither PAP nor CHAP is being used, ignore the prompt and just select the Dial button. 4.
Disconnecting a PPP Connection using Windows 2000 To disconnect a PPP connection made using the Windows PPP Client, do the following: 1. From the Start menu, right click Network and Dial-up Connections from the Settings group, and select Open. The Network and Dial-up Connections dialog is displayed. 2. Your Dial-up Connection icon should display the word Connected in the Status column. To disconnect, right click your Dial-up Connection icon and select Disconnect from the list.
DNP3 User and Reference Manual The manual details implementation of the Distributed Network Protocol (DNP3) driver on SCADAPack controllers. While we continuously improve upon the contents of this manual to simply the driver configuration tasks, we also assume that users attempting to configure the DNP protocol on a SCADAPack controller have some preliminary understanding of the DNP3 communication protocol.
Pseudo-Transport Layer Breaks the application layer messages into smaller packets that can be handled by the data link layer. These packets are referred to as frames in DNP. Data Link Layer Handles the transmission and reception of data frames across the physical layer. Physical Layer This is the physical media, such as serial or Ethernet, which DNP communicates. These layers are described in the following sections of this manual.
Object Library The data types that are used in DNP are broadly grouped together into Object Groups such as Binary Input Objects and Analog Input Objects etc. Individual data points, or objects within each group, are further defined using Object Variations such as Binary Input Change with Time and 16-Bit Analog Inputs for example. In general there are two categories of data within each data type, static objects and event objects. Static objects contain the current value of the field point or software point.
First Octet Bit 7 Description Indicates memory allocation error in the slave, or For master in mimic mode indicates communication failure with the slave device. Device restarted (set on a power cycle) IIN Second Octet 7 6 5 4 3 2 1 0 Bit Number Second Octet Bit Description 0 1 2 3 Function Code not implemented Requested object unknown or there were errors in the application data Parameters out of range Event buffer overflowed Indicates event buffer overflow in the slave or master.
IEC61131 User and Reference Manual April 22, 2008 450
Application Layer The application layer in DNP is responsible for the processing of complete messages for requesting, or responding to requests, for data. The following shows the sequence of Application Layer messages between one master and one outstation.
Pseudo-Transport Layer The pseudo-transport layer formats the larger application layer messages into smaller packets that can be handled by the data link layer. These packets are referred to as frames in DNP. The pseudotransport layer inserts a single byte of information in the message header of each frame. This byte contains information such as whether the frame is the first or last frame of a message as well as a sequence number for the frame.
Data Link Layer The data link layer handles the transmission and reception of data frames across the physical layer. Each data link frame contains a source and destination address to ensure the receiving device knows where to send the response. To ensure data integrity data link layer frames contain two CRC bytes every 16 bytes. Data link layer frames are sent with or without a confirmation request.
Physical Layer The physical layer handles the physical media, such as serial or Ethernet, which DNP communicates. Modbus Database Mapping In SCADAPack controllers static DNP objects such as binary input, analog input, binary counter and analog output are associated with Modbus registers. Whenever a DNP object is created an associated Modbus register(s) is also assigned.
SCADAPack DNP Outstation A DNP3 Outstation can be considered the base class of all terminal nodes on a DNP network. All other DNP3 configuration modes, such as Master, Mimic Master or Router, as implemented by the Control Microsystems DNP driver, inherit their properties from the outstation base class. In other words, a SCADAPack controller can simultaneously take on any other operation mode, in addition to being a DNP outstation.
Enable the DNP protocol on a serial port. Configure the DNP Application and Data Link Layers Configure Class Events Generation and Transmission Configure a DNP Routing table Configure DNP points. We will map two digital inputs mapped to Modbus registers 10001 and 10002 to DNP Addresses 1 and 2.
Tasks to Complete Enable DNP Protocol on communication interface. Configure a DNP Outstation with station address. Configure DNP points and assign them to Class objects. Configure outstation to be able to trigger unsolicited messages.
Enable DNP on Communication Interface The first step recommended in configuration the DNP driver on a SCADAPack controller is to enable DNP on the communication interface. To enable the DNP protocol on com2, 1. From the Controller menu in either TelePACE or ISaGRAF, select Serial Ports. 2. Select COM2 from the Port drop down list. 3. Set the Protocol type to DNP. 4. Click on OK. 5. If using an Ethernet equipped controller, enable DNP in TCP or DNP in UDP from the Controller IP configuration dialog.
Configure DNP Outstation 1. From the Controller Menu in either TelePACE or ISaGRAF, select DNP Configuration to launch the DNP Configuration dialog. 2. The Application Layer configuration panel is displayed by default. 1. Under the Communication group box, change the Retries parameter to 2. 2. Leave all other parameters under the Communication group box at default values.
Note: Clicking on OK closes the DNP Configuration dialog. Click on OK only after you have completed the DNP configuration. 3. From the DNP Configuration panel, select the Data Link Layer tree node. a. Click on the Edit button and change the Master Station Address to 200. b. Change the RTU Station Address to 10. c. Leave all other parameters at their default values.
TIP: It may be necessary to enable the Data Link confirmation on noisy networks. However, if the Maximum Application Fragment Length is reduced to 249 bytes, it is not necessary to enable the Data Link confirmation, as each data link packet is in essence an Application Layer fragment. 4. From the DNP Configuration panel, select the Routing tree node. a. Click on the Add button to begin a new routing table entry. b. From the Add/Edit Route dialog, i. Enter 200 for the destination Station. ii.
TIP: Even though a SCADAPack outstation will respond successfully to master request, without is routing entry to the master, it is a good practice to always define such a routing entry from an outstation to its master. Moreover, without a routing entry defined to the master, the outstation will not know which port to send out unsolicited messages, if configured, to the master. v. Click on OK to add this entry to the routing table and return to the Routing dialog.
10. Click on Add to submit this point to the database and start configuration for the next point. Note that a new point has been added under the Binary Inputs tree node in the DNP Configuration panel. 11. Change the associating Modbus Address to 10002. 12. Change the Event Object to Class 2. 13. Set the Debounce appropriately. 14. Click on Add to submit this point to the database and start configuration for the next point. 15. Repeat the previous two steps to add more points if desired. 16.
Confirm Successful Configuration To confirm that the DNP driver has been properly configured, 1. From the Controller menu, select DNP Status. You will be presented with the following dialog. 2. Ensure that the DNP Status field within this dialog displays 07: enabled, configured, running. 3. You can also monitor the current state of the defined DNP binary input points from the Binary-In tab. 4.
For additional information on the any of the dialogs referenced in the above exercise, refer to the DNP Configuration Menu Reference. SCADAPack DNP Master DNP master modes currently apply only to the SCADAPack 32, SCADAPack 350, SCADAPack 330 and SCADASense 4203 controllers. As a master, a SCADAPack controller can be a regular Master or Mimic master. SCADAPack DNP Master Concepts A DNP Master station inherits all the characteristics of a DNP Outstation.
SCADAPack DNP Master SCADAPack DNP Outstation Figure 0-1: Simple SCADAPack Master-Outstation DNP Network An extension of a simple DNP Master and single outstation network, involves a SCADAPack DNP Master connected to a number of outstations over a multi-drop communication channel. The DNP Master may be configured to periodically poll each SCADAPack DNP Outstation for Class 0, 1, 2, and 3 data objects and receive unsolicited responses from the outstations.
SCADAPack DNP Mimic Master In a typical DNP network a SCADA Host master communicates with a number of outstations. The SCADA Host will poll each outstation for data and may receive change event data in the form of unsolicited responses from the outstations. This type of DNP network is shown in the following diagram.
Direct operate messages from SCADA Host The following DNP messages cannot be mimicked (Mimic does not respond on behalf of target DNP station), and are routed directly to the target outstation by the Mimic: Select and Operate messages Data Link Layer messages (e.g.
can easily be configured with communication paths and polling instructions for each connected outstation. Note: This feature is limited to the SCADAPack 32, SCADAPack 330/334, SCADAPack 350 and SCADASense 4203 controllers.
SCADAPack DNP Address Mapping Address mapping provides a direct link between an outstation’s DNP points and local Modbus registers within the SCADAPack DNP master. These remote DNP points are now mapped into specific regions of the DNP master’s Modbus database.
bandwidth or radio networks, care must be taken to ensure that your network capacity can handle all the traffic that will be generated from these local changes. How to Configure SCADAPack DNP Master In this exercise, we will configure a SCADAPack DNP Master to poll a DNP outstation with address 10. The DNP master will be communicating to the outstation by requesting for Class event data and acknowledging receipt of unsolicited responses through com1.
4. From the DNP Configuration dialog, click on the Data Link Layer tree node. a. Leave the Master Station Address at the default value of 100. b. Change the RTU Station Address to 200. 5. Click on the Master tree node from the DNP Settings dialog. a. Set the Base Poll Interval to 1s. b. Ensure Mimic Mode is Disabled. TIP: A small Base Poll interval provides better granularity.
6. Click on the Master Poll tree node from the DNP Configuration panel. a. Set the Base Poll Interval to 1s. b. Ensure Mimic Mode is Disabled. c. Click on the Add button within the Master Poll panel to create a new master poll schedule. d. In the Add/Edit Master Poll dialog, do the following: i. Set Station to 10 ii. Under Class 0 Polling group box, set the Interval to 3600 base poll intervals (1 hour). iii. Leave the Poll Offset at the default of 0 base poll intervals.
7. From the DNP Configuration panel, select the Routing tree node. c. Click on the Add button to begin a new routing table entry. d. From the Add/Edit Route dialog, i. Enter 10 for the destination Station. ii. Set the Port to COM1. iii. Leave default values for all other parameters.
Confirm Successful DNP Master Configuration With this configuration and a valid communication link between com1 of the DNP Master and com2 of the DNP outstation, you can use the DNP Master Status dialog to see communication activity between the two devices. Confirm that you have communication activity between the master and outstation as indicated in the screen capture below.
d. Enter a value of 1 for First Point. This is the DNP Address of the first Binary Input point in Station 10. e. Enter 3 for Number of points to map. f. Enter 11001 for First Register (First Modbus Register) address. Note that Modbus address 11000 must exist the in your controller database. CAUTION: In a practical setting, a DNP Master may have local I/O mapped also mapped to points within its DNP database. Ensure that you are not mapping outstation DNP points to local address being used by local I/O.
SCADAPack DNP Router All SCADAPack controllers can be configured as a DNP Router. A unique characteristic of a SCADAPack DNP router is the ability to: Route (or forward) DNP messages not destined to this station, using rules defined within a routing table. Otherwise, a SCADAPack controller not configured for DNP routing will simply discard a message whose DNP destination address does not match that of the controller.
Change event data in the form of unsolicited responses from the outstations are routed directly to the DNP SCADA Host, by the SCADAPack DNP router. A DNP Router is different from a Mimic in that a router forwards all messages are directly to the outstations, whereas the mimic responds to some messages on behalf of the outstations. Therefore, both operation modes have the advantage of delegating the task of DNP Routing of multiple outstations to this intermediate unit.
5. Click on OK to close this dialog and save your settings. 6. From the Controller menu, click on IP Configuration. 7. Select the DNP/TCP tree node from the Controller IP Configuration dialog. 8. Enable the protocol and leave all other settings at default values. Note: This exercise assumes that you have a valid IP Address, Subnet Mask and Default Gateway properly configured. 9.
TIP: In this configuration, the SCADAPack DNP Router is acting as a DNP Server on the Ethernet port. The Server Idle Timeout parameter will be used to determine how long this connection will be kept open from time of last communication activity. For a Server Idle Timeout default value of 4 minutes, and an Application Layer Timeout default value of 5 minutes, there is the possibility that the IP port will be closed, if the router is experiencing communication problems with the outstations.
Note: For proper operation of the router, there must be two routing entries in the routing table for each outstation; An entry specifying how the communication path from this router to the outstation and another communication path from the router to the SCADA DNP Master. Design Considerations The strength of DNP lies in its ability to offer time-stamped data, scheduled polling of data from multiple outstations and time synchronization, event data buffering and reporting by exception.
DNP Write Messages always request for a Confirmation As implemented in the SCADAPack DNP driver, a DNP Write request (FC 02) requires an Application Layer response from the outstation. If an acknowledgement is not received within the configured Application Layer timeout interval, the message is retried a number of times as determined by the Application Layer retry parameter.
2. System with multiple outstations, each containing numerous Class 1 events, configured with a Class 1 Hold Count of 1. 3. Relying on unsolicited messaging to get event data to master. System not designed around master polling for events. 4. Multiple masters with poor communication link. 5. Insufficient use of Deadband and debounce to curb event generation. 6. Master RTU has Application Layer confirmation enabled. 7. Enabling both the Application and Data Link Layer confirmations. 8.
Table 0-1: Hold Time and Hold Count Setup in for Six DNP Outstations DNP Outstation Address Hold Time (seconds) Hold Count 11 1 100 12 1 100 13 1 100 14 2 100 15 2 100 16 2 100 Master not polling frequently causing event buffer overflows An outstation does not discard the events within its buffer until all its configured masters have acknowledged receipt of these events. This means that an outstation event buffer may eventually fill up and overflow leading to loss of events.
Master Confirmation and Retries Application or Data Link Layer confirmations should never be enabled on a master as: 1. Master requests typically will fit within a single Application Layer fragment hence there is need for Data Link Layer confirmations. 2. Master request typically require a response, hence no need for Application Layer confirmations. Thus, enabling the Application Layer Confirmation on a DNP master is obsolete practice and may instead degrade system performance.
If either the Application or Data Link Layer Confirmation is enabled, retries should be configured to a low non-zero value. Typical retry values lie between 1 and 3.
DNP Address mapping contains multiple output points The DNP Address Mapping table allows local Modbus registers in the SCADAPack DNP master to be mapped to DNP points in an outstation. Each time an output register defined within the DNP Address Mapping table changes, a DNP Write message (FC 2) is immediately issued to update the corresponding DNP point in the outstation.
When communicating with those devices with insufficient memory it is necessary to limit the maximum application layer fragment length to what the outstation can handle. In addition, limiting the application layer fragment size beyond 249 also reduces the maximum Data Link layer frame length. Certain data radios may give better efficiency when transmitting data packets less than the maximum data link fragment size of 249 bytes.
When best to use Master in a Point to Multipoint network Data Concentrator with many outstations that will take a while to configure. When outstation data does not need to be available to logic in this node. When remote DNP data is needed by local program Strictly Repeater Forms basic node in DNP network. DNP Configuration Menu Reference This section of the manual details the SCADAPack DNP3 driver configuration parameters.
in the following list. Other SCADAPack controllers do not support DNP master and do not include the bolded items.
Application Layer Configuration The Application Layer property page is selected for editing by clicking Application Layer in the tree control section of the DNP Settings window. When selected the Application Link Layer property page is active. Application Layer parameters are set in this property page. Each parameter is described in the following paragraphs. The Communication section of the dialog contains the configurable application layer communication parameters.
The Maximum Fragment Length is maximum size of a single response fragment that the RTU will send. If the complete response message is too large to fit within a single fragment, then the SCADAPack controller will send the response in multiple fragments. Valid values are between 100 and 2048 bytes. This parameter is adjustable to allow for interoperability with simple DNP3 devices that require smaller application layer fragments.
generates unsolicited events for that Class. If unsolicited responses are enabled the controller generates unsolicited events for that Class if its value or state exceeds a defined threshold.
a chance some unsolicited messages will fail and change events will not be reported to the master station. The events remain in the outstation buffers until polled or additional events are generated. To address this issue, and ensure guaranteed delivery of high priority events, the Resend unreported events after parameter is added to the DNP configuration. This parameter controls a timer for retrying the transmission of unsolicited messages.
the data link and physical layer. Valid values are 1 to 6500 seconds. The default value is 15 seconds. The Master must have the Select/Operate functionally in order to use this feature. The Report only Level 2 Compliant Objects in Class Polls parameter affects how Short Float Analog Input, Short Float Analog Output, and 32-bit Analog Output objects are reported. These objects are converted to 32-bit Analog Input and 16-bit Analog Output objects when this parameter is selected.
Data Link Layer parameters are set in this property page. Each parameter is described in the following paragraphs. The Master Station Addresses list box contains a list of Master station addresses that the SCADAPack controller will respond to. The default list contains one master address of 100. This address may be edited, or changed, and up to 8 master stations may be added to the list. Valid entries for Master Station Addresses are 0 to 65519.
The Master Station Address edit box specifies the Master Station Address. Enter any valid Station address from 0 to 65519. The OK button adds the Master Station Address to the list and closes the dialog. An error is displayed if the Master Station Address is invalid, if the address is already in the list, or if the address conflicts with the RTU station address. The Cancel button closes the dialog without making any changes. The RTU Station Address parameter specifies the address of this RTU.
Master The Master property page is selected for editing by clicking Master in the tree control section of the DNP Settings window. This selection is only visible if the controller type is SCADAPack 330/334, SCADAPack 350, SCADAPack 32 or SCADAPack 32P. These controllers support DNP Master. When selected the Master Application Link Layer property page is active. Master parameters are set in this property page. Each parameter is described in the following paragraphs.
Master Poll The Master Poll property page is selected for editing by clicking Master Poll in the tree control section of the DNP Settings window. This selection is only visible if the controller type is a SCADAPack 330/334, SCADAPack 350, SCADAPack 32 or SCADAPack 32P. These controllers support DNP Master. When selected the Master Poll property page is active and button Copy is renamed to Edit.
The Class 3 Rate column displays the rate of polling for Class 3 data, as a multiple of the base poll interval. The OK button saves the table data and closes the DNP Settings dialog. The Cancel button closes the dialog without saving changes. Select the Add button to enter a new row in the Master Poll. Selecting the Add button opens the Add/Edit Master Poll dialog. Select the Edit button to modify the selected row in the Master Poll.
Add/Edit Master Poll Dialog This dialog is used to edit an entry or add a new entry in the Master Poll. The Station edit control displays the address of the DNP slave device to be polled. Valid values are 0 to 65519. The Class 0 Polling section of the dialog specifies the type and rate of polling for Class 0 data. The None selection disables class 0 polling for the slave station. This is the default selection.
Interval parameter is set to 60 then the master will poll the slave station every hour. Valid values are 1 to 32767. The default value is 60. The Poll Offset parameter is used to distribute the load on the communication network. The Poll Offset is entered in multiples of the base poll interval. Valid values for this parameter are 0 to the Poll Interval value minus 1. Any non-zero value delays the start of polling for the specified objects by that amount. The default value is 0.
The None selection disables class 1 polling for the slave station. This is the default selection. The At Start Up Only selection will cause the master to poll the slave station at startup only. The Interval selection will cause the master to poll the slave station at startup and then every Interval of the base poll interval. For example if the base poll interval is 60 seconds and the Interval parameter is set to 60 then the master will poll the slave station every hour.
The Accept Class 3 selection displays the enable/disable status of unsolicited responses from the slave device for Class 1 events. The default selection is disabled. The Save IIN Flags checkbox enables storing the IIN (Internal Indications) flags from the slave station in a Modbus database register. When this parameter is checked the IIN flags are saved to the entered Modbus register address. Valid entries are Modbus register addresses 30001 to 39999 and 40001 to 49999. The default value is 0.
Poll Offset Example The Poll Offset parameter enhances the control over timing of master poll messages, by allowing master poll messages to be staggered. For example, a master station may have 10 slaves to poll, and must poll them every hour. If these are included in the poll table without any poll offset, they will all be polled in quick succession on the hour – resulting in a large burst of communication activity once per hour.
The Address Mapping contains a set of mapping rules, which will allow the Remote DNP Objects to be mapped into local Modbus registers. This makes the data accessible locally, to be read and/or written locally in logic. It is also possible to perform data concentration – to map the remote DNP Objects into the local DNP address space – by defining local DNP objects and then mapping the remote DNP objects to the same Modbus registers.
Select the Edit button to modify the selected row in the Address Mapping. Selecting the Edit button opens the Add/Edit Address Mapping dialog containing the data from the selected row. This button is disabled if more than one row is selected. This button is disabled if there are no entries in the table. The Delete button removes the selected rows from the table. This button is disabled if there are no entries in the table.
Add/Edit Address Mapping Dialog This dialog is used to edit an entry or add a new entry in the Address Mapping. The Station edit control displays the address of the remote DNP station. Valid values for this field are from 0 to 65519. The Object Type combo box displays the DNP data Object Type.
messages. When it receives a message that is not sent to it the message is sent on the serial port defined in the routing table. See Chapter 0 for an explanation of using and configuring DNP Routing. The advantage of this routing ability is that the SCADA system can communicate directly with the SCADAPack controller and the SCADAPack controller can handle the communication to remote DNP slave stations. The DNP Routing table displays each routing translation as a row, with column headings, in the table.
The Timeout column displays the maximum time (in milliseconds) to wait for a Data Link response before retrying or failing the message. The IP Address column displays the IP address of the remote DNP station. The OK button saves the table data. No error checking is done on the table data. The Cancel button closes the dialog without saving changes. Select the Add button to enter a new row in the DNP Routing table. Selecting the Add button opens the Add/Edit DNP Route dialog.
Add/Edit DNP Route Dialog This dialog is used to edit an entry or add a new entry in the DNP Routing table. The Station edit control displays the address of the remote DNP station. Valid values for this field are from 0 to 65519. The Port combo box displays the communications port, which should be used to communicate with the remote DNP station. This combo box contains list of the valid communications ports, which will depend on the type of controller.
The Secondary Phone Number is the dialing string that will be used for the secondary connection to the station. The controller will make 1 or more attempts, as configured in the Application layer, to connect using this number. This number is used after the primary connection fails on all attempts. Valid values are any ASCII string. The maximum length is 32 characters. Leave this blank if you are not using a dial-up connection. The default value is blank.
Dynamic Routing In addition to the configured routing table, there is an internal dynamic routing entry. This entry is not shown in the routing table. The dynamic routing entry listens to incoming messages and learns the address of the remote station and the communication port used for communicating with it. If there is no entry in the routing table, the RTU will use the dynamic routing entry to respond to a message on the same communication port as the incoming message.
The Event Reporting Method selection specifies how binary input events are reported. A Change Of State event is an event object, without time, that is generated when the point changes state. Only one event is retained in the buffer for each point. If a subsequent event occurs for a point, the previous event object will be overwritten. The main purpose of this mode is to allow a master station to efficiently poll for changed data.
Adding Binary Inputs Binary Inputs are added to the DNP configuration using the Binary Input property page. To add a Binary Input: Select Binary Inputs in the tree control section of the DNP Settings window. Click the Add button in the Binary Inputs property page. The Binary Input property page is now displayed. Edit the Binary Input parameters as required and then click the Add button. As Binary Inputs are defined they are added as leaves to the Binary Inputs branch of the tree control.
00001 through 09999 10001 through 19999 The Class of Event Object parameter specifies the event object class the Binary Input is assigned. The selections are: None Class 1 Class 2 Class 3 The Debounce parameter limits the frequency of change events. The input must remain in the same state for the debounce time for a change of state to be detected. Note that the input is sampled every 0.1s. Changes shorter than the sample time cannot be detected.
Binary Outputs parameters are viewed in this property page. The Number of Points displays the number of binary outputs reported by this RTU. This value will increment with the addition of each configured Binary Output point. The maximum number of points is 9999. The maximum number of actual points will depend on the memory available in the controller. The Starting Address parameter specifies the starting DNP address of the first Binary Output point.
Adding Binary Outputs Binary Outputs are added to the DNP configuration using the Binary Output property page. To add a Binary Output: Select Binary Outputs in the tree control section of the DNP Settings window. Click the Add button in the Binary Outputs property page. The Binary Output property page is now displayed. Edit the Binary Output parameters as required and then click the Add button.
00001 through 09999 The Control Type parameter specifies whether the Binary Output is a paired control or not. If it is a paired control, i.e. trip/close output type, this means that the DNP address is associated to two physical control outputs and requires two Modbus addresses per DNP address. Control type selections are: Paired Not Paired The Allow Duplicate Modbus Addresses checkbox determines if the Modbus I/O database addresses assigned to the DNP data points must be unique.
16-Bit Analog Inputs parameters are set in this property page. Each parameter is described in the following paragraphs. The Number of Points displays the number of 16 bit analog inputs reported by the RTU. This value will increment with the addition of each configured 16-Bit Analog Input point. The maximum number of points is 9999. The maximum number of actual points will depend on the memory available in the controller.
For SCADAPack 32 and SCADAPack 32P controllers analog input events are processed by the DNP driver at a rate of 100 events every 100 ms. If more than 100 analog input events need to be processed they are processed sequentially in blocks of 100 until all events are processed. This allows the processing of 1000 analog input events per second.
Adding 16-Bit Analog Inputs 16-Bit Analog Inputs are added to the DNP configuration using the 16-Bit Analog Input property page. To add a 16-Bit Analog Input: Select 16-Bit Analog Inputs in the tree control section of the DNP Settings window. Click the Add button in the 16-Bit Analog Inputs property page. The 16-Bit Analog Input property page is now displayed. Edit the 16-Bit Analog Input parameters as required and then click the Add button.
40001 through 49999 The Class of Event Object parameter specifies the event object class assigned to the 16-Bit Analog Input is assigned. If Unsolicited reporting is not required for a point, it is recommended to set its Class to None. All data points automatically become members of Class 0 or None (static data).
32-Bit Analog Inputs parameters are set in this property page. Each parameter is described in the following paragraphs. The Number of Points displays the number of 32- bit analog inputs reported by the RTU. This value will increment with the addition of each configured 32-Bit Analog Input point. The maximum number of points is 9999. The maximum number of actual points will depend on the memory available in the controller.
For SCADAPack 32 and SCADAPack 32P controllers analog input events are processed by the DNP driver at a rate of 100 events every 100 ms. If more than 100 analog input events need to be processed they are processed sequentially in blocks of 100 until all events are processed. This allows the processing of 1000 analog input events per second.
Adding 32-Bit Analog Inputs 32-Bit Analog Inputs are added to the DNP configuration using the 16-Bit Analog Input property page. To add a 32-Bit Analog Input: Select 32-Bit Analog Inputs in the tree control section of the DNP Settings window. Click the Add button in the 32-Bit Analog Inputs property page. The 32-Bit Analog Input property page is now displayed. Edit the 32-Bit Analog Input parameters as required and then click the Add button.
40001 through 49998 The Class of Event Object parameter specifies the event object class the 32-Bit Analog Input is assigned. If Unsolicited reporting is not required for a DNP point, it is recommended to set its Class 0 or None. All data points automatically become members of Class 0 or None (static data).The selections are: None Class 1 Class 2 Class 3 The Deadband parameter specifies whether the RTU generates events.
Short Floating Point Analog Input parameters are set in this property page. Each parameter is described in the following paragraphs. The Number of Points displays the number of Short Floating Point Analog Inputs reported by the RTU. This value will increment with the addition of each configured Short Floating Point Analog Input point. The maximum number of points is 9999. The maximum number of actual points will depend on the memory available in the controller.
events occur and the rate at which the events are reported to the master station. The valid values for this parameter are 0 - 65535. Default value is 16. For SCADAPack 32 and SCADAPack 32P controllers analog input events are processed by the DNP driver at a rate of 100 events every 100 ms. If more than 100 analog input events need to be processed they are processed sequentially in blocks of 100 until all events are processed. This allows the processing of 1000 analog input events per second.
Adding Short Floating Point Analog Inputs Short Floating Point Analog Inputs are added to the DNP configuration using the 16-Bit Analog Input property page. To add a Short Floating Point Analog Input: Select Short Floating Point Analog Input in the tree control section of the DNP Settings window. Click the Add button in the Short Floating Point Analog Inputs property page. The Short Floating Point Analog Input property page is now displayed.
30001 through 39998 40001 through 49998 The Class of Event Object parameter specifies the event object class the Short Floating Point Analog Input is assigned. If Unsolicited reporting is not required for a DNP point, it is recommended to set its Class 0 or None. The selections are: None Class 1 Class 2 Class 3 The Deadband parameter specifies whether the RTU generates events.
16-Bit Analog Outputs parameters are viewed in this property page. The Number of Points displays the number of 16-Bit Analog Outputs reported by this RTU. This value will increment with the addition of each configured 16-Bit Analog Input point. The maximum number of points is 9999. The maximum number of actual points will depend on the memory available in the controller. The Starting Address parameter specifies the DNP address of the first 16-bit Analog Output point.
Adding 16-Bit Analog Outputs 16-Bit Analog Outputs are added to the DNP configuration using the 16-Bit Analog Outputs property page. To add a 16-Bit Analog Output: Select 16-Bit Analog Outputs in the tree control section of the DNP Settings window. Click the Add button in the 16-Bit Analog Outputs property page. The 16-Bit Analog Output property page is now displayed. Edit the 16-Bit Analog Outputs parameters as required and then click the Add button.
The Allow Duplicate Modbus Addresses checkbox determines if the Modbus I/O database addresses assigned to the DNP data points must be unique. Check this box if you want to allow more than one point to use the same Modbus address. Click the OK button to accept the 16-Bit Analog Output parameters and close the DNP Settings dialog. Click the Cancel button to close the dialog without saving any changes. Click the Add button to add the current 16-Bit Analog Output to the DNP configuration.
maximum number of points is 9999. The maximum number of actual points will depend on the memory available in the controller. The Starting Address parameter specifies the DNP address of the first 16-bit Analog Output point. The Word Order selection specifies the word order of the 32-bit value. The selections are: TelePACE Least Significant Word in first register. ISaGRAF Most Significant Word in first register.
Adding 32-Bit Analog Outputs 32-Bit Analog Outputs are added to the DNP configuration using the 32-Bit Analog Outputs property page. To add a 32-Bit Analog Output: Select 32-Bit Analog Outputs in the tree control section of the DNP Settings window. Click the Add button in the 16-Bit Analog Outputs property page. The 32-Bit Analog Output property page is now displayed. Edit the 32-Bit Analog Outputs parameters as required and then click the Add button.
40001 through 49998 The Allow Duplicate Modbus Addresses checkbox determines if the Modbus I/O database addresses assigned to the DNP data points must be unique. Check this box if you want to allow more than one point to use the same Modbus address. Click the OK button to accept the 16-Bit Analog Output parameters and close the DNP Settings dialog. Click the Cancel button to close the dialog without saving any changes.
The Number of Points displays the number of Short Floating Point Analog Outputs reported by the RTU. This value will increment with the addition of each configured Short Floating Point Analog Input point. The maximum number of points is 9999. The maximum number of actual points will depend on the memory available in the controller. The Starting Address parameter specifies the DNP address of the first Short Floating Point Analog Output point.
Adding Short Floating Point Analog Outputs Short Floating Point Analog Outputs are added to the DNP configuration using the Short Floating Point Analog Output property page. To add a Short Floating Point Analog Output: Select Short Floating Point Analog Output in the tree control section of the DNP Settings window. Click the Add button in the Short Floating Point Analog Inputs property page. The Short Floating Point Analog Output property page is now displayed.
Reference and User Manual for complete information on analog input addressing in the SCADAPack and Micro16 controllers. Valid Modbus addresses are: 30001 through 39998 40001 through 49998 The Allow Duplicate Modbus Addresses checkbox determines if the Modbus I/O database addresses assigned to the DNP data points must be unique. Check this box if you want to allow more than one point to use the same Modbus address.
16-Bit Counter Inputs parameters are set in this property page. Each parameter is described in the following paragraphs. The Number of Points displays the number of 16-Bit Counter Inputs reported by the RTU. This value will increment with the addition of each configured 16-Bit Counter Inputs point. The maximum number of points is 9999. The maximum number of actual points will depend on the memory available in the controller.
Adding 16-Bit Counter Inputs 16-Bit Counter Inputs are added to the DNP configuration using the 16-Bit Counter Inputs property page. To add a 16-Bit Counter Input: Select 16-Bit Counter Inputs in the tree control section of the DNP Settings window. Click the Add button in the 16-Bit Counter Inputs property page. The 16-Bit Counter Input property page is now displayed. Edit the 16-Bit Counter Inputs parameters as required and then click the Add button.
40001 through 49999 The Class of Event Object parameter specifies the event object class the 16-Bit Counter Input is assigned. If Unsolicited reporting is not required for a DNP point, it is recommended to set its Class 0 or None. The selections are: None Class 1 Class 2 Class 3 The Threshold parameter specifies whether the RTU generates events. The value entered is the minimum number of counts that the 16-Bit Counter Input must change since it was last reported.
32-Bit Counter Inputs parameters are set in this property page. Each parameter is described in the following paragraphs. The Number of Points displays the number of 32-Bit Counter Inputs reported by the RTU. This value will increment with the addition of each configured 32-Bit Counter Inputs point. The maximum number of points is 9999. The maximum number of actual points will depend on the memory available in the controller.
For SCADAPack 32 and SCADAPack 32P controllers counter input events are processed by the DNP driver at a rate of 100 events every 100 ms. If more than 100 counter input events need to be processed they are processed sequentially in blocks of 100 until all events are processed. This allows the processing of 1000 counter input events per second.
Adding 32-Bit Counter Inputs 32-Bit Counter Inputs are added to the DNP configuration using the 16-Bit Counter Input property page. To add a 32-Bit Analog Input: Select 32-Bit Counter Inputs in the tree control section of the DNP Settings window. Click the Add button in the 32-Bit Counter Inputs property page. The 32-Bit Counter Input property page is now displayed. Edit the 32-Bit Counter Input parameters as required and then click the Add button.
30001 through 39998 40001 through 49998 The Class of Event Object parameter specifies the event object class the 32-Bit Counter Input is assigned. If Unsolicited reporting is not required for a DNP point, it is recommended to set its Class 0 or None. The selections are: None Class 1 Class 2 Class 3 The Threshold parameter specifies whether the RTU generates events. The value entered is the minimum number of counts that the 32-Bit Counter Input must change since it was last reported.
For TelePACE applications select Controller >> DNP Master Status from the menu bar. See section 0 for information on DNP Master Status diagnostics. For ISaGRAF applications select Tools >> Controller >> DNP Master Status from the program window menu bar. DNP Diagnostics require firmware version 2.20 or newer for SCADAPack controllers and firmware version 1.50 or newer for SCADAPack 32 controllers.
Overview Tab The Overview Tab displays the run-time diagnostics for the local DNP station. The Overview display is divided into five areas of diagnostic information: DNP Status, Internal Indications, Communication Statistics, Last Message and Event Buffer. Each of these is explained in the following paragraphs. The DNP Status window provides information on the status of the DNP protocol running in the controller. Depending on the status the window may contain the following text.
The Last Message window displays information about the most recent DNP message. The information is updated each time a new message is received or transmitted. The Last Message window contains the following information. Direction displays whether the message was received or transmitted. Time displays the time at which the message was received or sent. Port displays which communication port was used for the message. Source displays the source DNP station address for the message.
Point Status Tabs The point status tabs display the state of each point of the selected type in the controller. The following tabs are displayed.
DNP Master Status When the DNP Master Status command is selected the DNP Master Status dialog is displayed. This dialog shows the run-time DNP diagnostics and status of the DNP outstations and current data values for the DNP points in these outstations. The DNP Master Status dialog has a number of selectable tabs and opens with the All Stations tab selected. The following tabs are displayed.
All Stations Tab The All Stations tab displays the run-time communications diagnostics for all outstations polled by the master or outstations reporting unsolicited data to the master. The Communication Statistics window displays a list of all outstations and the communication statistics for each station in the list. The statistics counters increment whenever a new DNP message is sent or received, and roll over after 65535 messages. The following statistics are displayed.
Remote Overview Tab The Remote Overview tab displays the run-time diagnostics and current data values for a selected remote station. The data shown is from the image of the data in the master station. The Remote Station window is where the DNP address of the remote station is entered. When the Remote station field is changed all data fields on this tab and the following I/O tabs are updated with the values for the newly selected Remote Station.
Event Buffers shows the number of events in each type of event buffer and the allocated buffer size. The buffers shown are for binary inputs, 16-bit analog inputs, 32-bit analog inputs, Floating point analog inputs, 16-bit counter inputs, and 32-bit counter inputs, and Class 1, 2, and 3 events. The Event Buffers window displays the number of events in each type of event buffer and the allocated buffer size for the selected remote station.
Remote Point Status Tabs The point status tabs show the state of each point of the selected type in the remote station selected on the Remote Overview tab. The values shown are from the image of the remote station in the master station. Note: Class 0 polling of an outstation must be enabled in the master in order to allow that outstation’s DNP points to be listed on these tabs. This is the only way for the master to retrieve a complete list of all points in an outstation.
Device Name: SCADAPack controllers Highest DNP Level Supported: Device Function: For Requests Master 2 Slave For Responses 2 Notable objects, functions, and/or qualifiers supported in addition to the Highest DNP Levels Supported (the complete list is described in the attached table): Function code 14 (warm restart) Function code 20 (Enable Unsolicited Messages) for class 1, 2, 3 objects only. Function code 21 (Disable Unsolicited Messages) for class 1, 2, 3 objects only.
Always Sometimes If 'Sometimes', when? Configurable for Always or Never Requires Application Layer Confirmation: Never Always (not recommended) When reporting Event Data (Slave devices only) When sending multi-fragment responses (Slave devices only) Sometimes If 'Sometimes', when? ______________________________________________ Configurable for always or only when Reporting Event Data and Unsolicited Messages Timeouts while waiting for: Data Link Confirm Complete Appl.
FILL OUT THE FOLLOWING ITEM FOR MASTER DEVICES ONLY: Expects Binary Input Change Events: Either time-tagged or non-time-tagged for a single event Both time-tagged and non-time-tagged for a single event Configurable (attach explanation) FILL OUT THE FOLLOWING ITEMS FOR SLAVE DEVICES ONLY: Reports Binary Input Change Events when no specific variation requested: Reports time-tagged Binary Input Change Events when no specific variation requested: Never Only time-tagged Only non-time-tagged Con
IEC61131 User and Reference Manual April 22, 2008 560
DNP V3.
DNP V3.
DNP V3.
DNP V3.
DNP V3.
DNP V3.00 TIME SYNCHRONISATION PARAMETERS This table describes the worst-case time parameters relating to time synchronisation, as required by DNP Level 2 Certification Procedure section 8.
Function code 20 (Enable Unsolicited Messages) for class 1, 2, 3 objects only. Function code 21 (Disable Unsolicited Messages) for class 1, 2, 3 objects only.
Configurable for always or only when Reporting Event Data and Unsolicited Messages Timeouts while waiting for: Data Link Confirm Configurable Complete Appl. Fragment Application Confirm Complete Appl.
Never Only time-tagged Only non-time-tagged Configurable to send both, one or the other (attach explanation) Sends Unsolicited Responses: Sends Static Data in Unsolicited Responses: Never Configurable by class Only certain objects Sometimes (attach explanation) ENABLE/DISABLE UNSOLICITED Never Binary Input Change With Time Binary Input Change With Relative Time Configurable (attach explanation) Never When Device Restarts When Status Flags Change No other options ar
DNP V3.
DNP V3.
DNP V3.
DNP V3.
DNP V3.
DNP V3.00 TIME SYNCHRONISATION PARAMETERS This table describes the worst-case time parameters relating to time synchronization, as required by DNP Level 2 Certification Procedure section 8.
TeleBUS DF1 Protocol Overview TeleBUS communication protocols provide a standard communication interface to the controller. The protocols operate on a wide variety of serial data links. These include RS-232 serial ports, RS-485 serial ports, radios, leased line modems, and dial up modems. The protocols are generally independent of the communication parameters of the link, with a few exceptions.
using the TelePACE program; using the set_port function from a C application program; writing to the I/O database from a C or ladder logic application program; or writing to the I/O database remotely from a Modbus or DF1 compatible device. To configure a serial port through the I/O database, add the module, CNFG Serial port settings, to the Register Assignment.
Protocol Parameters The TeleBUS DF1 protocols are eight bit character-oriented protocols. The table below shows possible and recommended communication parameters.
Baud Rate The baud rate sets the communication speed. The possible settings are determined by the type of serial data link used. The table below shows the possible settings for the controller. Note that not all port types and baud rates are available on all controller ports.
Duplex The TeleBUS DF1 protocols communicate in one direction at a time. However the duplex setting is determined by the type of serial data link used. The table below shows the possible settings for the controller. Note that not all port types are available on all controllers. Port Type RS-232 or RS-232 Dial-up modem RS-485 Possible Settings half duplex full duplex half duplex full duplex Recommended Setting Use full duplex wherever possible. Use half duplex for most external modems.
Protocol Type The protocol type may be set to emulate the DF1 or Modbus protocols, or it may be disabled. When the protocol is disabled, the port functions as a normal serial port.
Station Number The TeleBUS DF1 protocols allow up to 255 devices on a network. Station numbers identify each device. A device responds to commands addressed to it, or to commands broadcast to all stations. The station number is in the range 0 to 254. Address 255 indicates a command broadcast to all stations, and cannot be used as a station number. Each serial port may have a unique station number.
Task Priority A task is responsible for monitoring each serial port for messages. The real time operating system (RTOS) schedules the tasks with the application program tasks according to the task priority. The priority can be changed only with the set_protocol function from a C application program. The default task priority is 3. Changing the priority is not recommended.
Store and Forward Messaging Store and forward messaging is not supported by the TeleBUS DF1 protocols. Default Parameters All ports are configured at reset with default parameters when the controller is started in SERVICE mode. The ports use user-defined parameters when the controller is reset in the RUN mode. The default parameters are listed below.
The values change only when written by an application program or a communication protocol. Coil and Status Registers Coil and status registers contain one bit of information, that is whether a signal is off or on. For TelePACE firmware coil registers are single bits, which the protocols can read and write. There are 4096 coil registers located in the digital output section of the I/O database. Coil registers are contained within the DF1 16-bit addresses 0 to 255.
addressing scheme. Refer to the TelePACE Ladder Logic Reference and User Manual for details. C language programs access the I/O database with two functions. The dbase function reads a value from the I/O database. The setdbase function writes a value to the I/O database. These functions use either Modbus or DF1 physical addressing. Refer to the TelePACE C Tools Reference and User Manual for full details on these functions.
Modbus Addressing Modbus addressing is used in all ladder logic program functions. The controller‟s Register Assignment is also configured using Modbus addresses. The C functions dbase and setdbase support Modbus addressing. When the specified port is configured for one of the Modbus protocols, the function master_message uses Modbus addressing. The range of Modbus registers available depends on the controller being used. The following sections list the Modbus registers available for each controller type.
DF1 Addressing DF1 addressing is used by the MSTR ladder logic function when the specified port is configured for one of the DF1 protocols. Modbus addressing must be used in all other ladder logic program functions. DF1 addressing is used by function master_message when the specified port is configured for one of the DF1 protocols. The functions dbase, setdbase, setABConfiguration and getABConfiguration also support DF1 addressing.
Converting Modbus to DF1 Addresses I/O database registers are assigned within the controller‟s Register Assignment using Modbus addressing. When polling the controller from a DF1 device it is necessary to know the DF1 address corresponding to each assigned register. Refer to the section for the controller type being used. SCADAPack, SCADAPack 100: 1024K and SCADASense 4202 Series In general, the cross-reference between Modbus and DF1 addressing is shown in the following table.
Start Register 10017 End Register 10019 DIAG Force LED 10020 10020 257/3 SCADAPack AOUT module 40001 40002 1536 to 1537 Module DIN Controller digital inputs DF1 Address Range 257/0 to 257/2 SCADAPack 330, SCADAPack 350 and SCADAPack 32 Controllers In general, the cross-reference between Modbus and DF1 addressing is shown in the following table. DF1 addresses in this table are described in the format word/bit where word is the address of a 16-bit word and bit is the bit within that word.
Start Register 10017 End Register 10019 DIAG Force LED 10020 10020 257/3 SCADAPack AOUT module 40001 40002 10511 to 10512 Module DIN Controller digital inputs DF1 Address Range 257/0 to 257/2 Accessing the I/O Database Using ISaGRAF ISaGRAF programs access the I/O database through function blocks. The function blocks in ISaGRAF may use the Modbus addressing scheme when a Network Address is defined for a variable. Refer to the IEC 61131 User Manual for details.
Modbus Addressing Modbus addressing can be used in ISaGRAF program functions. The C functions dbase and setdbase support Modbus addressing. When the specified port is configured for one of the Modbus protocols, the function master_message uses Modbus addressing. Modbus addresses coil registers with a single bit address ranging from 00001 to 09999. Status registers are also addressed with single bit addresses ranging from 10001 to 19999.
DF1 Addressing DF1 addressing is used by the master function when the specified port is configured for one of the DF1 protocols. Modbus addressing must be used in all other ladder logic program functions. DF1 addressing is used by function master_message when the specified port is configured for one of the DF1 protocols. The functions dbase, setdbase, setABConfiguration and getABConfiguration also support DF1 addressing.
Converting Modbus to DF1 Addresses I/O database registers are assigned within the controller‟s Register Assignment using Modbus addressing. When polling the controller from an DF1 device it is necessary to know the DF1 address corresponding to each assigned register. In general, the cross-reference between Modbus and DF1 addressing is shown in the following table. DF1 addresses in this table are described in the format word/bit where word is the address of a 16-bit word and bit is the bit within that word.
Module SCADAPack AOUT module Start Register 40001 End Register 40002 DF1 Address Range 11249 to 111250 Slave Mode The TeleBUS DF1 protocols operate in slave and master modes simultaneously. In slave mode the controller responds to commands sent by another device. Commands may be sent to a specific device or broadcast to all devices. The TeleBUS DF1 protocols emulate the protocol functions required for communication with a host device which uses the Non-Privileged commands from the DF1 Basic Command Set.
Functions 0, 2, 5 and 8 support broadcast messages. The functions are described in detail below.
Protected Write The Protected Write function writes 8 bit values into limited areas of the I/O database. Access to the I/O database is limited to the protected address range. Any number of bytes may be written up to the maximum number. The write may start at any byte address, provided the entire block is within the protected address range. The protected address range is set using the setABConfiguration function from a C application program.
Unprotected Read The Unprotected Read function reads 8 bit values from any area of the I/O database. Access to the I/O database is limited to the unprotected address range. Any number of bytes may be read up to the maximum number. The read may start at any byte address, provided the entire block is within the unprotected address range.
Protected Bit Write The Protected Bit Write function sets or resets individual bits within limited areas of the I/O database. Access to the I/O database is limited to the protected address range. Bits are accessed one byte at a time and may be written up to the maximum number of bytes. The write may start at any byte address, provided the entire block is within the protected address range.
Unprotected Bit Write The Unprotected Bit Write function sets or resets individual bits in any area of the I/O database. Access to the I/O database is limited to the unprotected address range. Bits are accessed one byte at a time and may be written up to the maximum number of bytes. The write may start at any byte address, provided the entire block is within the unprotected address range.
Unprotected Write The Unprotected Write function writes 8 bit values into any area of the I/O database. Access to the I/O database is limited to the unprotected address range. Any number of bytes may be written up to the maximum number. The write may start at any byte address, provided the entire block is within the unprotected address range. Master Mode The TeleBUS DF1 protocols may act as a communication master on any serial port.
Protected Write The Protected Write function writes 16-bit values into the I/O database of the slave device. Access to the I/O database is limited to the protected address range of the slave device. The data may come from any area of the master I/O database within its unprotected address range. Any number of 16-bit registers may be written up to the maximum number supported by the slave device or the maximum number above, which ever is less.
Unprotected Read The Unprotected Read function reads 16-bit values from any area of the I/O database of the slave device. Access to the I/O database is limited to the unprotected address range of the slave device. Data can be written into any area of the master I/O database within its unprotected address range. Any number of 16-bit registers may be read up to the maximum number supported by the slave device or the maximum number above, which ever is less.
Protected Bit Write The Protected Bit Write function sets or resets individual bits in the I/O database of the slave device. Access to the I/O database is limited to the protected address range of the slave device. The data may come from any area of the master I/O database within the unprotected address range. One 16-bit register with a bitmask is used to write up to 16 bits of data. The register must be within the protected address range of the slave device.
Unprotected Bit Write The Unprotected Bit Write function sets or resets individual bits in any area of the I/O database of the slave device. Access to the I/O database is limited to the unprotected address range of the slave device. The data may come from any area of the master I/O database within its unprotected address range. One 16-bit register with a bitmask is used to write up to 16 bits of data. The register must be within the unprotected address range of the slave device.
Unprotected Write The Unprotected Write function writes 16-bit values into any area of the I/O database of the slave device. Access to the I/O database is limited to the unprotected address range of the slave device. The data may come from any area of the master I/O database within its unprotected address range. Any number of 16-bit registers may be written up to the maximum number supported by the slave device or the maximum number above, which ever is less.
Polling DF1 PLCs All DF1 PLCs, except the PLC-5/VME, will support some portion of the basic commands implemented.
Modem Commands The dial and inimodem functions and the ISaGRAF program dial-up connection operate with Hayes AT command set compatible external modems. The commands specify how the modem behaves. Each modem manufacturer has a different set of modem commands required to initialize the modem. This appendix lists modem initialization command strings for a number of modems. If your modem is not on the list try the generic modem settings.
5901 High Speed Dial-up Modem Command &F0 X4 V1 E0 &C1 &D2 &K0 Nn and S37 see user manual S0=1 S7=50 Description reset modem to factory or default settings (This command should be sent first.
Hayes ACCURA 96, 144 and 288 Modems String Command &F &C1 &D2 &K0 &Q6 &F &C1 &D2 &K0 &Q6 Description recall factory configuration return actual state of carrier detect (CD) signal hang up when DTR signal is dropped disable local flow control Communicate in asynchronous mode with automatic speed buffering (constant speed between DTE and modem) Kama 2400 EI String Command &F &C1 &D2 &F &C1 &D2 Description factory settings DCD asserted when carrier detected DTR controls the modem Megahertz XJ4288 28.
TeleSAFE 6901 Bell 212 Modem IEC61131 User and Reference Manual April 22, 2008 611
String Command S0 register S2 register S3 register S4 register S6 register S7 register S9 register S10 register S11 register Description Rings to answer CTS-on delay measured in units of 8.3 ms. Anti-streaming timer measured in 10‟s of seconds. CTS-off delay measured in units of 8.3 ms. Dial tone wait time measured in 10ths of a second. Carrier wait time measured in seconds. Carrier detect delay time measured in units of 8.3 ms. Carrier loss time measured in units of 8.3 ms. Tone dial speed measured in 0.