I/O between arduinos with opto coupling. Sample schematic

Thanks this has helped allot and i have since done a new schematic for my project.

I'm now looking at using pwm as some changes in requirements means that simple HIGH/LOW readings wont be enough.

I'm thinking of having one input and one output channel between each arduino and using rj45 ports which would use two of the twisted pairs in the cat5 cable. All using the optocoupling like in the sample schematic with pwm on the output pins.

My questions are,
given the use of an optocoupler and the potentially lengthy distance should i consider setting the pwm output to a slow rate? From this document it says you can set them to output as low as 30Hz and 60Hz depending on which pin you use.
https://arduino-info.wikispaces.com/Arduino-PWM-Frequency

Also I'm considering to just instead use something like a the suggested RS485. How ever i need to connect to upto 4 other arduinos and with only one pair of serial i/o pins is this even possible?

I'd prefer to stick with the opto and pwm if possible to minimize the use of extra parts and keep everything on the one pcb. Is there an alternative way to deal with lengthy distances other than serial line drivers? Possibly some sort of pwm repeater?