Hi masound
Nigel is correct about PLC's making use of microcontrollers. While the programming languages use by PLC's make them very easy to use for industrial (and general) automation, they are to expensive for me as a hobbyist to play around with or use in projects, and anyway who wants to buy a complete controller if you can build your own. I retired a few years ago and decided to make an IDE that will allow you to program automation applications for pic18 microcontrollers by using a CAD approach. You draw the program logic on the pc and it will generate the .hex code for the pic. For debugging you use the same program logic and with a serial connection to the pic you can 'see' what is happening inside the logic. The idea is not to different from that of Flowcode, the difference being mine is 'concurrent' execution of function blocks (of which there are 130) as oppose to 'sequential' execution.