Introduction: Naval Battle Car for VG100 at UM-SJTU JI
Introduction to UM-SJTU Joint Institute
UM-SJTU Joint Institute was established by Shanghai Jiaotong University and University of Michigan in 2006 . The cooperation aims to develop a group of international ,innovative leaders with global visions.(cited from umji.sjtu.edu.cn )
Introduction to team ClashCrashCrush Future Engineers
We are Group 12 from Vg100 summer semester , a team with creativity ,innovation and perseverance . The origin of our team name “ClashCrashCrush” can be traced back to 1980s , where the muscle car is popular among young peers meanwhile caused tens of thousands injury and deaths by car collision . We used these three verbs more and more severe to convey that there should always be a powerful but safer solution to everything , which echoes with the engineer’s first priority : safety .
The game is called “naval battle ” , players need to manipulate their “battle boat ” on a half-divided field (2000mm×1500mm×120mm,half-divided by length with a board 70mm high above) to move two types of cannons (ping-pong balls and wooden balls) from one side to another to get scores , ping-pong ball for one point and wooden ball for four points .If a ping-pong get out of the field then players get 2 points off and for wooden balls it will be 5 points .
1.The size should be under 350mm×350mm×200mm in length ,width and height .
2.Arduino-controlled , motors other than the provided ones are banned.
Teachers! Did you use this instructable in your classroom?
Add a Teacher Note to share how you incorporated it into your lesson.
Step 1: Concept Diagram
Our concept diagram is shown above. The main controlling parts of our Naval Battle Robot are two Arduino UNO R3 micro-controller. One controls the drive part of our robot, the other controls the part which carries the balls into the opponent’s territory. Therefore, the robot can listen to the designer’s directions and function. To control the robot remotely, we use a PlayStation 3 Joystick, which are connected to the Arduino board, thus controlling the robot is convenient.
The novelty of our robot is the part that carries the wooden balls into the opponent’s territory. Unlike the most commonly used mechanical arms, we choose to adopt the plan to suck the ball. Hence, we use a combination of air pump with a pipe whose top is wrapped with silicone rubber case and servo motors. The pipe is fixed by two combined U-typed servo motor brackets where the servos are also attached to. To control the on-off of air pump, we use a small relay module. When the wooden ball is successfully held by the pipe, the servo lifts the pipe up, thus fulfilling the task.
As for the driving part, we have two DC motors each attached to one wheel, which are controlled by the Arduino board through a L298N motor driver.
To push the small Ping-Pong ball through the gap, the height of the bull-eye’s wheel is a bit lower than car wheels. Therefore ,the car leans forward to some degree, while the height of its front doesn’t exceed the diameter of the ping-pong ball, making it possible to push them through.
All these components listed above as well as model ship batteries and corner fittings are fixed on a rectangular acrylic board with one additional bull-eye’s wheel attached to it as a driven wheel.
Step 2: Material Lists
Item Quantity Price RMB(USD)
Arduino Uno 2 110(16.58)
PS2 Controller 2 86(12.96)
Acrylic Board*** 1 12(1.81)
Relay Module 1 3.9(0.59)
Ball Caster 1 14.4(2.17)
Air Pump 1 15(2.26)
Breadboard* 2 0(0)
Wheel and Motor** 2 0(0)
Lipo Battery 12V 2 80(12.04)
Lipo Battery 9V 1 35(5.27)
L298N Motor Driver 1 8(1.20)
Servo Motor RAS12 1 38(5.72)
Dupont Thread 2(0.30)
Servo Brackets 30(4.52)
* Breadboards are in the set of Arduino Uno Boards.
** Wheels and motors are provided freely by the organizer.
***Acrylic board is made with holes for lines and screws.
Step 3: Step by Step 1: Designing Circuit Diagram
Shown above is brief circuit diagram. All the green wires mean the power supply to these two Arduino boards, all the black wires mean the ground, all the red wires mean the raw voltage(12V) supplied by the battery pack, all the yellow wires are responsible for PWM controlling, orange wires indicate the circuit of the air pump, brown wires mean the supply to those two DC motors.
These two DC motors, working as the engine of our car, are driven by a L298N driver board. That driver board is controlled by PWM signal from the right Arduino board. As shown in the diagram, 3,5,6,9 output ports of the right Arduino board have been used for controlling DC motors.
The air pump is controlled by an electric relay, which is controlled by PWM signal from the left Arduino board. After correctly connecting the wires of the electric relay, we can easily make the circuit of the air pump be closed by giving a PMW signal, which is transferred by the yellow wires, to the electric relay then the air pump will be on.
The servo motor is also controlled by digital signal from the left Arduino board. It’s powered by the 9V battery. As the 9 output port of the left Arduino board gives a digital signal to the servo motor, it will spin a certain angle provided by that signal.
Also be sure that the raw voltage provided by the large battery pack is about 12V, which will easily burn the Arduino board and these motors. So we need a 9V battery to supply the servo motor, and we need to connect the 12V battery to VIN pin of the Arduino board because the voltage regulator on the board can automatically adjust the 12V power to 5V power.
Step 4: Step by Step 2: Connecting Lines
(1)Solder one DuPont line to the motor brush.
(2)Repeat (1) for three times.
(3)Solder one line to the relay module.
(4)Assemble the motors to their buckets.
(5)Fix the two buckets to the acrylic board.
(6)Connect the lines to the L298N Motor Driver as is shown in Step 3 and above.
(7)Connect the lines to one Arduino Uno board as is shown in Step 3 and above.
(8)Connect the PS2 controller signal receivers to the Arduino Uno boards.
(9)Connect the relay module to the air pump.
(10)Double-check the line to see if there is any mistake.
(11)Connect the batteries to the breadboard and the Arduino Uno boards and the air pump.
(12)Check if the system is working properly.
(13)Cut off the power.
Step 5: Step by Step 3:Assembling
(1)Fix the servo motor to the buckets.
(2)Fix all the buckets together with screws.
(3)Fix the buckets to the acrylic board.
(4)Fix the air pump to the acrylic board.
(5)Fix the L298N driving board, Arduino Uno boards, breadboard
the acrylic board.
(6)Fix the tube to the buckets.
(7)Fix the Lipo batteries to the acrylic board.
(8)Put the suckers on the tube.
Step 6: Prepared for Game
Connect the power and test it. It is ready for the game. If you want to know some further information, you can send an email to firstname.lastname@example.org. Thank you.