Programmable logic controllers (PLC)