Monday, May 19, 2014

Camera issues and a scouting trip

So despite all of our progress so far,  we have hit a real show stopper that we have to tackle before making  a test dive.   For whatever reason,  the camera software on the ROV is no longer working with the cockpit software.   This comes after a pretty crazy night of my home internet going out and us doing a software upgrade on the bot.  We ended up having to tether off my LTE phone connection, then use ICS on a windows machine, to then putty into the bot and give the bot net access through the Windows ICS.  Pretty awesome that we got it to work out, however, not so awesome that instead of fixing the known bug in the last software build, we have a completely non-working camera in this build now.  Not having the camera is kind of a big deal since there is no way to pilot this thing if we can't see where we are going.  So in between digging through logs we decided to take a scouting trip to Jacob's Well this past weekend to plan our dive setup a little more.   For those who have never been,  there's a small walkway around the outer edge of the well that we can probably set up on, but we're going to have to get there pretty early.  There was a pretty sizeable crowd even before noon on Saturday.   None of the pics I took turned out that well, so here's a stock photo so you can at least get an idea:

It beckons!

Our goal for now is to fix the camera software and then do a water test in the tub.  Hopefully by the next time I post we'll have a working robot to show off.  

Sunday, May 11, 2014

So close but no remotely operated cigar

What a weekend.  The plan was to completely finish the 'bot on Friday evening after work, and then have a celebratory launch Saturday.  Well, things have been going way too smoothly for that.  Something was bound to go wrong, and it did.

While programming the Electric Speed Controllers (hereafter referred to as ESC's) we noticed that of the three of them, programming the vertical and port motors went perfectly, but for some reason the starboard motor wasn't working correctly - it was spinning the other two propellers instead.  In addition, the commands from the cockpit were spinning the wrong props.  Not good.  After a few hours of work Friday evening, we decided to reconvene on Saturday and reprogram everything meticulously.

The three ESC's with props attached

Saturday went much better with the ESC's - however, it was a constant that for everything we got working, another thing would go wrong.  If all three ESC's were spinning correctly, the webcam would stop.  If the webcam worked, the servo arm for the camera would stop working.  If the servo arm and webcam worked, the props would misbehave.  To top it off, occasionally the board would short on us.  As the pots of coffee became bottles of beer and the morning turned to afternoon, I knew our plans of launching it in the pool were in jeopardy.  But we didn't give up hope, and eventually got everything working at the same time!  We decided to pop everything in the enclosure and test it out in the tub.


Tub test #1 - No electronics
But fate was not on our side.  After fully enclosing the 'bot - and thinking we were maybe going to launch after all - the webcam stopped broadcasting.  The piece that's been most reliably working since day one!!  And then as we slid the electronics enclosure back out to check that out, the acrylic camera mount popped free, requiring that we re-cement it in place.  Since that takes at least 24 hours, I called it a day.  We'll have to do some more troubleshooting and tweaking and just launch when it's ready.

That being said, being so close to launch feels amazing and I am so glad I have such an awesome team working with me on this.  Here's some pics from across the last few days as we've completed the assembly, enjoy.
Filing down the crossguard

Soldering the DB-25

Adding the batteries

Powering up

Powering the lasers!

Completed homeplug adapter

Beagle + Arduino

The almost completed product

We're almost there.  Thanks for reading so far, more great things to come.

Thursday, May 8, 2014

OpenROV first boot

ROV first boot from Daniel Epperson on Vimeo.

This video is from build day 6.

Build Day 6 & 7

Build Day 6 & 7 were pretty interesting.

We ran into a few problems.  I was honestly a bit surprised we had not come across any real setbacks until now, so overall our progress is still pretty great.  That being said, we did have those problems I mentioned...

What kind of problems, you might ask?  Well, for one, the battery tubes, needing to be completely watertight, were quite a tight fit.  So tight, in fact, that when we attempted to pull the cap back off to recharge the batteries, the acrylic base popped right off.   Here's what it looks like, quietly re-cementing in the night:

Having to reseal this guy with acrylic cement again meant no water test on Day 6 like we had hoped, so we put that off for now.

Our other issue we ran into was this:

We got the pins reversed on that bottom row, so we had to resolder the wires from the main wiring harness onto a new DB-25.  Trey and Danny knocked that out on day 7 and the new DB-25 looks great and tested out fine this time.

Lastly, the build guide stated that we'd need to sand down the white crossguard that fits over the vertical motor to make sure it fits flush.  Well...after almost two hours of first sanding and then switching to a metal file without any real progress, we knew desperate measures needed to be taken before we filed the crossguard down to nothing ( a dremel would have worked, but we didn't have one with us that day, and it would have thinned the guard down too much anyways.)  So Richard took a hammer and pounded the propeller down a quarter inch or so.  After that percussive maintenance, you can see it now fits perfectly:

Now how about some good news?

We have booted in to the ROV!  There are beautiful blinking lights now when we plug it in.  Yeehaw!

In our next update, I'll post the results of the water test and the new firmware tests.  We're almost there!

Friday, May 2, 2014

Build Day 5

Danny E and I spent a few hours last night building on the 'bot, including soldering the DB-25 connector that will connect everything within the main electronics tube, and finishing potting the endcaps and the IMU (depth sensor) that we'll be using.  This was delicate work so Danny brought a box of special ROV parts to assist:

ROV Building Fuel
The soldering joints were super small on the IMU, so we soldered those down and set it in a bed of epoxy.  This was one of the most delicate things we did, because the epoxy has to completely seal the pcb and wiring, but leave the tiny white sensor free.

IMU sitting in epoxy

Gotta keep an eye on the epoxy to make sure it doesn't cover the sensor

We also had to cut the wiring from the main wiring harness before the actual soldering to the DB-25 connector could take place.  According to the build guide we only have about 1cm worth of leeway on this, so we measured twice before cutting.  I wanted a third measurement because I was scared, but Danny was feeling it, and made some perfect cuts.
Measuring out the wires before cutting.  

With the connector soldered and the epoxy curing, we are just about ready to load the electronics into the main enclosure, complete the final steps of the build, and power this thing up.

The "measure the wires" dance?  No, just a gif that Google automatically made.

We've come an awful long way from this:

To this:

Stay tuned!