K-A-R-R

K-A-R-R (Kristian’s Aquatic Roving Robot) (yes, that is a nod to Knight Rider) is the current underwater robotics project I am working on. K-A-R-R is in the prototype, or initial stages of development. The platform works, now the only thing left to do is incrementally bring the system closer to my original design goals. The project can be found on Github: https://github.com/Kristian-Charboneau/KARR

Now that the prototype is finished I can focus on designs that have been on the back-burner for too long. I may have alluded to some of this in blog posts, but here is some of the general vision for what I would like the ROV to be:

Custom electronics:

Currently the system uses a lot of off-the-shelf components. This is great for rapid prototyping but horrible for space management. I would like to build custom circuit board for the motor controllers and other internal circuitry. I have already purchased 10 Infineon TLE-5205 H-bridge drivers about a year ago for this purpose, and I have several board designs, depending on the size of the WTC. So far I haven’t had the time to fabricate them though. Along with the driver chips the boards would have voltage and current sensors for each motor channel. This setup would greatly reduce the space taken up by the motor control system, along with reducing clutter from wires, and adding useful realtime information about the system.

Something that has also been on the back-burner for the past year or so is a better control system. The current system is simple, and works. But it isn’t as robust as I would like. Ideally the ROV would have a Linux SBC (like a Raspberry Pi or Beagle Bone Black) that acts as the “hub” or server. It would be connected to the motor control system via a serial port (the propeller chip would be used to control the motors and get sensor data like internal temperature, heading, and depth). Everything else would communicate with the ROV using ethernet or WiFi. I purchased a portable wifi hotspot (about 2″x2″x1″) for this purpose. This means that the operator controls would communicate thru the tether using ethernet or WiFi, probably using TCP or UDP to send data packets. Any external Add-Ons to the ROV, such as other sensors, manipulators, tools, cameras, etc. would have their own internal power source and communicate with the ROVs SBC using WiFi. This would allow for a very modular plug-and-play system.

The software also needs much improvement. I have some ideas and designs for a very modular system that could not only be used for this rov but other ROVs as well. It would be written in Python and probably use Kivy for the GUI. The general idea is too make a highly modular program that could be used almost entirely thru the GUI, with very little need to modify source code or configuration files.

This is of course quite a lot of stuff to work on. It will definitely keep me busy for the foreseeable future. The next phase of improvement will probably be the custom circuit boards; there are few things that vex me more than disorderly wiring.

The project is open-source under the MIT license.

Phase One (prototype):

Frame

  • Finished

Hull

  • Finished

Thrusters

  • Finished

Electronics

  • Finished

Software

  • Finished

Pilot Console

  • Finished

 

Leave a comment