Gateways and Energy Servers
Schneider Electric support forum to share knowledge about product selection, installation and troubleshooting for EcoStruxure Panel Server, PowerTag, Com'X, Link150…
User | Count |
---|---|
81 | |
46 | |
28 | |
28 |
Link copied. Please paste this link to share this article on your social media post.
How can I add the digital inputs read by a Comx200 to a PME 7.2 system?
I need it for Wages application.
Posted: 2015-06-29 12:57 AM
Link copied. Please paste this link to share this article on your social media post.
I can only answer to the AI and DI modbus mapping.
it is also possible to use the CSV export method and the PME ETL (already explained in another POST)
In order to read Com'X AI and DI through modbus protocol, there are several condition to check :
NOTE : I do not explain how to declare those AI and DI into PME as custom measurement (see PME doc)
1) The "Modbus gateway" feature must be enabled
Com'X version < 1.3 : this feature is not implemented
Com'X version 1.3.5 : this feature is implemented in "Initial settings/Modbus Serial" page
Com'X version 1.4.6 : this feature is implemented in "Settings/Communication/Modbus Serial" page
2) The Com'X internal firewall must be configured correctly
The Com'X internal firewall is configured to :
* Block any modbus traffic from "eth1" interface when the network is configured as "2 separate ports"
* Accept any modbus traffic from "eth2" interface when the network is configured as "2 separate ports"
* Accept any modbus traffic from "eth1" or "eth2" interfaces when the network is configured as "2 switch ports"
Say another way, if the Com'X is configured to protect the "eth2" network from the "eth1" network, the Com'X will not forward the modbus traffic !
Thus if you want to use the modbus gateway, you should normally select a "2 switch ports" network configuration
3) There must be a device declared for each DI or AI
For each DI connected to a Pulse meter The Com'X will map the pulses count of this DI to the modbus table as a INT32 .
Registers used : DI1 : 8917-8918, DI2 : 8921-8922, DI3 : 8925-8926, DI4 : 8929-8930, DI5 : 8933-8934, DI6 : 8937-8938
For each DI connected to a contact (On/Off) The Com'X will map the binary value of the DI to the modbus table as a bitmask of an INT16
Registers used : Validity 2400, Status 2401
For each DI connected to a contact (On/Off) The Com'X will map the running hours of the DI to the modbus table as a INT32
Registers used : DI1 : 8917-8918, DI2 : 8921-8922, DI3 : 8925-8926, DI4 : 8929-8930, DI5 : 8933-8934, DI6 : 8937-8938
For each AI connected to a PT100 or PT1000, The Com'X will map the temperature of this DI to the modbus table as a floating point
For each AI connected to a 0-10V sensor, The Com'X will map the Voltage value of this DI to the modbus table as a floating point (value between 0 and 10)
For each AI connected to a 0-20mA sensor, The Com'X will map the curent value of this DI to the modbus table as a floating point (value between 0 and 20)
Registers used : AI1 : 10000-10001, AI2 : 10002-10003
NOTE : in those 2 last cases (0-10V and 0-20mA), the scaling of the custom model is not taken into account)
See full mapping in the user guide
Posted: 2015-06-29 12:57 AM
Link copied. Please paste this link to share this article on your social media post.
I can only answer to the AI and DI modbus mapping.
it is also possible to use the CSV export method and the PME ETL (already explained in another POST)
In order to read Com'X AI and DI through modbus protocol, there are several condition to check :
NOTE : I do not explain how to declare those AI and DI into PME as custom measurement (see PME doc)
1) The "Modbus gateway" feature must be enabled
Com'X version < 1.3 : this feature is not implemented
Com'X version 1.3.5 : this feature is implemented in "Initial settings/Modbus Serial" page
Com'X version 1.4.6 : this feature is implemented in "Settings/Communication/Modbus Serial" page
2) The Com'X internal firewall must be configured correctly
The Com'X internal firewall is configured to :
* Block any modbus traffic from "eth1" interface when the network is configured as "2 separate ports"
* Accept any modbus traffic from "eth2" interface when the network is configured as "2 separate ports"
* Accept any modbus traffic from "eth1" or "eth2" interfaces when the network is configured as "2 switch ports"
Say another way, if the Com'X is configured to protect the "eth2" network from the "eth1" network, the Com'X will not forward the modbus traffic !
Thus if you want to use the modbus gateway, you should normally select a "2 switch ports" network configuration
3) There must be a device declared for each DI or AI
For each DI connected to a Pulse meter The Com'X will map the pulses count of this DI to the modbus table as a INT32 .
Registers used : DI1 : 8917-8918, DI2 : 8921-8922, DI3 : 8925-8926, DI4 : 8929-8930, DI5 : 8933-8934, DI6 : 8937-8938
For each DI connected to a contact (On/Off) The Com'X will map the binary value of the DI to the modbus table as a bitmask of an INT16
Registers used : Validity 2400, Status 2401
For each DI connected to a contact (On/Off) The Com'X will map the running hours of the DI to the modbus table as a INT32
Registers used : DI1 : 8917-8918, DI2 : 8921-8922, DI3 : 8925-8926, DI4 : 8929-8930, DI5 : 8933-8934, DI6 : 8937-8938
For each AI connected to a PT100 or PT1000, The Com'X will map the temperature of this DI to the modbus table as a floating point
For each AI connected to a 0-10V sensor, The Com'X will map the Voltage value of this DI to the modbus table as a floating point (value between 0 and 10)
For each AI connected to a 0-20mA sensor, The Com'X will map the curent value of this DI to the modbus table as a floating point (value between 0 and 20)
Registers used : AI1 : 10000-10001, AI2 : 10002-10003
NOTE : in those 2 last cases (0-10V and 0-20mA), the scaling of the custom model is not taken into account)
See full mapping in the user guide
Link copied. Please paste this link to share this article on your social media post.
Hi Jef,
Your message has been really helpful.
Please note that for some reason, the INT32 registers you have mentioned in your email as mapped to the DI were showing wrong values. The solution, in my case, was to look at the floating point registers for the same DI which show the right values.
Also, it took us a while to figure out that if we want to connect to the ComX200, using modscan32 for example, you need to set the ID node to 255 as opposed to 1.
Once again, many thanks for your reply.
Kind regards,
Bogdan
Posted: 2015-07-07 08:58 AM
Link copied. Please paste this link to share this article on your social media post.
Hello Bogdan
Thank a lot for having commented my answer !
1) You are totally right, I for have forgotten to mention that
on the Modbus-TCP client, the slave ID must be set to 255
2) about the format used (INT32, Floating point register), this depends on your modbus-TCP client
in my case the Modbus-TCP client was Modscan32,
for application I had to select "Floating Point" display for the temperature
and "long integer" for the counters.
NOTE: I also forgotten to specify that the fomat of the 32 bits value was "Big Endian"
Regards
Jef
Create your free account or log in to subscribe to the board - and gain access to more than 10,000+ support articles along with insights from experts and peers.