Introduction: 3D Printed Wireless Tank

About: Im 17 years old. Member of FIRST robotics and The OLI Hacker space. Currently leading a team converting a wheelchair into a mars rover simulation robot at an explorer post. I love building new things. Please g…

In this Instructable I will show you how to make a wireless tank that you will be able to play with someone else or just use it a base to create bigger and better tank. This tank uses Bluetooth modules connected to Tera Term to send commands to the Arduino. I used IR Leds that are used in Lazer tag guns (links in the next step) so you can battle with your friends or just use it to explore the world a couple inches off the ground from your computer. Uses an IPhone's camera with the Skype app to connect to a PC so it can be viewed and controlled remotely. The range of the Bluetooth module actually was able to go out side my house and go out of the range of my WiFi before disconnecting so range is only an issue if you want to be more than 60-70ish feet from the robot. Yes this may not be the prettiest robot ever but its the best a me and my 15 year old brother could do with our limited design skills:) If you like it and think its worthy of a vote please click the vote button in the corner:) Thank you so much every one and remember I like constructive criticism so tell me what I do wrong so I can become better:)

Step 1: Parts

2, Arduinos: Arduino $28.45 each

2, Size K coaxial DC Power Plug(Radio Shack)

2, Battery: Battery 2 for $19.95 I got mine from my air soft gun.(Make sure you have a charger for it)f

2, Bluetooth modules Bluetooth $8.00 each

2, IR Leds: LEDS from Newark $0.14 each

8, IR receivers: Receiver from Mouser $0.66 each

4, Continuous rotation servos: Servos $9.24 each

2, Pan and tilt Servo:Pan and Tilt 15.88 each

8, #4 x 1 in flat head phillips screws (Homedepot)

28, #4-40 x 1/2 in flat head phillips screws (Homedepot)

Half all of the parts if your just making one.

3D printed parts:

The tank parts were downloaded from Thingiverse.com at this link Universal Servo Driven Tank Tracks by (jasonwelsh) / CC BY-SA 3.0.

The first part shown is what makes up the main sprocket. It consists servo mount, the sprocket itself and a wheel plate. A guide to assembling these parts found on the project site at thingiverse.com. Four of these are needed to assemble the tank. (I only used 2 of the 3 wheel/sprockets the guy said in the video. I found them not necessary as you can see in the pictures)

The second part are the tank treads. You will need 28 for each tank track - 56 total needed. The video on thingiverse.com will also describe how to connect each of these. Pay close attention to the orientation of the tank treads. There is side which will go on the sprocket and a side which will be the tank tread base. See details in the picture.

The third part is the servo attachment and wheel mounts to make up one side of the tank tread. Two of these are needed.

Other parts (Base, IPhone holder, clip) designed by me. Had some trouble up loading the files to thingiverse so here they are

Step 2: Putting It All Together

Drill holes in the base for zip ties to attach battery to the bottom of the base. zip tie the batter to the bottom. Attach the Arduino using the bolts. After that attach the servos to the base using bolts.

For the barrel of the tank I used a cheap tube from a mechanical pencil since the led fit nicely in it and had a nice taper.

To attach all the servos to the you will need to create a "break out board" for the servos. I connected all of the power and grounds together and wired the signal pins to the Arduino along with the pins for the Bluetooth module. The 5v output from the Arduino should be enough to power everything.

Put the signal pins from the servos to pins 9 and 10 and the pan and tilt servos to pins 5 and 6.

The Bluetooth TX pin goes to pin 0 and the RX pin goes to pin 1.

The IR led should go in pin 13 and Ground.

Step 3: SoftWare

The software you will need is Tera Term this allows you to connect to com ports which the Bluetooth module will be on. I'm in the process of using java and the JSSC (Java simple serial connector) library to create a application designed for controlling an Arduino over Bluetooth. You will obviously need the Arduino IDE.

Step 4: CODE

  #include <Servo.h> 
  //Feel free to make changes:)
  Servo leftservo;
  Servo rightservo;
  int led = 13;
  Servo bottom;
  Servo top;
  char val;
  
  void setup() {
   Serial.begin(9600);
   pinMode(led, OUTPUT);  
   leftservo.attach(9);
   rightservo.attach(10);
   top.attach(6);
   bottom.attach(5);
  
  }
  void loop() {
  
    if( Serial.available() ){
      val = Serial.read();
       //=====================================================================================================
       //You may need to mess around with the servo values to get the correct keys to the servo and directions
       //=====================================================================================================
       //Tera Term sends A,B,C,D values back for the arrow keys
      if (val == 'B'){// down arrow
       rightservo.write(0);
       leftservo.write(0);
      }
      else if (val == 'A'){ // up arrow
       rightservo.write(180);
       leftservo.write(180);  
      }
      else if (val == 'C'){ // left arrow? migh switched these up
       rightservo.write(180);
       leftservo.write(0); 
      }
      else if (val == 'D'){ // right arrow?
       rightservo.write(0);
       leftservo.write(180);
      }
       else if (val == 'f'){// FIRE!!!!!
       digitalWrite(led, HIGH);   
       delay(1000);               
       digitalWrite(led, LOW); 
        }
        else if (val == 'w'){//pan and tilt 
       top.write(180);
      }
       else if (val == 's'){
      top.write(0);
      }
      else if (val == 'a'){
      bottom.write(0);
      }
       else if (val == 'd'){
      bottom.write(180);
      }
      else{
      leftservo.write(90); // press any button to stop
      rightservo.write(90);
      }
    
    }
    
  }

Step 5: Getting the Tank Ready

First you will need to pair the Bluetooth module to your PC. The images should explain the steps of how to to this well enough. After the module is paired you will need to connect it to Tera Term. Click on the serial option and its more of a trial and error to find out which Standard Serial over Bluetooth is the one connected to your Arduino. When you have it successfully connected the red blinking led on the Bluetooth module should be solid.

To get video feed download the Skype app on your IPhone and place it in the holder. I only have one for the IPhone 4 sorry:( ill try and design a more universal one in the future.

Using the desktop vesion of Skype there should be a small window that you can drag around place this infront of the Tera Term window. This is because you need to have the Tera Term window selected in order for it to send the signals.

Step 6: Done!:)

Battery Powered Contest

Participated in the
Battery Powered Contest

Remote Control Contest

Participated in the
Remote Control Contest

Epilog Challenge VI

Participated in the
Epilog Challenge VI