Pool ROVer

What are you working on .... Show off your Rov's Projects here.
derelicte
Posts: 292
Joined: Aug 1st, 2011, 3:08 pm

Re: Pool ROVer

Post by derelicte »

I got a chance to try out a red film filter on the sd camera today.

As you can see below, this filter was way too red. It was interesting to see how the water filtered the red at different depths. The red hue changed from pink near the surface to purple at the bottom.

I got a bunch of other film samples, but because the hd camera doesn't seem to need the filter I doubt I'll experiment with these any more.
Attachments
808 keychain camera with first red filter
808 keychain camera with first red filter
SUNP0004_5029.png (142.52 KiB) Viewed 3239 times
Unorthodox
Posts: 45
Joined: Jul 5th, 2011, 2:36 pm

Re: Pool ROVer

Post by Unorthodox »

ROVer from the pink lagoon!

Your right about the HD camera though, it doesn't really seem to need much color correction. I wonder if there is a way to calculate how much color correction is actually needed on a particular setting.
derelicte
Posts: 292
Joined: Aug 1st, 2011, 3:08 pm

Re: Pool ROVer

Post by derelicte »

Ha!

Another shot from the bottom of the deep end. Because I'm operating in the region where the water's filtering effect varies the most, I wonder if it would be difficult to find one filter that works at all depths.
Attachments
test of 808 keychain camera with red filter 1
test of 808 keychain camera with red filter 1
SUNP0004_3981.png (108.72 KiB) Viewed 3232 times
derelicte
Posts: 292
Joined: Aug 1st, 2011, 3:08 pm

Re: Pool ROVer

Post by derelicte »

update: added source code to first page
Can'tGetRight
Posts: 3
Joined: Feb 16th, 2012, 4:59 pm

Re: Pool ROVer

Post by Can'tGetRight »

I am trying to replicate the design of your pool rover for an electronics engineering class and I have purchased everything as you described in your posts with the exception of the boarduino. I had already purchased an Arduino Mega 2560 with motor shield and hoped I could assemble all of this to function as yours does. My first question, with more to come I am certain, is how/where I should connect the wireless dongle for the Wing remote. I notice from your pictures you only used, at least from what I can see, the red, white, yellow and black wires coming from the female connection of the wireless dongle. Is this because certain features of the remote are not used? I know you mentioned unused buttons in your posts so I am making the assumption that the left over wires would service the buttons you aren't using but, I'm not sure where to connect the wireless dongle on the Mega 2560 board and would appreciate any input.
Attachments
Motor Shield
Motor Shield
photo 5.JPG (427.04 KiB) Viewed 3135 times
Arduino mega 2560
Arduino mega 2560
photo 4.JPG (496.13 KiB) Viewed 3135 times
derelicte
Posts: 292
Joined: Aug 1st, 2011, 3:08 pm

Re: Pool ROVer

Post by derelicte »

the wii remote uses i2c to communicate with accessories like the nunchuck and the wing wireless dongle. i2c is a two wire communication interface, so you only need four wires (power, ground, i2c clock and i2c data). I have left out a few details in my documentation, notably the wii i2c interface is 3v and the arduino uses a 5v interface. I developed a lever shifter and voltage regulator circuit to power the wing dongle with 3.3v and convert the i2c clock and data from 5v to 3.3v. however I'm not 100% sure this is really necessary. there are lots of reports of people using wii accessories at 5v without issue. ymmv.

iirc, the motor controller you show only has 2 amp per channel limit, so you can't use it to run the thrusters based on bilge pumps. I recommend a 5a minimum current limit for thrusters.

good luck!
Can'tGetRight
Posts: 3
Joined: Feb 16th, 2012, 4:59 pm

Re: Pool ROVer

Post by Can'tGetRight »

Thanks for the help in your previous response. I've purchased two motor controllers that will handle the loads you specified. I've got another question that involves my choice of Arduino. The Mega 2560 has dedicated I2C communication pins and from a few blogs I've read that the connection should be made differently because the connection to analog pins 2,3,4 and 5 will not work. The recommended connection to the Wii wireless dongle is found at the following link:

http://www.gabrielbianconi.com/blog/how ... uino-mega/

Red wire: from + (VCC/power) to +3.3V (some tutorials say that +5V should be used, but this will reduce the controller life span)
Black wire: from - (ground) to GND
Yellow wire: from d (I2C data) to SDA (pin 20)
Green wire: from c (I2C clock) to SCL (pin 21)

My questions to you are; 1) do you know that your connection method will not work with the 2560 and 2) If connected as described above, will this require a change in the code you provided?

Thanks again for past help and any future help you may provide.
derelicte
Posts: 292
Joined: Aug 1st, 2011, 3:08 pm

Re: Pool ROVer

Post by derelicte »

my level i2c shifter will work with the mega and my code should run on the mega.

using the 3.3v regulator on the arduinos should be fine. the arduino spec page is wrong about the supply. they say it has a 50 ma limit, but if you read the datasheet it is a 150 ma part.

One thing I would suggest is to tie the pullups on the the i2c lines to 3.3v instead of 5v. a better solution might be to clamp them to 3v with a zener. it is unknown if the microcontroller in the wireless dongle can tolerate 5v signals on the i2c pins.

if you need to disable the internal pullups you may have to make a few changes to my code.
Can'tGetRight
Posts: 3
Joined: Feb 16th, 2012, 4:59 pm

Re: Pool ROVer

Post by Can'tGetRight »

So, to make sure I understand what you are saying, I should be able to hook it up to analog pins 2,3,4 & 5 just as you did providing I restrict the power supply to 3.3v across each pin 2-5, excluding the ground? I'm sure you recognize by now just how little I know about micro controllers and I apologize if I have become something akin to a nat at a barbecue. In the future, assuming you are willing to tolerate my ignorance, be as frank as possible because you can't insult a knowledge base I don't have. Thanks again for the useful information.
derelicte
Posts: 292
Joined: Aug 1st, 2011, 3:08 pm

Re: Pool ROVer

Post by derelicte »

no, you need to hook it up to the pins described in the link you provided. the mega expects i2c devices to be connected to pins 20 and 21. you can power it from the 3.3v supply just as describe on that page.

non mega arduinos (like mine) expect i2c devices to be connected to pins 4 and 5.

I suggest you either disable the internal pullups on the i2c pins (this will require a slight code change) and pull them up externally to 3.3v (the i2c bus requires pullups to operate) or use the internal pullups and clamp them to 3v with a resistor and zener combo.

I'd try the 3.3v pullup approach first.

However if you want to be really safe, you can build the same level shifter I did. Follow this document:

http://ics.nxp.com/support/documents/in ... n97055.pdf

I went this way because I want to guarantee that the rov works for a long time. If you only need it to work for a month or so (i.e. for a class project), you can forget the level shifting stuff.
Post Reply