I am new to Arduino, and I need to find a cost effective solution to be able to monitor the temperature at different location in a grower's place.
The problem is the distance between each location is about 20 meters. So I know I need to have multiple arduino communicating to a master arduino with serial communication.
Now the master needs to datalog the temperature, but I am thinking of having a PC datalogging the temperature with some sort of VB which is not an issue.
Also, is it possible to datalog from an Arduino to a PC with serial communication so I would not require a ethernet shield?
The serial communication to the computer (via the usb plug) is actually the most common way to communicate with the computer.
Other options are : ethernet, wifi, bluetooth.
For a full, industrial, top solution: you can use ethernet cat5, use the twisted pair with RS485 drivers.
But you probably don't need that.
What is the maximum distance ?
Do you need wires between them, or can it be wireless. Perhaps even with batteries ?
For wires, many use the ethernet cat5 cables, just because they are cheap and have enough wires.
The DS18B20 is the best temperature sensor for this. It can be used at the end of a long wire. So perhaps you don't need many Arduino boards.
The Arduino Uno has a USB plug. Many Arduino boards have that.
Is it okay if you miss a few temperature samples ? In that case wireless could be fun. I needs more work though.
Some have made the DS18B20 to work with 20 meters of cable. But it depends a lot on the cable.
You could also use a slow serial communication, with only a few resistors for protection. That will be a 5V UART signal, with low baud rate. If the cable runs along mains wires, you might need more protection, perhaps even a filter. I think 100 ohm at the TX wire and a capacitor of 1nF to ground with 4k7 to the RX input should do it.
RS-485 is usefull in a factory with lots of electrical noise and cables up to 100 meters.