Allen-Bradley Driver

Deprecated.
Existing Allen Bradley tags in legacy applications will always continue to work, but the Rockwell Driver Tag should be used for all new development.

Not counted towards your tag license limit.

The Allen-Bradley driver provides an interface to an Allen-Bradley PLC, allowing communication via one of:

  • Serial port
  • KT/SD I/O board
  • TCP/IP

Configuration options that are not relevant to the selected mode are disabled.

If using a Rockwell CompactLogix or ControlLogix PLC, use the CIP driver.

Driver Errors: To learn more about the cause of an error condition, refer to the Driver Summary Report and the Driver Error Report, both of which are available in the Reports page. The Show Stats button will also provide current and last error messages: Show Statistics Button Widget

Allen Bradley drivers use the following standard ports, although variations may be found:

AB CIP TCP 44818
AB EIP TCP 2222 or 44818

Reference Notes:

Allen Bradley devices can collect data between polls. To access this data with either a VTScada Analog Status or Digital Status tag, configure the "History Address" edit field with the location in the PLC of the logged data value using the format:

DLx:y

where "x" is the queue number (between 0 and 255) and "y" is the field in the queue where the data value is being logged (between 3 and 11 because 1 is reserved for the date and 2 for the time).

Example:

The PLC is configured to log values of addresses T4:5.ACC and T4:6.ACC into fields 3 and 4 of queue 0 once every minute.

To configure an Analog Status tag to read the current value of address T4:6.ACC from the PLC every 10 minutes and to read its logged values every hour, the following needs to be set in the "I/O" tab of the Analog Status tag's configuration:

Address = T4:6.ACC, 

Scan Interval = 600,

History Address = DL0:4,

History Scan Interval = 3600

This driver also has the ability to save the last value written to each output tag, and to rewrite those values, either automatically when lost communications are restored, or manually by the press of a button. Carefully review the information in the Type tab to decide whether this feature should be used in your application.

If this driver is being used in conjunction with a Driver Multiplexer, then configure the Driver Multiplexer to store the last values, not the drivers connected to the Multiplexer. In this case, only the Multiplexer should be configured to re-write automatically.

Important Notes

When configuring the data-logging feature on the PLC:

  • Make sure that both date and time stamps are being logged into the relevant queues.
  • Failure to configure a queue in this manner will result in the Allen Bradley Driver tag simply ignoring all records from that particular queue. This behavior is by design because a list of logged values without time stamps is of little value.
  • Make sure that a real-time clock is present and enabled in the PLC.
  • For the same reason as above, if a real-time clock in not present in the PLC or if it is present but not enabled, the driver tag will ignore all records from all data logging queues.
  • Make sure the PLC’s real-time clock configuration (date, time, time-zone, daylight savings time) matches the workstation’s clock configuration.
  • Failure to do so will result in the Allen Bradley Driver tag setting the wrong timestamps to all logged values read from the PLC.

Allen-Bradley Driver properties ID tab

The ID tab of every tag includes the same common elements: Name, Area, Description, and Help ID.

Name:

Uniquely identifies each tag in the application. If the tag is a child of another, the parent names will be displayed in a separate area before the name field.

You may right-click on the tag's name to add or remove a conditional start expression.

Area

The area field is used to group similar tags together. By defining an area, you make it possible to:

  • Filter for particular tag groups when searching in the tag browser
  • Link dial-out alarm rosters to Alarm tags having a particular area
  • Limit the number of tags loaded upon startup.
  • Filter the alarm display to show only certain areas.
  • Filter tag selection by area when building reports

When working with Parent-Child tag structures, the area property of all child tags will automatically match the configured area of a parent. Naturally, you can change any tag's area as required. In the case of a child tag, the field background will turn yellow to indicate that you have applied an override. (Orange in the case of user-defined types. Refer to Configuration Field Colors)

To use the area field effectively, you might consider setting the same Area for each I/O driver and its related I/O tags to group all the tags representing the equipment processes installed at each I/O device. You might also consider naming the Area property for the physical location of the tag (i.e. a station or name of a landmark near the location of the I/O device). For serial port or Roster tags, you might configure the Area property according to the purpose of each tag, such as System or Communications.

