Sunflower Robotics: Sense, Decide, Move
Build a simulated robot that explains every move and every stop, then plan an adult-verified Raspberry Pi lab inspired by the Sunflower family robot.
Windows, macOS, or Linux with Python ยท Raspberry Pi extension after instructor commissioning ยท Ages 9-10, 11-13, 14-16
A parent or guardian unlocks the missions. Starter projects use fictional data and require no paid AI key.
Your project
A repeatable robot mission with mock sensors, bounded commands, and an evidence log
- Trace sense โ decide โ act through a runnable Python simulation.
- Separate unknown sensor data from clear space and test both cases.
- Normalize motor requests, cap simulated duration, and explain a stop decision.
- Use seeded inputs and one-variable experiments to compare designs.
- Check an AI suggestion against code and test evidence.
- Present a tested simulated mission and a power-off physical-system plan.
Before you begin
- Use a keyboard, save a file, and run a command with age-appropriate adult help.
- Read small Python dictionaries and comparisons; younger builders can begin with printed command cards and a partner.
- Explain what a sensor measures and distinguish a prediction from an observation. Lesson 1 introduces both.
Materials
- One computer per learner or pair, trusted Python 3.9+, an editor, and the two downloadable starter files.
- Paper or text files for predictions, four labeled sensor cards, a ruler for a paper-only distance exercise, and a printed sense โ decide โ act diagram.
- For the optional power-off component map: a verified kit or photographs showing a Raspberry Pi, camera, motor driver, motors, sensors, and their separate power paths.
- The family project records a Pi 4, Camera Module 3, four TT motors, mecanum chassis, and two L298N drivers. Its historical battery and sensor lists conflict; use an instructor-approved current bill of materials instead of shopping from these historical notes.
Your tools
- Python 3.9+ and a text editor
- Run a local simulation with the Python standard library.
- Use an instructor-provided Python installation. Download /lab-starters/sunflower-robotics.zip and extract main.py and README.txt into one new folder. Open a terminal there; run python3 main.py --self-test. On Windows, the instructor may substitute py for python3. No pip install is needed.
- Prediction and experiment notebook
- Record the intended behavior before running a test.
- Create prediction-log.txt, sensor-table.txt, and mission-review.txt, or use paper. Record scenario, changed variable, expected decision, actual decision, and explanation.
- Instructor or peer coach
- Review reasoning and, optionally, mediate an approved AI explanation.
- The course works with a peer reading the AI-coach prompts. If an institution provides an approved AI tool, the instructor can submit only synthetic data and short code excerpts. Learners do not need consumer AI accounts.
- Optional verified Raspberry Pi robot
- Connect the simulation's ideas to physical components after a separate instructor review.
- Begin with a powered-off kit or component photographs. The instructor supplies a verified model-specific parts and wiring sheet, validates power and sensor levels, and demonstrates a working stop method before any physical activity. Do not infer wiring from this course.
Your mission sequence
MISSION 1 ยท 75 MINUTES
1. Give your robot a mission
Make a simulated seed-delivery robot take one explainable step.
Architect skill: Define a small system by its inputs, decisions, outputs, and evidence.
MISSION 2 ยท 75 MINUTES
2. Become a sensor detective
Explain why an unknown distance should stop our simulated robot.
Architect skill: Represent uncertainty explicitly and separate a model from its physical implementation.
MISSION 3 ยท 75 MINUTES
3. Design commands with boundaries
Turn a large or confusing request into a small, predictable simulated action.
Architect skill: Validate inputs before they cross a system boundary.
MISSION 4 ยท 75 MINUTES
4. Make every stop explainable
Protect the simulated mission from front obstacles, rear obstacles, and uncertain information.
Architect skill: Write deterministic rules that can be tested independently of an AI explanation.
MISSION 5 ยท 75 MINUTES
5. Run a fair robot experiment
Change one input and show exactly how it changes a decision.
Architect skill: Use reproducible evidence to distinguish a design improvement from a lucky result.
MISSION 6 ยท 75 MINUTES
6. Show your mission and challenge the explanation
Present a tested seed-delivery mission and prove which AI or peer claims deserve trust.
Architect skill: Explain decisions with evidence and distinguish a finished simulation from an unverified physical deployment.
Learn online
Six weekly 75-minute sessions: 10 minutes of prediction, 15 of demonstration, 30 of building, 15 of checks, and 5 of reflection. Optional between-session work is a 15-minute notebook revision. Physical commissioning is a separate instructor prerequisite, not homework.
Plan around 75 minutes per session; pause and revisit at your own pace.
Adult support: An adult prepares Python and helps younger learners with the terminal. Ages 9โ10 work with an adult or instructor at each code-changing step; 11โ13 work in pairs; 14โ16 may run the experiments independently. Any physical extension stays adult-led. These bands are proposed teaching adaptations.
Build at camp
Five days with 180 planned minutes per day, including project work and group activities. The course outline does not reserve a camp place.
Day 1: Day 1 โ Meet the robot and its senses
- Complete Lessons 1 and 2 in two 75-minute blocks.
- Use 15 minutes for a break and 15 minutes for a sensor-card gallery. Keep physical components powered off.
Day 2: Day 2 โ Design commands
- Complete Lesson 3, then spend 45 minutes on paired command-card challenges.
- Use 30 minutes for notebook feedback, 15 for a break, and 15 for the stop-method demonstration on the simulation.
Day 3: Day 3 โ Make stopping explainable
- Complete Lesson 4 and spend 45 minutes designing adversarial sensor cases.
- Trade cases for a 30-minute peer review, take a 15-minute break, and finish with a 15-minute evidence circle.
Day 4: Day 4 โ Run a fair experiment
- Complete Lesson 5 and use 45 minutes for one-variable experiments.
- Use 30 minutes to build the capstone evidence board, 15 for a break, and 15 for rehearsal.
Day 5: Day 5 โ Mission showcase
- Complete Lesson 6 and spend 45 minutes on final revisions.
- Hold a 30-minute code-and-evidence showcase, take a 15-minute break, and finish with 15 minutes of individual reflection. An instructor may show a separately commissioned robot; simulation remains a complete capstone.
Facilitator preparation
- Prepare the starter and run its self-test before learners arrive; keep a clean copy for comparison.
- Rotate driver, predictor, and evidence-recorder roles every 15 minutes. Use larger text and printed dictionaries for guided readers.
- A real kit is optional. A physical demonstration requires the model-specific instructor commissioning record; use the simulation if any required fact remains uncertain.
- Collect code and synthetic results privately. A public recording of children is not part of the showcase.
Show what you built
Design a fictional seed-delivery robot mission. Submit the Python starter or your reviewed extension, a six-case prediction/actual table, one fair experiment, and a sense โ decide โ act diagram. Explain why five baseline cases stop and why the clear case moves. Add a power-off component map for a future physical build; a real moving robot is optional and separately commissioned.
- Architecture
- The diagram identifies sensor inputs, a decision function, normalized command outputs, and an end-of-command stop. The learner can trace one value through all four.
- Decisions and failure handling
- All six baseline mission cases have predicted and observed results. Invalid, missing, stale, and obstructed inputs result in zero command values, with the correct reason.
- Bounded behavior
- The oversize request test returns left 0.4, right -0.4, and seconds 0.4; the learner explains that these are simulation units. The 16 supplied checks pass.
- Experiment quality
- A repeatable seeded baseline, one changed variable, both outcomes, and a supported conclusion are recorded. An unchanged variable is named.
- Independent verification
- One AI or peer claim is accepted or corrected using a named function and a reproduced test, rather than the confidence of its wording.
- Honest physical plan
- The component map identifies facts still requiring instructor verification and makes no invented wiring, voltage, or stop guarantees. A stretch submission adds a new passing and failing scenario with justified expectations.
Portfolio badge: Robotics Architect
Use the rubric with a guardian or mentor and record your evidence in your builder notebook.
Build with care
- The starter imports no GPIO, camera, networking, or motor-control packages and issues no hardware commands. Its after_duration field is a simulated end state, not a measured physical stop.
- Unknown, invalid, and stale measurements stop the course simulation. The source robot does not consistently enforce this rule; do not substitute its controller for the starter.
- The 0.4 speed limit is a unitless simulation rule. It does not specify voltage or prove a PWM cap. The source parts notes claim a power-limiting behavior that current motor code does not enforce.
- Do not wire from historical GPIO diagrams: source notes disagree about sensor voltage and models, and some channels are disconnected or faulty. An adult verifies the exact hardware with an authoritative model-specific guide before powering it.
- Before a physical extension, the instructor verifies supply and motor compatibility, wiring with power off, healthy sensors, command bounds, and an independent stop/disconnect method. First motor checks are adult-led with wheels clear of the floor, followed by a bounded low-speed area away from stairs and people.
- No household camera footage or personal room maps are needed. Use invented room names and synthetic observations. Do not share public videos of children.
Inspired by our projects
- Sunflower / AIOS ThinkTank
- Our family's Raspberry Pi robot combines a camera, motors, distance sensors, and a decision-making server. Its build journals inspire these experiments. The course simulator teaches a conservative stop policy separately from the real robot's firmware.