RS485 serial communications: RS485 module Info
This module (See it here) can be used to send Arduino serial data over long distances (up to 1 Km) using RS485 signals. Schematic diagram: (Below).
See RS485 Example of two arduinos communicating over RE-485 HERE:
There is also a USB-to-RS485 Module (top right) for use on PC's. (See it Here):
See the example RS485 Network Diagram (scroll down).
NOTE: The network has 120 ohm termination resistors at each END. If you use more modules along the network you need to remove the 120 ohm resistors (R7) on those intermediate modules. The 20K resistors hold a known signal when no one is transmitting.
For many details about RS485 See This Page and also see the links at the bottom of this page.
The WikiPedia: RS485 serial bus interface standard transmits differential balanced signals. This has strong anti-interference ability in the common mode, allows a twisted pair transmitter driver on a number of connected devices. The communication distance is up to 1200 meters, the rate is up to 20Mbps, and it can be used in high noise environments, such as industrial automation.
In an RS485 network only one device is in the sending state at any time, and all other equipment should be in the receiving state. Each Arduino controls its RE / DE pin control to specify the device which is sending data to the RS485 network, or receiving data from the RS485 network.
Example RS485 Network Diagram:
(NOTE: The 470 ohm resistors shown below are not needed with the modules above)
Please see the example HERE which has example code for two Arduinos communicating over RS485.
Other Links to Information:
http://www.gammon.com.au/forum/?id=11428 (Excellent RS485 overview, plus Arduino library for sending larger packets of data) Thanks Nick Gammon!
https://code.google.com/archive/p/simple-modbus/ (RS485 ModBus communications)