Name: Swaggawagon

Swag: Yes

Tricks: Transform

Owner: Richard Phillips

Biography: I like to do alot of things in my freetime. I play saxophone, run cross country, play ping pong and tennis, play FIFA (its my life), and i like to create electronic beats. This past summer I lived in Armenia for 8 weeks and worked at an engineering school/company called TUMO Center for Creative Technologies and worked on their IT team as well as tought high schoolers robotics. And yes, I am Armenian.
I am studying computer science because I've loved coding since 9th grade. I've worked with C++, Java, Android, LabView, and HTML, and I want to continue learning and becoming more proficient in my skills. Also computer science is the field to be in.

Lab One - 9/4/2012: My group (Eric Kunal Zach) used Rastabot to draw a triforce.

Name Robot Name Line Sensor (Light Surface) Line Sensor (Dark Surface)
Eric Rastabot 0 1
Kunal Julio 0 1
Zach Doug 0 1

Battery Life and Obstacle Command

.get.Battery,battery life


The battery life of the robot was 7.24455 when the command ran. 6400,6400, when the robot is 20 cm fromt he wall. When the robot is 50cm from the wall, the value is 1280,0. When the robot is 60cm away from the wall the value is 0,640.

Light Sensor




When Alex robot was placed in relatively semi lit area, without any obstacles the value is 64902,65158,64903

when the robot was placed in relatively semi lit area without any obstacels the value returned is 65063,65293,65096

When the robot is placed in a relatively dark room around 30 cm from the wall the values received were 65158,65283,65160

in light with the same distance from the wall, the value returned were 65100,65271,65106


When the robot was placed on top of a white surface, the values returned were 0,0. Otherwise the values returned are 1,1.


I try to place it on everywhere in the classroom and it gives out (1,1), unless I place it(the sensor) very close to my clothes, it gives (0,0)

Fibonacci Sequence Lab

Partner Name Robot Name
Josh Wheatly
Matt George
Brian Pikachen

We used angular velocity to slow down the robot when turning according to the increasing numbers of the fibonacci sequence.

Homework 1: Talent Show

Pre Lab Questions

1. My robot will play jingle bells when the battery is above 5, the line sensors either read 0 or 1 and the light sensors read a value above 5000.

2. My robot will attempt to draw a square based on sensing objects with the cameras on the fluke. It will go straight when it does not see an object at a certain distance from it, and when it does, it will turn right.

3. My robot's suprise ability is when its IR sensor reads 1, it will go draw a random number of stairs(between 1 and 5). The robot draws different parts of the stairs based on whether the random number that's bein iterated is even or odd.

4. I structured my talent show by doing the song first, of course if the prerequisites were met with the sensors. Then the robot went on to attempt to draw a square based on the obstacles that were around it. Then after sensing 4 objects, it would do its random function which was to draw stairs.

Here is my code:

Lab 3- Braitenberg Vehicles

My teamates: Brenton, Skyler, and Parker

I did the Braitenberg vehicles Alive, Coward, Agressive, and Paranoid. For Alive the robot moves forward when it detects a light in the middle sensor. For Coward, the robot motors go left when the right sensor detects light and right when the left sensor detects light. For Agressive, the robot motors go right when the right sensor detects light and left when the left sensor detects light. For Paranoid, the robot moves forward when it detects no shadow, which is basically no change in the light sensor by a value of 500. When the value increases greater than 500, the robot detects a shadow and will turn left until it is out of the shadow. Here is my code:

Homework 2: Robot Games

My teamates: Alex, Joey, and Raven

Prelab Questions

1. Write a description of your robot’s performance for the Opening Ceremony. What is your algorithm and sensors used for this event?

The only sensor I would really use is the battery one to see if the robot has enough battery to move and play music. I would set up commands like a,w,s,d to move the robot using my computer keys and the letter f to play the fight song.

2. Write a description of your robot's Line Following behavior. What is your algorithm and sensors used for this event?

I will use robot.getLine() (Line following sensor) to find out whether it detects a black line or not under it. Then I will have the robot move when it senses the black line and not when it senses a white or non black line.

3. Write a description of your robot's Maze Solving ability. What is your algorithm and sensors used for this event?

I will use robot.getObstacle() (sensors on fluke) to detect objects in front of the robot. The robot will turn left or right until it doesn't detect any objects and then go straight until it detects an object and then repeat the turning.

