We have settled on a holonomic propulsion system for the Dollbot, this means that the boat can move and rotate in any direction at any time.
Propulsion channels
We are basing our design on the approach taken by the UPenn Modlab team on their DARPA TEMP proposal: a motor pushes water through a narrow channel in either direction to control thrust - there are four propulsion channels, one in each corner mounted at a 45 degree angle, so that through combining directions on each of the channels any direction (and rotation direction) can be achieved.
The following picture shows the flow of water through the channel in each of the two possible paddle directions:
If the paddle turns clock-wise (yellow flow), the water moves right through the channel and the boat steers left. On the other hand, if the paddle turns counter clock-wise (red flow) the water comes out of the left channel exit, steering the boat to the right.
An example of how one of the propulsion channels would be mounted:
We have settled for a €5.95 Polypropylene toolbox as the hull for the dollbot, it will probably need some ballast to avoid overturning too easily but it is a lot more sturdy and water proof than the plastic food container (€1.99) that we had chosen originally.
This layout shows the internals of each of the four propulsion channels once mounted:
You can easily see how turning the motors in either direction the boat can be made to move on any direction or to rotate, the UPenn video includes towards the end a few seconds that show the propulsion system in operation.
We could not find any piece laying around our workshop that would lend itself to be used as the propulsion channel, so we have decided to create a model and 3d-print a few copies with translucid PLA, this is how it looks like:
We will put up some pictures once we have the completed modules in about a week's time.
UPDATE (28/May/2015): Just picked up the printed propulsion modules from our friends at Nativa 3D, who pointed out a flaw in our original design (it's difficult to fit a 30mm turbine through a 2mm hole, thanks Sergio!) so we had to create a new revision. The results are great:
We are already working on the turbines, will put up the final results once we put the thruster together.
Controlling the motors
The propulsion system requires the ship to control four DC motors, we have decided to run these off a separate battery (5500mAh, 7.4V 2S LiPo) to avoid frying the controller and keep the boat operational even in low-voltage conditions when the LiPo needs to disconnect. To control the engines we have chosen the Adafruit Arduino motor shield, which will allow us to address the motors through serial I2C communications and keep the number of components down. We will need to develop a library to control the motor vectoring, so that we can simplify the navigation code.
We still have to get the motors, we are limited to a maximum 3A stall current and to run at 7.4V - nothing fancy, nearly any motor will do given that we are just moving water around at relatively small speeds.
Sunday, 24 May 2015
Monday, 18 May 2015
Dollbot #2: Initial design
We have decided to start working on Dollbot first as it works in a more controlled environment than Pescabot.
After a few weeks of tinkering, we have agreed on the following design criteria:
Propulsion
We will use holonomic propulsion, based on the UPenn Moblab prototype (We can't stop watching this video!). This means that the boat can move in any direction and not just the typical forward with steering of more traditional boats.
The holonomic propulsion system uses four small DC motors that need to operate in either direction, so that the water flows through the vectored thrust channels. We will use the Adafruit Motor Shield (19.95 USD) to control the motors, as developing the H-Bridges ourselves for a robot that will be in the water does not seem like the best idea - this will reduce the size of the control components.
RC Control
Erin wants to be able to control the boat with RC as well as to program it automatically to pick-up and deliver dolls, so we will need to connect a R/C receiver to the system, which will take preference from autonomous control and work as a fail-safe mode.
Autonomous operation
The boat is designed to operate in closed bodies of fresh water (e.g. a swimming pool), we want the autonomous operation to discover the geometry of the pool and detect dolls waiting to be picked up / points where to drop the dolls as well as to do some obstacle / swimmer avoidance. We want to try to use an Arduino Uno as the microcontroller, as it provides an easier IDE than the Tiva, and we all want to participate in the autonomous algorithm design.
Water proofing
We need to operate the robot in the water, no two ways about that :-) We need to think of some water-proofing for the boat, so that even if it tips over the electrical components are protected.
After a few weeks of tinkering, we have agreed on the following design criteria:
Propulsion
We will use holonomic propulsion, based on the UPenn Moblab prototype (We can't stop watching this video!). This means that the boat can move in any direction and not just the typical forward with steering of more traditional boats.
The holonomic propulsion system uses four small DC motors that need to operate in either direction, so that the water flows through the vectored thrust channels. We will use the Adafruit Motor Shield (19.95 USD) to control the motors, as developing the H-Bridges ourselves for a robot that will be in the water does not seem like the best idea - this will reduce the size of the control components.
RC Control
Erin wants to be able to control the boat with RC as well as to program it automatically to pick-up and deliver dolls, so we will need to connect a R/C receiver to the system, which will take preference from autonomous control and work as a fail-safe mode.
Autonomous operation
The boat is designed to operate in closed bodies of fresh water (e.g. a swimming pool), we want the autonomous operation to discover the geometry of the pool and detect dolls waiting to be picked up / points where to drop the dolls as well as to do some obstacle / swimmer avoidance. We want to try to use an Arduino Uno as the microcontroller, as it provides an easier IDE than the Tiva, and we all want to participate in the autonomous algorithm design.
Water proofing
We need to operate the robot in the water, no two ways about that :-) We need to think of some water-proofing for the boat, so that even if it tips over the electrical components are protected.
Tuesday, 28 April 2015
Pescabot #2: Flotability tests
We have found an old RC-powered boat that may just work as the base for Pescabot, it has a 27MHz receiver and a (yet-to-be-determined) motor, plus a servo to steer it left or right.
It has very little space for extra hardware, so it is unclear if we will be able to use it as our base model, however we first wanted to check it floated:
We wanted to test both a sea-shore deployment and a "falling from the sky" deployment, as we eventually have the idea to drop-it from a quadcopter.
The tests were successful :-)
It has very little space for extra hardware, so it is unclear if we will be able to use it as our base model, however we first wanted to check it floated:
We wanted to test both a sea-shore deployment and a "falling from the sky" deployment, as we eventually have the idea to drop-it from a quadcopter.
The tests were successful :-)
Monday, 27 April 2015
Dollbot #1: Functionality ideas
Another of our robot projects for the summer of 2015 is Dollbot, an autonomous doll transport vessel.
Dollbot needs to be able to comfortably fit 2 dolls and move in any direction in a pool of water. The directions can either be programmed or a final GPS destination given to take the dolls to safe harbour.
We will build it in an iterative fashion, as follows:
* Dollbot can move in any direction
* Dollbot can be programmed to move and spin in any direction
* Dollbot can reach a GPS destination
Dollbot needs to be able to comfortably fit 2 dolls and move in any direction in a pool of water. The directions can either be programmed or a final GPS destination given to take the dolls to safe harbour.
We will build it in an iterative fashion, as follows:
* Dollbot can move in any direction
* Dollbot can be programmed to move and spin in any direction
* Dollbot can reach a GPS destination
Sunday, 26 April 2015
Pescabot #1: Functionality ideas
One of our robot project for the 2015 summer is Pescabot, an autonomous seagoing fishing robot.
Pescabot will be placed on the seashore with a pre-loaded set of GPS waypoints to fish in and a time limit. Pescabot will cast a line on each of the waypoints and wait for a fish to pull the line, catching it. Once a fish has been caught, it will be reeled in and brought back to the seashore (same location where it entered the water) - if no fish is caught after a time limit (or if the battery is running out) Pescabot will go back to the seashore.
We will iteratively implement the following key functionalities:
Pescabot will be placed on the seashore with a pre-loaded set of GPS waypoints to fish in and a time limit. Pescabot will cast a line on each of the waypoints and wait for a fish to pull the line, catching it. Once a fish has been caught, it will be reeled in and brought back to the seashore (same location where it entered the water) - if no fish is caught after a time limit (or if the battery is running out) Pescabot will go back to the seashore.
We will iteratively implement the following key functionalities:
- The boat can be controlled remotely
- The boat can transmit location back to the base station over up to 2km
- The boat can navigate automatically using GPS to a set of waypoints and back to the start
- The boat can reel out and back in when a fish pulls the line
- The boat can cut the line in an emergency
Nice ideas to consider in the future:
- Batteries can be recharged using solar panels
Splashbots: projects for summer 2015
Splashbots is our project for the summer of 2015, where we will be developing water-going robots to help with some basic tasks.
Here is a brief intro by the project team describing the concepts:
Water and electronics do not tend to mix well (specially sea-water as will be needed for Pescabot) so we will be learning quite a bit about protection and maintenance techniques of maritime equipment.
For Pescabot we want to learn about GPS on sea-going vessels and the control of the reel.
For Dollbot we want to emulate as close as possible the basic building block of the DARPA "Tactically Expandable Maritime Platform", we love the University of Pennsylvania video.
Here is a brief intro by the project team describing the concepts:
Water and electronics do not tend to mix well (specially sea-water as will be needed for Pescabot) so we will be learning quite a bit about protection and maintenance techniques of maritime equipment.
For Pescabot we want to learn about GPS on sea-going vessels and the control of the reel.
For Dollbot we want to emulate as close as possible the basic building block of the DARPA "Tactically Expandable Maritime Platform", we love the University of Pennsylvania video.
Subscribe to:
Posts (Atom)



