This page describes the device driver and the device window for the Actia Sodielec DSS1300 switch controller.
The Actia-Sodielec-DSS1300 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 Actia-Sodielec-DSS1300 device driver directly. There are a couple of application level logical devices (e.g. Input , Output or WG-Switch ) which may use the Actia-Sodielec-DSS1300 device driver as a low level driver to access the physical I/O ports.
Input ports
The variable 'inputs' refers to the input ports 1..16 monitored by the device. The least significant bit reports the state of input 1, the 2^15 bit reports the state of input 16.
Output ports
The variable 'outputs' is used to control the outputs of the device. The least significant bit in 'outputs' corresponds to output 1, the most significant bit to output 16.
--- The DSS1300 switch controller does not provide any means to read back the actual state of an output. For this reason all outputs read "0" / "inactive" after the start of the software.Individual output variables
Beside of using the 'outputs' variable together with the sat-nms framework for M&C of plain digital I/O functions, each output may controlled directly through an individual parameter. The variables out01 .. out16 accept an integer value in the range 0 .. 255 and directly perform the device's output command. The value passed to the variable select the way how to actuate the output:
| value | description |
|---|---|
| 0 | switches the output OFF |
| 1..254 | generates a pulse of a defined length. The output is switched ON for value * 10msecs , then switched OFF again. |
| 255 | switches the output permanently ON |
The individual output variables may be used to resemble the device's front panel buttons.
--- An application must not use the 'outputs' variable and the individual outputs at the same time. Setting individual outputs will mess up the behaviour of the 'outputs' variable and vice versa.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 device.
| parameter | description |
|---|---|
| address | The device address must be specified as a decimal number in the range 32 .. 127. The device address entered here is the address (0 ..95) set at the device plus 32. Factory default of the device is 126 (94 at the device). |
| serial ifc | The serial interface settings must match the line parameters programmed in the device. Factory default of the device is 19200,e,7,1 |
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 |
| info.model | TEXT | R/O | StringRange R/O |
| info.revision | TEXT | R/O | StringRange R/O |
| initialized | TEXT | R/O | StringRange R/O |
| inputs | HEX | R/O | HexRange R/O (0 .. 0) |
| outputs | HEX | HexRange (0 .. 0) | |
| out00 | INTEGER | IntegerRange (0 .. 255) | |
| out01 | INTEGER | IntegerRange (0 .. 255) | |
| out02 | INTEGER | IntegerRange (0 .. 255) | |
| out03 | INTEGER | IntegerRange (0 .. 255) | |
| out04 | INTEGER | IntegerRange (0 .. 255) | |
| out05 | INTEGER | IntegerRange (0 .. 255) | |
| out06 | INTEGER | IntegerRange (0 .. 255) | |
| out07 | INTEGER | IntegerRange (0 .. 255) | |
| out08 | INTEGER | IntegerRange (0 .. 255) | |
| out09 | INTEGER | IntegerRange (0 .. 255) | |
| out0A | INTEGER | IntegerRange (0 .. 255) | |
| out0B | INTEGER | IntegerRange (0 .. 255) | |
| out0C | INTEGER | IntegerRange (0 .. 255) | |
| out0D | INTEGER | IntegerRange (0 .. 255) | |
| out0E | INTEGER | IntegerRange (0 .. 255) | |
| out0F | INTEGER | IntegerRange (0 .. 255) |