4. Write a description of your robot's Fastest Drawer Behavior. What is your algorithm and/or sensors used for this event?

I don't need any sensors for this, but I could use getBattery() to see if theres enough battery to draw. I will then manually code the robot to draw the object that I must draw in the most efficient manner as to be the fastest.

5. Write a description of what is your algorithm for structuring your robot team’s behaviors.

We are going to have a bunch of functions that do a different part of the robot games per function. There will be an Opening Ceremony function, a line following function, etc. Then we can cue the robot to do the function by pressing a key on our computer.

Download Link for my code as zip file

Homework 3: USAR

My teamates: Freddie Ramirez and Zach Zeffe

Prelab Questions

1. Write a description of your team’s USAR strategy. What is your algorithm and sensors used for this task?

I think we will manually navigate the robot with a joystick and then take pictures every move. No robot sensors will be used to find the robots, but instead the robot will check the pixels of the image it takes per move, and if the image is predominantly red, then it will mark that area as a lost scribbler.

2. Write a description of your robot’s performance for navigating through the mock disaster area. What is your algorithm and sensors used for this sub-problem?

We use a joystick to navigate the robot (w,a,s,d) and basicaly whenever the user clicks on one of those letters, the robot will move either forward, backward, right-forward, or left-forward. No sensors are needed to navigate the robot through the disaster area since it is manual

3. Write a description of your robot’s locating lost scribblers behavior. What is your algorithm and sensors used for this sub-problem?

The camera on the robot will take an image of the disaster area and then an algorithm will check if any part of the picture has predominantly red pixels. If so, then another algorithm will create a green pixeled box around the red pixeled area and store it as an image of a lost scribbler.

4. Write a description of your team’s mapping strategy. What is your algorithm for this task?

I figured that when the robot takes a bunch of pictures for 10 minutes and we have a slideshow of the disaster area, my team will be able to map out where the lost scribblers are from all the repeat pictures of the disaster field in all different angles.

Homework 4: Mars Rover

Prelab Answers

1. The algorithm for searching the aliens was created so that it collects every pixel in the picture, and compares RGB values to determine if the pixel is closest to the green, blue, and red values of the Alien in the given pictures.
2. The Alien class will simply consist of Location and the Alien properties itself. It will include size and location. It wil have member functions like getSize and getLocation.
3. The algorithm sees Aliens through using object oriented programming and declaring Aliens as objects (this only happens after identifiying them). In terms of photos, PicturePtr is used to help recognize them.
4. I started with MARS.jpg, because I wanted to test my algorithm on the simplest picture. I just wanted to test if I could identify 1 simple alien that was green.
5. I wrote code that calcultate the number of pixels in each alien. Then I sort each alien by the amount of pixels there are in each image.
6. This code will use pythagorean theorem to test the diagonal closeness of each alien in the photo. Whichever one is closest diagonally will be the closest location wise.
7. There is a Big O of n*n, which is somewhat inefficient.

Final Project: What is Computer Science?

Prelab Answers

1. I will be using the robot to detect the presence of certain objects in front of them, allowing them to figure out exactly where they are in a certain area. I plan to be able to locate objects automatically which could be used like the mars rover which roams trying to find objects.
2. The program will consist of the option of detecting objects automatically or through a controller. The user can use the controller, or choose many different options in the automatic detection.
3. The user will have the option to control the robot virtually or have the option to choose certain criteria for the robot in automatic detection. This allows the user to control the program.
4. I will output a txt file that summarizes all of the users choices and the robots actions because of them. Then you can visualize the success of the user's moves.
5. The user's interaction will be judged off of the success of the robot detecting objects. The larger percentage of detections, means the user did better.
6. The program collects user data through cin or through ifstream (which is through a separate txt file) and then will output the evaluation through a .txt file.
7. The evaluation report will be determined by the success rate of the automatic program. That is the amount of tries it takes to detect an object versus the amount of times the program runs.
Valid XHTML 1.0 Transitional!Valid CSS!

The University of Southern California does not screen or control the content on this website and thus does not guarantee the accuracy, integrity, or quality of such content. All content on this website is provided by and is the sole responsibility of the person from which such content originated, and such content does not necessarily reflect the opinions of the University administration or the Board of Trustees