EAL - Arduino Hovercraft

by ProjektHover in Circuits > Arduino

34472 Views, 87 Favorites, 0 Comments

EAL - Arduino Hovercraft

18788735_10213084876102522_1571117802_n (1).jpg

For our school project, we needed to integrate arduino into an automated system/machine etc.
We chose to make an arduino controlled hovercraft.

Part List

18554703_10212964599095672_143727747_n.jpg
18578480_10212964598975669_1802554294_n.jpg
$_10.jpg
18554752_1309617915758010_1909888912_n.jpg
HC06 bluetooth.jpg
18763079_10213078028851345_57738232_n.jpg
0bda9ae47fd217961fd5adbc5ef3f146_preview_featured.JPG

1. The base part of the hovercraft is made of flamingo. We used a big square of it, that we cut out in the wanted dimensions and made the front-end circular.

2. 2x DC motors, for rotating the propel and the fan.

3. A stepper motor driver

4. A frame, for holding the motors. For our hovercraft, we made the frame out of wood and acryl.

5. A bluetooth module, for controlling the hovercraft. We used a HC-05 Bluetooth Module.

6. Arduino board, breadboard, wires, 9v batteries and a 12v adapter. We used the Arduino Mega 2560.

7. Propeller + Fan. We downloaded our propeller from Thingiverse, and printed them at our school ( http://www.thingiverse.com/thing:1733112 ) We use the same propeller as propel and fan, but removed the outer circle on the fan.

Making the Boat

18516827_1309617815758020_94619145_o.jpg
18492970_10212964598935668_1193854976_n.jpg
18762416_10213074176755045_1627518645_n.jpg
18762506_10213074176955050_1934126983_n.jpg
18763233_10213074176915049_555230491_n.jpg

In the center of the base, we cut a hole for the fan, which is going to levitate the hovercraft.

On the bottom, we wrapped on a plastic bag, and poked a lot of small holes in it, to make the air run through, and make the hovercraft levitate

We then used duct tape to secure the plastic bag, and to make sure that the flamingo does not dissolve into small pieces.

The frame was then placed on top of the hovercraft, and held together with glue. On top of the frame, and above the hole is an acrylic plate, for mounting the motors.

The propel/fan is glued to the motors and the motors and glued to the acrylic plates.

The Mechanical Part

18763335_10213085188870341_1328821246_n.jpg
18763145_10213085259472106_569680023_n.jpg
18816299_1320970484622753_1410169290_n.png

First part is to wire the arduino. We use 1x 9v battery to power the arduino, trough the 12v adapter
We then wire the motor driver to the arduino to pin 3+4 for the propel and pin 8+9 for the fan.

Then we wire the motors to the motor driver. The motor driver is also wired to ground, and to 3 parallel connected 9v batteries, theese power the motors.

We then wire the bluetooth module to the arduino, through a breadboard, because we need to have resisters between.

Software

18818134_1320920274627774_242431850_o.png
18817378_1320920217961113_1216762841_o.png

For controlling the hovercraft, we use bluetooth, and then controls the hovercraft from our smartphone.

For making the app for our smartphone, we used the free online program, MIT App Inventor (http://appinventor.mit.edu). From our phone, we can now make the hovercraft move forward, backwards and stop.

We programmed our arduino board in the free Arduino program.

<p>/*<br> 
 */
 
int motor1Pin1 = 3; // Makes the hovercraft go forward
int motor1Pin2 = 4; // Makes the hovercraft go backward</p><p>int motor2Pin1 = 8; // Turns on the fan
int motor2Pin2 = 9; //</p><p>int state;
int flag=0;        //makes sure that the serial only prints the state once
int stateStop=0;
void setup() {
    // sets the pins as outputs
    pinMode(motor1Pin1, OUTPUT);
    pinMode(motor1Pin2, OUTPUT);</p><p>    pinMode(motor2Pin1, OUTPUT);
    pinMode(motor2Pin2, OUTPUT);</p><p>    // initialize serial communication at 9600 bits per second
    Serial.begin(9600);
}</p><p>void loop() {
    //if some data is sent, reads it and saves in state
    if(Serial.available() > 0){     
      state = Serial.read();   
      flag=0;
    }   
    // if the state is 'F' the Hovercraft will go forward
    if (state == 'F') {
        digitalWrite(motor1Pin1, HIGH);
        digitalWrite(motor1Pin2, LOW); 
        digitalWrite(motor2Pin1, HIGH);
        digitalWrite(motor2Pin2, LOW);
        if(flag == 0){
          Serial.println("Go Forward!");
          flag=1;
        }
    }
    
    // if the state is 'S' the hovercraft will turn off
    else if (state == 'S' || stateStop == 1) {
        digitalWrite(motor1Pin1, LOW); 
        digitalWrite(motor1Pin2, LOW); 
        digitalWrite(motor2Pin1, LOW);
        digitalWrite(motor2Pin2, LOW);
        if(flag == 0){
          Serial.println("STOP!");
          flag=1;
        }
        stateStop=0;
    }</p><p>    // if the state is 'B' the hovercraft will go backwards
    else if (state == 'B') {
        digitalWrite(motor1Pin1, LOW); 
        digitalWrite(motor1Pin2, HIGH);
        digitalWrite(motor2Pin1, HIGH);
        digitalWrite(motor2Pin2, LOW);
        if(flag == 0){
          Serial.println("Reverse!");
          flag=1;
        }
    }
}</p>

Downloads

Improvements

R&aring;deret jpg.jpg

First of all, we should have had some faster motors, so that the hovercraft would have more power and more easily levitate.

We should have made the body thinner, so its weight is reduced.

To make the hovercraft steer, you need a module which can push and drag and a fin to steer. Unfortunately, we never got the module that we ordered, so we did not get to make the hovercraft steer.

Sensors, we considered putting sensors on the front of the hovercraft, so it would stop when it got close to an object. We did not get to make this, because we ran into so many troubles that we simply did not have the time.