PingPong Ball Launch System
Team 68-Qihao Wang, Jiayi Wu, Ruofan Hu
ECE445 Project Proposal-Spring 2020
TA: Chi Zhang
1 Introduction
1.1 Objective
Ping-pong is one of the most popular games in the world. Based on the data from the
International Table Tennis Federation, there are 37620 professional players in various
organizations (ITTF, 2019). For Ping-pong players, an efficient daily practice is essential
for people who want to improve their skill. Swing is one of the most fundamental and
important training items. To practice the swing, it is necessary to find a partner. In
addition, According to the author of the website [1]“newgy”, finding a proper training
partner is one of the most efficient methods to improve our skills and if we have to work
alone, the training robot is also an alternative. However, it will take Ping-Pong players
extra resources, such as money and time, to find a suitable partner.
To save these resources, we want to design a Ping-Pong Ball practice machine, which
can launch the ball automatically. The practice machine adjusts the direction, speed and
frequency of the ball. Other than these basic functions, we also want to minimize the
amount of time and energy waste on setting up the machine. We will add the remote-
control feature to the machine. This feature will allow users to adjust the direction,
speed and frequency of the ball anytime during the practice. Moreover, the machine will
also have designed launch models for the players. For example, the machine can
launch the ball from low frequency to high frequency.
1.2 Background
Most of the existing Ping Pong Ball launcher machines are stationary and can only be
controlled manually. If a player wants to change the ball direction, frequency or speed,
he or she needs to stop the training process and manually set the machine to a different
direction. Obviously, the existing Ping Pong Ball launcher is not efficient, since it will
waste energy and time to adjust the machine. The second drawback of the launcher
machines is that it can not adjust the ball direction, frequency or speed dynamically
during the practice. In our Ping Pong Ball launch machine, the players will hold a remote
controller and change the launch direction and launch speed by pressing the button.
Therefore, with the ability to remotely change the different speed and direction, the
player can simulate how to stroke the ball in different positions and different angles
dynamically. Since we can control the launch system conveniently, we do not need to
waste time to manipulate the machine and our efficiency improves significantly when we
practice alone.
1.3 High-Level Requirement
The Ping-Pong Ball launch system can launch the ball with different directions,
speeds and frequencies.
1.Direction ranges from -85 degrees(left) to +85 degrees(right) (0 degree means
facing front).
2.Speeds range from 5m/s to 15m/s.
3.Frequencies range from average 10 balls pers min or 20 balls per min or 30
balls per min.
The Ping-Pong Ball launch system will have a pre-designed training model. The pre-
designed training model will change the frequency from low to high repeatedly
Remote controllers can change the direction, speeds and frequencies from a
distance 3 - 5m from the machine.
2 Design
2.1 Block Diagram
2.1.1 Physical Diagram
Right Side
Top View
Front view
2.2.1 Launch System - Ball Pusher Motor & Pusher Arm
The ball pusher will push the ball to the firing ball subsystem. The fundamental
component will be a motor and a mechanic arm. The motor will move the mechanic arm
backward and frontward and the ball will be pushed forward when the arm hits it. As
shown in the top view and side view of the physical diagram. By changing the speed of
the motor, in every cycle we can push one ball into the firing ball system.
Requirement
Verification
1.The ball should be launched with a
frequency of average 10 balls pers min or 20
balls per min or 30 balls per min.
2.The motor should be able run on different
speed average 10 RPM (revolutions per
minutes) or 20 RPM or 30 RPM
3.The motor should take 5 - 10 seconds to
change the speed.
1&2 :
Step 1:
5 mins experiment, keep shooting the ball
and record how many balls fired in total.
Step 2: Calculate the average amount
of balls fired per mins
3.Step 1:
Adjust the speed from 10 to 30 every
30 seconds
Step 2: Calculate the average amount
of balls fired per mins
2.2.2 Launch System - Firing Ball Motor & Wheel
The firing ball subsystem will accelerate the ping-pong ball. The fundamental
component will be a motor and wheel. The spinning wheel will speed up the ping-pong
ball and fire it. Similar to the ball pusher system, we will have a circuit to change the
speed of the motor. As shown in the front view, the friction pulley will be on top of the
ball.
Requirement
Verification
1.The Firing Ball Motor & Wheel should be
able to speed up the ball to 5m/s to 15m/s.
1. We can use the Speed Gun to
measure the speed of the ball.
2.2.3 Launch System - Turning Plate
The turning subsystem will move the direction of the ball. The fundamental component
will be a motor and a plate. The launch system will be attached to the plate. When the
motor rotates the plate, the direction of the ball will be changed. As shown on the side
view, the motor is on the bottom of the machine. And all other component will be on the
plate
Requirement
Verification
1.The Turning plate should be able to turn
the launch system with a range -85
degrees(left) to +85 degrees(right) (0 degree
means facing front)
1. physical measurement of angle with
protractor
2.2.4 Control System
The control system will receive the signal from the remote controller and produce the
control signal to change the duty cycle of the PWM signal for the motor. The
microcontroller we will use is ATmega168P and the receiver we will use is NRF24L01.
When the receiver receives the signal, the program running in the microcontroller will
decode the signal and change the duty cycle for the output PWM signal.
The circuit to connect with Motor:
Requirement
Verification
1.The microcontroller should be able to
receive 4 bits input signal from the RF
receiver and decode it
2.The microcontroller generates the duty
cycle of the PWM signal based on different
input signal from the RF receiver
1. Step 1: we build a simple circuit using
the LED to distinguish 0 and 1 signals.
Step 2: We connect the circuit to the
output pin of the RF receiver and
microcontroller. And record the signal.
Step 3: Verify if the signal is the same
as our designed output.
2.
Step 1: Collect the output pin of the
microcontroller to the oscilloscope
Step 2: We check the wave of
oscilloscope to see if we get the right
cycle duty
2.2.5 Remote Control System - Button Logic Control Circuit
The button logic circuit will generate different signals for different buttons to the RF
sender component. Remote Control System will run on a separate power supply.
Basically, we will put a small battery packet on it, so that the Remote Control System
can be portable.
Requirement
Verification
1.Button Logic Control Circuit generates 7
different signals to control the RF sender.
1). Power ON/OFF
2). Increase Frequency
3). Decrease Frequency
4). Turn Left
5). Turn Right
6). Increase Speed
7). Decrease Speed
1. Step 1:
we build a simple circuit using the
LED to distinguish 0 and 1 signals.
Step 2:
We connect the circuit to the output of
Button Logic Control Circuit. Now we
can check if we get the same diagram
as the following table.
We use 4-bits signal to encode the Button:
Button:
Encoded signal:
Power ON/OFF
0001
Increase Frequency
0010
Decrease Frequency
0011
Turn Left
0100
Turn Right
0101
Increase Speed
0110
Decrease Speed
0111
2.2.6 Remote Control System - RF Transmitter & Control System -
RF receiver
When the user presses the button, the Remote Control System will receive the control
signal and the RF Transmitter will send the 4-bit signal to the Control System. In the
Control System, RF receiver will catch the signal sent from the RF transmitter and
decode the signal.
Requirement
Verification
1.RF Transmitter should be able to transmit 4
bits information wirelessly
2.RF Transmitter should be able to send with
distance 3 - 5 wirelessly
3.The error rate of transition should lower
than 10%
4.RF receiver should decode the information
with an error rate lower than 10%
5. The input voltage for RF receiver and
transmitter should be around 3.3v.
1. Step 1: we build a simple circuit using
the LED to distinguish 0 and 1 signals.
Step 2: We connect the circuit to the
output pin of the RF receiver. And
then we send 10 buttons and record
the output on the RF receiver
Step 3: Verify if the signal is the same
as the 10 buttons we pressed
2. The same steps as in 1. But we need
to put the RF Transmitter 3-5 away
from each other
3. We want to send 4bit/s and transit
1000 bits. And we calculate the error
rate using the formula
Bit Error Rate = Total Number of Bit in
Error / Total Number of Bit Transition
4. Measure the opencircuit voltage
with a voltmeter, ensuring that it is
sound be around 3.3V.
2.2.7 Power System
The power system will provide power to all the other systems.
Requirement
Verification
1.Output voltage between 3.0V7.00V
1. Measure the opencircuit voltage with
a voltmeter, ensuring that it is below
7.00V
3 Schematics
Remote Control System & Control System circuit:
Motor circuit:
4 Tolerance Analysis
The motion of ping-pong from our launch system can be modeled as a projectile motion.
Given the initial launch speed and angle, we can calculate the distance that the ball is going to
travel before landing on the table. From that model we can do several calculations to help us
choose motor and some other components.
Motor Requirement
Motor requirement is an important calculation when designing the launching device. There are
two factors to consider when choosing a motor: Power of the motor (in hp) and Spinning speed
of the motor (in rpm) .The following calculation is based on the minimum requirement for the
motor to launch the ball at a fixed 10º angle to a distance of 3m.
Requirement and given information:
Desired distance: D = 3m
Fixed launch Angle Θ = 10º
Ping-Pong ball weight Wb= 2.7g
Weight of the spinning wheel W0= 0.34kg
Wheel diameters d = 3.8cm
Coefficient of Friction u= 0.3
Calculations:
First, we can calculate the initial launch speed required for the Ping-Pong ball by projectile
model
V0 = D*g/sin (2 Θ) ^1/2= 3*9.81/sin (2*10) ^1/2 = 3.8m/s
And convert it into RPM
R0 = 95.49 RPM
Force to compress the wheel to above gain speed
Fwheel = 0.2*95.49 = 19.05N
Friction force is a factor that we must add on our motor load.
f = u*Fwheel = 0.3*19.05 = 5.715N
Calculate Total force Ft
Ft = Fwheel+f = 24.765N
Converted total force to torque on wheel
T0 = Ft*d = 24.765*0.038 = 0.94107 N*M
Then we can calculate the initial motor spinning speed (R1) for that torque
T0 = W0*(V1^2 -V0^2)/2g
V1 = V0 + sqrt(T*2g)/W = 3.8+sqrt(0.94*2*9.81)/0.34 = 16.43m/s
Converted it into RPM
R1 = 412.88 RPM
The last velocity listed is the initial required revolutions per minute to launch the ping pong ball
The next step is to calculate the power required for our motor
Convert above initial motor revolutions to Angular Velocity and further to angular acceleration
V1rads = R1*2 π/60 = 44.179rad/s
a = 0.736rad/s^2
Calculate Torque on motor (Tm) based on acceleration and Rotational Inertia.
Tm = a * I where I is Rotational Inertia I = m * r^2
Tm = a * m * r^2 = 0.736*0.34*3.8^2 = 3.613N*M = 2.6648 ft-lb
Last calculate required power based on Torque and spinning speed
HP = Tm * R1 = 2.6648*412.88/5252= 0.209hp
This is the minimum horsepower required for the motor to launch the ping pong ball 3m
Conclusion: The minimum requirement for our motor is 412.88RPM at 0.209hp
The graph above is the motor speed/Launching distance graph at a fix 10 degree launching
angle
5 Costs
Our fixed development costs are estimated to be $40/hour, 10 hours/week for three
people.
Our parts and manufacturing prototype costs are estimated as following:
quantity
cost
description
manufacturer
1
$1.95
We will use this motor
to speed up the ball
Adafruit
2
$15
We will use this motor
to change the ball
pusher frequency and
the turning plate
Adafruit
2
$3.36
We will use the
microcontroller to as
encoder, decoder and
runs the PWM
program to control the
speed of motor
Microchip
Technology
2
$4.2
The RF receiver and
RF sender, which is
the necessary part for
our remote controller
Nordic
Semiconductor
6
$3
Power Source
AmazonBasics
2
$3
Power Source
Adafruit
6
$2.96
Ping-pong Ball
Pro-Penn
2
No Cost
Our design of PCB
should be 2 layers, the
website says it is not
cost
ECE SHOP
$33.47
Our calculation of cost is based on the minimum price in the market at this time and we
do not consider the shipping cost. Therefore, we would like to put a $20 possible extra
cost to the total cost.
In conclusion our total cost is
6 Schedule
week
Jiayi Wu
Qihao Wang
Ruofan Hu
1/27/202
0
Research about the
background about ping-pong
launch machine
Research about the
possible design and suitable
hardware design for the
remote controller
Not Joined the
team yet
2/3/20
Finalize the high-level
requirement for the project
Research about the
utilization of microcontroller
in the project
Research about
the possible choice
for the motors
2/10/20
Designing the physical
design
Designing the prototype
circuit for the launch system
and remote controller
Doing the
tolerance analysis
on the relation
between motor and
motion of the ball
2/17/20
Writing the design part of
Document Design.
Writing circuit part of the
Document Design based on
the DDC
Writing tolerance
part of the
Document Design
based on the DDC
2/24/20
Changing the design part of
Document Design.
Talk to ECE Machine Shop
for the physical design
Changing circuit part of the
Document Design based on
the DDC
Start Design the PCB
Writing tolerance
part of the
Document Design
based on the DDC
Start Design the
PCB
3/2/20
Finish the prototype physical
model. And order the
necessary parts from the
ECE Shop
Test the prototype circuit of
launch system on
breadboard
Finish the prototype
physical
model.And order
the necessary part
from the ECE Shop
3/6/20
Programming microcontroller
so that it has the function of
the decoder and encoder
programmer for the RF
receiver and RF sender.
Test the prototype circuit of
controller system on the
breadboard
Programming
microcontroller so
that it has the
function of PWM
and changes the
power of the motor.
3/9/20
Combine all parts and do the
Prototype machine version 1
test
Finish and order version 1
PCBs (Early Bird)
Combine all parts
and do the
Prototype machine
version 1 test
3/23/20
Adjust the microcontroller
programming based on the
result of machine version 1
test
Adjust the PCB design
based on the Prototype
machine version 1 test
(Round 1)
Continue on the
Prototype machine
version 1 test with
change of circuit on
the breadboard or
physical design of
the machine
3/30/20
Combine all parts and do the
Prototype machine version 2
test
Combine all parts and do
the Prototype machine
version 2 test
Combine all parts
and do the
Prototype machine
version 2 test
4/6/20
Running the verification of
launch subsystem
requirement
Adjust the PCB design
based on the Prototype
machine version 2 test
(Round 2)
Running the
verification of
remote controller
subsystem
requirement
4/13/20
Reserve 1 week for any
delay of previous schedule
Reserve 1 week for any
delay of previous schedule
Reserve 1 week
for any delay of
previous schedule
4/20/20
Prepare mock demo
Prepare mock demo
Prepare mock
demo
4/27/20
Begin final report
Begin final report
Begin final report
5/4/20
Prepare final presentation
Prepare final presentation
Prepare final
presentation
7 Ethics and Safety
There are several safety concerns involved in our system. The user of our device will
be involved with the operation through a remote control system and the ping pong balls
that our system launches. So, it is crucial that we ensure the safety of both the user and
our system.
The first potential hazard is our launching system. It is possible that high speed ping
pong balls could injure our user and others around. In this case we need to limit the
launch speed of the ping pong ball when we build our pushing motor so that it won't hurt
our users or any others. If users really need safe insurance, we can add a distance
sensor to the machine so that if an object is too close to the machine, the machine will
not shoot the balls.
Moreover, according to the [2] IEEE code of ethics term No. 1 , we must paramount the
safety, health, and welfare of the public. Our system will be using some rechargeable or
lithium battery for power source of launching and controlling system. Thus we must
prevent batteries from being exposed to dangerous conditions like overcharging by
monitoring the temperature of the battery and warn our users of the potential hazards
the batteries can do.
Lastly, we also want to prevent some abnormal behavior if the user accidently hits the
machine with the balls. We will likely use some shells to protect the central circuit,
especially the motor circuits so that our machine will remain stable in emergency cases.
And therefore it will not shoot the ball to random directions in emergency cases.
8 Citations and References
[1] “10 Key Tips to Advance Your Table Tennis Game”
https://www.newgy.com/pages/10-tips-to-advance-your-table-tennis-game
[2] “IEEE Code of Ethics.” IEEE. Accessed February 13, 2020.
https://www.ieee.org/about/corporate/governance/p7-8.html.
[3]Haponiuk, Bogna, and Hanna Pamu. “Projectile Motion Calculator.” Omni. Omni Calculator,
January 29, 2020. https://www.omnicalculator.com/physics/projectile-motion.
[4]Boundless. “Boundless Physics.” Lumen. Accessed February 28, 2020.
https://courses.lumenlearning.com/boundless-physics/chapter/torque-and-angular-acceleration/.
[5] International Table Tennis Federation. “Player Statics”
https://results.ittf.link/index.php?option=com_fabrik&view=list&listid=99&Itemid=228