I would use a PLC over any other means of extra I/O any day, it is however more expensive.
The main benefits I see with a PLC may be biased towards larger machines however.
The great thing is you can use 24v for all your I/O and thus not have the same worries regards noise. You can also make the PLC do the toolchange by writing the ladder and just have Mach tell it to start and the PLC will tell Mach when its finished. Same for external buttons, they can all be 24v, also the analogue inputs on my PLC are rock steady where the PoKeys will vary slightly, not a huge issue but does make it easier to reset to 100% for FRO and SRO.
Hood