9.383 Moxa-ioThinx-4510

This page describes the device driver and the device window for the Moxa ioThinx 4510 data acquisition unit. The device driver monitors and controls the digital inputs/outputs of various modules hosted by the ioLThinx 4510 unit. The driver supports digital I/O modules.

The Moxa-ioThinx-4510 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 Moxa-ioThinx-4510 device driver directly. There are a couple of application level logical devices (e.g. Input , Output or WG-Switch ) which may use the Moxa-ioThinx-4510 device driver as a low level driver to access the physical I/O ports.

Port adressing

As from units documentation there is no auto/fixed address mapping mode available the ioThinx device register addresses has to be manually added via device setup. See configuration parameters section below. By default all modules are disabled on the device setup page (module = NONE).

The driver was tested with MR1600 (16 DIs) and MR2404 (4 relay) modules. It is assumed that module base information can be found in the following registers

The sat-nms device driver for the Moxa ioThinx 4510 provides one input variable (named I0000 to I000F) and one output variable (named Q0000 to Q000F) for each module position. If for example an input module is at the third position from the main unit, its readings are in the variable I0002. The enumeration scheme (hexadecimal notation and starting with 0000 for the first one) is for compatibility with other PLC devices.

Output modules are treated in the same way but with the variables Q0000 Q000F. If for example the module next to the main module is an output or relay module, it gets controlled through the variable Q0000.

Configuration settings

If used with the sat-nms framework for M&C of plain digital I/O functions, the Moxa ioLThinx device acts like an unprogrammed PLC device. It is intended, that the device driver processes switch settings and changes of input circuits as fast as possible. The following settings are necessary to achieve this:

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 make the software talk to the device.

parameter description
address Must always be set to 1 if the device is controlled Modbus over a serial line. With Modbus/TCP the device address doesn't matter.
module.01 The 1st module type to be controlled by I0000 or Q0000.
module.02 The 2nd module type to be controlled by I0001 or Q0001.
module.03 The 3rd module type to be controlled by I0002 or Q0002.
module.04 The 4th module type to be controlled by I0003 or Q0003.
module.05 The 5th module type to be controlled by I0004 or Q0004.
module.06 The 6th module type to be controlled by I0005 or Q0005.
module.07 The 7th module type to be controlled by I0006 or Q0006.
module.08 The 8th module type to be controlled by I0007 or Q0007.
module.09 The 9th module type to be controlled by I0008 or Q0008.
module.10 The 10th module type to be controlled by I0009 or Q0009.
module.11 The 11th module type to be controlled by I000A or Q000A.
module.12 The 12th module type to be controlled by I000B or Q000B.
module.13 The 13th module type to be controlled by I000C or Q000C.
module.14 The 14th module type to be controlled by I000D or Q000D.
module.15 The 15th module type to be controlled by I000E or Q000E.
module.16 The 16th module type to be controlled by I000F or Q000F.
address.01 The 1st module register address as shown in the WebUI.
address.02 The 2nd module register address as shown in the WebUI.
address.03 The 3rd module register address as shown in the WebUI.
address.04 The 4th module register address as shown in the WebUI.
address.05 The 5th module register address as shown in the WebUI.
address.06 The 6th module register address as shown in the WebUI.
address.07 The 7th module register address as shown in the WebUI.
address.08 The 8th module register address as shown in the WebUI.
address.09 The 9th module register address as shown in the WebUI.
address.10 The 10th module register address as shown in the WebUI.
address.11 The 11th module register address as shown in the WebUI.
address.12 The 12th module register address as shown in the WebUI.
address.13 The 13th module register address as shown in the WebUI.
address.14 The 14th module register address as shown in the WebUI.
address.15 The 15th module register address as shown in the WebUI.
address.16 The 16th module register address as shown in the WebUI.

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.version TEXT R/O StringRange R/O
info.name TEXT R/O StringRange R/O
info.serial TEXT R/O StringRange R/O
config.module.01 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.02 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.03 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.04 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.05 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.06 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.07 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.08 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.09 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.10 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.11 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.12 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.13 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.14 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.15 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.module.16 CHOICE SAVE SETUP EnumRange (NONE MR1600 MR2404)
config.address.01 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.02 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.03 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.04 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.05 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.06 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.07 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.08 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.09 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.10 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.11 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.12 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.13 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.14 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.15 INTEGER SAVE SETUP IntegerRange (0 .. 0)
config.address.16 INTEGER SAVE SETUP IntegerRange (0 .. 0)
I0000 HEX R/O HexRange R/O DIS (0 .. 0)
I0001 HEX R/O HexRange R/O DIS (0 .. 0)
I0002 HEX R/O HexRange R/O DIS (0 .. 0)
I0003 HEX R/O HexRange R/O DIS (0 .. 0)
I0004 HEX R/O HexRange R/O DIS (0 .. 0)
I0005 HEX R/O HexRange R/O DIS (0 .. 0)
I0006 HEX R/O HexRange R/O DIS (0 .. 0)
I0007 HEX R/O HexRange R/O DIS (0 .. 0)
I0008 HEX R/O HexRange R/O DIS (0 .. 0)
I0009 HEX R/O HexRange R/O DIS (0 .. 0)
I000A HEX R/O HexRange R/O DIS (0 .. 0)
I000B HEX R/O HexRange R/O DIS (0 .. 0)
I000C HEX R/O HexRange R/O DIS (0 .. 0)
I000D HEX R/O HexRange R/O DIS (0 .. 0)
I000E HEX R/O HexRange R/O DIS (0 .. 0)
I000F HEX R/O HexRange R/O DIS (0 .. 0)
Q0000 HEX HexRange DIS (0 .. 0)
Q0001 HEX HexRange DIS (0 .. 0)
Q0002 HEX HexRange DIS (0 .. 0)
Q0003 HEX HexRange DIS (0 .. 0)
Q0004 HEX HexRange DIS (0 .. 0)
Q0005 HEX HexRange DIS (0 .. 0)
Q0006 HEX HexRange DIS (0 .. 0)
Q0007 HEX HexRange DIS (0 .. 0)
Q0008 HEX HexRange DIS (0 .. 0)
Q0009 HEX HexRange DIS (0 .. 0)
Q000A HEX HexRange DIS (0 .. 0)
Q000B HEX HexRange DIS (0 .. 0)
Q000C HEX HexRange DIS (0 .. 0)
Q000D HEX HexRange DIS (0 .. 0)
Q000E HEX HexRange DIS (0 .. 0)
Q000F HEX HexRange DIS (0 .. 0)
initialized TEXT R/O StringRange R/O
i HEX R/O HexRange R/O (0 .. 0)