The ETL-PDSwitch-Emulator logical device emulates a N:1 RF Switch like the ETL CST-POE-SW02-1059 PIN Diode 2:1 switch. It listens at a configurable IP port and offers there a simplified version of the remote protocol of the emulated device. Switch positions may be set either with the 'position' variable of the driver or with commands sent to the IP port the device is listening to.
The device supports four different operating modes which control up to four IO lines in different configurations:
TYPE-2WAY-1BIT
This mode emulates a 2-way switch which is controlled by one IO line. Valid position values are "01" and "02" in this mode, "02" switches the IO line to "ON", "01" switches it "OFF".
TYPE-2WAY-2BIT
This mode also emulates a 2-way switch, but this is controlled by two IO lines. Valid position values are "00", "01" and "02" in this mode:
| switch position | 00 | 01 | 02 |
|---|---|---|---|
| bit / IO-line 01 | OFF | ON | OFF |
| bit / IO-line 02 | OFF | OFF | ON |
A state where both IO-lines are set "ON" is never commanded by the device, if this happens by external control of the IO-lines, this is treated as a fault.
TYPE-4WAY-2BIT
This mode emulates a 4-way switch which is controlled by two IO lines. Valid position values are "01" to "04" in this mode, the positions are encoded as a binary number:
| switch position | 01 | 02 | 03 | 04 |
|---|---|---|---|---|
| bit / IO-line 01 | OFF | ON | OFF | ON |
| bit / IO-line 02 | OFF | OFF | ON | ON |
TYPE-4WAY-4BIT
This mode emulates a 4-way switch which is controlled by four IO lines. Valid position values are "00" to "04" in this mode, the positions are encoded as shown in the table below:
| switch position | 00 | 01 | 02 | 03 | 04 |
|---|---|---|---|---|---|
| bit / IO-line 01 | OFF | ON | OFF | OFF | OFF |
| bit / IO-line 02 | OFF | OFF | ON | OFF | OFF |
| bit / IO-line 03 | OFF | OFF | OFF | ON | OFF |
| bit / IO-line 04 | OFF | OFF | OFF | OFF | ON |
With this mode there may be at max one IO-line switched on at a time, this line sets the switch position 01..04. If the device detects more than one active IO-lines, this is treated a a fault.
The device unterstands two commands to query the actual status and to set the switch to a certain position:
{A?} to the device queries the actual switch setting. The device responds with {A,nn} where nn is the number of the actually selected port (2-digit, leading zero). 00 means no port is selected, 01 port number 1 and so on.{ACnn} to the device commands a new switch setting. The device responds with {A,nn} where nn is the number of the actually selected port (2-digit, leading zero). 00 means no port is selected, 01 port number 1 and so on.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 .
--- The switch position.
--- The device info page.
--- Shows the device's faults.
--- The maintenance page. The configuration parameters from this page are described below.Configuration parameters
At the maintenance page of the device window there are a couple of configuration parameter which must be set to interconnect the ETL-PDSwitch-Emulator device with the device it shall control.
| parameter | description |
|---|---|
| portNo | This configures the port number the device is listening. The valid range is 1024 .. 65535. You cannot use a port number that is already used by another application. The device will show a fault if it cannot open the port because it is already in use. |
| switchType | Sets one of the operating modes described above. May be set to one of TYPE-2WAY-1BIT, TYPE-2WAY-2BIT, TYPE-4WAY-2BIT or TYPE-4WAY-4BIT |
| bitSense | May be used to invert the meaning of ON/OFF. If set to NORMAL, the device commands the IO-lines as described above to ON and OFF. If INVERTED is selected ON and OFF are interchanged. |
| bitId.01 .. bitId.32 | These are the message identifiers for the up to 4 IO lines to control. Unused outputs should be left empty. |
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 |
| info.bitval.01 | TEXT | R/O | StringRange R/O |
| info.bitval.02 | TEXT | R/O | StringRange R/O |
| info.bitval.03 | TEXT | R/O | StringRange R/O |
| info.bitval.04 | TEXT | R/O | StringRange R/O |
| info.decodedPos | TEXT | R/O | StringRange R/O |
| config.portNo | INTEGER | SAVE SETUP | IntegerRange (1024 .. 65535) |
| config.switchType | CHOICE | SAVE SETUP | EnumRange (TYPE-UNKNOWN TYPE-2WAY-1BIT TYPE-2WAY-2BIT TYPE-4WAY-2BIT TYPE-4WAY-4BIT) |
| config.bitSense | CHOICE | SAVE SETUP | EnumRange (NORMAL INVERTED) |
| config.bitId.01 | TEXT | SAVE SETUP | StringRange |
| config.bitId.02 | TEXT | SAVE SETUP | StringRange |
| config.bitId.03 | TEXT | SAVE SETUP | StringRange |
| config.bitId.04 | TEXT | SAVE SETUP | StringRange |
| position | CHOICE | EnumRange (00 01 02 03 04) | |
| onValue | TEXT | R/O | StringRange R/O |
| offValue | TEXT | R/O | StringRange R/O |
| faults.01 | ALARM | R/O | AlarmFlagRange R/O (IP Port) |
| faults.02 | ALARM | R/O | AlarmFlagRange R/O (Switch type) |
| faults.03 | ALARM | R/O | AlarmFlagRange R/O (Switch position) |
| faults.04 | ALARM | R/O | AlarmFlagRange R/O (Bit combination) |