You may define as many areas as you wish and you may leave the area blank for some tags (note that for Modem tags that are to be used with the Alarm Notification System, it is actually required that the area field be left blank).

To define a new area, type the name in the field. It will immediately be added. To use an existing area, use the drop-down list feature. Re-typing an existing area name is not recommended since a typo or misspelling will result in a second area being created.

There is no tool to remove an area name from VTScada since such a tool is unnecessary. An area definition will exist as long as any tag uses it and will stop existing when no tag uses it (following the next re-start).

Description

Tag names tend to be brief. The description field provides a way to give each tag a human-friendly note describing its purpose. While not mandatory, the description is highly recommended.

Tag descriptions are displayed in the tag browser, in the list of tags to be selected for a report and also on-screen when the operator holds the pointer over the tag’s widget. For installations that use the Alarm Notification System, the description will be spoken when identifying the tag that caused the alarm.

The description field will store up to 65,500 characters, but this will exceed the practical limits of what can be displayed on-screen.

This note is relevant only to those with a multilingual user interface:
When editing any textual parameter (description, area, engineering units...) always work in the phrase editor. Any changes made directly to the textual parameter will result in a new phrase being created rather than the existing phrase being changed.
In a unilingual application this makes no difference, but in a multilingual application it is regarded as poor practice.

Help Search Key

Used only by those who have created their own CHM-format context sensitive help files to accompany their application. Refer to Custom Help Files

Server List

Select (or create) a named server list. (Driver Server Lists) Servers for the list must be defined using the Application Configuration dialog, as described in Servers for Specific Services. Smaller sites that do not have multiple servers, or that use only the default server list, need not configure this field.

Allen-Bradley Driver properties Type tab

The Type tab for an Allen-Bradley driver tag properties folder consists of attributes used to identify the type of Allen-Bradley programmable logic controller that this driver will represent.

Allen-Bradley tag - Type tab

Allen Bradley, Type tab

PLC Type

Select the type of Allen-Bradley PLC that this Allen-Bradley driver tag will represent. This may be one of:

  • No Type Selected <default option>
  • PLC-2
  • PLC-3
  • PLC-5
  • PLC-5/250
  • SLC-500
  • MicroLogix 1100-1500

The MicroLogix driver is used in SLC-500 addressing. The TCP/IP port number to use for this driver is 44818.

It may be necessary to adjust the timeout interval on the TCP/IP tab if using MicroLogix.

If using a Rockwell CompactLogix or ControlLogix PLC, use the CIP driver.

Communication Mode

Set the mode to match the linked port.

PLC Address

This field should contain the address of the Allen-Bradley programmable logic controller. One of the following 3 formats is permitted. (Note that this address must be provided in octal.)

  • 012 (octal)
  • 034 0357 (octal with a bridge address)
  • 1.2.3.4 (IP address)

The PLC Address field and the TCP/IP Address fields are linked, and therefore are completed simultaneously. When you enter an address in the PLC Address field, the same address is automatically entered in the TCP/IP Address field on the TCP/IP tab for this tag. Conversely, when you enter an address in the TCP/IP Address field, the same address is automatically entered in the PLC Address field.

Number of Virtual Words

Use this field to specify the number of registers that the virtual PLC will create. The virtual PLC will then emulate a PLC-2 and respond to requests to read and write data.

Store Last Output Values

When selected, the driver will maintain a record of the last value written to each output address. This may be useful in at least two situations:

  • For hardware that does not maintain its state during a power loss and must be restored to that state when re-started.
  • When failed hardware is replaced by a new device and you would like to start that device with the values last written to the old one.

If the last output values are stored, they may be re-written by either of two methods:

  • Automatically, when communication is restored to the device.
  • Manually by way of a button press. See, Rewrite Outputs Widget for details.

Changing this value from selected to deselected will cause all stored values to be erased immediately.

If this driver is being used in conjunction with a Driver Multiplexer, then configure the Driver Multiplexer to store the last values, not the drivers connected to the Multiplexer. In this case, only the Multiplexer should be configured to re-write automatically.

Enable Auto Rewrite

If selected, the Store Last Output Values option will also be activated. This option causes the driver to rewrite the last value written to each output, in the event that communications are lost and then restored.

Use this option only if you are certain that you want the last values to be rewritten automatically after an interruption in driver communications.

Hold

