9.382 Moxa-ioLogik-Temperature

The Moxa-ioLogik-Temperature logical device converts the binary temperature value read from a Moxa M-6200 I/O module in an ioLogik 4000 or 4200 controller to a readable temperature value. The device assumes, that the M-6200 module is configured to measure the temperature in centigrade.

The M-6200 module marks invalid measurements (broken cable) with the special value '0x8000'. The Moxa-ioLogik-Temperature device detects this value and raises a fault in this case. The temperature value shown in case of this fault is '0.0 °C'.

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 the parameter ID of the Moxa ioLogik device must be set which holds the binary temperature value.

parameter description
temperatureId Enter the ID of the parameter which represents the binary temperature value to convert. With a Moxa-ioLogik-4000 device this is one of the I???? or J???? variables of the device (see below). With a Moxa-ioLogik-4200 controller the analog readings are provided by the A???? variables of the device.

Module addresses with Moxa ioLogik 4000

The Moxa ioLogik 4000 I/O controllers dynamically assign the Modbus addresses for the connected modules, starting at 0 with the first module mounted nearest at the base module. Modbus registers are 16 bit wide, but because many I/O modules require only 8 or 4 bit, the ioLogik 4000 manages Modbus addresses in steps of 8 bit (half 16-bit registers). Hence, it can happen, that the temperature register of a M-6200 module may be split over two modbus registers.

To deal with this, the Moxa-ioLogik-4000 driver provides beside the "I????" variables which each hold the contents of one Modbus register a second set of variables called "J0000" to "J001E". These contain 16 bit values with 8-bit address shift. The "J????" variables may be used to read temperature values which are split across two Modbus addresses.

If e.g. the ioLogik Web GUI states, that the temperature register of your interest is at "0012", simply use the "I0012" variable in "temperatureId". If the ioLogik Web GUI states, that the temperature register is at "0012+08", use the "J0012" variable instead.

Module addresses with Moxa ioLogik 4200

The Moxa ioLogik 4200 I/O controller uses a different, static Modbus addressing scheme, however the sat-nms driver for this controller dynamically assigns analog readings to the parameter A0000 to A000F. A0000 contains the first channel of the first M-6200 module (that one next to the main module). A0001 contains the second channel of this module and so on. The sat-nms Moxa-ioLogik-4200 device driver supports up to 16 analog readings from various analog input modules.

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.frame TEXT R/O StringRange R/O
config.temperatureId TEXT SAVE SETUP StringRange
faults.01 ALARM R/O AlarmFlagRange R/O (Temperature sensor)
temperature FLOAT R/O DoubleRange R/O (0.0 .. 0.0)