Introduction: How to Make a Naval Battle Robot

1. The University

Our group is located at Shanghai Jiao Tong University Joint Institute (SJTU JI). JI was established by Shanghai Jiao Jong University and University of Michigan, located at Shanghai Min Hang district. The related course of building this robot is VG 100, introduction to Engineering, in which projects like this are introduced to enhance the students’ team-cooperation skills, creativity and critical thinking. (Further information can be found at the following website

2. Our team: CRYSTAL

(From left to right)

Jin Zhejian

Responsible portion of the robot: Debugging the robot, purchasing materials and drawing the circuit diagram.

Jiang Yimin

Responsible portion of the robot: Structure design, building the robot and writing the manual.

Wu Yuhao

Responsible portion of the robot: Coding, setting up work schedule and drawing the concept diagram.

Zhang Xinli

Responsible portion of the robot: Structure design, building the robot and writing the manual.

Stanley H. Gu

Responsible portion of the robot: Structure design, building the robot and writing the manual.




SUBMITTED TO Professor Shane. Johnson, Ph.D.


TA:Li Jiaqi, Zhou Xiaochen,

Professor Irene Wei,


TA:Liu Xingyu Ma Zhixian

3. Performance on the game day

On the game day, our robot got all balls to the other side in only 130 seconds. Our robot ranked 3rd in both timed trials and the tournament.

Step 1: Know About the Rules

1. Aims of the Robot

In this project, students were assigned to design and built a “naval battle robot”. The robot will then be assessed and evaluated in a relevant robot competition, which is explained at 2.2. The project will give students a fundamental knowledge of how to construct and code robots, and therefore enhance the student’s skills and abilities.

2. Robot competition Rules

The name of the robot competition is called the "Naval Battle". Unlike an actual naval battle, where battleships shoot cannon balls against each other, in the game of Naval battle, Ping Pong balls and wooden balls were used instead of cannon balls, and the field is on ground instead of water. The robot needs to move the Ping Pong (diameter of 40mm) and wooden balls diameter of (diameter of 70 mm) to the opponent’s dominion. The player who gets the highest score at the end of the game wins the battle, the time limit of the battle is 3 minutes. (Scoring detail is in 3 ).

As seen in Figure 2, the wall in the middle of the field is roughly 13mm thick, the gap underneath the wall is 50mm.

A total of 24 balls will be place in the field, in which 8 are wooden balls, and 16 are Ping Pong balls. The robots are required to fit in the rectangular region in the field shown below, which is 350mm*350mm, the robot also has a height limit of 200mm.

The figures 1, 2 and 3 are provided by the teaching assistants of VG100.

3. Scoring detail

Each wooden ball counts as 4 points. Each Ping Pong ball counts as 1 point If the ball is knocked out of the field, the responsible player will deduct a certain amount of points. For each wooden ball being knocked out, 5 points will be deducted; for each Ping Pong ball, 2 points will be deducted.

Step 2: Concept Diagram and Functions

Thepaddle is to sweep the ping-pongs.

Arduino uno runs the code and controls the arm and gripper to lift the wooden balls over the net.

L298N controls the two DC motors.

Step 3: Circuit Diagram

Step 4: Prepare for Assembling

Critical tools required

 Electric iron

 Electrical drill

 Screwdriver

 Acrylic cutter

 Ruler

 Hot glue gun

 Vice pincer pliers

Step 5: Assembling

#1: Constructing the Chassis

  • Fix the two motors and the universal wheel on the acrylic sheet according to the position showed in Figure 6. You may need to drill holes if there’s no appropriate holes. Be careful using drill.
  • Make a fork using acrylic sheets and place it at the front of the chassis (Figure 7). You can use right angle connector to help build the structure of the fork and the connection to the chassis. Make sure it attaches to the chassis firmly either using hot melt adhesive or screws and nuts. Also, be careful using hot glue gun.
  • Construct the mechanical arm and the claw using bracket, screws and nuts (Figure 8). Remove the four sheets in the middle of the claw. This will help catch the ball better.
  • Attach the model aircraft battery, the motor driving board, and the servomotor bracket to the chassis (Figure 9).

#2: Constructing the Upper Floor

  • Cut a piece of a acrylic sheet into the shape showed in Figure 10.
  • Connect the acrylic sheet and the chassis using four copper supporters, screws and nuts. Drill 4 holes of 3mm diameter on the acrylic sheet. Please decide where to drill according to the actual situation.
  • Attach the signal receiver, the Arduino and the battery box to the upper floor (Figure 11) Any approach is acceptable as long as they are stable while the robot is moving.
  • Connect all the wires according to the circuit diagram given above and upload appropriate codes to the Arduino.

#3: Optional step

  • Use elastic to help the servo lift the ball if the servo you choice is not strong enough.
  • Add a damper screen at the rear to block the opponent’s ball. The material can be acrylic sheet, corrugated paperboard or whatever hard enough to block.

Step 6: Controlling

Step 7: Final View & Videos

Step 8: Trouble Shooting

1. Double check every connection in case the robot falls apart during game.

2. If you want to use this robot very often, we suggest you use rechargeable batteries to power the Arduino and two servomotors.

3. Make sure the fork at the front don’t touch the floor.

4. Be aware of the rated voltage of the motors and servomotors.

5. Control your robot carefully and avoid too much collision.

6. Arrange your wires wisely.

7. If the servo can’t move normally, please check the voltage of the battery.

8. After the game, you should disconnect all the power and take out the batteries.