Select this to have I/O tags attached to the driver hold their last value in the event of a communication failure. If not selected, tags will have their value set to invalid on a communication failure.

Allen-Bradley Driver properties Serial tab

The Serial tab for the Allen-Bradley driver tag properties folder consists of attributes used to identify and establish a connection the Serial Port tag that the Allen-Bradley driver should use to transmit data to the I/O device. The Serial tab is also used to select the communication protocol and error checking to be used in transmissions of data between the I/O device and the Allen-Bradley driver.

Allen-Bradley tag - Serial tab

Allen Bradley, Serial tab

Port

Select the Serial Port tag or TCP/IP tag you wish to be associated with this driver tag. A Serial Port tag opens a serial port to enable communications between VTScada and your PLC or RTU. A TCP/IP tag is used to connect to a series of hosts, allowing you to transmit data across a network or over the Internet.

Right-click on the selected tag to open its properties folder.

Time-Out Limit

Sets the receiver time-out limit (i.e. the time in seconds or fractions of a second that this driver should wait for a reply from the PLC or RTU).

VTScada Station Address (Octal)

Specify the address (using the octal addressing format) of the VTScada system on the serial link.

Retries

The number of times to retry a message before declaring an error.

Use only if the driver is connected to a device that uses a serial port or a UDP/IP port that is configured to be polled. When connected directly to a device using TCP/IP, this value should normally be set to 0 since TCP/IP is a guaranteed message delivery protocol.
For unreliable communications, such as radio, set to 3 or 4.

ENQ Delay

Specify the amount of time (in seconds or in fractions of a second) that this Allen-Bradley driver should wait before sending an ENQ in half duplex mode.

Note: Half duplex mode refers to the transmission of data in one direction at a time.

RTS Key Off Delay

The RTS Key Off Delay field represents the amount of time (in seconds) that this Allen Bradley driver will wait before dropping RTS at the end of a data transmission.

BCC

Click this check box to select whether the BCC error checking method will be used on communication messages.

By default, the BCC check box is not selected (i.e. CRC error checking is used on all communication messages).

Note: The CRC acronym stands for Cyclic Redundancy Check, and the BCC acronym stands for Block Check Character. Both are techniques used to detect data transmission errors. In general, CRC is a better error checking method, as it is a 16-bit error check, whereas BCC is an 8-bit error check.

Multi-Message Mode

Use only when the driver's Communication Mode is set to Serial/Modem and the DF1 Mode is set to Full Duplex.

If multiple Allen Bradley drivers are sharing the same port, then all drivers using the port must use the same configuration for this setting. Further, all of their "Communication Mode" and "DF1 Mode" settings must match as well.

This option cannot be used if other types of drivers share the same port.

See also: ABDF1IgnoreAckNak, ABDF1SerialMessages

DF1 Mode

Enables you to choose between the following data transmission modes in communications from the driver to the PLC.

  • Half Duplex: Half duplex mode refers to the transmission of data in one direction at a time. If the driver and the PLC are communicating using the half duplex mode, either the driver or the PLC may transmit data at one time. The device not communicating must wait until the device that is transmitting data is finished before it can transmit its data.
  • Full Duplex: Full duplex mode refers to the transmission of data by both parties simultaneously.
  • Radio Modem: Certain Allen Bradley PLCs use the Radio Modem Protocol (RMP) to optimize DF1 communication on radio modem links. The protocol is an enhancement of the Full Duplex Protocol and uses the same message format with all the ACK and NAK responses removed.

Allen-Bradley Driver properties SD tab

The SD tab for the Allen-Bradley driver tag properties folder consists of attributes used to identify and establish a connection to the SD I/O board, if one has been configured for this I/O device.

Allen-Bradley tag - SD tab

Allen Bradley, SD tab

Board Type

Specify the type of I/O board that has been installed. This can be one of:

  • Disabled - When selected, indicates that the I/O board for this driver is disabled.
  • S&S 5136-SD, Supplied Driver - When selected, indicates that a 5136-SD card is installed.

Device Name

The name of the device being monitored by this tag. This is a unique name that must be entered exactly as it appears in the Windows® Device Manager’s devices list.

Note: To launch the Device Manager in Windows, click Start, and then click Control Panel. Double-click System. On the Hardware tab, click Device Manager.

