TRAINING ONLINE PROGRAMMABLE LOGIC CONTROLLER (PLC) : PRINCIPLES, HARDWARE AND SOFTWARE, DIAGNOSTIC AND TROUBLESHOOTING