This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm that you accept these cookies being set.

Modbus Gateway Schneider Electric Em3155
#1
Hi.
I cannot get the modbus to work correctly to communicate with iEM3155 on Modbus, parameters inserted correctly but there is no place to choose stop bits in LM, the iEM has 1 stop bit. Is that OK?
I tried to modify the Json file to the correct settings for reading adresses but i only get 0 value. I tried one up and one down register also. Any ideas?
i can also add that the iEm3155s Communication LED blinks when trying to read registers.
Reply
#2
Stop bit settings are merged with parity in order to prevent invalid values, you can choose from:
  • None (1 stop bit)
  • Odd (1 stop bit)
  • Even (1 stop bit)
  • None (2 stop bits)
Make sure that your modbus device has matching settings (baud rate, parity, stop bits).

If you have a valid device profile you can use scan feature to discover your device. If scan works properly it means that settings are correct and reading should work as well.
Reply
#3
Of course. But I still get no communication.

Ii example i want to read the following register from the manuafactors table:
Register
Address
Action
(R/W/WC) Size Type Units Description
Current
3000 R 2 Float32 A I1: phase 1 current
3002 R 2 Float32 A I2: phase 2 current
3004 R 2 Float32 A I3: phase 3 current
3010 R 2 Float32 A Current Avg
Voltage
3020 R 2 Float32 V Voltage L1–L2
3022 R 2 Float32 V Voltage L2–L3
3024 R 2 Float32 V Voltage L3–L1
3026 R 2 Float32 V Voltage L–L Avg
3028 R 2 Float32 V Voltage L1–N
3030 R 2 Float32 V Voltage L2–N
3032 R 2 Float32 V Voltage L3–N
3036 R 2 Float32 V Voltage L–N Avg

I then made the json file:

{
  "manufacturer": "Passiv Pluss",
  "description": "Strømmåling",
  "mapping": [
    { "name": "Gjennomsnitt A", "bus_datatype": "float32", "type": "inputregister", "address": 3010 }
      ]
}

I also tried register instead of inputregister. I want to use the modbus function 3 for reading and 16 for writing to registers as noted under.



Modbus parameters from IEM3155

Function list
The table below lists the supported Modbus functions:
For example:
• To read different parameters from the meter, use function 3 (Read).
• To change the tariff, use function 16 (Write) to send a command to the meter.
Table format

Decimal Hexadecimal
3 0x03 Read Holding Registers
16 0x10 Write Multiple Registers
43/14 0x2B/0x0E Read Device Identification

Type Description Range
UInt16 16 bit unsigned integer 0 – 65535
Int16 16 bit signed integer -32768 to +32767
UInt32 32 bit unsigned integer 0 – 4 294 967 295
Int64 64 bit unsigned integer 0 – 18 446 744 073 709 551 615
UTF8 8 bit field multibyte character encoding for Unicode
Float32 32 bit value Standard representation IEEE for floating number (with single
precision)

iEM 3155 instructions for downloading
Reply
#4
The best way to integrate this Modbus device is by using a profile file, this will exclude all possible scripting mistakes.
Reply


Forum Jump: