ULN2803 is an octal current sink. You can use it to interface to 12V but it will invert the signal and need it's outputs pulling up. Unless your PLC needs high currents at it's input you would find it better to use an open collector logic buffer such as the 74LS07. Unfortunately that device only has six buffers but you could use more than one or build your own level translator with transistors and resistors.
wire your 5V signals into an input. Wire an output to an input of the PLC with a pull up resistor wired to the PLCs supply (must be less then 30V) or 12V. Try a 10K resistor*. The common lead to the diodes should be connected directly to this supply. Common the earths.
Frank
* see PLC handbook for details