PICs is a fantastic program for simulation, however you do need the PLC (well on my version).
It can communicate using OPC (well the later versions do), you configure it like a Scada i.e. create pages of graphics and then you can write programs in ladder for functions so it's like programming a plc so for example you can create a program block for simulating a valve for example if the output is on, run a timer turn open prox on & vice versa. There are many functions you can create and see it graphically on the screens just like a scada. The version I had was OPC compliant the earlier one used DDE so you need I/O drivers for each type of plc, It may now contain many other ways of simulating i.e. it may talk to some plc simulation programs or although the version I had used simple ladder it may now have scripting etc. It is a very powerful tool and you could use it to test functionality of your logic without a plc, however it will test the function but it would be the same as writing it in mitsubishi to test it works but re-write it for AB. I simulated a batching process with 15 tanks 400 valves & 40 odd motors.
As I say My version was 2003 so it probably has much more functionality.
There used to be one written for Siemens called Prosis, this used a card that fitted to the main rack of the PLC so you did not need physical I/O the card could be set up so the processor saw it as all the I/O you need and the scripts were written in pascal but it was limited to siemens S5 and doubt it is still going.