Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Getting up to Speed (Graduate Students)
Welcome to Team WPI-CMU. The DARPA Robotics Challenge is an exciting opportunity to test your robotics skills and engineering endeavors. We welcome committed hardworking students to share their experience with us. In this article, I have tried to capture the basic knowledge that is needed for committed students to quickly start contributing to Team WPI-CMU. The suggestions and tutorials are intended to make the learning curve faster but if you find yourself familiar with the topics, I would advise reviewing it before skipping it.
Team WPI-CMU uses a Boston Dynamics Inc. Atlas robot. Our team does very little hardware development; we leave the exciting problems associated with that to the Boston Dynamics folks. On the other hand, we have the arduous task of giving intelligence to this hardware through our algorithms.
We use Ubuntu 12.04, hence basic familiarity with Ubuntu will definitely come in handy. C++ is the preferred programming language but Matlab, Python, C, and any other interesting language can be used if you have an easy way to integrate with the ROS ecosystem.
The development of the core capabilities of the robot have been divided into four fronts at WPI - Perception, Manipulation, Mobility, Interfaces. Based on your interest, you will find yourself familiar with one of the packages listed here.
OpenCV - A core package for perception development. Going through the tutorials presented here will get you started. I highly recommend going through the following material if you are interested in using it:
PCL - if OpenCV is the tool for 2D image processing PCL is the tool for 3D sensor(eg: Kinect, Lidar) processing. If you wish to use it please make sure you have gone through the following tutorials:
Qt - GUI frontend
DRCSim - Simulator for the Darpa Robotics Challenge
Some of these are topics you are going to get familiar with when you work in the group. It is advantageous if you are familiar with what these tools are and basic use of them.
So far, I have tried to list and discuss the tools that one might need to implement the algorithms that we need. In here, I try to list the knowledge space that conceives the algorithms. This will give a very good idea into how we think, and help you decide in how you can share your knowledge. It is hard to summaries the approach at WPI as it is varied and welcome to new ideas.
- Operational Space Control
- Visual SLAM
- Reactive Planning
- Concurrent Programming
- Distributed Systems
- Degraded Communication Network (eg Delay Tolerant Network)
- Interface design (eg GUI)
If you find yourself excited about this opportunity, and find yourself having all the tools that you might need, it is time to go through some of the algorithms that we have implemented. You dont have to be familiar with all. This is just to get you started.
- Optimization Based Full Body Control for the Atlas Robot
- 3D Walking Based on Online Optimization
- Darpa Robotics Challenge Rules
- Tight Coupling between Manipulation and Perception using SLAM
- Complete Approach Paper - Please visit the lab
##Additional Reading Background
A computer with the simulator with the tools required will be available at the lab. As a simple test, we would like you to set up Atlas in DRCsim. Use the 'roslaunch drcsim_gazebo drc_practice_task_6.launch'.
Use scripts/cpp code to
- turn the robot through walking (teleop)
- walk towards the drill (teleop)
- point at the drill (using a pre-scripted set of joint commands)