The video above gives most of the info on this automation. A model submarine involves a lot of working parts which need to work together in perfect balance. If not, literally all can be lost. This video describes how arduino has automated certain functions and left the rest to the 'captain.' This video is not able to discuss the workings of a model submarine, or even the build, but will describe the role of automation in the control of the boat, and it is terrific.

The video features the Nautilus SSN 571. Most of the automation involves the ballasting system so I will begin to describe this. It is a unique system.

These three systems can be controlled ‘manually’ by RC. I am using arduino but the first goal of the script was to take in all the channels from the receiver and then achieve the same degree of manual control. In total 6 channels now go into the arduino, plus a pressure gauge. The arduino reads these and powers a bank of 8 relays, and two servos.

The manual controls are:

· Main ballast pump in/out

· Piston in/out

· Trim tank fore/aft.

This degree of complexity is high so the arduino automates a number of functions. The goal of the automation is to make sailing more effective but not to take away the challenge of individual control. It is integrated automation. This can be seen in operation on the video. But the first thing to note is the bow hydroplane. When the boat is in surface running mode the hydros are closed. Although this is not about the mechanism but the automation but I will show you the mechanism for the hydros. What makes them extra difficult is that they are at an angle of 120 extended. (See above)


On arrival at the lake, the boat is put in the water, hydro’s closed and taken for a short sail then back to the bank. Then the hydros are opened, and the main ballast tank is manually filled. (Using the switch on the transmitter) Then the piston and trim tanks are used to get the boat to neutral buoyancy. This needs to be done every sail as water and weather conditions change the ballast requirements every time.

Then when the boat is submerged at a depth that is wanted, a snapshot of the pressure is taken. Then, if wanted, the boat can be put into auto control immediately and sailed away at that depth.

In auto control the arduino controls the bow hydros using a PID algorithm to maintain the boat at the recorded pressure, and should the boat sink or rise too much (3 cm) the piston will make take correcting action.

While running and if visible the auto control can be turned off and the boat ‘flown’ using the hydros. It can be taken down to another depth and the snapshot taken and then put into auto to maintain that depth.

When ready for surfacing, the auto is turned off and surface routine initiated from the transmitter. This causes the piston to extend making the boat lighter, and the trim tanks to pump toward the stern for a set amount of time. This brings the boat up, bow first. When the conning tower breaches the surface, the ‘Captain’ may then turn on the main pump. (I like to keep that control separate).

The planes can now be retracted for surface running. When ready to dive, the planes are extended, and the diving routine initiated. This causes the piston and the trim tanks to reverse what they previously did. When this has finished the main pump turns on for the 12 seconds necessary to fill the main tank. Then decks are awash and the boat will start to slide under which may be aided by the manual use of the hydroplanes. When it ducks under the auto switch can be turned on and the boat will seek the depth of the snapshot pressure.

The RC receiver aerial lies inside the boat lengthwise. It will read RC down to 3 meters in fresh water. The air intake is hidden inside the sail (conning tower), and the vertical mast that can be seen in the video is only there to tell me where the boat is. Without it in the opaque pool water I would lose the sub visually.

The parts I have added to the submarine to do all of this is an arduino nano, a MPXV7007 pressure gauge, and a bank of eight relays. Everything else was already there.

I have attached the arduino sketch, in all it’s primitiveness, and the circuit diagrams for the nano and the bank of relays.

<p>This looks like a fun hobby! Do you have to keep the antenna above the surface or can it go deeper and keep in radio contact? Have you programmed a failsafe to return to the surface if radio contact is lost? Any thoughts about using a 9DOF accelerometer/gyro/compass and GPS for planning a route or bringing it home automatically if you lose radio contact?</p>
<p>Hi there.. It can go down to two or three meters in clear fresh water. Salt or pool water is less good, and no, I think GPS is a bit much for a boat this size and that does require a clear view of the sky. The failsafe turns on the piston for max buoyancy. Good questions</p>
Very nice! Are you a member of the international group called The SubCommittee, based in the USA?
<p>HI. I am registered with their forum and have made a couple of contributions. My primary 'peer' support is from a group in the UK, that I chat with regularly. </p>
<p> Does Norbert Bruggen communicate with the UK group? He wrote &quot;Model Submarine Technology&quot;, published in Britain in 1996, ISBN900371 04 9. His electronics were not as advanced as yours, all analog! But a great builder compendium for the hardware.</p>
<p>I actually think I bought his book. If I did I haven't visited it in awhile and I don't know where to start looking for it. Very detailed and complex from memory. </p>
<p>Lol! You did not need it, you have a great design right there! Is the U-boat's insides the same design?</p>
<p>Hi. Yes the ballast and the arduino are exactly the same, minus the planes. I developed the system in the Uboat and loved the fact I had so much more psace in the Nautilus. Luxury</p>
<p>Awesome! I have always wanted a submarine that could explore my local lakes.</p>

About This Instructable




Bio: My name is John and I live in Melbourne. I like to build scratch build models and now I am learning arduino although for me ... More »
More by johnredearth:Automating Model Submarines 
Add instructable to: