Arduino Controlled RC Boat [30Mar19]

Project ROWAN

Project ROWAN is the Remotely Operated Waterborne Arduino Navigator, & will be the craft from which I pilot the drone down then back up the Missouri river. This post will be consistently updated as my progress advances by updating the title with the date as seen above.

The entire system will be controlled by the arduino microcontroller which is in charge of processing all sensory data & interfacing the controls given through the Internet &/or RF (radio frequency) to the drone using the HC12 & ESP8266. I’ve already tested the range to half a kilometer as seen in this video. The first test will be short range to keep ROWAN in my sights in case something went wrong & make secondary adjustments as necessary. Once I’m certain of the code’s execution I’ll extend it to long range control, meaning its farther away but still retrievable & finally remote control where a system failure likely means the end of ROWAN .

The first step is power, which I intend to manipulate by using a set of lithium polymer (LiPo) batteries as well as several relays to interface them with each other. The relays will connect the batteries in parallel by having all the grounds connected to each other & all the positives connected, doubling the available amps. The relays also allow me disconnect specific batteries from each other if one were to get too low. Looking below you can see a LiPo battery with a series of wires labeled balance charger terminals. These terminals can be connected to a sensor to determine the voltage of each cell making up the battery as seen here. With low powered batteries now being disconnected from the system, they must now be charged so they be reconnected, which is where my solar panel comes into play.

 

Solar Charging

With a $117.24 investment I was able to buy the solar panel, charge controller, battery (donated), miscellaneous tools & supplies as well as a charger. The plan is to have the solar panel mounted atop ROWAN with it connecting to the charge controller, which dictates if & how much power goes into the battery. If the battery if full then the solar panel is disengaged while a low battery detection allows electricity to flow, though if too low it will disconnect from the load, which is any unit requiring electricity to run. What determines the solar battery being full, empty, or too low to continue discharging is the adjustment settings I make on the charge controller. Once its set I’m able to connect everything & send it off to the river.

In terms of charging the lipo, relays will connect the solar battery to the LiPo charger, which then charges the disconnected LiPo battery. Every thirty or so minutes the arduino will disconnect the LiPo charger from the LiPo battery to safely determine the voltage in each of the disconnected battery cells. This repeats until the LiPo is full, where it is then reconnected to the system.

Navigation

Now that the system is powered, I have to direct it in the water & determine its position when out of sight by using reversible air motors as well as rudders. The motors determine my rate of speed while the rudders determine my direction while in the water. Most boats have one or two rudders in the back while mine will have four, two in the back & two in the front for sharp maneuverability in adverse conditions. I’ll also implement GPS capabilities in case the unit is lost to the waves by having it broadcast its last position & going from there to find & retrieve it if at all possible. I discussed setup, programming, & gathering readings from the GPS in this article. For visuals I plan on setting up a camera that broadcast over the Internet so that I’m always aware of ROWAN’s position & can navigate as necessary.

Being that the camera is likely only second to the motor in terms of chief energy consumers I’ll have to adjust the program depending on the solar battery energy level in conjunction with the LiPo batteries. As of now there will be three operation modes: normal operation, partial operations, & semi-stasis. Normal operations is obvious, but partial operations require the motor to be  disconnected from the system, leaving steering to the rudders below. Semi-stasis is essentially emergency mode in that the motors & camera are automatically disconnected until the main battery is charged.

 

Anti Collision Lighting

As shown in my light dependent resistor video, I want to have a way to light the craft so that it isn’t destroyed by a passing boat during night time hours. The program will have a set of LED’s light up when the arduino detects minimal light values from the LDR for 30 minutes. The 30 minute timer is to ensure its real darkness & not the sensors being covered by a shadow or the craft going through a low light area. I’m concerned though as this is an easy way for ROWAN to be stolen since I’m basically lighting a beacon saying, “Steal me!”  It would be a cool addition to the project, but I’m worrisome of theft.

What I could do instead is automatically start the system when daylight hits, connecting the camera, motors, & rudders as well as activating the remote alarm to alert me that it’s ready to be piloted. From there I could complete the mission of going up & down the Missouri river without much fuss.