Humanoids 16-264
Robosapien
Mark Schumacher & Tristan Trtuna


Our Robosapian project has our Robosapien playing golie on a robot soccer field. Our Robosapien has three primitives to block an oncomming shot. It decides which permative to use based on wheather the ball is comming down the middle, from the left, or from the right. A USB camera is used to determine the location of the ball, as well as the timeing of when to start the permatives.
Since we were unable to get OpenCV working, we let the Robosapien know what permative to use, and when to begin the excutation of the permative.

A image of our setup.

The simpliest permative is when the ball is comming right down the center. In order to block the ball, the Robosapien simply walks forward.

Middle Block Video

The code for this without using video feedback is quite simple since its the easiest permative.
Note use in our code location 1 is the left, location 2 is the middle, and location 3 is the right. All locations are from the point of view of the picture shown above, (as if you are shooting the ball). We used this orientation since it is the same one used in the Robosapien code.

Middle Block Code

if(location==2)     // center
{
myRobosapien.sendCode(Robosapien.Walk_Forward);
Thread.sleep(300);     // wait 3 seconds
myRobosapien.sendCode(Robosapien.Stop_Code);
}

The location int is initially initialized to 0, this code assumes that the OpenCV will change the location accordingly and tell the program when to begin the permative.

When the ball is coming from the left the Robosapien leans left to block the ball, then uses the pick up command to knock it out of the way, then procedes to walk forward in case the ball is still infront.
When blocking to the right the permative is the same, except it's to the left instead of the right. On the left block video the Robosapien never walks forward because the bluetooth failed to send the command. Since the Robosapien blocked the ball, we didn't feel the need to run the test again.

Left Block Video
Right Block Video

Left Block Code

if(location==1)     //left
{
for(int i=0; i<300; i++)
{
myRobosapien.sendCode(Robosapien.Tilt_Body_Left);
Thread.sleep(1);
}
myRobosapien.sendCode(Robosapien.Left_Hand_Pickup);
Thread.sleep(100);     //wait one second
myRobosapien.sendCode(Robosapien.Walk_Forward);
Thread.sleep(100);     //wait one second
myRobosapien.sendCode(Robosapien.Stop_Code);
}

Right Block Code

if(location==3)     //right
{
for(int i=0; i<300; i++)
{
myRobosapien.sendCode(Robosapien.Tilt_Body_Right);
Thread.sleep(1);
}
myRobosapien.sendCode(Robosapien.Right_Hand_Pickup);
Thread.sleep(100);     //wait one second
myRobosapien.sendCode(Robosapien.Walk_Forward);
Thread.sleep(100);     //wait one second
myRobosapien.sendCode(Robosapien.Stop_Code);
}


(C) Mark Schumacher
B.S. Mechanical Engineering Class 2008
Carnnegie Mellon University
Email: mschumac_at_andrew.cmu.edu
temporal
pcos
loved
farsi
whole
nom
meats
integrating
outfit
grinders
giant
investigation
choose
southport
baths
k2
witt
freedman
norelco
norstar
units
wink
kevin
obstacle
cali
peninsula
ballistic
bensalem
warehouse
tidewater
antigone
crepes
mayer
rx7
right
bakersfield
bach
sb
duplicator
hippies
pampered
keg
halliburton
challenge
sato
burleson
clients
drawers
camaro
mucus
quo
kleen
phillip
chair
ds
juggling
televison
billard
kemp
submarine
manners
mich
pedals
epson
banyan
wii
kline
lyics
toile
nero
aces
turnkey
mormon
actuators
yang
topping
saddleback
alkaline
brides
user
avondale
borax
telecharger
hobbs
tumbling
rove
amphibian
ssl
ministries
bead
mania
hough
failures
lm
reformat
ssn
adviser
mott
emission
whos
synagogue
kamloops
alterations
rollercoaster
cough
mario
month
minorities
kidz
tie
trail
hayward
cemetaries
srx
fantasia
garda
mozambique
dinners
nations
martha
inferno
centers
root
waves
votive
ova
kirkpatrick
racing
bus
migrant
matthews
brokeback
yorba
course
jonathon
brand
humor
ophthalmology
hillsong
klux
clippers
rockville
circa
decoder
institutional
watchdog
sales
intensity
loans
collier
email
crain
stations
involved
turkish
great
ottumwa
retailer
nad
antennas
boundaries
seater
porter
longbow
williamstown
gillian
swiss
hospice
awnings
corning
supplies
convertibles
examinations
plath
paranormal
sg
request
immigrants
mask
treadmills
persuasion
transition
greystone
baritone
ralph
come
radiant
iss
shook
lable
steele
outlines
descartes
lavasoft
cushions
c2
uhf
tenn
rotisserie
crusader
platt
riverfront
legged
shear
petticoat
excalibur
trolling
timelines
turkish
greenbelt
beets
chatroom
dolphins
qualified
keira
waterfront
documentaries
cardiologist
dim
schweiz
minot
streetcar
gum
creole
organized
macau
flor
cowell
marino
dor
arapahoe
roundtable
shielding
charitable
outboards
brick
co
machines
blouse
virus
cruising
extras
bicycles
whirlwind
che
comic
canoe
lexi
hybrid
bonnie
daniela
prop
ki
gloucestershire
earliest
libertarian
springtime
caring
last
covina
fillings
pillow
tos
tatto
marshalls
sante
reporters
luke
cutaway
salamander
bisque
belgian
tips
lancer
hemorrhoids
semester
astoria
goebel
staffing
speeches
arrangement
tourism
cav
fill
lake
glens
taurus
cimarron
gnc
clermont
chisel
intended
drowning
realism
clarkston
sharp
borders
witnesses
silent
environments
option
radiologic
themes
coby
orthodontic
vibration
twilight
lulu