Skip to content

Commit

Permalink
Add site files
Browse files Browse the repository at this point in the history
  • Loading branch information
kiers-neely authored Mar 29, 2024
1 parent f4c4227 commit ecc2907
Show file tree
Hide file tree
Showing 10 changed files with 982 additions and 0 deletions.
25 changes: 25 additions & 0 deletions docs/course-deliverables/group.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Group Assignments

## Physical Robot
As the course progresses your group will be required to present physical evidence of your robot's progress, including videos of your **physical robot** completing the given objectives.

### Hardware
*TODO*

### DonkeyCar: Computer Vision
*TODO: link documentation for physical autonomous laps in DonkeyCar*

### DonkeyCar: GPS Navigation
*TODO: link documentation for GPS laps in Donkey*

### ROS2
#### Line-Following Laps
*TODO: line following docs*

#### Lane-Following Laps
*TODO: lane following docs*


## Final Project Progress Reports
Starting around **Week 6** your group will give a short, 5-minute presentation to your classmates at the end of each week. These progress reports should be no more than 3-5 slides discussing what goals you have met, what you are still working on, what is working, and what still needs debugging.

16 changes: 16 additions & 0 deletions docs/course-deliverables/individual.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Individual Assignments

## DonkeySim
During this course, you will need to upload a video of your trained model car successfully completing 3 autonomous laps on the DonkeySim track **using three different scenarios** that are outlined in the [Virtual Machine Guide](../guidebooks/50-vm-guide.md).

### 3 Autonomous Laps on `localhost`
*TODO: Link to DonkeyCar documentation for local host*

### Training on the GPU Cluster
*TODO: Link to documentation for GPU cluster*

### 3 Autonomous Laps on remote server `roboticist.dev`
*TODO: Link to documentation for remote server*

## The Construct
*TODO: link online course details*
50 changes: 50 additions & 0 deletions docs/course-overview/outline.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# Introductions and Class Logistics

## Instruction Team
- Jack Silberman - [[email protected]](mailto:[email protected]) - PhD, Faculty MAE, ECE and HDSI
- TBD - email - TA/Tutor

## Safety
- Follow the return to learn, that simple
- Lab access. Please observe UCSD’s safety guidelines - Compliance with required trainings.
- Be safe, ask for help; don’t be afraid to test things but be safe. You are in school to learn, you are supposed to have help.

## Adapting to Changes
- For the past 5+ years, more than 1/2 of you would not be in this class. ***Be patient with us***.
- We expanded it from 28 to 60 students, 7 to 15 Teams.
- This means we had to find a space to fit all of you in a lab environment. *Please help by not talking at the same time as the instructional team.*
- We basically have double of the workload with the same resources.
- Do your part and be patient when things don’t work. Do some hacking and look for solutions with us. **Don’t expect solutions given to you without doing some work too.**
- We are using cutting-edge technology; *it may cut us a bit while we master it.*

## Logistics
- Lectures and times are mixed since we do hands-on lab within the lectures.
- Tuesdays and Thursdays: **5:30 - 6:50 PM**
- Office hours at the lab: 7:00 - 8:30 PM
- Additional office hours TBD as needed
- If needed, access to EBUII 339 TritonAI lab TBD with TA
- Discord for communication, Professor Silberman will share the invite link
- Assignments will be posted on Discord channels
- Video evidence of course deliverables to be shared on Discord
- See *Grading Formula*
- Top requests from past quarters
- More time for final project
- Help on Python coding
- More structure on "what" and "when"
- **This is a 4 credit class.** If you cannot dedicate 10 hours per week, please consider giving a chance to the dozens of other students on the waiting list. If you put in the effort, you will be successful.
- This class is hands-on-fun-busy where you will gain *highly useful skills to add to your resume.*
- There are no exams or lists of exercises to work on.
- Your time will be used learning new skills that can make you **stand out** on job or graduate school applications.
- There are two 360 evaluations where your teammates will judge you. Also, other teams can help on your grade. More on that in grading formula.
- CBT / e-book license on Robot Ignite Academy (The Construct) is required. You have homework already.

## Curriculum
- Deep Learning AI - Human Behave Cloning
- Simulator on a virtual machine on your host computer.
- AI model Training using UCSD’s Supercomputer Center.
- Multi-robots race online against racers from around the world.
- Autonomous laps using a Physical robot at UCSD’s scale race track.
- Optional - We were invited for an event sponsored by a Bank in the Bay Area
- Date to be confirmed - end of the quarter
- 10 to 15 students sponsored to travel for a day in Oakland California
- Help companies founder train their robots with their kids then race; possible network opportunity for you.
130 changes: 130 additions & 0 deletions docs/course-overview/syllabus.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,130 @@
# 10-Week Course Syllabus

