Session Length: 50-60 minutes
Learning Style: Autonomous challenges, design thinking
Key Learnings (Sessions 1-10):
- Session 1-2: Mastering basic Arduino coding for autonomy and sensor feedback.
- Session 3-4: Introduction to complex decision-making using multiple sensors.
- Session 5-6: Building simple autonomous navigation systems for obstacle avoidance.
- Session 7-8: Using the robot’s screen for feedback based on sensor data.
- Session 9-10: Designing a system that navigates, detects, and reacts to its environment autonomously.
Equipment Needed: (Included in the kit) M3D Go, PlatformIO, Internet, sensors, servo-motors, load-carrying accessories, Laptop (not in the kit)
Course Breakdown
1. Sensor Superstars: Data Gathering
Students will explore the various sensors available on the bot, such as distance, line, and proximity sensors. They will write simple code to collect data from each sensor and display it on the robot’s screen, fostering an understanding of how sensors gather information from the environment.
2. Making Decisions: Sensor based actions
Students will be introduced to the idea of conditionals and if-then structure. Afterwards, students will write more complex if-else statements to control the bot’s behavior based on sensor input. They’ll experiment with creating decision trees to determine how the bot should respond in various scenarios incorporating movement, displaying sensor data and actions and acting on sensor input.
3. Endless Moves: Loop Logic
Students will explore how for and while loops help the bot repeat actions smoothly and efficiently. With for loops, they’ll program exact repetitions, and with while loops, they’ll control actions based on conditions. They’ll bring together movement, display, and sensor readings, making their bots perform actions in response to the environment—all while reinforcing key coding skills!
4. Brightness Tracking
In this lesson, students will enhance their line-following code to adapt to varying brightness levels. They’ll implement algorithms that allow the bot to follow a path based on brightness differences, improving its ability to navigate along a designated route.
5. Teamwork Makes the Dream Work
In this session, students will program two bots to work as a team on a treasure hunt. One “Scout” bot detects designated treasure spots, marked with black tape, and broadcasts its findings through the remote BLE client. The second “Marker” bot follows the Scout, placing an object to mark each spot. This activity reinforces skills in sensor-based navigation, real-time communication, and teamwork, showing students how multiple robots can coordinate actions to achieve a shared goal.
6. Navigation with Dual Sensors
In this session, students will learn to program the bot to follow a curved line while detecting and avoiding obstacles. Using while loops to enable continuous condition-based actions, they’ll combine the line and distance sensors to make the bot adjust its path. They’ll also use the remote BLE client to send notifications when the bot encounters obstacles, applying real-time decision-making and reinforcing loop logic for smooth, dynamic navigation.
7. Dynamic Obstacles: Reacting in Real Time
In this session, students will code their bot to navigate a series of checkpoints while dynamically responding to obstacles. Using the Web BLE client, they’ll prompt real-time user input to adjust the bot’s path, practicing adaptive navigation. This activity reinforces conditional logic, sensor integration, and interactive user-bot communication.
8. Data-Driven Bot – Analyzing Performance through Data Logging
Students will learn to log sensor data during their bot’s operation, enabling them to analyze performance metrics. They will develop a simple program to record speed, distance, and sensor readings, culminating in a discussion about optimizing performance based on data.
9. Dumper Dynamics: Automated Loading and Unloading
In this lesson, students will enhance the dumper’s functionality, programming it to automatically load and unload items based on sensor input. This introduces more complex automation and control techniques, allowing for intricate task sequencing.
10. Final Challenge: The Robotics Showdown
In this final session, students will compete to create the most efficient delivery robot, programming their bots to collect and sort marbles by color at designated points. By combining line-following, distance detection, and user inputs for sorting, each team will tune their code for speed, accuracy, and coordination. The goal is to successfully identify, deliver, and sort as many marbles as possible within the time limit. This engaging challenge allows students to apply all they’ve learned in an exciting, hands-on competition.