PLC learning