HMI/RF com/ com protocol help

Guys I need some help/suggestions. I would like to make 2 weather stations 2 and 7 miles from my house.I would like to make these stations read temp/humidity, wind speed, and maybe rainfall. I would like to make a graph of these over 7 days. I was going to try to use Mango Automation to have an HMI, however I am not sure I am smart enough to use this. My problem is communication. I have looked at a RS485 wireless bridge in the 2.4ghz band. I believe from a hardware standpoint this is achievable. I am trying to learn MODBUS RTU, however with NO experience in electronics, programming, or communication protocol I am becoming extremely frustrated. So my questions are 1. What is a good HMI program for a gross beginner. 2. Does anyone have a suggestion for communication protocol. 3. Would it be better to have a "slave" in the field sending raw I/O signals to a pc and do the logic in the hmi software. Or would it be better to do the logic in the field and send the data to the pc, or have an arduino on both ends with the Master sending data to PC? I realize these questions may sound ignorant, however I am ignorant on this subject. I am very grateful for any help, and pointers you may have.

cr22f13: I would like to make 2 weather stations 2 and 7 miles from my house.... My problem is communication. I have looked at a RS485 wireless bridge in the 2.4ghz band. I believe from a hardware standpoint this is achievable.

If you have a clear line of sight and use good parabolic dish antennas, you could probably go 7 miles. If there are trees and buildings in the way, 2.4GHz ain't gonna make it through them. 7 miles through obstacles isn't exactly easy for lower frequencies either, at least if you stick to legal power limits (milliwatt) in the unlicensed band. You may need to get your ham radio license so you can legally use a couple watts of transmit power (however, ham cannot be used for commercial purposes -- if you're gathering this data for business purposes or selling it, you'll need to buy an ISM license from the FCC).

  1. Would it be better to have a "slave" in the field sending raw I/O signals to a pc and do the logic in the hmi software. Or would it be better to do the logic in the field and send the data to the pc,

I would do the logic in the field so that less data needs to be transmitted over the wireless link.

Don't forget to use checksums and packet acknowledgement, as scrambled or lost RF transmissions would put bad data in your database.

or have an arduino on both ends with the Master sending data to PC?

This is a matter of preference. If your PC can directly read from the RS485 hardware and you leave the PC on all the time anyway, then no need for another Arduino. But if you want to shut off your noisy, power-hungry PC from time to time, then storing the data on an Arduino with the PC periodically downloading the data would make the most sense to me.

Update. I believe the guys at the Mango forum have helped me get modbus serial working. Simple mistake, I added rxtx to the proper java folders, however I did not realize it was necessary to put rxtxserial.dll into the Mango/Overrides folder. I'm saying it here to hopefully help someone else with this problem. I do have a ham licence to legally transmit at a higher power. I am not creating this for commercial purpose or to sell.

"Don't forget to use checksums and packet acknowledgement" Does the Modbus RTU have the ability to handle this, or is this something I will need to implement from others code?

"storing the data on an Arduino with the PC periodically downloading the data would make the most sense to me." This would be accomplished through a SD Card shield, or is there a better option? Thank you for your help and pointers. I greatly appreciate the time you have taken to help me.

cr22f13: "Don't forget to use checksums and packet acknowledgement" Does the Modbus RTU have the ability to handle this, or is this something I will need to implement from others code?

Not sure about Modbus, sorry. However, high level protocols seldom have error checking, so I'd hazard to guess you'll need a checksum at the very least.

"storing the data on an Arduino with the PC periodically downloading the data would make the most sense to me." This would be accomplished through a SD Card shield, or is there a better option?

I think the SD card would be ideal, yes.