Professional Documents
Culture Documents
GFS-154B M06 Configuring IO Drivers and OPC Servers
GFS-154B M06 Configuring IO Drivers and OPC Servers
Configuring IO Drivers
and OPC Servers
Objectives
y Discuss IO drivers and OPC servers.
y Discuss detailed IO Driver configuration.
y Monitor IO driver communication.
Configuring IO Drivers and OPC Servers
Overview
After the IO drivers and OPC servers have been added to the SCU configuration, they can be
used by SCADAs to transfer data to and from the control hardware. Using the SCU
information, the SCADA will start the IO drivers automatically when iFIX starts. It will also set
up all the necessary DIT memory spaces and connections required to move the data back
and forth.
In order to populate these DITs, IO drivers must first be configured to use channels, devices
and poll records (or data blocks) to communicate to the target IO addresses. With v. 7.x
drivers this configuration step can occur on-line or off-line using the IO driver Powertool
utility. The Powertool organizes the various communication settings into a logical hierarchy
that provides quick and easy development, optimization and troubleshooting.
Channel Definition
(eg. NIC or COM port).
SCADA Server
Ethernet
PLC A PLC B
Device Definition
(eg. IP address, Station #).
The Powertool
The Powertool is a common interface shared by most GE Fanuc v.7.x IO drivers. It is the
primary interface for configuring the driver channels, devices and data blocks. It creates a
file used by the driver poll task to communicate to the appropriate hardware registers in the
plant floor control devices. Once the configuration file has been built, the Powertool does not
need to be open for communications to occur; it can be used simply to monitor the IO driver
polling.
The Powertool has two modes: Configure and Statistics.
The Configure mode allows the settings to be created or edited for channels,
devices and data blocks.
The Statistics mode allows monitoring of IO driver polling processes. Transmit and
receive counters, errors, error timestamps and, for certain drivers, even current
values can be reviewed at real-time.
The Powertool also allows manual Stop and Start of the IO driver poll
task.
NOTE:
The Powertool can be used to start and test the IO driver communications even
when iFIX is not running.
To keep things simple and efficient, it is best to save the configuration file in the project PDB
directory. It is also a good practice to name the file using the following convention:
<nodename>.XXX
where the <nodename> is the SCADA node name and XXX is the three letter driver name. For
example, the SCADA01 GE9 driver configuration file should be named SCADA01.GE9
NOTE:
If the developer wants to use a different naming convention and directory, it is
possible, but there are extra steps required. The default path and name will still
have to be configured from the Options menu (using the new names and
locations), but the developer will also need to put a “dummy” file in the PDB
directory using the naming convention described above. This dummy file can
be an empty text file; it does not actually need to contain anything. Due to
legacy functionality, the SCADA needs to see what looks like a configuration file
in the default PDB directory before it creates the DIT. Once the DIT is created,
the IO driver is started using the Powertool defaults.
The Advanced Tab of this dialog box also contains some helpful features.
Server Auto Create will detect PDB tag IO Addresses and automatically create any missing
addresses in the IO driver (according to certain preset rules). The Auto Create cannot add
devices, but it can add or extend poll records and data blocks to include new addresses.
Startup Auto Start will ensure that the IO driver starts in Run mode (ie. polling the hardware).
NIO Simulation Mode allows the DIT to reflect output values from PDB tags back as inputs.
This is generally only used for testing or simulation.
The Memory settings are useful for reducing or increasing the footprint of the DIT common
memory space on a PC. These directly affect the DIT and its efficiency and hence are rarely
edited except with assistance from GE Fanuc Technical Support.
Powertool Configuration
The Powertool allows straightforward navigation of the IO driver hierarchy. As levels are
added, a tree view of the configured elements will be displayed in the explorer pane on the
left-hand side. As items are selected in this explorer view, the settings appear in a form on
the right hand side. This is true for both Configuration and Statistics mode.
Devices
Devices are added to Channels. Their configuration depends on the hardware features and
functions supported by the IO driver. In general, Device configuration comprises of uniquely
naming the device and supplying its address (e.g., IP Address, station number, or telephone
number, etc.).
As with channels, back-up devices can be specified for automatic fail-over should the
primary device fail. Unlike channels, where error or failure detection is usually built into the
protocols they use, devices need to have failure conditions defined explicitly for them. This is
set in three fields: Reply Timeout, Delay and Retries.
Reply Timeout is the maximum allowable latency between when the IO driver transmits a
request and receives a response from the PLC. Should the PLC response exceed the reply
timeout, the IO driver will wait the period of time defined in the Delay field before it attempts
to Retry connection. If the IO driver consecutively fails to connect to the PLC the number of
times defined in the Retry field, it will automatically fail-over to the back-up device if it exists,
or it will report the lost connection to iFIX as COMM (communications) errors and continue
attempting connection.
The essential settings for a data block are the address range identifying the registers, the
data-type and the poll rate. The block name is a useful group name for the IO address range,
but unlike the channel and device names, the data block name is not required to connect
PDB tags to the DIT.
Address Ranges
A developer can create data block address ranges of any size, however there are some good
practices to follow. In general, for analog-type addresses such as integers and real numbers,
it is best to create a range of between 100 and 150 addresses, if possible. This is the
optimum size for a data block to transfer data and populate the DIT. Digital addresses such
as Boolean values follow a similar rule, with the optimum range between 100 and 200 words
(groups of bit addresses); each word is composed of 16 (or 32) single bit addresses, where
the Boolean values are stored.
An address range must be of a single homogenous data-type such as “Unsigned Integers”.
For example, if a range of addresses from 1 to 100 is composed of unsigned integers from 1
to 49, real numbers from 50 to 75 and signed integers from 76 to 100, the user will have to
create three separate data blocks: Datablock1 will range from 1 to 49 and be all unsigned
integers; Datablock2 will range from 50 to75 and be all real numbers; Datablock3 will range
from 76 to 100 and be all signed integers.
Deadband indicates that the DIT should be updated only when a value changes by at least
this amount (in native units, not percentage).
Polling Setup
Primary Poll Rate
The poll rates can be assigned in different ways. By default, the Primary poll rate will always
poll the data at the desired period (1 second, 1 minute, etc.). This poll rate tells the driver how
often to update the DIT with values from the hardware (provided the Deadband conditions
are satisfied).
Examples:
y A rate of zero (0) polls as quickly as the driver can manage.
y A rate of 0.5 polls the entire range of addresses every half-second.
y 1 polls every second; 1:00 polls every minute; 1:00:00 polls every hour; 1:00:00:00 polls
every day.
Data Blocks
Data Blocks will give the lowest level information, including information such as the number
of Transmits (requests) and Receives (responses), current data quality and timestamps for
reads, writes and errors.
Statistics Mode.
Data Block.
Devices
Device statistics show summaries and totals for all the data blocks specified within the
Device. It will also verify the channel address (IP address, or port number) as well as the
device address. It will show counts for error conditions, but for more information, the user
will need to drill down into the specific data blocks.
Channels
Device statistics show summaries and totals for all the devices specified within the Channel.
Like the Device page, the user will have to drill down for specific information.
Lab Exercises
Lab Objectives: At the end of these exercises, the student will be able to:
y Configure the MBE v.7.x IO Driver.
y Monitor communications.
y Configure GE9 IO Driver (Optional per instructor).
When you are finished with these exercises, answer the Summary Questions at the end of
the module.
1. Open the SCU. Double-click on the MBE box to open the MBE Powertool. Connect to the
Local Server if prompted.
2. The MBE driver should open your default configuration file (shown in the Titlebar):
C:\iFIX\154Water\PDB\SCADA##. MBE
6. Next, we will define the PLC device (our Modbus Simulator on the Instructor PC). The
Instructor will provide the IP address to you.
a. Edit menu Æ Add Device, or
b. Use the Add Device button.
A new device belonging to the PLCNET channel will be added to the explorer pane, and
the device configuration form will be displayed on the right side.
Use the IP
address for the
Instructor PC.
Important! Click the Advanced button and uncheck the three Optional Function Codes.
This is required for successful write communications to the Modbus Simulator.
8. Now that a Channel has been created and a Device defined, we can build data blocks to
retrieve information from the PLC simulator. We will be creating two data blocks: one for
digital values and one for analog values. Create a data block:
a. Edit menu Æ Add Data Block, or
b. Use the Add Data Block button.
1. Highlight the Analogs1 data block in the explorer pane. Switch the MBE Powertool to
Statistics mode.
a. Display Mode Æ Stats Mode, or
b. Use the Statistics Mode button.
2. The Powertool should resemble the figure below (with different stats). Verify that your
hierarchy looks like the one shown.
3. If there are errors in communications, the Last Error Time will show when they occurred,
and the Last Error frame will show a description of the error. The Timeout and Retries
counters may show indications that there have been brief interruptions. In an
operational environment, this should prompt personnel to undertake troubleshooting
and optimization to ensure clean, consistent communications.
4. If the Data Quality is Good, then the driver is currently retrieving good values from the
simulator. Continue to the next steps. If Data Quality is Bad, check the error information,
review your settings, and then check with the instructor before moving on.
5. Highlight the Digitals1 data block. Ensure communications are good before exploring the
PLC1 device and PLCNET channel. When finished reviewing the Device and channel
statistics, return to the Analogs1 data block.
6. Next, open the Data Monitor (the button is located in the lower right portion of the
Statistics pane). This is a table view of the driver image table, showing the addresses and
current values as retrieved by the driver. Switch the Format to Decimal and note that
some of the addresses are displaying integer values. The instructor can change these in
the simulator. Close the Data Monitor and the Powertool when you are finished.
Change Format
to Decimal.
1. Open the SCU. Double-click on the GE9 box to open the GE9 Powertool. Connect to the
Local Server if prompted.
2. The GE9 driver should open your default configuration file (shown in the Titlebar):
C:\iFIX\154Water\PDB\SCADA##. GE9
5. Next, we will define the PLC device (our GE Simulator). The Instructor will provide the IP
address to you.
a. Edit menu Æ Add Device, or
b. Use the Add Device button.
A new device belonging to the PLCNET channel will be added to the explorer pane, and
the device configuration form will be displayed on the right side.
Use the IP
address for the
Simulator.
7. Now that a Channel has been created and a Device defined, we can build data blocks to
retrieve information from the PLC simulator. We will be creating two data blocks: one for
digital values and one for analog values. Create a data block:
a. Edit menu Æ Add Data Block, or
b. Use the Add Data Block button.
1. Highlight the Analogs1 data block in the explorer pane. Switch the GE9 Powertool to
Statistics mode.
a. Display Mode Æ Stats Mode, or
b. Use the Statistics Mode button.
2. The Powertool should resemble the figure below (with different stats). Verify that your
hierarchy looks like the one shown.
3. If there are errors in communications, the Last Error Time will show when they occurred,
and the Last Error field will show a description of the error. The Timeout and Retries
counters may show indications that there have been brief interruptions. In an
operational environment, this should prompt personnel to undertake troubleshooting
and optimization to ensure clean, consistent communications.
4. If the Data Quality is Good, then the driver is currently retrieving good values from the
simulator. Continue to the next step. If Data Quality is Bad, check the error information,
review your settings, and then check with the instructor before moving on.
5. Highlight the Digitals1 data block. Ensure communications are good before exploring the
PLC1 device and PLCNET channel.
Review Questions
1. What kind of information does a Channel definition contain?
4. Where should a driver configuration file be located, and what is the recommended file
naming convention?
Review
Now that you have completed this module, you should be able to:
y Discuss IO drivers and OPC servers.
y Discuss detailed IO Driver configuration.
y Monitor IO driver communication.