Upload
oliver-greer
View
213
Download
0
Embed Size (px)
Citation preview
Pool Player BotFinal Presentation
Jiaying Zhang
Mechanical Engineering
Camera
ComputerRobot
Integrated System
DroidCamApp
Xbee
Serial Port
Img process
OpenCV
Board
Epiphany DIY
Actuation
Gear Motor (x2)•To drive the robot
Servo(x2)•To rotate and extend the cue
Solenoid•To strike the ball
Sensor
IR Sensor (x2)•To detect the pool table corner
IP Camera•To detect the balls and cue position
Feedback
LCD
Mobile Platform Components
Behavior Analysis
Step 1 :Robot Initialization Step 2 :Cue Paralleling
Blue cue tip position (X1,Y1)White ball position (X2,Y2)Objective ball position (X3,Y3)
double a=posY3-posY2;double b=posX3-posX2;angle=atan(a/b)*180/3.1415926;
Send angle signal to robot;Step=3
Behavior Analysis
Step 3 :Robot Moving Step 4 :Cue Approaching Step 5 :Strike the ball
if(posX1>(posY2-posY1)*posX3/(posY2-posY3)+(posY1-posY3)*posX2/(posY2-posY3)-20 && posX1<(posY2-posY1)*posX3/(posY2-posY3)+(posY1-posY3)*posX2/(posY2-posY3)+20 )
{send stop signal to robot;Step=4}
If (step=4)double c=(posX2-posX1)*(posX2-posX1);double d=(posY2-posY1)*(posY2-posY1);double dis=sqrt(c+d);
if (dis<20 && dis>15){send strike signal to robotStep=5}
Human-Robot Interface
Working Process
Robot initializes
People select an objective ball on computer screen
Robot moves along one side of the pool table
Robot tries to shot the selected objective ball
Robot initializes
Problems & Vision
• Limited striking range: cue tip is easy to move out of the camera range when the striking angle is very large. While on the other side, if the white ball is very close to the edge, the cue is not able to reach it.
• Not able to move around the pool table which causes people to put the balls at reachable position to serve the robot otherwise it will not finish the task.
• Low precision: the robot moves after the cue is turned an angle. If the wheels do not go a straight line it will cause some problem. Needs to add more function in OpenCV program.
• Frequent communication with computer by Xbee. When the surrounding has too much signal noise, the robot is easy to miss some signal and cannot finish the task.
• Do not detect holes: more work needs to do if the color balls are far from the holes or at special angles.
Thank You!
Jiaying Zhang
Mechanical Engineering
https://sites.google.com/site/poolplayerzjy/