Time-Out Limit On SD

Set the amount of time (in seconds or in fractions of a second) that the driver will wait for a reply from the PLC's SD card.

Retries On SD

Select the number of retry attempts you wish to be made by the driver if there is no response to a message

VTScada Station Address On SD (Octal)

Specify the address of the VTScada system on the SD link. This value must be in Octal format.

The address may be set via a constant value, an expression or a numeric tag whose value is the octal address.

Allen-Bradley Driver Tag Type properties TCP/IP tab

The TCP/IP tab of the Allen-Bradley driver tag properties folder can be used to configure the address, port, and time limit to be used if communications are to be made using the TCP/IP communications protocol.

Allen-Bradley tag - TCP/IP tab

Allen Bradley, TCP tab

TCP/IP Address

The TCP/IP Address field is used to specify the port number through which this Allen-Bradley driver tag will communicate.

Note: The TCP/IP Address field and the PLC Address fields are linked, and therefore are completed simultaneously. When you enter an address in the TCP/IP Address field, the same address is automatically entered in the PLC Address field on the Type tab for this tag. Conversely, when you enter an address in the PLC Address field, the same address is automatically entered in the TCP/IP Address field.

TCP/IP Port

The TCP/IP Port Number field refers to the port number on the host address through which communications are enabled. This information should be available from your hardware specification. The default value depends on the PLC Type selected. 2222 or 44818 are typical values.

Connect Time Limit

Use the Connect Time Limit field to set the amount of time (in seconds or fractions of a second) that the driver will await responses from the PLC. Defaults to 5 seconds unless otherwise specified.

Time-Out Limit

Specifies the time to wait for the PLC to respond after connection. This is the same as the timeout on the Serial tab.

Ethernet/IP Inactivity Timeout

Applies only if the PLC Type is set to MicroLogix. The maximum network link inactivity time in seconds. If there is no communication between VTScada and the PLC for this duration, VTScada will shut down the TCP/IP socket connection to the PLC. This setting can be used to automatically terminate connections to PLC that are polled infrequently to reduce network traffic. The TCP/IP connection is automatically re-established by the driver when the PLC polling is resumed.

  • Inactivity timeout < I/O polling time will cause the session to timeout between polls
  • Inactivity timeout > I/O polling time will cause the session to remain open between polls
  • Inactivity timeout = polling time should be avoided.

Retries

The number of times to retry a message before declaring an error.

Use only if the driver is connected to a device that uses a serial port or a UDP/IP port that is configured to be polled. When connected directly to a device using TCP/IP, this value should normally be set to 0 since TCP/IP is a guaranteed message delivery protocol.
For unreliable communications, such as radio, set to 3 or 4.

Allen-Bradley Driver properties DLG tab

Certain Allen Bradley PLCs (of PLC Type "MicroLogix") can log time-stamped data into files in PLC memory.

The Allen Bradley Driver tag can read records from these files (referred to here and in the PLC documentation as queues). In order for the Allen Bradley Driver tag to make use of this feature, both the tag and the PLC must be configured properly. The DLG Read tab of the Allen Bradley Driver tag can be used to configure the tag for this feature. Refer to the PLC's manual for instructions on how to configure the PLC (noting that up to 256 queues can be created and data from different PLC memory addresses can be logged into different fields in different queues).

Allen-Bradley tag - DLG tab

Allen Bradley, DLG Read tab

Data Logging Queue

Use to select a queue (configured according to the PLC’s manual) from which the driver will be retrieving logged data.

Length of Records from Queue

Enter the length of the records in the queue selected in the Data Logging Queue drop list. This value is the length (in characters) of the records in the queue after they are converted into a string by the PLC for communication.

The valid range is from 1 to 80. The value must be calculated according to how the data logging queue was configured in the PLC itself:

  • 11 characters for the date field,
  • 9 characters for the time field,
  • 12 characters for each long integer field
  • 7 characters for each short integer field.

By default, the Allen Bradley Driver tag will assume a length of 80 chars (the maximum allowed by the PLC). While the default value will work, this may impose a penalty on the amount of communication between the driver and the PLC. Entering the exact length is therefore recommended.

Note: entering an incorrect value will most likely result in failure to read any records from a particular queue, therefore you should only change the default value if you know the exact value.