Statement of Purpose

The Robotic Object Aquatic Retriever (ROAR) is a remote-controlled underwater robotic device capable of retrieving objects weighing less than one pound from the bottom of a still, clear body of water such as a pool. The robot will utilize cameras to aid in locating the objects and touch sensors (on the retrieval claw) to secure them. We started this project with the hopes to solve the problem of people dropping their phones or other desirables into a body of water such as a pool or creek. 

Background Research

PVC is good for resealing and inserting components inside of the pipes. We can use PVC cement to waterproof the junctions when the design is finalized. Any holes cut into the PVC must be resealed with some waterproofing material and the motors must be waterproof as well which will raise the cost. We will add a gyroscope that will detect instability and adjust motor strength accordingly. There will also be an accelerometer for safety purposes and to estimate depth. We will use a raspberry pi zero which will be connected to the servos, motors, gyroscope, accelerometer, and any other additions. We looked at using I^2C software to collect data from the gyroscope. 

Design Details


System Overview:

The robot will be designed in a quadcopter type style with a central claw, camera, and light. The Raspberry Pi is the brains in this setup and is the way we communicate between the controller and the submarine. Our battery pack is the power since we don’t need the submarine to run very long but this also means it runs out of battery somewhat fast. Speeding up the propellers is our way to make the device go deeper and we let the floatation of the Tupperware container bring it back up. We estimate the ability to pick up about 1.5-2 pounds based on what we have filled the container with. The claw is attached directly to the bottom and is an open-source 3D model which doesn’t rely on power or a servo to stay closed. The on-board gyroscope is mainly to just collect data to help the operator but in the future could be coded into a stabilizer.

Design Details:


    1. Control Interface

      1. In the prototype, a laptop was used to send and receive data to the pi.

    2. Transmitter/Receiver

      1. In the prototype, this was done over an ethernet cable connected between the controller and aquatic drone.

    3. Raspberry Pi

      1. Responsible for connecting all of the sensors to a centralized board in order to receive sensor inputs and output motor commands. 

    4. Camera

      1. Raspberry Pi camera receives power from the the Raspberry Pi outputs video to the Raspberry Pi

    5. Battery pack

      1. The drone has an onboard battery pack to provide power for all the components.

    6. Flashlight

      1. This was made with two white LEDs placed in close proximity to the camera to allow for better vision underwater.

    7.  Motor controller

      1. These were 30N06L MOSFETS which were controlled by the pi utilizing PWM for speed adjustments to each individual propeller. 

    8. Propellers 

      1. These are brushed motors that take power from the motor controller to propel the robot through the water.  There are two that spin clockwise and two counterclockwise, to prevent excessive spinning by the body of the drone.

    9. Gyroscope

      1. The gyroscope provides rotational data to the pi which it can then use to provide some self leveling to the drone.


 System Diagram:

Parts

4 propellers + waterproof motors: $52.90

https://www.amazon.com/LICHIFIT-Underwater-Propeller-Submarine-Accessories/dp/B07WY4MDYZ

4 motor drivers (N-Channel Mosfets, maybe FQP30N06L)

Battery connectors: $6.99

https://www.amazon.com/Connectors-Battery-Connector-Female-Bullet/dp/B0895TDT62/ref=sr_1_20?crid=24YK9USJQB2PA&dchild=1&keywords=ec5+connector&qid=1604974866&refinements=p_85%3A2470955011&rnid=2470954011&rps=1&sprefix=ec5+conn%2Caps%2C154&sr=8-20

Gyroscope + Accelerometer (MPU-6050): (found in inventory)

https://www.amazon.com/HiLetgo-MPU-6050-Accelerometer-Gyroscope-Converter/dp/B01DK83ZYQ/ref=sr_1_2?dchild=1&hvadid=3480463317&hvbmt=be&hvdev=c&hvqmt=e&keywords=mpu+6050&qid=1600486913&refinements=p_85%3A2470955011&rnid=2470954011&rps=1&sr=8-2&tag=mh0b-20

Raspberry pi (already owned)

25 foot ethernet cable for communication (already owned)

Arduino Nano (for additional pwm ports) (already owned)

battery pack: $13

https://www.amazon.com/GOLDBAT-5200mAh-Battery-Traxxas-Associated/dp/B07Z4P33BR/ref=sr_1_109?crid=129WKZ9H9YWS4&dchild=1&keywords=drone+batteries+7.4v&qid=1601337810&refinements=p_85%3A2470955011&rnid=2470954011&rps=1&sprefix=drone+batteries%2Caps%2C161&sr=8-109

claw (Will be designed and 3d printed)

Raspberry Pi Camera: (found in inventory)

