Curious what we teach in the Level D Lessons? Level D takes all of the electronics, Python coding, and Raspberry Pi skills you learned in Levels A, B, and C and walks you through the process of building a mobile and fully programmable robot. Along the way you'll pick up some new skills including working with a multimeter, installing and configuring motors, as well as many useful code commands.
Click here to view sample lesson videos, activity instructions, and more.
Scope and Sequence for the Level D Lessons
LESSON 1: Data Protection and Recovery- How Data is Stored
- Causes of Data Corruption
- Protecting Against Data Loss
- USB Drive Backups
- Full SD Card Image Backups
- Recovery Options
- Pulling Data from a Corrupted SD Card
- SD Card Characteristics and Software
- Recovery Options Summary
- Activities:
- Activity #1: Backing Up Files Using USB
- Activity #2: Creating a Backup Image of Your SD Card
- Activity #3: Restoring an Image to An SD Card (optional)
LESSON 2: Using a Multimeter
- Multimeter Functions
- Multimeter Hardware
- Measuring Voltage
- Measuring Resistance
- Measuring Current
- Activities:
- Activity #1: Installing the Battery
- Activity #2: Measuring Resistance Values
- Activity #3: Measuring Voltage Values
- Activity #4: Measuring Current in a Circuit
LESSON 3: Building the Robot Chassis
- Hardware Considerations
- Handling the Robot
- Activities:
- Activity #1: Assembling the Robot Chassis, Wheels, Motor Mounts, and Motors
LESSON 4: Adding the Pi and Camera to the Robot
- Networking Considerations
- Connections to the Raspberry Pi
- VNC Security
- Working with Mechanical Hardware
- Camera Handling Considerations
- Activities:
- Activity #1: Preparing the Raspberry Pi
- Activity #2: Mounting the Raspberry Pi
- Activity #3: Attach the Camera to the Chassis
- Activity #4: Testing the Pi and Camera
LESSON 5: Level Shifting for Sensor Outputs
- Overview of the Components
- The Importance of Correct Wiring
- Level-Shifting IC
- Sensor Connections
- Testing the Level Shifter
- Activities:
- Activity #1: Adding and Connecting the 74LVC245
- Activity #2: Building the Test Program
- Activity #3: Testing Each Channel of the Level Shifter
LESSON 6: Adding the Infrared Sensors
- Line Following Sensors
- Obstacle Sensors
- Sensor Pin Numbering
- Robot Orientation
- Activities:
- Activity #1: Mounting the Sensors
- Activity #2: Wiring the Line and Obstacle Sensors
- Activity #3: Testing the Sensor Inputs
LESSON 7: Mounting and Testing the Ultrasonic Range Sensor
- Ultrasonic Sensor Wiring
- Ultrasonic Plate Mounting
- Activities:
- Activity #1: Adding the Ultrasonic Range Sensor
- Activity #2: Testing and Calibrating the Sensor
LESSON 8: Adding the Audio Amplifier and Speaker
- Audio Wiring System
- Audio Commands
- Methods of Triggering Audio Playback
- Speaker Noise Issues
- Activities:
- Activity #1: Installing the Speaker and Amplifier
- Activity #2: Testing the Audio System
- Activity #3: Recording Audio Files
LESSON 9: The Mobile Power System
- Batteries
- Energy Capacity
- Batteries Connected in Series
- Batteries Connected in Parallel
- Batteries Connected in Series/Parallel
- Power Conversion
- Safety and Precautions
- Activities:
- Activity #1: Mounting the Hardware
- Activity #2: Testing the Power System
LESSON 10: Driving Motors
- DC Motors
- Driving a Bidirectional Motor
- Controlling Back-EMF with Diodes
- The Motor Drive IC
- Heat Warning
- Enable Lines
- Activities:
- Activity #1: Adding the Motor Drive IC
- Activity #2: Quick Motor Test
LESSON 11: Motor Pulse Width Modulation (PWM) and Calibration
- PWM Control of DC Motors
- Motor Drive IC Pinout
- Low Speed Motor Characteristics
- Left and Right Motor Variability
- Activities:
- Activity #1: Motor Direction Test
- Activity #2: Add PWM Drive Control to Motors
LESSON 12: Project Planning and Documentation
- Determine Scope of the Project
- Hardware Planning
- Document Expected Software Functionality
- Solving Problems
- Preserving Documents and Files
- Activities:
- Activity #1: Create Wedge Map for Robot
- Activity #2: Create Block Diagram of Infrared Sensors
LESSON 13: Line Following
- Line Following Fundamentals
- Creating the Course
- Line Sensing Behavior
- Line Sensor Positioning
- Speed and Motor Drive Characteristics
- Troubleshooting Your Line Following Robot
- Safe Operation of the Robot
- Activities:
- Activity #1: Building the Line Following Program
- Activity #2: Building the Line Following Path
- Activity #3: Testing the Line Following Program
LESSON 14: Obstacle Avoidance
- Characteristics of Each Sensor
- The Ultrasonic Range Sensor
- The Infrared Obstacle Sensor
- Sensor Positions
- Speed and Turning
- Tuning the Robot’s Actions
- Overview of the Program (Code)
- Motor Functions
- Activities:
- Activity #1: Building the Program
- Activity #2: Testing and Tuning the Robot
LESSON 15: Keyboard Control of the Robot
- Keyboard Input Considerations
- Keyboard Focus
- Keypress Hold Behavior
- Keypress Repeat Rate
- Programming Movement Behavior
- Motor Speed and Movement
- Tkinter Keybinding
- Activities:
- Activity #1: Building the Program
- Activity #2: Testing and Tuning the Robot
LESSON 16: Controlling the Robot Motion with a Web Page
- Web Page Overview
- CGI Script Review
- Web Page Elements
- Div Tags
- Javascript Onpointerup Events
- Button Functionality Overview
- Activities:
- Activity #1: Downloading and Unzipping Button Images
- Activity #2: Building Required CGI Scripts
- Activity #3: Build the Web Page
LESSON 17: Video on a Web Page
- Camera Autostart Settings
- Video Format and Required Files
- HTML Page Elements for Viewing Video
- Activities:
- Activity #1: Changing the Autostart Setting
- Activity #2: Create a Simple Camera Web Page
- Activity #3: Add Video to Robot Control Web Page
LESSON 18: Adding Audio Playback to a Web Page
- Audio System Overview
- File Locations
- Playing an Audio File Using CGI Script
- Activities:
- Activity #1: Download and Run the Script
- Activity #2: Creating the CGI Files
- Activity #3: Creating the Web Page