Projects
These projects integrate skills from multiple labs to create complete, functional applications for the Mini Pupper. Projects are designed to be completed sequentially, building upon skills learned in the labs.
Learning Path
┌─────────────────────────────────────────────────────────────────────┐
│ Sequential Learning Path │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ Jupyter Labs (1-5) │
│ ├── Camera, LCD, Sound, Touch, Dance │
│ │ │
│ └──► Project 1: Interactive Pet Robot │
│ (Jupyter Labs only - hardware fundamentals) │
│ │
│ ROS2 Labs (1-4) │
│ ├── Basics, Camera, Transforms, Visualization │
│ │ │
│ └──► Project 2: Teleop Dashboard │
│ (Jupyter + Basic ROS2 - robot control) │
│ │
│ ROS2 Labs (5-7) │
│ ├── Person Tracking, Line Following, Services │
│ │ │
│ └──► Project 3: Autonomous Navigator │
│ (Advanced ROS2 - autonomous behavior) │
│ │
│ Advanced ROS2 + PID Control │
│ ├── Line Detection, PID Tuning, State Machines │
│ │ │
│ └──► Project 4: Advanced Line Follower │
│ (Advanced control systems - autonomous navigation) │
│ │
└─────────────────────────────────────────────────────────────────────┘
Project Overview
| Project | Difficulty | Prerequisites | Description |
|---|---|---|---|
| Project 1: Interactive Pet | ⭐⭐ | Jupyter Labs 1-5 | Touch-responsive pet with expressions and sounds |
| Project 2: Teleop Dashboard | ⭐⭐⭐ | Project 1 + ROS2 Labs 1-4 | Web-based control with camera streaming |
| Project 3: Autonomous Navigator | ⭐⭐⭐⭐ | Project 2 + ROS2 Labs 5-7 | Person following with obstacle avoidance |
| Project 4: Line Follower | ⭐⭐⭐⭐ | Project 3 | Advanced line following with PID tuning |
Prerequisites by Project
Project 1: Interactive Pet Robot
- ✅ Jupyter Lab 1: Camera
- ✅ Jupyter Lab 2: LCD Display
- ✅ Jupyter Lab 3: Sound
- ✅ Jupyter Lab 4: Touch Sensor
- ✅ Jupyter Lab 5: Dance/Movement
Project 2: Teleop Dashboard
- ✅ All Project 1 prerequisites
- ✅ ROS2 Lab 1: ROS2 Basics
- ✅ ROS2 Lab 2: Camera Topics
- ✅ ROS2 Lab 3: TF Transforms
- ✅ ROS2 Lab 4: RViz Visualization
Project 3: Autonomous Navigator
- ✅ All Project 2 prerequisites
- ✅ ROS2 Lab 5: Person Tracking
- ✅ ROS2 Lab 6: Line Following
- ✅ ROS2 Lab 7: Services
Project 4: Advanced Line Follower
- ✅ All Project 3 prerequisites
- ✅ ROS2 Lab 6: Line Following (revisited)
- ✅ Understanding of PID control theory
- ✅ State machine design principles
Project Structure
Each project includes:
- Objectives: What you will learn and accomplish
- Prerequisites: Required labs and prior projects
- Implementation Guide: Step-by-step instructions
- Deliverables: Expected outputs and demonstrations
- Extension Ideas: Optional enhancements
Grading Rubric
| Component | Weight | Description |
|---|---|---|
| Functionality | 40% | Does the project work as specified? |
| Code Quality | 20% | Clean, documented, well-organized code |
| Documentation | 15% | README, comments, user instructions |
| Demo/Presentation | 15% | Live demonstration of the project |
| Creativity | 10% | Extensions, improvements, unique features |
Getting Started
- Complete the prerequisite labs for each project
- Start with Project 1 and progress sequentially
- Each project builds on skills from the previous one
- Document your progress as you go
- Add extensions after completing base requirements