FactoryForge: an open 3D factory simulator for learning PLC programming, wired to TIA Portal, OpenPLC, Node-RED and Ignition
Built as a free alternative to Factory I/O, it connects over OPC UA, Modbus TCP, S7 and PLCSIM, and a grader runs your program against 18 scenes while it cuts the E-stop and injects faults. A broken wire on the pressure transmitter reads 32767, so your logic has to tell a fault from a reading.
For automation students and instructors: the first-hour guide goes from download to OpenPLC driving a sorting line, with no Siemens licence needed.