Submarine telemetry

(I am new to Arduino but have a background in microelectronics and communications.)

I have a R/C submarine that I am upgrading to high resolution video (digital) via USB.

I would like to add a magnetic compass and a method for displaying depth. Preferably, I would like to send this information on the same USB data stream where the compass heading and the pressure would be displayed on a LCD display (Sub pressure-surface pressure=depth)

The attached sketch indicates what I THINK need for hardware - specific device recommendations appreciated!

I am not sure how to implement 2 hosts and 2 slaves on the same USB link but I am working on that! If any body has done it, suggestions are welcome!

If I am going totally in the wrong direction, I appreciate those suggestions as well.

USB has a range of just 1.5 meters!

Mark

USB can go to 6 metres without amplifiers and you can daisy-chain amplifiers (actually re-broadcasting hubs) for longer.

I would put a regular USB hub inside the ROV. Then you can easily have 2 slaves just as if they were both plugged into different USB ports on your PC. Two programs on the PC can work with the two slaves.

What, no gyro to call out pitch and roll?

Radio basically doesn't work underwater, especially with frequencies as high as 2.4 Ghz.
Will the antenna be on the surface?

jremington:
Radio basically doesn't work underwater, especially with frequencies as high as 2.4 Ghz.
Will the antenna be on the surface?

2 things--radio does work underwater, but the power required to make it go any distance is prohibitive.

Second, those are RC subs, and they don't have trailing antennas. I watched a video of some in a big pool, and they were going nuts, diving down to a good 12ft and acting more like penguins in the water than subs. I'm glad my Captain was a little more reserved with the acrobatics.

Communication with submarines is difficult because radio waves do not travel well through good electrical conductors like salt water. Saltwater at depth is probably one of the best natural "Faraday cages" than one can find. The obvious solution is to surface and raise an antenna above the sea level, then use ordinary radio transmissions.

radio does work underwater, but the power required to make it go any distance is prohibitive.

That is exactly why I used the phrase "basically doesn't work underwater".

At 2.4 GHz, radio is only useful to heat the water surface, as in a microwave oven.

jremington:
That is exactly why I used the phrase "basically doesn't work underwater".

At 2.4 GHz, radio is only useful to heat the water surface, as in a microwave oven.

Encoded/modulated light - you choose the spectrum

www.rc-sub.com seems to be the most reliable authority on R/C submarines and questions about control versus water depth are addressed here: RC Submarine Information and FAQs

Some people claim to have operated subs at up to 30 feet depth in extremely fresh, clear water using radio systems operating at 40 or 75 MHz, but any impurities like chlorine or salt reduce the operating distance:

Submarines can be operated in heavily chlorinated pools, or even in the ocean, but you depth will be limited to a few inches, at best. Operating any deeper will require an antenna addition, as you'll need to keep the antenna above the surface of the water in order to maintain control of your model.

Finally, the author comments:

What's the point? You can't see them anyway.

Well, no. Not when they're under four feet of water. It's the challenge of diving a submarine and then bringing her back up safely that's the ultimate reward.

I didn't give the full detail of the radio link because it is not relevant to the Arduino part of this project. Of course UHF radios don't work underwater which is why the sub is connected to a surface float by an umbilical and the radio is located on the surface. The system has been working fine for many years and this is an upgrade. If you are interested in the existing 900MHz link, you can see details here:

http://www.diannebest.com/Projects/Sub/Submarine.html

USB can go to 6 metres without amplifiers and you can daisy-chain amplifiers (actually re-broadcasting hubs) for longer.

I would put a regular USB hub inside the ROV. Then you can easily have 2 slaves just as if they were both plugged into different USB ports on your PC. Two programs on the PC can work with the two slaves.

There will be no PC in the operating configuration. On shore the USB goes to an Android tablet and I am not sure how to get the shore-based Arduino/display tapped in without having two hosts on the USB.

jremington:
Some people claim to have operated subs at up to 30 feet depth in extremely fresh, clear water using radio systems operating at 40 or 75 MHz, but any impurities like chlorine or salt reduce the operating distance

I have not been to 30 feet - no deeper than 8 feet - but at 100 yards distance and 4 feet down, operation on 75MHz was still fine.

I think some missed the pioint.
USB cable.=Umbilical

I am not sure how to implement 2 hosts and 2 slaves on the same USB link

There are USB adapters such as anywhereUSB which allow multiple hosts to share multiple devices, but at least this particular one does not allow two hosts to share the same device. It probably wouldn't fit in your sub anyway.

Why not just use two sets of wires for the umbilical?

There are USB extenders that will let you transmit USB for long distances over Cat5. We used it to connect some equipment in a test cell to a computer.

Yes, I have not found any way to combine two hosts and two devices on the same USB "channel".

I am going to have to test my 900MHz composite video radios. If the output reflects the input closely, I may be able to pass a serial signal through them from the ROV Arduino to the shore station Arduino.

I don't suppose I could generate my video display in the ROV Arduino and just send it back as composite video?? Don't know if the Arduino Uno has enough processing power for that.

No . It hasn't. By a long mile.

regards

Allan

Maybe a pi could manage it ?

Yes, I have not found any way to combine two hosts and two devices on the same USB “channel”.

I believe that is impossible with USB technology. You need a different bus/protocol as the go-between.

I tested the frequency response of the composite video channel on the existing 900 MHz radio (that WAS used for the lower resolution camera) and it is pretty much flat from 80 KHz to 4 MHz and passes nice, crisp rising and falling edges of a square wave so that should work fine to relay the telemetry from the sub back to the shore station using one of the serial ports. I may need an amplifier to square up the wave and improve the amplitude going into the receiving Arduino but that's no problem.

Two advantages of using the 900 MHz composite video link are:

  • it keeps the telemetry off of the USB channel
  • it uses existing hardware which saves $

Question for the group:

I want to equip the sub with a pressure sensor and a magnetic compass - and of course it needs to do serial.

Can I get by with a Mini or maybe even a Nano to save space? I am not familiar with these smaller units and their interfaces.

Thanks gang!