GE 423 Final Report




Strategy
Video
Code
LADAR
About




Strategy

The aspect we strived for in our implementation was reliability. Because of this, our strategy may not be the fastest, but we plan for it to work every time. Our strategy can be divided into 3 sections, can grab and deposit, golf ball collecting, and getting lost.

Can Grab and Deposit


At the start of the run, the robot will turn in a counter-clockwise direction looking for the can. The robot is looking for a large blob of red pixels and determining that the largest blob is the can. The robot will then turn until the centroid of the red blob is in the center of the camera view. The robot then drives forwards towards the can until the y centroid is at a specific pixel in the camera view. Once it has stopped, the robot's arm grabs the can, lifts it up, and turns towards the course. With the can in hand, the robot enters the course and drives straight for the center IR sensor. Once tripped the robot will turn towards the left light, if it is turned on it will go left, if it isn't it will assume the right one is turned on and will go right. Once it has determined the direction to go it will go towards that side's signal. When that is tripped the pink square will move to a random location. The robot will move to the top center of the course, and turn towards the pink. It will drive towards the pink, using the camera to find the center. As it gets close, it will drop the arm to the floor and drive to deposit the can. Depending on how sharp of an angle the robot is turned it will drive a bit further towards the pink. This is to allow the robot to have more time to turn, and will deposit it underneath the pink square instead of in front of it. The robot will then drop the can and continue through the course.

Golf Ball Collecting


While the robot is driving through the course it is looking for golf balls on the floor. It is doing this by looking at each camera frame and alternating between looking for orange and looking for blue. When it sees a golf ball it will stop, turn towards the ball in a similar way to the can lock on. Once it is centered on the can it determines the distance to the ball, and finds its location assuming the robot's position on the course is accurate. With these coordinates, the robot will drive towards the ball at a constant speed with the collector door open. Once it reaches the position over top of the ball, it stops, closes the door, and will briefly reverse. The robot then continues around the course. When it has finished depositing the can and searching the entire course the robot will drive towards the collection areas. It will drive to the orange circle, open the orange collector door, drive quickly and stop, causing the balls to shoot out of the door. The robot then closes the door and drives straight to the blue zone and stops.

Lost


The robot is placed in the course at a random location so it no longer is able to figure out where it is using dead reckoning, the LADAR or any other sensors it has. The robot then spins 360° and records at what angle it saw the closest object. It then spins the opposite direction to that angle and drives forward until it is close to the object. It proceeds to right wall-follow until either it sees a green blob of color and is pointing north or doesn’t see anything in front of it or to the right of it. If nothing is in front or to the right it drives forward and turns slowly to the left until it finds another wall to follow. If it sees green and is pointed northward it updates its location and starts following a sequence of x-y coordinates to drive to in order to exit the course.

Video



Code

The code for our robot

LADAR

We used the LADAR primarily for Kalman filtering the robots position to update its x-y coordinates within the course more accurately than dead-reckoning alone could. We contemplated using it for deciding where walls were in the lost phase for exiting the course but found that IR sensors were much easier to implement and perfectly reliable so we did not pursue using the LADAR for this purpose.

About

We are group 1.

Andrew Lycas

Kevin Carrington