## Week 1
### Lecture and Lab
- Class expectations
- "What will a robotics class enable me to do?"
- Search web for robotics jobs, i.e. keywords 'deep learning,' 'ROS2,' 'AI'
- Grading formula
- Syllabus
- Classes schedule and high level deliverables
- Introduction to the class resources
- Laboratory and tool
- Laboratory and safety training
- Design robot, start building robot
- Deep Learning
- Virtual Machines
- DonkeyCar: running on student host computer
- DonkeySim: running on student host computer
- CBT/e-book
- Embedded Linux
- Python
- Concepts of ROS2

### Assignments Due
- Begin designing robot
- Electronics mount plate
- 3D print camera mount
- 3D print single board computer case
- DonkeyCar DonkeySim
- 3 autonomous laps running on student host computer **(due Tuesday of Week 2)**
- Linux and Python traning modules
- ROS2 Basics in 5 Days (Python) Section: Introduction

## Week 2
### Lecture and Lab
- Team members review and adjust. Let’s lock the teams. Starting this week it will be very hard for people to join and catch.
- Deep Learning
- Review of Virtual Machines and Host Machines
- We use a virtual machine image from a hypervisor company called VMware
- The instructions to use our virtual machine is here
- DonkeyCar - running on students host computer
- DonkeySim - running on the external server
- Embedded Linux on a low power single board computer (SBC)
- How can we install software without a computer monitor, keyboard, and mouse connected to an embedded computer (single board computer)?
- Installing the software into the SBC
- Jetson Nano Single Board Computer (SBC) Hands-on
- Remote access without a monitor, keyboard, mouse
- Initial connection using a USB cable
- Connect to a local WiFi access point e.g., UCSDRoboCar
- Multi-user on a low power SBC
- User Security
- Installing software using Secure Shell (SSH)
- Remote Desktop
- Robot Components and Electronics
- GPS Based Navigation
- GNSS (GPS) 3D Localization
- RTK GNSS Error Correction
- Base Station
- Services
- Open source
- Paid services
- Robot design completed, and major components in place
- Completed
- Electronics mount plate
- 3D printed camera mount
- 3D printed case for the single board computer (SBC)
- Incorporate
- GNSS unit and antenna
- Electronics wiring
- CBT / e-book
- ROS2 Basics: Topics, Launch files

### Assignments Due
- Donkey Car DonkeySim 3 autonomous laps - sim running on the external server **(due Thursday of Week 2)**
- Basic software setup on Jetson (Jetpack, WiFi, hostname, DonkeyCar, etc.) **(due Tuesday of Week 3)**
- Robot components ready **(Thursday of Week 3)**
- Mechanical Components
- Electrical Components
- Software - Linux, Jetpack, OpenCV GPU Accelerated, DonkeyCar
- Deep Learning laps
- DonkeyCar GNSS Navigation
- ROS2 Basics in 5 Days (Python) Sections: Basic Concepts, Topics

## Week 3
### Lecture and Lab
- UCSD’s SuperComputer GPU Cluster Deep Learning acceleration
- Hands-on GPS/GNSS Based Navigation - putting all together - In font of EBU I
- 3 outdoors autonomous laps using GNSS
- 3 Autonomous Laps Deep Learning on EBUII outdoor track

### Assignments Due
- 3 Autonomous Laps GNSS / GPS - EBU I **(Tuesday of Week 4)**
- 3 Autonomous Laps Deep Learning - EBU II **(Thursday of Week 4)**
- ROS2 Basics in 5 Days (Python) Section: Services

## Week 4
### Lecture
- Introduction to Docker and Git
- Introduction to UCSD ROS 2 Robocar Framework
- Demo of Python Camera Based Navigation
- Introduction to Class Final Project requirements
- Introduction to Project Management

### Assignments Due
- Class Final Project Proposal **(Tuesday Week 5)**
- 3 Autonomous Laps ROS2 **(Thursday Week 5)**
- ROS2 Basics in 5 Days (Python) Section: Actions
- ROS2 Guidebook

## Week 5
### Lecture
- Neural Network
- Car Dynamics
- Final Project Status Update

### Assignments Due
- Weekly progress report on final project

## Weeks 6 - 10
### Lecture
- As needed/per request
- Suggested topics:
- Filtering/state estimation
- Path planning: GPS waypoint, LiDAR, SLAM
- PID control
- ROSBAGS, rviz, rqt

### Assignments Due
- Weekly presentation progress report on final project
- **Bonus**: ROS2 NAV Course
Loading

0 comments on commit ecc2907

Please sign in to comment.