https://www.amazon.com/Camera-Module-Raspberry-Webcam-Megapixel/dp/B07QNSJ32M/ref=sr_1_4?dchild=1&hvadid=77790499011795&hvbmt=be&hvdev=c&hvqmt=e&keywords=rpi+camera&qid=1601337502&sr=8-4&tag=mh0b-20 

drone hull (Tupperware container in prototype)

https://www.amazon.com/LOCK-Airtight-Container-20-29-oz-2-54-cup/dp/B0050CJW16/ref=sr_1_26?dchild=1&keywords=plastic+food+containers&qid=1603156024&refinements=p_85%3A2470955011&rnid=2470954011&rps=1&sr=8-26

Laptop (Already owned)

Challenges

    We forgot to put a battery component in the CAD when we ordered the tupperware. This caused the fit to be a bit tight and made the project not as buoyant as we would have liked. Although, we think it would have been fine if we were able to do more testing. Our CAD picture looked like this, but we realized it would not work because we forgot to account for several factors. See figure (5) in appendix. It was difficult to connect the servos. We knew that we needed a motor driver for the motors but didn’t realize right away that we needed one for each propeller since they will move at different speeds. This is reflected in our primary circuit design in figure (1) but in the final design we will add the other 3 drivers once we do some more code. We had to adapt our plan to get around the constraints around technology. Underwater wireless transmission is unreliable for us because we have to transfer through the water. For budget reasons we decided to work with ethernet cables for data transfer and a battery pack for the Pi. 


References

“ThorRobotics Underwater Drone Mini Mariana RC Submarine HD Underwater Camera Drone with FPV”, THOR roboTiCS, Amazon, n.d., https://www.amazon.com/ThorRobotics-Underwater-Mariana-Submarine-Camera/dp/B07BLS2WPK 

“Build Your Own Underwater Drone”, Drasticg, YouTube, Dec 18, 2019, https://www.youtube.com/watch?v=0ahCW5KINIc 

“Mantis Claw Tests,” Mantis Engineer Team, YouTube, Nov 29, 2015, https://www.youtube.com/watch?v=4gJVcfd98bg 

“Mantis Claw,” WhiteThorn, Thingiverse, July 05, 2016, https://www.thingiverse.com/thing:1659427 

“Measuring Rotation and acceleration with the Raspberry Pi,” Raspberry Pi Tutorials, n.d., https://tutorials-raspberrypi.com/measuring-rotation-and-acceleration-raspberry-pi/ 


Future Upgrades

  1. One of the group members will continue pursuing the project to its completion next semester in the ECE 120 honors lab. There will be a focus on coding the robot as the physical aspect was nearly completed. 

  2. Future Upgrades

    1. Water in creeks are muddy, so the use of a metal detector would make it easier to find the object that is being looked for. This way, the camera does not need to be so heavily relied on and the robot can find its way to the object without needing to survey the area multiple times. 

  3.  - Stabilize itself in a fixed position to offset water current

    1. This is something that the group member will prioritize in the next semester because of how difficult it will be to control without it. Drone code is likely to be used and modified to fit the underwater condition.


MembersNetIDECE
David Parker

davidhp2

110
Jamil Yeungjamilyy2110
Michael Vilsoetmvilso2110

Attachments:

Comments:

Great writeup, and your block diagram is perfect, too, thank you.


It's an ambitious project but it sounds like you've done your background research well.

I have experience working with the MPU-6050 on Arduino. It's a pretty temperamental (and kind of crappy) little IMU. I would not rely on it too heavily. It is good for some basic tasks but don't expect a great deal of precision or accuracy from it.

Remote control wirelessly is going to be tricky. Water doesn't play very nice with RF unless you really know what you're doing. I saw that you don't have an actual transmitter/receiver picked out. This is the most important part. You should really figure out ASAP how you're going to connect/talk to this thing; you need a strategy for your wireless system because it's going to be the hardest part (probably.) It will be extra hard because you want to stream video over your connection, which means it will need to be more robust than just your typical RC connection.

Please figure out your wireless stack and get back to me; this is sort of a blocker. I don't want to let you guys get too far in this project before you've figured out your transmitter/receiver.

Posted by fns2 at Sep 21, 2020 21:06

We have shifted our plans to initially run wired and then switch to some form of wireless system afterwards.  As for actual technique, we are looking into infrared and sonar at the moment.

Posted by davidhp2 at Sep 30, 2020 16:24

Sounds great. Waterproofed ethernet is a good solution. The only problem is that you'll have to figure out what protocol you will use to control this. Ethernet means you'll be somehow connecting to the Pi over some kind of network connection. Perhaps running a super slim server of some kind on the Pi? This is a kind of weird situation but there may be some prior examples.

Again, this is is a pretty complex project, so be warned. But if you feel comfortable tackling this, then, go ahead. Approved!

Posted by fns2 at Sep 30, 2020 23:47