1.308 Input

This page describes the device driver and the device window for the Input logical device. This device monitors one single input port of a PLC device and optionally associates a fault with this input port.

The Input logical device is part of the sat-nms framework for M&C of plain digital I/O functions. It does not interrogate a PLC device directly, but requires a low level device driver to do the physical communication. Examples for such drivers are the Fanuc-PLC9030 and the NAIS-FP0 PLC device drivers.

The Input device may be configured in various ways to match the requirements of almost all applications. Key features of the device are:

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 .

Configuration parameters

At the maintenance page of the device window there are a couple of configuration parameters which must be set to integrate the device into the VLC/M&C.

Fault flags

fault flag fault name description
faults.99 Communication Unless the the setup parameter commFaultId is set, faults.99 is set if the PLC device which manages the physical ports signals a fault. With commFaultId set, the fault state addressed by this parameter is replicated as communication fault of the device.
faults.01 Circuit This fault is set if the input port state matches the condition configured with the 'faultMonitoring' parameter. The name of this fault may be customized by means of the 'faultText'' parameter.
faults.02 Configuration Setup This fault signals that the 'inputPort' parameter ist not properly configured. The device expects, that 'inputPort' is set to a value which matches the syntax description shown below.

Port addressing

A device driver for a PLC gives access to it's I/O ports through a number of integer variables. Each variable stands for up to 64 input or output ports which are addressed by the bit position within the variable.

Port (bit-) addresses in the configuration of the logical I/O devices refer to such a variable which is provided by the PLC driver and also to the bit position within this variable. The syntax of a port address specification is:

<variable-identifier> + <bit-offset>

<bit-offset> is a decimal constant in the range 0 .. 63. You may replace the + character in the port address by a percent sign ( % ) and specify the bit offset in hexadecimal notation. This may be helpful for PLC types which use hexadecimal addresses.

Example: The port address ' FANUC.I00065+1 ' refers to the 2^1 bit in the variable ' I00065 ' provided by the ' FANUC ' device. In fact this addresses the input table register '%I00066' at the PLC. Other PLC drivers may use a different naming scheme for the variables, but the concept always is the same.

'initialized' condition

During the initialization phase of the M&C the state of physical inputs may be not yet known. To prevent the Input device from raising a fault during this phase, the Input device expects that the PLC driver provides an 'initialized' variable which is set true after the phsyical inputs have been read the first time after system start. The Input device will not raise a fault until it recognizes the PLC driver to be initialized.

The Input device derives the device name of the PLC from the configured input port address and reads the '.initialized' variable to get this state.

All PLC and IO-Controller drivers supplied by SatService GmbH provide this 'initialized' status variable. If you are using the Input device with other device types, be sure that the device provides this 'initialized' value or the Input device will not work as expected.

Remarks

Variables defined by this device driver

name type flags range
info.driver 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
config.inputPort TEXT SAVE SETUP StringRange
config.positions TEXT SAVE SETUP StringRange
config.faultMonitoring CHOICE SAVE SETUP EnumRange (NONE FAULT IF 0 FAULT IF 1)
config.faultText TEXT SAVE SETUP StringRange
config.commFaultId TEXT SAVE SETUP StringRange
position TEXT R/O StringRange R/O
faults.01 ALARM R/O AlarmFlagRange R/O (Circuit)
faults.02 ALARM R/O AlarmFlagRange R/O (Configuration Setup)
faults.99 ALARM R/O AlarmFlagRange R/O (Communication)