Today is...
Tuesday, August 21, 2018
Welcome to the Modbus Community, about
the world's leading automation protocol.
PLC Communication
Monitoring electrical distribution system with PLC with communication module.


I wanted to know that if I want to monitor electrical distribution system consisting of 20 CB equipped with communication module like ModBus RTU or TCP with PLC, does the programming contain a lot of complexity and cost a lot?

How much time is needed for programming? We do not have hardwire connection all through Ethernet or shielded twisted paired cable.

I have no idea what a CB is. But if you have devices that are Modbus slaves without wired connections, a wireless network has to be a primary consideration.

Your secondary consideration is what software manages the data collection, storage and at some point, analysis. This is typically HMI software or SCADA software. The software would connect to a wireless gateway, which would then carry the messaging.

Commercial HMI or SCADA software typically has documentation on configuring the data connection/collection task. Most HMI/SCADA nowadays are OPC clients and you might use an OPC server with a Modbus driver to communicate to the wireless gateway(s).

The documentation for the slave devices has a table or map that defines which data is available from which register/address.
Every device will have some sort of slave address or an IP address.

There are commercial gateways for converting RS-485-to-Ethernet, if need be.

There will always be a learning curve for any software.

thank you for your kind answer.

>I have no idea what a CB is. But if you have devices that
>are Modbus slaves without wired connections, a wireless
>network has to be a primary consideration.

CB stands for circuit breaker which is a device that protect electrical system from short circuit. We can get a lot of information from CB like current, voltage, power and….
Moderator's note: and… seems to have a been seen as a special character. Not sure what this word is.

I want to know if I send all this information to the PLC system or as you called it SCADA, do I need to define each and every parameter to the PLC one by one? Or is there a ready table which I need to upload all information to the PLC?

By saying that there is no hardwire I meant we do not need several direct connections between the CB and PLC for each parameter to monitor. All communication process is done via Ethernet or RS-485 cable.

My university class project is to estimate the time and technical requirements for this operation. I chose ABB PLC AC500. As I understand I need a CPU, Communication interface module and SD Memory. Is this a correct assumption that we can get all the info of the CB with RS-485 and then send them to one switch so we can transfer all data from that switch to PLC, or all RS-485 cable should go directly to the PLC?

By Ikhtiander - on 10 March, 2018 - 10:11 am

Hi EhsanGH,

Can you please share your CB Brand, Cat no / Part No, so we can review its specification especially related with data communication, such as communication protocol.

Usually you need to define each device parameters to be communicated so PLC or other device can access this data thru communication protocol. This method called data mapping, but how data is mapped will be vary dependent on data communications protocol. That is why we need your CB datasheet here.

Only after you got the communication details of your CB then you can design your PLC side. It will need communication module or built in communication port that have compatible protocol and compatible physical communication specification with your CB.

Hope this help



>Can you please share your CB Brand, Cat no / Part No, so we
>can review its specification especially related with data
>communication, such as communication protocol.

The selected CB are:
ABB Emax2: this model has communication modules for both TCP and RTU

ABB Tmax T: this one has communication module for Modbus RTU

I want to connect 2 Emax2 and 18 Tmax T to PLC for only monitoring of their status, like knowing current, voltage, energy delivery, maintenance period. Based on my research I figured out that they can transmit all this info by their communication module.

About PLC I chose ABB AC500,

I think I also need to have ABB software which is called ABB Automation builder for visualization so it also adds some time to all procedure.

Your objective is not clearly stated as to who or what needs the circuit breaker data.

Does the PLC need the data from the circuit breaker(s)? Or is the circuit breaker data needed elsewhere? A PLC is hardware box that works in real time. It generally does not store large amounts of data for extended time periods, nor do PLCs have the functionality of analysis of time domain data. A PLC is a real time logic solver. Why does the PLC need the circuit breaker data? Does it have to make real-time logic decisions on the circuit breaker data?

If the PLC is running without the data now, why involve the PLC in the data transfer? The PLC will have to be equipped with Modbus master capability to read the circuit breaker slave data, a task that does require you to create (protocol) registers in the PLC and populate those registers with data from the circuit breakers. The PLC then must have some (comm) protocol functionality for the HMI/SCADA software package to read the data via the comm protocol from the PLC. That communications protocol could be Modbus or some other comm protocol.

