ECE3432: Robotic Control Using ROS

Course Information

   
Course ECE3432
Semester Fall 2025
Schedule TTH 3:30-4:50 PM
Instructor Dr. Li Bai
Office Hours Monday 9:30-11:00 AM, Friday 10:30-12:00 PM (Suite 203)

Course Description

This course explores robotic control using ROS2 and integrates cloud services (AWS), Linux tools, Python programming, AI models (Google Gemini), and hardware/software development. Students will work with the Mini Pupper robot dog, covering ROS2, Docker, AWS IoT, and generative AI tools through hands-on labs and projects.


Learning Objectives

By the end of this course, students will be able to:

  1. Configure ROS2, Ubuntu, and development environments for robotic systems
  2. Program robot behaviors (line following, dancing) using Python, ROS2, and PID control
  3. Integrate hardware components (camera, LCD, touch sensors, audio)
  4. Deploy containerized applications via Docker and AWS Greengrass
  5. Implement AI services (Gemini) for voice/image processing
  6. Design and present integrated robotic projects

Required Materials

Resource Description
Mini Pupper v2 Robot dog hardware (provided)
Laptop/Computer Linux or WSL capable
Temple Email Required for course communication
Canvas Access Course materials and submissions

Technology Requirements

  • Canvas - Course materials and assignment submission
  • Google Drive - Collaborative documents
  • Zoom - Virtual meetings and office hours
  • Temple Email - Check daily for course updates

Grading

Grading Scale

Grade Range Grade Range Grade Range
A 94-100 B+ 87-89 C+ 77-79
A- 90-93 B 84-86 C 74-76
    B- 80-83 C- 70-73
        D+ 67-69
        D 64-66
        D- 60-63
        F 0-59

Grade Weighting

Component Weight Type
Lab Assignments (Jupyter + ROS2 + Docker + LLM) 15% Individual
Project 1: Interactive Pet Robot 15% Group
Project 2: Line Following Robot 30% Group
Project 3: Autonomous Navigator 15% Group
Project 4: Advanced Line Follower with PID 15% Group
Attendance & Participation 10% Individual
Total 100%  

Grading Notes

  • Check-offs: You may be asked to independently demonstrate understanding. Successful check-off earns full credit.
  • Minimum Passing Grade: D-

Course Policies

Academic Honesty

Students must not commit academic dishonesty including plagiarism and cheating. Violations may result in failing the assignment/course. See University Code of Conduct.

ChatGPT Policy

ChatGPT usage is allowed with requirements:

  1. Share conversation logs in Canvas discussions
  2. Edit and verify all responses - ChatGPT can fabricate sources
  3. Include reflection analyzing strengths/weaknesses
  4. Be prepared to explain your code verbally

⚠️ Failure to follow guidelines constitutes plagiarism.

Disability Accommodations

Contact Disability Resources and Services (DRS): Ritter Annex 100, (215) 204-1280, drs@temple.edu


Course Schedule

Block 1: Getting Started & Hardware Fundamentals (Weeks 1-3)

Day Topic Lab/Activity
1 Course Overview, Hardware Setup Mini Pupper Preparation
2 Ubuntu/WSL Setup, Linux Basics WSL Setup, Linux Commands
3 Jupyter Environment Setup Jupyter Setup Guide
4 Jupyter Lab 1: Camera Capture OpenCV, Threading
5 Jupyter Lab 2: LCD Display OLED Display Control
6 Jupyter Lab 3: Audio Recording & Playback
7 Jupyter Lab 4: Touch Sensors GPIO, Sensor Input
8 Jupyter Lab 5: Dance Choreography Movement Control, Project 1 Kickoff

Block 2: ROS2 Fundamentals (Weeks 4-6)

Day Topic Lab/Activity
9 ROS2 Introduction Installation, Concepts
10 ROS2 Lab 1: Pub/Sub with Touch Sensors Nodes, Topics, Messages
11 ROS2 Lab 2: Camera Image Publishing Image Topics, Web Viewer
12 ROS2 Lab 3: Bringup & Motion Control Transforms, Movement
13 ROS2 Lab 4: WSL Networking Multicast, Cross-platform
14 ROS2 Lab 5: Person Tracking YOLO, Object Detection
15 ROS2 Lab 6: Line Following Camera, PID Control, Project 2 Kickoff
16 ROS2 Lab 7: Services Music, Dance Services

