The probe input must go through the motion controller. It will not work correctly being fed through a slow I/O device like a PLC. Even though it sounds like you got away with it with the parallel port driver it was not the way to do things.
For a probe to work the motion controller i.e. SmoothStepper, parallel port driver moves an axis whilst looking for the probe input to change states. The motion controller has to know immediately when the probe is hit. Going from PLC to Mach to motion device introduces a LOT of delay, and a variable delay at that (you never know how long it will take for the signal to be seen.)
Just wire up your probe to one of the ESS inputs and it will work fine.