What is the topology, the geographic layout? Are all circuit breakers local to one plant?

How much data in each circuit breaker?

What update rates are expected? Do you need data from each circuit breaker once every second, 5 seconds, minute, 5 minutes, hour?


>Your objective is not clearly stated as to who or what
>needs the circuit breaker data.
>Does the PLC need the data from the circuit breaker(s)? Or
>is the circuit breaker data needed elsewhere?

The circuit breaker data is needed elsewhere. The PLC does not analyzed the info, it just gets the info and via a router send it to the cloud or it can store it in a local data server. After that the operator can monitor each circuit breaker info in its supervisory system. I think here the PLC is a kind of interface between the circuit breaker and supervisory system like SCADA or the proprietary software which shows info.

>What is the topology, the geographic layout? Are all circuit
>breakers local to one plant?

In my opinion for higher reliability the star configuration is more appropriate. Yes all of them are local to one plant.

>How much data in each circuit breaker?

It varies among models for instance, the Emax2 can transmitted up to 200 different info. i think this item should have impact on the number of CPUs.

>What update rates are expected?

Every 15 min.

>Does the PLC need the data from the circuit breaker(s)? Or
>is the circuit breaker data needed elsewhere?

Today with the introduction of high performance building you need constant monitoring of your electrical network. so this can be realized by two ways: in first method an operator goes to the electrical system facilities and audit the info which is time-consuming and there is a high probability of error. but the more advanced approach is to send info to supervisory system and do the monitoring remotely and analyse the system by software and store the history of system for future decision.

>"send it to the cloud or it can store it in a local data server."

This is really critical part - the database software that creates a database, handles the data storage and provides tools for data reporting and analysis. HMI/SCADA software is typically used because HMI and SCADA software already have some form of integrated communications handler, typically OPC that has OPC servers with industrial communications protocol drivers. The assessment of programming that you are tasked with is for the HMI/SCADA software, the commmunications setup and its database. The circuit breakers as Modbus server/slaves require only minimal configuration of the communications setup.

In my opinion, the PLC(s) are excessive, unneeded to accomplish the communications task, requiring resources for programming that adds no value and will always be an additional point of failure.

HMI/SCADA can connect directly to circuit breakers that are Modbus slave/servers. I fail to see why one should bear the cost of obtaining, programming and maintaining PLCs when the software can talk directly to the circuit breakers.

One might need a PLC to control the CB. For example you might want to open the breaker based on a certain condition such as fire in the building. The HMI can open the breaker via Modbus communication but it is not reliable or safe in situations like this. Typically the Fire control system has a hardwired connection to breakers or to a PLC which in turn opens the breaker via its hardwired relay outputs. The relay output would be connected to the shunt trip input of the CB.

By W.L. Mostia on 9 March, 2018 - 4:02 pm

You have not provided enough information for us to help you. At a minimum, you should provide information about what PLC system you will be collecting the data on, whether the CB have to be communicated to individually or to a network the CB's are connect to, how far apart are the CB and from the PLC, etc. A system sketch would help.

Most PLC's have communication modules that speak Modbus (serial or TCP/IP). If you do not have a hardwired connection, then you will have to connect wirelessly. If you do not have a CB network, you will have to have a wireless adapter at each CB and a central wireless access point to connect your Modbus module to. If you have a CB network, you would need the PLC Modbus module, and a wireless connection to the CB's network. If the CB's are far a part or from the PLC, you will have to use microwaves, satellite, cellar network, etc. to communicate. The cost depends on how complicated the system is.

Is this a school project?

William (Bill) L. Mostia, Jr. PE
ISA Fellow, FS Eng. (TUV Rheinland)
WLM Engineering Co.

By Bob Peterson on 11 March, 2018 - 11:27 am

Some plc's have modbus and or modbus TCP built-in already. It's just a matter of using the instructions set they give you to communicate with external devices. Sometimes you have to buy a Gateway module of some sort.

It just depends on what brand of PLC you have.

I think you should keep in mind that the serial interface should not be used for any safety trips, it's only suitable for monitoring.

Programming the PLC wouldn't take terribly long. You'd have to set up the communication parameters so the PLC can communicate with each breaker, write the logic for pulling status data to memory, then set up the communication path from the PLC to the server that will get it to its destination.

The first part wouldn't be too difficult for someone who knows what they're doing... last part would take a bit longer I'd imagine.