Block 3: Docker & Cloud Deployment (Weeks 7-8)

Day Topic Lab/Activity
17 Docker Introduction Containers, Images
18 Docker Lab 1: Docker Fundamentals Build, Run, Manage
19 Docker Lab 2: ROS2 in Docker Containerized ROS2
20 Docker Lab 3: AWS Greengrass Cloud Deployment, IoT

Block 4: AI Integration & Projects (Weeks 9-12)

Day Topic Lab/Activity
21 AI/LLM Introduction Gemini API Overview
22 LLM Lab 1: Gemini Setup API Configuration, Prompts
23 LLM Lab 2: AI Food Analysis Vision AI, Image Analysis
24 LLM Lab 3: Voice Assistant Speech-to-Text, TTS, Project 3 Kickoff
25 Project Work Session Integration, Testing
26 Project 4 Kickoff: Advanced Line Follower PID Tuning, State Machines
27 Project Work Session Development, Debugging
28 Mock Demos Practice Presentations
29 Final Presentations Project Demos
30 Final Competition Awards, Reflections

Lab Summary

Jupyter Labs (5 Labs) - Hardware Fundamentals

Lab Title Skills
Lab 1 Camera Capture with OpenCV OpenCV, Threading, Image Processing
Lab 2 LCD Display Control OLED, Graphics, Text Display
Lab 3 Audio Recording and Playback Microphone, Speaker, Audio Processing
Lab 4 Touch Sensor Control GPIO, Digital Input, Event Handling
Lab 5 Dance Choreography Motion Control, Timing, Sequences

ROS2 Labs (7 Labs) - Robot Operating System

Lab Title Skills
Lab 1 Pub/Sub with Touch Sensors Nodes, Topics, Publishers, Subscribers
Lab 2 Camera Image Publishing Image Topics, Compression, Web Viewer
Lab 3 Bringup & Motion Control TF Transforms, cmd_vel, Robot State
Lab 4 WSL Networking Multicast, DDS, Cross-platform ROS2
Lab 5 Person Tracking with YOLO Object Detection, Tracking, Navigation
Lab 6 Line Following Computer Vision, PID Control
Lab 7 Services - Music & Dance ROS2 Services, Clients, Actions

Docker Labs (3 Labs) - Containerization

Lab Title Skills
Lab 1 Docker Fundamentals Images, Containers, Volumes, Networks
Lab 2 ROS2 in Docker Containerized ROS2, Device Access
Lab 3 AWS Greengrass Cloud Deployment, IoT, Edge Computing

LLM Labs (3 Labs) - AI Integration

Lab Title Skills
Lab 1 Google Gemini Setup API Keys, Authentication, Prompts
Lab 2 AI Food Analysis App Vision AI, Image Analysis, Nutrition
Lab 3 AI Voice Assistant Speech-to-Text, Text-to-Speech, Conversation

Projects Overview

Project 1: Interactive Pet Robot (15%)

  • Prerequisites: Jupyter Labs 1-5
  • Skills: Touch responses, LCD emotions, sound, dance
  • Deliverable: Responsive pet robot with multiple behaviors

Project 2: Line Following Robot (30%)

  • Prerequisites: ROS2 Labs 1-6
  • Skills: Computer vision, PID control, ROS2 integration
  • Deliverable: Robot that follows a line track accurately

Project 3: Autonomous Navigator (15%)

  • Prerequisites: ROS2 Labs 5-7, Docker Labs
  • Skills: Person tracking, YOLO, autonomous navigation
  • Deliverable: Robot that tracks and follows people

Project 4: Advanced Line Follower (15%)

  • Prerequisites: All ROS2 Labs
  • Skills: Advanced PID, state machines, intersection handling
  • Deliverable: Robust line follower with web tuning dashboard

Support Services


This syllabus is subject to change. Students will be notified of modifications via Canvas.