Professional Documents
Culture Documents
SERIAL PRODUCTS
Alarm Annunciator
Physical interfaces
RS-232 and RS-485 physical interfaces 7
RS-485 line balancing 8
Revision Control
Revision Author Date
00 - Initial mol 30/05/2007
01 ama 18/10/2007
02 raf 30/11/2007
Dear Customer,
Mauell thanks you for trusting us on choosing our products. It is a pleasure to provide you all
necessary information on the newest member of its Mauell annunciator family.
This manual presents all information needed to configure the Modbus RTU Protocol in order to
establish a serial communication on a network. For advanced users in Modbus parameterization, we
recommend the reading start on page 51 of this manual.
Mauell hopes that this manual helps you explore totally the potential of the new ME 3011
annunciator.
Please contact us, if any doubt persists about the equipment operation, after reading it. Our technical
team is always available to clear any doubt you may deem necessary.
Contact the nearest Mauell unit (please refer to the appendix) or send an email to
mauell@mauell.com.br; visit the website www.mauell.com.br; send a fax to +55 11 2117 5354 or
call +55 11 2117 5353.
Important:
In order to help us on our support service have the series number and the firmware version with
you, as these data are essential for clearing the doubts and for technical assistance.
Sincerely,
On the request telegram, the function code informs to the addressed slave device which action must be performed.
The data bytes contains the detailed information required to the function execution, for example, which register
address it must access and the quantity of bytes that must be returned. At the end of the telegram a cyclic redundancy
check guarantee the quality of the data transmission.
The answer telegram carries the result of the search or action performed by the slave. The telegram header is the
same of the request telegram, carrying the address of the slave and the function code requested. If the slave
encounters any problems when performing the action required, special answers for many types of errors will be sent.
The Modbus standard allows two different transmission modes: ASCII (American Code for Information Interchange)
and RTU (Remote Terminal Unit). The ME3011b alarm annunciators family just works with the RTU mode. All detailed
information about the protocol contained in this document refers to this mode.
Through the ME3011b is possible acquire time-stamp information from the annunciators, even the Modbus standard
not having this special function. The procedure used doesnt collide with any protocol statement, and can be used with
any master Modbus device. To more detailed explanation about time-stamp acquiring, refer to page 32 of this manual.
Silence Silence
8 bits 8 bits N x 8 bits 16 bits
3.5 chars 3.5 chars
Address (ID): The Modbus protocol allows slaves with addresses between 1 and 247. The address 0 is reserved
and used by the master for broadcast telegrams, messages sent to the network carrying actions that must be
performed by all connected devices.
Function Code (FC): The identification of the function that must be performed by the slave after a master request.
There are different types of functions, for example, to write and read values or send commands. The next session
shows the function codes implemented in the ME3011b alarm annunciator.
Data: This field is size variable and is determined by the selected function code. It can contain parameters for a
certain function on master request or the data gathered in the slave as the result of a master request.
Cyclic Redundancy Check (CRC): The CRC field checks the telegrams bit sequence in order to guarantee its
consistency. This value is a 16-bit long data calculated by the telegram sender and checked by the receiver, who will
reject the received data if the CRC calculated doesnt match the expected value.
The data acquisition and command assignments on ME3011b are performed by the following function codes:
Code 03 (03h) - Read Holding Registers for reading the output states (visualization of the LEDs states) and
for the annunciators parameterization
Code 04 (04h) - Read Input Registers for physical inputs reading and for registered events reading
Code 05 (05h) - Write Single Coil for logical alarms writing and remote commands assignment
Code 16 (10h) Write Multiple Registers for the RTC (real time clock) setting.
The ME3011b alarm annunciator has two physical interfaces for serial communication, as below described:
CM-03:
1 TXDT 1 Data +
CX8
CX7 2 GND 2 Data -
(RJ11) 3 RXDT
4 +5 Vcc
CM-04:
1 TXDT 1 Data +
CX8
CX7 2 GND 2 Data -
(RJ11) 3 RXDT
4 +5 Vcc
CX7 RS-232 with a proprietary protocol, used for communication with configuration software e.Tool ME3011 config
or with the supervision software e.Tool ME3011 view.
In order to avoid communication disturbances on RS-485 Modbus, the line balancing must be done. For this, remove
the frontal cover from alarm point 4 (to ME3011b rectangular formation) or from alarm point 3 (to ME3011b square
formation) and configure the jumper as following described:
JP1 and JP2 closed on the last annunciator connected to the RS-485 bus
JP1 and JP2 open for all intermediary annunciators (or 3rd part devices) connected to the RS-485.
JP1 and JP2 closed on the last annunciator connected to the RS-485 bus
JP1 and JP2 open for all intermediary annunciators (or 3rd part devices) connected to the RS-485.
The assembling of a ME3011b alarm annunciators network is simple but demands some attention on the following
aspects:
- Is recommended the use of twisted pair shielded cables, 24 AWG, on the entire RS-485 bus
- One of the shields extreme must be connected to ground
- Is recommended a maximum of 32 devices on a RS-485 network
- If the Modbus Master (a computer, for example) has a RS-232 interface, a RS-232/RS-485 converter must be used;
- The maximum cable length for the RS-485 network is 1000 meters
- A parallel 130 termination resistor must be connected on the beginning of RS-485 bus (i.e. in the converter) and on
the end of the line (if the last device is a ME3011b the use of the resistor is not necessary, the use of the jumpers
explained on the previous session will perform this action).
4.1 Connection example between a SCADA Modbus Master and one ME3011b alarm annunciator
2 x AWG24 cable
RS-232
RS-485
Data +
Data - Serial cable
RS232/RS485
Converter
4.2 - Connection example between a SCADA Modbus Master and various ME3011b alarm annunciators
RS-485
RS-232
Data +
Data -
Serial cable
The Modbus parameterization on ME3011b is performed through the software e.Tool ME3011 config. This operation
requires the connection of the computer where the software is running with the annunciator through the CS-02 cable.
The following procedures must be followed:
To enable the protocol communication on the ME3011b, call the Communication tab and select the Modbus option
in the checkbox:
To address the annunciator, increase or decrease the value on the arrows or type the value (between 1 and 247) in
the box directly:
Remember that the address 0 (zero) is reserved and cannot be used for this purpose.
The baud rate must be selected on the list box detailed below:
All devices on the network must be configured with the same baud rate, otherwise failures on communication will
occur.
The parity must be the same for all devices on the network, and is configured on the following list box:
The ME3011b alarm annunciator works only with 8 bits of data length, this value cannot be changed.
One or two bits can be selected for the Stop bit function, as described below:
To write the protocol parameterization on the annunciator the button Send data to annunciator must be pressed, as
described on the following picture:
For input state reading without timestamp information, the Modbus master must request data through Function Code
04 (04h) Read Input Register.
Where:
Where:
For reach the annunciators alarm points the following mapping tables must be used, varying according to its physical
formation.
All points corresponds to the main module (CM-04), thus should be requested using the address 8000h on the
INITIAL ADD field of FC-04 (page 12).
The green points correspond to the 2nd module, thus should be requested using the address 8001h on the INITIAL
ADD field of FC-04 (page 12).
The yellow points corresponds to the main module (CM-04), thus should be requested using the address 8000h on the
INITIAL ADD field of FC-04 (page 12).
The blue points correspond to the 3rd module, thus should be requested using the address 8002h on the INITIAL
ADD field of FC-04 (page 12).
The green points correspond to the 2nd module, thus should be requested using the address 8001h on the INITIAL
ADD field of FC-04 (page 12).
The yellow points correspond to the main module (CM-04), thus should be requested using the address 8000h on the
INITIAL ADD field of FC-04 (page 12).
The blue points correspond to the 4th module, thus should be requested using the address 8003h on the INITIAL
ADD field of FC-04 (page 12).
The blue points correspond to the 3rd module, thus should be requested using the address 8002h on the INITIAL
ADD field of FC-04 (page 12).
The green points correspond to the 2nd module, thus should be requested using the address 8001h on the INITIAL
ADD field of FC-04 (page 12).
The yellow points correspond to the main module (CM-04), thus should be requested using the address 8000h on the
INITIAL ADD field of FC-04 (page 12).
The blue points corresponds to the 4th module, thus should be requested using the address 8003h on the INITIAL
ADD field of FC-04 (page 12).
The blue points corresponds to the 3rd module, thus should be requested using the address 8002h on the INITIAL
ADD field of FC-04 (page 12).
The green points corresponds to the 2nd module, thus should be requested using the address 8001h on the INITIAL
ADD field of FC-04 (page 12).
The yellow points corresponds to the main module (CM-04), thus should be requested using the address 8000h on the
INITIAL ADD field of FC-04 (page 12).
For alarm points signaling reading the Modbus master must request the information through Function Code 03
(03h) Read Holding Registers.
This function returns the alarm point state as it is currently displayed on the annunciator front. The byte is divided in
two distinct nibbles (4 bits) and its value represents the following states:
The alarm points acquisition is performed through a data block reading function, having each block 8 data bytes that
returns the state of 16 alarm points per request.
These blocks addresses increases from 0000h to 000Fh and its quantity is directly proportional to the annunciator size.
Where:
REGISTERS QTY. Quantity of registers (16-bits) requested (always 0004h in this case);
Where:
BYTES QTY. Quantity of transmitted bytes (always 08h for this function, representing four 16-bits registers);
The yellow points refer to the 2nd, 3rd and 4th blocks of the main module.
The yellow points refer to the 1st, 2nd, 3rd and 4th blocks of the main module.
The green points refer to the 3rd and 4th blocks of the 2nd module.
The yellow points refer to the 2nd, 3rd and 4th blocks of the main module.
The yellow points refer to the 1st, 2nd, 3rd and 4th blocks of the main module.
The green points refer to the 1st, 2nd, 3rd and 4th blocks of the 2nd module.
The blue points refer to the 1st, 2nd, 3rd and 4th blocks of the 3rd module.
The yellow points refer to the 1st, 2nd, 3rd and 4th blocks of the main module.
The yellow points refer to the 1st, 2nd, 3rd and 4th blocks of the main module.
The green points refer to the 1st, 2nd, 3rd and 4th blocks of the 2nd module.
The blue points refer to the 1st, 2nd, 3rd and 4th blocks of the 3rd module.
The orange points refer to the 2nd, 3rd and 4th blocks of the 4th module.
The yellow points refer to the 1st, 2nd, 3rd and 4th blocks of the main module.
The yellow points refer to the 1st, 2nd, 3rd and 4th blocks of the main module.
The green points refer to the 1st, 2nd, 3rd and 4th blocks of the 2nd module.
The blue points refer to the 1st, 2nd, 3rd and 4th blocks of the 3rd module.
The orange points refer to the 1st, 2nd, 3rd and 4th blocks of the 4th module.
The ME3011b alarm annunciator can acquire and register until 1024 events internally. This is an optional item and
must be requested in the order.
There are two ways of retrieve the registered events from the devices memory: the first one is reading the last
registered event in order to know the time of last occurrence and the current memorys pointer status; the other one is
using a command to read the information of a specific memory pointer, allowing the retrieving of all events registered
in the device. With the help of these two functions is possible gathering the registered events of all ME3011b devices,
with high-resolution (1ms) timestamp information.
Each ME 3011 alarm annunciator can handle up to 252 alarm inputs. But these alarms cannot be reached directly
because every unit can be divided in up to four sub-modules, as described in the picture below:
All those modules are enclosured in the same case and form only one physical unit; the division is purely logical.
The number of slaves is based on the total number of alarm points of the unit. For example, one 132-alarm point
annunciator is formed by one complete Master module plus one complete Slave 1 module plus one non-complete Slave
2 module. (60+64+8).
Each module (master and slaves) is equipped with an EEPROM memory, responsible for registering alarm changes with
milliseconds precision. All changes of any alarm input are registered in this buffer. Each module can register up to
1000 events in the following format:
Note that a status change in a single alarm input will register the actual status of the entire module (up to 64 points).
The timestamp information is generated by a 5-byte counter, that increments in 1ms steps, starting from 01/01/2000
00:00:00,000.
All live and stored data can be obtained through a communication port with Modbus protocol. There are no live data
for timestamp events. They have to be read from the events register buffer.
For a brief description, let us take as an example a 4-alarm annunciator. The last event stored has the following
register:
The first column refers to the state of the four alarm inputs in the order A4-A3-A2-A1. In this case, all alarms are idle.
After a while, a new event on A2 occurs. The latest register will be as described below:
These entries on the events register will result the following list (indexed by the timestamp):
To make the calculations understand easier, the example below is presented, assuming the hypothetical values T1 =
16, T2 = 135, T3 = 202, T4 = 180 and T5 = 129.
Applying these values on the formula above, it will return: T-stamp = 69333677,13 [seconds]
In order to return the number of days, the remainder (0,198556479) must be multiplied for 365:
DAYS = 0,198556479 x 365 = 72,473114884 days. Truncating it again will return 72 days.
The fraction that remains on second calculation is the milliseconds information, which must be rounded:
All those values summed to the annunciators clock initial time (01/01/2005 00:00:00.000) will return the event data:
The function LRE seek in the devices memory of the selected module the last event that was registered.
For the LRE function the Function Code 04 (04h) Read Input Register, must be used.
Where:
REGISTERS QTY. Quantity of registers (16-bits) requested (always 0004h in this case)
BYTE16 BYTE15 BYTE14 BYTE13 BYTE12 BYTE11 BYTE10 BYTE9 BYTE8 BYTE7 BYTE6 BYTE5 BYTE4 BYTE3 BYTE2 BYTE 1
Where:
BYTES QTY. Quantity of transmitted bytes (always 10h for this function, representing eight 16-bits registers)
NA Reserved Byte;
This function allows the reading of any event registered in the devices internal memory. It works like the LRE function,
but requires an additional parameter: the pointer of the desired event in the memory (ADDHL, ADDLO).
Where:
BYTE16 BYTE15 BYTE14 BYTE13 BYTE12 BYTE11 BYTE10 BYTE9 BYTE8 BYTE7 BYTE6 BYTE5 BYTE4 BYTE3 BYTE2 BYTE 1
Where:
BYTES QTY. Quantity of transmitted bytes (always 10h for this function, representing eight 16-bits registers);
NA Reserved Byte;
POINTER Position of the event in the table:
- BYTE 2 = Memorys pointer Most Significant Byte (MsB)
- BYTE 1 = Memorys pointer Least Significant Byte (LsB)
The ME3011b alarm annunciator allows the writing of logical alarms through the Modbus protocol. This feature makes
possible any master device on a Modbus network (a PLC, for example) sending an alarm indication when an abnormal
condition is detected. This function forces the state of one single alarm point.
The logical alarm writing is performed by the Function Code 05 (05h) Write Single Coil.
Two data bytes must be sent to the annunciator. To enable the point the value FFh 00h should be written, and for
disabling 00h 00h.
Where:
REGISTER ADD. Writing address (check the tables for proper addressing):
- From 0000h to 003Bh for writing the main module alarm points
- From 0040h to 007Fh for writing the 2nd module alarm points
- From 0080h to 00BFh for writing the 3rd module alarm points
- From 00C0h to 00FFh for writing the 4th module alarm points
The answer from the annunciator must be identical to the request telegram sent by the master.
ATTENTION: When a logical alarm is set (FFh00h = ON) it can just be unasserted with another logical
command (00h00h = OFF).
The yellow points refer to the logical alarms of the main module and represents addresses 0010h to 003Bh.
The yellow points refer to the logical alarms of the main module and represents addresses 0000h to 003Bh.
The green points refer to the logical alarms of the 2nd module and represents addresses 0060h to 007Fh.
The yellow points refer to the logical alarms of the main module and represents addresses 0010h to 003Bh.
The yellow points refer to the logical alarms of the main module and represents addresses 0000h to 003Bh
The green points refer to the logical alarms of the 2nd module and represents addresses 0040h to 007Fh
The blue points refer to the logical alarms of the 3rd module and represents addresses 0080h to 00BFh
The yellow points refer to the logical alarms of the main module and represents addresses 0004h to 003Bh
The yellow points refer to the logical alarms of the main module and represents addresses 0000h to 003Bh
The green points refer to the logical alarms of the 2nd module and represents addresses 0040h to 007Fh
The blue points refer to the logical alarms of the 3rd module and represents addresses 0080h to 00BFh
The orange points refer to the logical alarms of the 4th module and represents addresses 00D0h to 00FFh
The yellow points refer to the logical alarms of the main module and represents addresses 0008h to 003Bh
The yellow points refer to the logical alarms of the main module and represents addresses 0000h to 003Bh
The green points refer to the logical alarms of the 2nd module and represents addresses 0040h to 007Fh
The blue points refer to the logical alarms of the 3rd module and represents addresses 0080h to 00BFh
The orange points refer to the logical alarms of the 4th module and represents addresses 00C0h to 00FFh
Two data bytes must be sent to the annunciator. To enable the button the value FFh 00h should be written, and for
disabling 00h 00h.
Where:
The answer from the annunciator must be identical to the request telegram sent by the master.
ATTENTION: When a button command is set (FFh00h = ON) it will remain in this state until receive an
OFF command (00h00h = OFF). Thus the correct procedure is generating a seconds-long pulse by
software to avoid a continuous button assertion.
The remote quitting function demands a special care because the local alarms will be quitted without
the local visualization.
The ME3011b alarm annunciator is provided with the following special registers:
Address 0040h - Special Info Registers: Inform the status of several internal routines and can be used to access
special flags or internal fault alarms. For a more detailed description about this register take a look on Table 1 (page
46).
Address 0050h Configuration Registers: Return all details of the device configuration parameters. For a more
detailed description about this register take a look on Table 2 (page 47).
To access these special registers the Modbus master must use Function Code 03 (03h) Read Holding
Registers.
Where:
REGISTER ADD:
Special Info Register Address = 0040h (look Table 1 for more details)
Configuration Registers Address = 0050h (look Table 2 for more details)
Where:
BYTES QTY. Quantity of transmitted bytes (always 08h for this function, representing four 16-bits registers);
The RTC (Real Time Clock) of the ME3011 device can be set through a Modbus command. This function must be used
to synchronize a Modbus network.
The RTC Sync Command is performed with Function Code 16 (10h) Write Multiple Registers.
The telegram must send 8 data bytes. The 5 most significant ones are the clock information, and the 3 least significant
ones are not used. Please, check the syntax description below for correct time synchronization.
To perform the clock calculation and obtain the values for T1, T2, T3, T4 and T5, use inversely the procedure
described on page 32.
ADDHL ADDLO QHI QLO BYTE8 BYTE7 BYTE6 BYTE5 BYTE4 BYTE3 BYTE2 BYTE 1
BYTES T1 T2 T3 T4 T5 - - -
ADD FC CRC CRC
QTY.
INITIAL ADD. REGISTERS N
DATA
Where:
16-bits registers
Function Code Address Content
quantity
0000h
: 4 registers Main module's alarm signaling reading
0003h
0004h
: 4 registers Second module's alarm signaling reading
0007h
0008h
03h :
000Bh
4 registers Third module's alarm signaling reading
000Ch
: 4 registers Fourth module's alarm signaling reading
000Fh
0040h 4 registers Special Info Registers (check Table 1)
16-bits registers
Function Code Address Content
quantity
0000h
: 8 registers Main modules registered events reading (1024 events)
0FFFh
1000h
: 8 registers Second modules registered events reading (1024 events)
1FFFh
2000h
: 8 registers Third modules registered events reading (1024 events)
2FFFh
3000h
: 8 registers Fourth modules registered events reading (1024 events)
3FFFh
8000h 4 registers Main module's physical input reading
04h
8001h 4 registers Second module's physical input reading
16-bits registers
Function Code Address Content
quantity
0000h
: 1 register Main module's logical alarm writing (alarms 1 to 60)
003Bh
0040h
: 1 register Second module's logical alarm writing (alarms 61 to 124)
007Fh
0080h
: 1 register Third module's logical alarm writing (alarms 125 to 188)
00BFh
05h 00C0h
: 1 register Fourth module's logical alarm writing (alarms 189 to 252)
00FFh
003Ch 1 register QS Buttom remote command (Sound Quitting)
16-bits registers
Function Code Address Content
quantity