Projects
Note that if sufficient number of each robotic platform exists, then Project 3 and 4 can be split based on the topic (manipulation or navigation) instead of being separated based on robot types.
Project: Ethical and Aggressive Robots
This project assignment invites you to work in a team to implement an ethical and/or aggressive robotic behavior while learning how to use
gopigo
robot and program it using Python programming language with a Raspberry Pi. This project consists of two portions. First, using the base gopigo
robot, teams will participate in the robotic racing competitions. Secondly, teams will design a robotic application using gopigo
for community demonstrations. Teams are also responsible for writing a detailed report, stored in the file writing/report.md
.
Project: navigating in air
This project assignment invites you to work in a team to implement a behavior-based navigation technique for an autonomous aerial vehicle for an application of your choice. First, you will familiarize yourselves with the new robotic platform, Parrot BEBOP, and will complete the necessary installations and set up using
pyparrot
Python Interface for Parrot drones. Then, you will learn how to use pyparrot
interface to program autonomous flying of the robot. Finally, teams will implement a navigation technique for a specific application and will reflect on the ethical considerations of the developed navigation strategy. Teams are also responsible for writing a detailed report, stored in the file writing/report.md
.
Project: Robot Arm and Mapping
This project assignment invites you to work in a team to implement either an autonomous arm movement or autonomous mapping technique depending on a selected robot type. In this and the next project, the class members will be split into two categories: 1) those working with Turtlebot 4 Lite, and 2) those working with EvoArm. In both cases you will first complete the needed builds and installations to set up and configure a new robotic system. Then, if you are working with EvoArm, you will focus on developing a simple manipulation technique. On the other hand, if you are working with Turtlebot 4 Lite, you will create autonomous mapping for a navigation task. Finally, teams will reflect on their experiences and educate the other teams as they prepare to swap robotic platforms and develop a more advanced application for project 4. Teams are also responsible for writing a detailed report, stored in the file
writing/report.md
.
Project: Robot Manipulation and Navigation
This project assignment invites you to work in a team to implement either an autonomous manipulation or autonomous navigation technique depending on a selected robot type. In this project, as was the case in the previous project, the class members will be split into two categories: 1) those working with Turtlebot 4 Lite, and 2) those working with EvoArm. In both cases the initial builds, configurations and set up has been already completed by the previous teams. In this project, each team will extend the functionality beyond the
teleop
operation of the robots. Specifically, if you are working with EvoArm, you will focus on developing a manipulation application of your choice using Python programming language. On the other hand, if you are working with Turtlebot 4 Lite, you will create autonomous mapping for a navigation task of your choice. Finally, teams will reflect on their experiences in writing in the file writing/report.md
and demonstrate their developed applications in person.
Project: Applications in Robotics
This project assignment invites you to work in individually or in a team of two or three to implement a robot fulfilling a specific goal/task. Your project should design and implement a robotic system for some application of your choice using one of the robotic platforms used in this course. You could select to design and implement a multi-robot system, where more than one robot complete the goal/task, in which case it might be appropriate for two or more teams to collaborate.