This page describes the device driver and the device window for the Fanuc-PLC9030 device. This device controls up to 320 inputs and up to 320 outputs at a Fanuc Series 90 / 30 PLC. It communicates to the PLC through a CCM (Communication Coprocessor Module) and requires the PLC to be configured in a special way (see the paragraph at the end of this chapter).
The Fanuc-PLC9030 device driver is part of the sat-nms framework for M&C of plain digital I/O functions. Monitoring alarm circuits or controlling waveguide switches are indicatives for applications of this framework.
The application configuration normally does not access the Fanuc-PLC9030 device driver directly. There are a couple of application level logical devices (e.g. Input , Output or WG-Switch ) which may use the Fanuc-PLC9030 device driver as a low level driver to access the physical I/O ports.
Port addressing
The device driver gives access to the I/O ports through five integer variables each for inputs and for outputs. Each variable stands for 64 input or output ports, which in total results in a pool of 320 input and 320 output ports.
The variables are named in way, that a translation of a particular port to a bit position in the variable is quite easy. Example:
An input port which appears in the Fanuc PLC as '%I00066' is accessed through the variable I00065 of the device driver. It is represented by the bit 2^1 in the variable (the least significant bit represents the '%I00065' input).
Device window pages
The following table shows which device window pages are available with this individual device type. Tool-bar functions not mentioned here are described at the general description of device windows .
--- Shows / commands I/O port states.
--- The faults page.
--- The device info page.
--- The maintenance page. The configuration parameters described below are set at this page.Configuration parameters
At the maintenance page of the device window there are a couple of configuration parameters which must be set to make the software talk to the Fanuc PLC.
| parameter | description |
|---|---|
| address | Leave this field empty, this driver uses a fixed "CCM CPU ID" (see below) |
| inputPorts | Select the number of input ports the PLC is configured to use. |
| outputPorts | Select the number of output ports the PLC is configured to use. |
| Serial | Remember to set the line parameters for the serial interface connected to the Fanuc PLC. The setting required by the Fanuc is 19200,O,8,1 . |
Configuring the Fanuc PLC for the usage with this driver
To use a Fanuc 90/30 PLC as an I/O module for the sat-nms software, the PLC must be equipped with a CCM (Communication Coprocessor Module). The sat-nms software does not support a communication through the CPU serial interface.
The PLC must be configured in the following way (using a hand held controller ot the Fanuc PC software):
The required settings are the factory settings of the CCM as described in the Fanuc "Series 90 PLC Serial Communications User's Manual".
Variables defined by this device driver
| name | type | flags | range |
|---|---|---|---|
| info.driver | TEXT | R/O | StringRange R/O |
| lowLevel.cmd | TEXT | StringRange | |
| lowLevel.reply | TEXT | R/O | StringRange R/O |
| faults.99 | ALARM | R/O | AlarmFlagRange R/O (Communication) |
| faults.commstat | TEXT | R/O | StringRange R/O |
| info.type | TEXT | R/O | StringRange R/O |
| info.port | TEXT | R/O | StringRange R/O |
| info.frame | TEXT | R/O | StringRange R/O |
| internal.dummy | HEX | R/O | HexRange R/O (0 .. 0) |
| config.inputPorts | CHOICE | SAVE SETUP | EnumRange (0 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 256 272 288 304 320) |
| config.outputPorts | CHOICE | SAVE SETUP | EnumRange (0 16 32 48 64 80 96 112 128 144 160 176 192 208 224 240 256 272 288 304 320) |
| I00001 | HEX | R/O | HexRange R/O (0 .. 0) |
| I00065 | HEX | R/O | HexRange R/O (0 .. 0) |
| I00129 | HEX | R/O | HexRange R/O (0 .. 0) |
| I00193 | HEX | R/O | HexRange R/O (0 .. 0) |
| I00257 | HEX | R/O | HexRange R/O (0 .. 0) |
| Q00001 | HEX | HexRange (0 .. 0) | |
| Q00065 | HEX | HexRange (0 .. 0) | |
| Q00129 | HEX | HexRange (0 .. 0) | |
| Q00193 | HEX | HexRange (0 .. 0) | |
| Q00257 | HEX | HexRange (0 .. 0) | |
| initialized | TEXT | R/O | StringRange R/O |