EECS 106A Final Project

View project on GitHub

Team Members

Tiffany Cappellari

Tiffany is a current third year EECS undergrad at UC Berkeley. She has previously taken the CS 61 series, the EE 16 series, and EE 120 and is currently working on the EE 16B course staff in their lab sections. She has a lot of experience in designing and implementing programs and projects from working at the XPrize Foundation and at BlackRock as a CS intern. Tiffany helped troubleshoot issues that the group had with downloading some ROS packages and set up the packages and libraries needed for the Kinect camera and connected the camera to the Raspberry Pi so that the robot could see its surroundings and find AR-tags and then assisted in getting the robot to recognize AR-tags. She also designed and wrote the script that uses the tf transforms from the camera to then calculate how far the tag is from the robot and at what angle it is. The script then tells the robot how to move in order to go to the tag.

Raymond Bacco

Raymond is a current fourth year EECS undergraduate transfer student. He has priviously take the cs 61 series and ee 16 series. He has also take a prototyping and fabrication class. His background is in EE and CS with knowledge in 3D printing and laser cutting and has prvious experience building robots for personal projects. Raymond designed and built the robot and 3D printed custom parts that he designed for our project. He sourced all the needed hardware and parts. He then made sure the raspberry pi had the right operating system and also began all the necessary software downloads such as ROS. He also designed and programmed our first version of our motor controller and wrote the program that moves the robot’s arm.

Ethan Sanderson

Ethan is a current fourth year EECS undergraduate transfer student. He has previously taken CS61A/B, is about to finish CS61C, and has done a few CS projects of his own, giving him a solid foundation in computer science. Ethan helped with setting up ROS on the raspberry pi and calibrating the Kinect camera. He also figured out how to get ar_track_alvar to communicate with the camera and recognize AR tags, which had been a troublesome roadblock for the project for a significant amount of time. Additionally, Ethan set up an Ubuntu laptop to communicate with ROS on the raspberry pi so the positions of the robot and the AR tags could be visualized in RVIZ for debugging purposes. Ethan also made edits and added a bit of logic to RoverGoSmooth.py (the script created by Tiffany that drives the robot to its targets). Finally, Ethan redesigned the original motor controller created by Raymond and calibrated it so the robot would drive smoothly and straight.