I used to work in the industry where PLCs were heavily used. There is a very basic difference between PLCs and microcontrollers. PLCs are a bunch of relays that can be connected in various ways useful to you. They dont have a CPU built in while Microcontrollers are basically CPU, a memory unit, I/O unit integrated into one chip.
The great thing about PLCs are as follows:
1. you can reconfigure/reconnect inputs and outputs to produce certain kind of behaviours.
2. 100s of input pins are available having to worry minimally about communication protocols etc
Disadvantages:
1. Quite big
2. Infrastructure costs are high
This is where the microcontrollers come in handy. They are little computers all in one chip.
Advantages:
1. They have a small form factor
2. Great for rapid prototyping and testing SoC based systems.
3. Availablility of complicated and fast communication protocols that opens up a wide variety of fields that PLC cannot get into. For example: tiny robots like thymios, epucks.
I am attaching a quora post that talks in more detail.
It means that it is wrong to consider that PLCs ship CPUs in the same way as the μCs
----
Concerning the answer of Zeashan,
Is it just because µCs do not have I/O interfaces that they are not suited for industrial control applications ?
Knowing that nowadays μCs are equipped with very fast CPUs, what factors would prevent the use of μCs in industrial environments?
Apart from the fact that the PLC has a sophisticated I/O interface and even programming environments, what should be added to the μC to serve as a PLC?
I have a computer background and I would like to understand.