|
  |
Ben's Portfolio
Navigation
- WPI Frontiers - (Official Website: http://admissions.wpi.edu/Frontiers/about.html)
- NerdBall
- Olympia Martial Arts - (Official Website: OlympiaMartialArts.com)
- Chaosdom.com - (Official Website: Chaosdom.com)
WPI Frontiers 2008 - 2nd Place Winner in Robotics Competition
(To see full size images, click on the thumbnails below.)
The Challenge - In this event, each robot was on a team of two robots competing against one other team. The goal of the game was to harvest badminton birdies from the ground and from tubes that hung birdies down from elevated positions. A secondary goal was to push the "Savage Ball," which was a soccer ball, so that it touched the team's wall. The Savage Ball started out in the middle of a trough, touching neither wall. If it was pushed to either side, it would roll to touch either the red or blue team's wall. There was a thirty second autonomous period during which points could be scored for collecting birdies and pushing the Savage Ball to touch a wall. Then there was a one hundred and twenty second operator control period in which team members controlled their robots remotely and scored points by dumping birdies in their team's bin or by pushing the Savage Ball to their team's wall.

The Team - My team, Team Gray, consisted of myself, Drew, and Kevin. I had extensive knowledge of programming the microcontroller and using the sensors to give feedback to the robot. Drew had had experience with VEX robots and using the VEX kit. This came in handy because he predicted a lot of mechanical problems we would have had before we prototyped our design. Kevin had never done anything with robotics before, so he provided limited input during the design stages.

The Robot - Our robot had two omni wheels in the front and two standard VEX wheels in the back. In the middle of the chassis was a tower with an arm on it that was lifted using a spindle. As the spindle rolled up the string, the arm would raise. As it let string out, the arm would fall. Attached to the arm was a box used for storing birdies. Birdies were collected using a fan made out of zip ties and rubber placed over the box. The arm had three positions. The lowest position placed the box on the ground with the open side facing out so that the fan would sweep birdies into it from the ground. The second position situatied the box at the correct height for knocking birdies out of the tubes. When it was raised up to this level, the open side of the box would be facing up towards the tubes. The third and highest arm position was over the bin that the birdies had to be dumped in to score. When it was raised to this position and the arm was placed over the scoring bin, a servo attached to the box would swing the bottom open, allowing birdies to fall out. The fan worked most effectively on the birdies on the ground. In order to harvest from the tubes, the fan had to be pressed against the birdies in the tubes with the rubber part of the fan rubbing against the birdies. It worked well when positioned correctly, quickly extracting all the birdies from the tubes. However, it always took a few seconds to line the fan up perfectly. The autonomous program told the robot to move forward and harvest the ground birdies in front of it. Originally, the plan was to use the gyroscope and encoders to position the robot in front of three tubes and clean them all out. This ended up not being possible since our fan had to be placed so precisely on the tubes.
The Competition - We were randomly chosen to be in the first match of the day. The crowd was ready, the camera was projecting a live feed onto a big screen, and our robot was on the playing field. A girl I had met at camp (Marjorie Kasten) and my aunt were there watching. The pressure was definitely on. Once autonomous mode started, our robot went forward and harvested a few birdies from the floor. We were off to a good start. During the match we ended up clearing out two of the four tubes and getting four birdies from the floor. Our robot was the best of the match. From that point on, we continued to do well in all our matches. We lost two along the way, knocking us out of the top two in the rankings. Fortunately, our robot had performed well enough to get chosen for an alliance by one of the top two teams to compete in the finals. Our alliance ended up losing 2-1 in a tough two out of three battle. I was satisfied with my team's performance, and glad that Marjorie and my aunt had seen a good show.
NerdBall - Math Strategy and Puzzle Game (Download NerdBall.zip or NerdBall.rar)
The Idea - One day my uncle and cousins were visiting so I went with my family to the pool. I was playing catch with my cousin, trying to think of something interesting to code. I wanted it to be something to do with math yet I knew I could be more creative than a derivative calculator or equation solver. This goal combined with my desire to make an interactive PC game was the inspiration for NerdBall. It is a game where one must direct a falling ball around the screen by drawing function graphs that the ball rolls on. The idea was the perfect middle between a "nerdy" windows application and a computer game. NerdBall still falls under the category of nerdy windows application, but I'm okay with that.
Gameplay - Each level consists of multiple gold stars spread across the sky. There is a blue ball in the upper right hand corner. Once the "Drop Ball" button is pressed, the ball will begin to fall. The point of the game is to direct the ball through each of the golden stars. To do this, one must select premade function graphs or add custom graphs in the "Functions" menu and then place them on the sky for the ball to roll on. After placing a function, the user can make left and right bounds for the domain of their function. If the ball touches all three stars, you win! There are five default levels to choose from. New levels can be created by manually placing stars on the sky or by choosing random arrangements of stars.
(To see full size images, click on the thumbnails below.)
Olympia Martial Arts - Black Belt, Instructor, Webmaster (OlympiaMartialArts.com)
I am a black belt in Kenpo Karate and Goju-Ryu Karate. I train at the Olympia Martial Arts studio located in Tustin, California. I have been training for over six years. Originally, I took classes from Mike Genchev and Scott Matheney at a branch of the United Studios of Self Defense (USSD) in Irvine, California. Mike decided to start his own studio with my sister, Monica, and that's when I started training at Olympia Martial Arts. Soon after I came to their studio I started teaching. I have been teaching for two years now. In February 2008, I received my black belt from Master Bob White.
I created and continually update the Olympia Martial Arts website, located at OlympiaMartialArts.com. I implemented the systems that allow students to cancel classes, schedule makeup classes, and schedule free introductory classes online.
(To see full size images, click on the thumbnails below.)
Chaosdom - Creator (Chaosdom.com)
Between the ages of nine and twelve I enjoyed playing online text based games. Area00 was by far my favorite. Simply by clicking links and using forms on a webpage one could buy airplanes, bombs, and ammunition that were used to destroy other player's aircraft. When I turned fourteen I realized that I could make one of these games myself using only HTML, PHP, and MySQL databases. I learned how to write MySQL queries in PHP which would allow players to control their accounts. After only a few days, I had a few simple pages up that allowed players to login, buy units, and look at a player status page to check on their holdings. This game continued to evolve as time went on. It grew to include possession of sectors that other players could steal and alliances between players. I also added a forum in which players could chat, argue, and discuss their strategies.
A complete description of gameplay is described for new players on Chaosdom's How to Play page. In order to see the whole game, you must register an account and login.
If you don't want to register, you can look at the pictures for a preview.
(To see full size images, click on the thumbnails below.)
|