Foreward
Book Summary - IoT & Robotics Term 1, 2 & 3 - Complete Notes & Assessment Tests
All Grade Levels - Weeks 1-8 Complete:
Preschoolers (4-6 years):
- Weeks 1-5: STEM basics, play corners, simple machines, unplugged coding
- Weeks 6-8: Technology awareness, sequencing & floor grid coding, advanced storytelling
- Hands-on assessments with observation rubrics
Grade 2-5 (7-11 years):
- Weeks 1-5: Scratch programming, Blockly games, interface mastery
- Weeks 6-8: Game development, text-based transition, logic puzzles
- Computer-based assessments with coding projects
Grade 6-9 (11-14 years):
- Weeks 1-5: Drone basics, safety rules, aviation principles, flight theory
- Weeks 6-8: Kenya drone laws (KCAA), emergency procedures, practical flying
- Written tests + practical flight demonstrations
Grade 10-12 (14-16 years):
- Weeks 1-5: Python basics, functions, loops, libraries, motor/sensor control
- Weeks 6-8: Advanced integration projects, professional presentations
- Major coding projects + technical presentations
Key Features:
Assessment Variety:
- Practical demonstrations for hands-on skills
- Coding challenges for programming concepts
- Written tests for theoretical knowledge
- Project presentations for communication skills
- Peer evaluations for collaboration
Professional Rubrics:
- Clear criteria for each skill level
- Age-appropriate expectations for each grade
- Progressive difficulty building through weeks
- Holistic evaluation including creativity and collaboration
Learning Progression:
- Scaffolded learning from basic to advanced concepts
- Cross-curricular connections to math, science, art
- Real-world applications relevant to students’ lives
- Career pathway awareness for future planning
Safety & Ethics:
- Comprehensive safety protocols for all activities
- Legal awareness (especially drone regulations)
- Responsible technology use emphasis
- Professional behavior standards
Practical Implementation:
- Detailed material lists for each activity
- Step-by-step instructions for complex projects
- Troubleshooting guides for common problems
- Extension activities for advanced learners
Assessment Rubric:
- Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
- Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
- Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
- Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
- Incomplete (Below 65%): Code doesn’t run or major portions missing
Additional Resources and Extensions
For All Grade Levels:
Vocabulary Glossary:
- Algorithm: Step-by-step instructions to solve a problem
- Bug: Error in code that prevents it from working correctly
- Debug: Process of finding and fixing errors in code
- Hardware: Physical components of computer systems
- Software: Programs and applications that run on hardware
- Interface: Way users interact with programs or devices
- Sensor: Device that detects changes in environment
- Actuator: Device that causes movement or action
Project Portfolio Suggestions:
- Weekly Reflection Journal: Students document learning and challenges
- Photo Documentation: Pictures of projects and experiments
- Video Demonstrations: Students explain their projects
- Peer Teaching: Advanced students help beginners
- Innovation Challenges: Open-ended problems to solve creatively
Cross-Curricular Connections:
- Math: Geometry in robotics, statistics in data analysis
- Science: Physics of flight, electronics principles
- Art: Creative programming projects, design thinking
- Social Studies: Impact of technology on society
- Language Arts: Technical writing, documentation skills
Safety Reminders:
- Always supervise young children with electronic components
- Check battery connections before powering devices
- Keep work area clean and organized
- Wash hands after handling electronic components
- Report any damaged equipment immediately
- Follow proper shutdown procedures for all devices
Assessment Portfolio Checklist:
- Completed weekly assessments
- Project documentation with photos
- Reflection essays on learning progress
- Peer evaluation forms
- Self-assessment rubrics
- Evidence of problem-solving process
- Creative extensions or improvements to basic projects
Notes
Comprehensive set of notes and assessment tests for Term 1, 2 & 3 across all grade levels (Preschoolers through Grade 10-12). The book includes:
What’s Included:
For Each Grade Level:
- Detailed weekly lesson notes covering weeks 1-8 content
- Key concepts and learning objectives for each topic
- Practical examples and code samples (for programming grades)
- Age-appropriate assessment tests with multiple formats
Assessment Formats:
- Preschoolers (4-6): Practical/observational assessments with hands-on activities
- Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
- Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
- Grade 10-12 (14-16): Coding assignments + hardware integration projects
Key Features:
- ✅ Covers all 8 weeks of Term 1 content
- ✅ Aligned with curriculum from the IoT & Robotics document
- ✅ Progressive difficulty appropriate for each age group
- ✅ Practical assessments that test real understanding
- ✅ Detailed rubrics for fair evaluation
- ✅ Extension activities for advanced learners
- ✅ Safety guidelines and best practices
Topics Covered:
- Preschoolers: STEM basics, simple machines, unplugged coding
- Grade 2-5: Scratch programming, Blockly games, interface navigation
- Grade 6-9: Drone basics, aviation principles, safety regulations
- Grade 10-12: Python programming, hardware control, sensor integration
Intro - Pre schoolers
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Preschoolers (4-6 Years)
Term 1: STEM Storytelling & Coding Toys
Week 1: Introduction to STEM
Learning Objectives:
- Understand basic concepts of STEM (Science, Technology, Engineering, Math)
- Spark excitement and curiosity about STEM through hands-on activities
- Foster teamwork through group experiments
- Develop early thinking through guided play and experimentation
Key Concepts:
- Science: Learning about the world around us through observation
- Technology: Simple tools and devices that help us
- Engineering: Building and creating solutions
- Mathematics: Numbers, shapes, and patterns in everyday life
Activities:
- Floating vs. Sinking experiments with various objects
- Basic robot interaction and exploration
- STEM vocabulary building games
- Classification activities
Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet
Assessment Test - Preschoolers (4-6 Years)
Week 1-2 Assessment: STEM Basics
Format: Practical/Observational Assessment
- Floating or Sinking? (Show child various objects)
- Point to objects that will float: feather, cork, plastic toy
- Point to objects that will sink: stone, coin, marble
- Explain why you think so (in simple words)
- STEM Matching (Picture cards)
- Match the scientist to the magnifying glass
- Match the engineer to the building blocks
- Match the mathematician to the numbers
- Match the technologist to the computer
- Following Instructions
- Can follow 2-step instructions: “Pick up the red block and put it in the box”
- Can give simple instructions to a friend
- Can arrange objects in order (biggest to smallest)
Assessment Rubric:
- Exceeding (3): Completes all tasks independently with explanation
- Meeting (2): Completes most tasks with minimal guidance
- Approaching (1): Attempts tasks with significant support
- Beginning (0): Needs extensive help to participate
Preschoolers (4-6 Years)
Week 2: STEM Play Corners
Learning Objectives:
- Explore different STEM areas through play stations
- Develop fine motor skills through hands-on manipulation
- Practice problem-solving through guided discovery
- Build confidence in exploring new concepts
Key Concepts:
- Play-based learning: Learning through exploration and fun
- Spatial awareness: Understanding shapes, sizes, and positions
- Cause and effect: Understanding that actions have results
- Collaboration: Working together to solve problems
Assessment Test - Preschoolers (4-6 Years)
Week 1-2 Assessment: STEM Basics
Format: Practical/Observational Assessment
- Floating or Sinking? (Show child various objects)
- Point to objects that will float: feather, cork, plastic toy
- Point to objects that will sink: stone, coin, marble
- Explain why you think so (in simple words)
- STEM Matching (Picture cards)
- Match the scientist to the magnifying glass
- Match the engineer to the building blocks
- Match the mathematician to the numbers
- Match the technologist to the computer
- Following Instructions
- Can follow 2-step instructions: “Pick up the red block and put it in the box”
- Can give simple instructions to a friend
- Can arrange objects in order (biggest to smallest)
Assessment Rubric:
- Exceeding (3): Completes all tasks independently with explanation
- Meeting (2): Completes most tasks with minimal guidance
- Approaching (1): Attempts tasks with significant support
- Beginning (0): Needs extensive help to participate
Week 3: Simple Machines & Environmental Science
Learning Objectives:
- Identify simple machines in everyday life
- Understand basic environmental concepts
- Develop observation skills
- Connect STEM to the natural world
Key Concepts:
- Simple Machines: Lever, pulley, wheel, ramp
- Environment: Plants, animals, weather, seasons
- Observation: Using our senses to learn
- Nature patterns: Recognizing patterns in nature
Week 3-4 Assessment: Simple Machines & Coding
Format: Hands-on Demonstration
- Simple Machines Hunt
- Find the lever (seesaw, scissors)
- Find the wheel (bicycle, toy car)
- Find the ramp (slide, wedge)
- Explain what each machine helps us do
- Nature Observation
- Draw or point to living things vs. non-living things
- Identify basic shapes in nature (circles in flowers, triangles in mountains)
- Name things that grow vs. things that are made
- Unplugged Coding Challenge
- Arrange sequence cards to show morning routine
- Give directions to help friend reach the treasure
- Complete a simple pattern with blocks or shapes
Week 4: Unplugged Coding
Learning Objectives:
- Introduction to coding concepts without computers
- Understand sequence and order
- Develop logical thinking
- Practice following and giving instructions
Key Concepts:
- Sequence: Steps in order
- Instructions: Clear directions to follow
- Algorithms: Step-by-step solutions
- Patterns: Recognizing and creating patterns
Week 3-4 Assessment: Simple Machines & Coding
Format: Hands-on Demonstration
- Simple Machines Hunt
- Find the lever (seesaw, scissors)
- Find the wheel (bicycle, toy car)
- Find the ramp (slide, wedge)
- Explain what each machine helps us do
- Nature Observation
- Draw or point to living things vs. non-living things
- Identify basic shapes in nature (circles in flowers, triangles in mountains)
- Name things that grow vs. things that are made
- Unplugged Coding Challenge
- Arrange sequence cards to show morning routine
- Give directions to help friend reach the treasure
- Complete a simple pattern with blocks or shapes
Assessment Test
Preschoolers (4-6 Years) - Weeks 6-8
Advanced STEM Exploration & Technology Awareness
Week 6: Technology Parts Awareness
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically be able to follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Technology Components: Basic parts that make devices work
- Circuits: Paths that electricity follows
- Assembly/Disassembly: Taking apart and putting together
- Electronics Safety: Safe handling of batteries and components
- Problem-Solving: Trying different solutions when something doesn’t work
Activities:
- Technology Exploration: Examine old keyboards, phones, calculators
- Simple Circuits: Connect bulbs to batteries with safe materials
- Assembly Practice: Take apart and reassemble simple toys
- Tech Parts Sorting: Group similar technology components
Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors
Preschoolers Assessment - Weeks 6-8
Week 6 Assessment: Technology Awareness
Format: Hands-on Exploration + Observation (20 minutes)
- Technology Parts Recognition (10 points)
- Point to and name 3 technology items from the collection
- Show how a simple circuit works (bulb + battery)
- Safely handle electronic components
- Explain one thing each item helps us do
- Assembly Skills (10 points)
- Take apart a simple toy or device
- Put it back together correctly
- Identify which parts go where
- Ask for help when needed
Assessment Criteria:
- Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
- Developing (2): Safe handling, completes most tasks with minimal help
- Emerging (1): Needs guidance but participates actively
- Beginning (0): Requires extensive support
Week 7: Sequencing & Floor Grid Coding
Learning Objectives:
- Develop understanding of sequencing by arranging steps in correct order
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence through trial-and-error learning
Key Concepts:
- Sequencing: Putting steps in the right order
- Algorithm Cards: Visual instructions to follow
- Floor Grid Coding: Moving through spaces following directions
- Left/Right/Forward/Back: Basic directional concepts
- Trial and Error: Learning by trying and improving
Activities:
- Obstacle Course Coding: Navigate through simple obstacles using arrow cards
- Sequencing Games: Put daily routine cards in correct order
- Paper Maze Coding: Use arrows to show path through printed mazes
- Robot Friend: One child gives directions, another follows like a robot
Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets
Week 7-8 Assessment: Advanced Unplugged Coding
Format: Physical Coding Challenges (25 minutes)
- Sequencing Challenge (12 points)
- Arrange 6 direction cards to navigate through obstacle course
- Explain why each step comes in that order
- Successfully complete the physical navigation
- Fix mistakes when path doesn’t work
- IF/THEN Logic (8 points)
- Follow conditional instructions: “IF you see blue, THEN hop”
- Create own IF/THEN rule for a friend to follow
- Demonstrate understanding with actions
- Story Algorithm (10 points)
- Use 5 picture cards to create logical story sequence
- Tell story following the card order
- Explain what happens if cards are mixed up
- Help fix a mixed-up story sequence
Practical Skills Rubric:
- Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
- Proficient (20-24 points): Completes all challenges correctly with minor guidance
- Developing (15-19 points): Understands concepts but needs support for complex tasks
- Beginning (Below 15 points): Requires significant help to participate
Week 8: Advanced Unplugged Coding & Storytelling
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
- Debugging: Finding and fixing mistakes in directions
- Block Building: Using physical blocks to represent code
- Story Algorithms: Step-by-step instructions for telling stories
Activities:
- Debug the Path: Present incorrect direction sequences for children to fix
- IF/THEN Games: “If you see a triangle, then clap your hands”
- Story Coding: Use picture cards to create step-by-step stories
- Block Code Building: Stack blocks to represent programming sequences
Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling
Assessment Test
IoT & Robotics Term 1 - Complete Notes & Assessment Tests
Table of Contents
- Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
- Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
- Grade 6-9 (11-14 Years) - Drone Aviation Introduction
- Grade 10-12 (14-16 Years) - Python Basics
Preschoolers (4-6 Years)
Term 1: STEM Storytelling & Coding Toys
Week 1: Introduction to STEM
Learning Objectives:
- Understand basic concepts of STEM (Science, Technology, Engineering, Math)
- Spark excitement and curiosity about STEM through hands-on activities
- Foster teamwork through group experiments
- Develop early thinking through guided play and experimentation
Key Concepts:
- Science: Learning about the world around us through observation
- Technology: Simple tools and devices that help us
- Engineering: Building and creating solutions
- Mathematics: Numbers, shapes, and patterns in everyday life
Activities:
- Floating vs. Sinking experiments with various objects
- Basic robot interaction and exploration
- STEM vocabulary building games
- Classification activities
Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet
Week 2: STEM Play Corners
Learning Objectives:
- Explore different STEM areas through play stations
- Develop fine motor skills through hands-on manipulation
- Practice problem-solving through guided discovery
- Build confidence in exploring new concepts
Key Concepts:
- Play-based learning: Learning through exploration and fun
- Spatial awareness: Understanding shapes, sizes, and positions
- Cause and effect: Understanding that actions have results
- Collaboration: Working together to solve problems
Week 3: Simple Machines & Environmental Science
Learning Objectives:
- Identify simple machines in everyday life
- Understand basic environmental concepts
- Develop observation skills
- Connect STEM to the natural world
Key Concepts:
- Simple Machines: Lever, pulley, wheel, ramp
- Environment: Plants, animals, weather, seasons
- Observation: Using our senses to learn
- Nature patterns: Recognizing patterns in nature
Week 4: Unplugged Coding
Learning Objectives:
- Introduction to coding concepts without computers
- Understand sequence and order
- Develop logical thinking
- Practice following and giving instructions
Key Concepts:
- Sequence: Steps in order
- Instructions: Clear directions to follow
- Algorithms: Step-by-step solutions
- Patterns: Recognizing and creating patterns
Assessment Test - Preschoolers (4-6 Years)
Week 1-2 Assessment: STEM Basics
Format: Practical/Observational Assessment
- Floating or Sinking? (Show child various objects)
- Point to objects that will float: feather, cork, plastic toy
- Point to objects that will sink: stone, coin, marble
- Explain why you think so (in simple words)
- STEM Matching (Picture cards)
- Match the scientist to the magnifying glass
- Match the engineer to the building blocks
- Match the mathematician to the numbers
- Match the technologist to the computer
- Following Instructions
- Can follow 2-step instructions: “Pick up the red block and put it in the box”
- Can give simple instructions to a friend
- Can arrange objects in order (biggest to smallest)
Assessment Rubric:
- Exceeding (3): Completes all tasks independently with explanation
- Meeting (2): Completes most tasks with minimal guidance
- Approaching (1): Attempts tasks with significant support
- Beginning (0): Needs extensive help to participate
Week 3-4 Assessment: Simple Machines & Coding
Format: Hands-on Demonstration
- Simple Machines Hunt
- Find the lever (seesaw, scissors)
- Find the wheel (bicycle, toy car)
- Find the ramp (slide, wedge)
- Explain what each machine helps us do
- Nature Observation
- Draw or point to living things vs. non-living things
- Identify basic shapes in nature (circles in flowers, triangles in mountains)
- Name things that grow vs. things that are made
- Unplugged Coding Challenge
- Arrange sequence cards to show morning routine
- Give directions to help friend reach the treasure
- Complete a simple pattern with blocks or shapes
Grade 2-5 (7-11 Years)
Term 1: Scratch & Blockly Programming
Week 1: Introduction to Programming
Learning Objectives:
- Understand what programming is
- Learn about Scratch programming environment
- Install and explore Scratch interface
- Grasp the concept of sequencing
Key Concepts:
- Programming: Giving instructions to computers
- Scratch: Visual programming language using blocks
- Interface: The screen where we work with Scratch
- Sequencing: Putting commands in the right order
- Sprites: Characters in Scratch programs
- Stage: Where Scratch programs run
Core Activities:
- Explore Scratch interface and tools
- Identify different areas (sprite area, blocks palette, stage)
- Learn about different block categories (Motion, Looks, Sound, etc.)
- Create first simple animation
Week 2: Understanding Scratch Interface
Learning Objectives:
- Navigate Scratch interface confidently
- Understand different block categories
- Create basic sprite movements
- Save and load projects
Key Concepts:
- Blocks Palette: Where programming blocks are stored
- Scripts Area: Where we build our programs
- Motion Blocks: Make sprites move
- Looks Blocks: Change sprite appearance
- Events: What starts our programs running
Week 3: Setting Up Scratch Projects
Learning Objectives:
- Plan and organize Scratch projects
- Understand project structure
- Use backgrounds and sprites effectively
- Practice debugging simple problems
Key Concepts:
- Project Planning: Thinking before coding
- Backgrounds: Scenes for our programs
- Sprite Library: Ready-made characters
- Debugging: Finding and fixing problems
Week 4: Introduction to Blockly
Learning Objectives:
- Understand Blockly visual programming
- Compare Blockly with Scratch
- Complete basic Blockly puzzles
- Transfer concepts between platforms
Key Concepts:
- Blockly: Another visual programming language
- Puzzle-based Learning: Learning through solving challenges
- Logic Blocks: Making decisions in programs
- Loops: Repeating actions
Week 5: Blockly Games for Scratch Programmers
Learning Objectives:
- Apply Scratch knowledge to Blockly games
- Solve increasingly complex puzzles
- Understand programming logic and flow
- Build problem-solving confidence
Key Concepts:
- Game Logic: Rules that make games work
- Progressive Difficulty: Challenges that get harder
- Pattern Recognition: Seeing repeated solutions
- Persistence: Keep trying when challenges are difficult
Assessment Test - Grade 2-5 (7-11 Years)
Week 1-3 Assessment: Scratch Fundamentals
Format: Practical Computer Assessment (30 minutes)
Part A: Interface Knowledge (10 points)
- Label the parts of Scratch interface:
- Blocks Palette
- Scripts Area
- Stage
- Sprite Area
- Match the block colors to their functions:
- Motion blocks: _____ (Blue)
- Looks blocks: _____ (Purple)
- Sound blocks: _____ (Pink)
- Events blocks: _____ (Yellow)
Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:
-
Move 10 steps forward
-
Turn 90 degrees right
-
Say “Hello” for 2 seconds
-
Change color
- Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]
Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?
-
Missing “when green flag clicked” block
-
Sprite is already at the edge
-
Motion blocks aren’t connected
-
All of the above
- Create a simple animation showing a cat walking across the stage.
Week 4-5 Assessment: Blockly & Problem Solving
Format: Computer-based Blockly Challenges (25 minutes)
Part A: Blockly Basics (8 points)
- Complete the “Move Forward” puzzle in Blockly
- Complete the “Turn Left/Right” puzzle
- Complete the “Repeat Loop” puzzle
- Complete the “If/Else” puzzle
Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:
Repeat 4 times:
Move forward
Turn right 90 degrees
Answer: _________________
- Write Blockly code to make a character:
- Move forward 3 steps
- Turn left if path is blocked
- Repeat until reaching goal
Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:
- Create a Scratch program that does the same thing as this Blockly code:
When started: Repeat 5 times: Move forward 20 steps Wait 1 second
Assessment Rubric:
- Advanced (90-100%): Completes all tasks efficiently with creative additions
- Proficient (80-89%): Completes most tasks correctly with minor errors
- Developing (70-79%): Completes basic tasks but struggles with complex problems
- Beginning (Below 70%): Needs significant support to complete tasks
Grade 6-9 (11-14 Years)
Term 1: Drone Aviation Introduction
Week 1: Introduction to Drones and Aviation Basics
Learning Objectives:
- Understand what drones are and their applications
- Learn basic aviation principles
- Identify different types of aircraft
- Understand the evolution of flight
Key Concepts:
- Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
- Remote Pilot: Person controlling the drone from the ground
- Autonomous Flight: Drones flying with minimal human control
- Commercial vs. Recreational Use: Different purposes for drones
- Four Forces of Flight: Lift, Weight, Thrust, Drag
- Aerodynamics: How air moves around objects in flight
Applications of Drones:
- Photography and videography
- Search and rescue operations
- Agriculture monitoring
- Package delivery
- Scientific research
- Military operations
Week 2: Drone Safety Rules and Best Practices
Learning Objectives:
- Learn essential drone safety protocols
- Understand pre-flight checklist procedures
- Identify potential hazards and risks
- Develop responsible drone operation habits
Key Concepts:
- Pre-flight Inspection: Checking drone condition before flying
- Weather Conditions: How weather affects drone flight
- Battery Safety: Proper battery handling and storage
- Emergency Procedures: What to do when things go wrong
- Situational Awareness: Being aware of surroundings while flying
Safety Rules:
- Always maintain visual contact with drone
- Check weather conditions before flying
- Inspect drone and equipment before each flight
- Fly in open areas away from people and property
- Never fly above 400 feet
- Respect others’ privacy
- Land immediately if drone malfunctions
Week 3: FAA/UAS Regulations (Basic Overview)
Learning Objectives:
- Understand basic aviation regulations
- Learn about no-fly zones and restricted airspace
- Understand registration requirements
- Learn about pilot certification basics
Key Concepts:
- Federal Aviation Administration (FAA): Government agency regulating aviation
- Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
- No-Fly Zones: Areas where drone flight is prohibited
- Remote Pilot Certificate: License required for commercial drone operations
- Registration: Required identification for drones over 0.55 pounds
Basic Regulations:
- Drones must be registered if over 0.55 lbs (250 grams)
- Maximum altitude: 400 feet above ground level
- Must yield right-of-way to manned aircraft
- No flying over groups of people
- No flying at night without special certification
- Respect airport operational areas (usually 5-mile radius)
Week 4: Key Drone Types & Components
Learning Objectives:
- Identify different drone configurations
- Understand key drone components and their functions
- Compare advantages and disadvantages of different designs
- Learn basic maintenance requirements
Key Concepts:
- Multirotor: Drones with multiple rotating propellers
- Fixed-wing: Airplane-like drones with wings
- Hybrid VTOL: Vertical takeoff and landing with forward flight capability
- Frame: Main structure holding all components
- Flight Controller: Computer controlling drone flight
- ESC (Electronic Speed Controller): Controls motor speed
- Gimbal: Stabilizes camera during flight
Drone Types:
- Quadcopter: 4 rotors, most common configuration
- Hexacopter: 6 rotors, more redundancy and payload capacity
- Octocopter: 8 rotors, highest redundancy and capacity
- Fixed-wing: Longer flight times, faster speeds
- Racing drones: Small, fast, agile for competitive flying
Week 5: Basic Principles of Flight
Learning Objectives:
- Understand the four forces of flight in detail
- Learn how drones achieve controlled flight
- Understand stability and control concepts
- Explore flight dynamics and physics
Key Concepts:
- Lift: Upward force generated by rotors or wings
- Weight (Gravity): Downward force pulling drone toward earth
- Thrust: Forward force propelling drone through air
- Drag: Resistance force opposing motion through air
- Center of Gravity: Balance point of drone
- Pitch, Roll, Yaw: Three axes of rotation
- Gyroscopic Effect: How spinning rotors affect stability
Flight Control:
- Throttle: Controls altitude (up/down)
- Pitch: Controls forward/backward movement
- Roll: Controls left/right movement
- Yaw: Controls rotation (turning left/right)
- Trim: Fine adjustments for balanced flight
Assessment Test - Grade 6-9 (11-14 Years)
Week 1-2 Assessment: Drone Basics and Safety
Format: Written Test + Practical Safety Demonstration (45 minutes)
Part A: Multiple Choice (20 points)
-
What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle
-
Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight
-
What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera
-
The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet
-
What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors
Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)
- Explain three commercial applications of drones: (9 points)
- Why is it important to maintain visual contact with your drone during flight? (6 points)
Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures
Week 3-5 Assessment: Regulations and Flight Principles
Format: Written Test + Flight Theory Application (50 minutes)
Part A: Regulations Knowledge (20 points)
- True/False (10 points)
- Drones under 0.55 lbs need to be registered: ___
- You can fly your drone anywhere as long as it’s daytime: ___
- Commercial drone operations require a Remote Pilot Certificate: ___
- Drones must always yield to manned aircraft: ___
- Flying over groups of people is allowed with permission: ___
- What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:
Part B: Drone Components (15 points) 3. Match the component to its function:
-
Flight Controller: _____ a) Provides power to motors
-
ESC: _____ b) Stabilizes camera
-
Gimbal: _____ c) Main structural support
-
Frame: _____ d) Controls drone flight
-
Battery: _____ e) Controls motor speed
- Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)
Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)
- Explain how a drone moves in each direction: (13 points)
- Forward: ________________________________
- Backward: ________________________________
- Left: ________________________________
- Right: ________________________________
- Up: ________________________________
- Rotate left: ________________________________
Assessment Rubric:
- Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
- Proficient (80-89%): Shows solid grasp of concepts with minor gaps
- Developing (70-79%): Understands basic concepts but lacks detail in complex areas
- Novice (Below 70%): Limited understanding, needs additional instruction
Grade 10-12 (14-16 Years)
Term 1: Introduction to Python Basics
Week 1: Writing Structured Python Code
Learning Objectives:
- Understand Python syntax and structure
- Learn proper code formatting and indentation
- Write clean, readable code following best practices
- Understand variables, data types, and basic operations
Key Concepts:
- Python: High-level programming language
- Syntax: Rules for writing Python code
- Indentation: Using spaces to organize code structure
- Variables: Named storage for data values
- Data Types: int, float, string, boolean
- Comments: Documentation within code using #
- Print Statement: Displaying output to screen
Code Structure Best Practices:
# Header comment explaining the program
# Author: Your Name
# Date: Today's Date
# Import statements
import module_name
# Constants (UPPERCASE naming)
MAX_VALUE = 100
# Main program logic
def main():
# Variable declarations
user_name = "Student"
age = 16
# Program logic with proper indentation
print(f"Hello, {user_name}!")
print(f"You are {age} years old.")
# Run the program
if __name__ == "__main__":
main()
Week 2: Functions and Loops
Learning Objectives:
- Create and use custom functions
- Understand function parameters and return values
- Implement for loops and while loops
- Apply loops to solve repetitive tasks
Key Concepts:
- Function: Reusable block of code that performs a specific task
- Parameters: Input values passed to functions
- Return Value: Output value from a function
- For Loop: Repeats code a specific number of times
- While Loop: Repeats code while a condition is true
- Range Function: Generates sequences of numbers
- Iteration: Each repetition of a loop
- Loop Control: Managing when loops start and stop
Function Examples:
# Simple function with no parameters
def greet():
print("Hello, World!")
# Function with parameters
def greet_person(name, age):
print(f"Hello, {name}! You are {age} years old.")
# Function with return value
def calculate_area(length, width):
area = length * width
return area
# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")
Loop Examples:
# For loop with range
for i in range(5):
print(f"Count: {i}")
# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(f"I like {fruit}")
# While loop
count = 0
while count < 3:
print(f"While loop count: {count}")
count += 1
Week 3: Using Python Libraries
Learning Objectives:
- Understand what Python libraries are and why they’re useful
- Learn to import and use common libraries
- Work with GPIOZero and time libraries
- Explore library documentation and help systems
Key Concepts:
- Library/Module: Pre-written code that adds functionality
- Import Statement: Bringing library functions into your program
- GPIOZero: Library for controlling Raspberry Pi GPIO pins
- Time Library: Functions for working with time and delays
- Documentation: Instructions for using library functions
- API: Application Programming Interface - how to use library functions
Library Usage Examples:
# Importing entire modules
import time
import math
# Importing specific functions
from gpiozero import LED, Button
from time import sleep
# Using time library
print("Starting program...")
time.sleep(2) # Wait 2 seconds
print("2 seconds have passed!")
# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")
# Using GPIOZero (for Raspberry Pi)
led = LED(18) # LED connected to GPIO pin 18
button = Button(2) # Button connected to GPIO pin 2
# Turn LED on and off
led.on()
sleep(1)
led.off()
Week 4: Controlling Motors with Python
Learning Objectives:
- Understand how to interface with motors using Python
- Learn about PWM (Pulse Width Modulation) for motor control
- Control motor speed and direction
- Implement safety features in motor control code
Key Concepts:
- Motor Control: Using code to make motors move
- PWM (Pulse Width Modulation): Method to control motor speed
- Duty Cycle: Percentage of time signal is “on” vs “off”
- Direction Control: Making motors spin clockwise/counterclockwise
- Motor Driver: Electronics that interface between Python and motors
- Safety Features: Code to prevent motor damage
Motor Control Examples:
from gpiozero import Motor, PWMOutputDevice
from time import sleep
# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)
# Basic motor control
def basic_motor_test():
print("Motor forward at full speed")
motor.forward(1.0) # Full speed forward
sleep(2)
print("Motor forward at half speed")
motor.forward(0.5) # Half speed forward
sleep(2)
print("Motor stopped")
motor.stop()
sleep(1)
print("Motor backward at full speed")
motor.backward(1.0) # Full speed backward
sleep(2)
motor.stop()
print("Motor test complete")
# PWM speed control example
def speed_ramp_test():
print("Ramping motor speed up...")
for speed in range(0, 101, 10): # 0 to 100% in 10% steps
motor_speed = speed / 100.0
motor.forward(motor_speed)
print(f"Speed: {speed}%")
sleep(0.5)
motor.stop()
print("Speed ramp complete")
# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()
Week 5: Controlling Sensors with Python
Learning Objectives:
- Interface with various sensors using Python
- Read and process sensor data
- Implement sensor-based decision making
- Create responsive programs based on sensor input
Key Concepts:
- Sensor: Device that detects and measures physical properties
- Analog vs Digital: Different types of sensor signals
- ADC (Analog-to-Digital Converter): Converts analog signals to digital
- Sensor Calibration: Adjusting sensor readings for accuracy
- Data Processing: Converting raw sensor data to useful information
- Polling vs Interrupts: Different ways to read sensor data
Common Sensors:
- Temperature sensors: Measure environmental temperature
- Light sensors (LDR): Detect light intensity
- Ultrasonic sensors: Measure distance using sound waves
- Motion sensors (PIR): Detect movement
- Pressure sensors: Measure force or pressure
Sensor Control Examples:
from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics
# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)
def read_temperature():
# Convert voltage to temperature (example conversion)
voltage = temp_sensor.voltage
temperature_c = (voltage - 0.5) * 100 # Example conversion formula
temperature_f = (temperature_c * 9/5) + 32
return temperature_c, temperature_f
# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)
def monitor_distance():
print("Distance monitoring (press Ctrl+C to stop)")
try:
while True:
distance = distance_sensor.distance * 100 # Convert to cm
print(f"Distance: {distance:.1f} cm")
if distance < 10:
print("WARNING: Object too close!")
sleep(0.5)
except KeyboardInterrupt:
print("Distance monitoring stopped")
# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)
def motion_detector():
print("Motion detector active...")
def motion_detected():
print("Motion detected!")
alert_led.on()
sleep(2)
alert_led.off()
def no_motion():
print("No motion")
alert_led.off()
# Set up motion sensor callbacks
motion.when_motion = motion_detected
motion.when_no_motion = no_motion
# Keep program running
try:
while True:
sleep(0.1)
except KeyboardInterrupt:
print("Motion detector stopped")
# Data logging example
def log_sensor_data():
readings = []
print("Collecting sensor data for 30 seconds...")
start_time = time.time()
while time.time() - start_time < 30:
temp_c, temp_f = read_temperature()
distance = distance_sensor.distance * 100
readings.append({
'timestamp': time.time(),
'temperature_c': temp_c,
'temperature_f': temp_f,
'distance_cm': distance
})
print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
sleep(1)
# Calculate statistics
temps = [r['temperature_c'] for r in readings]
distances = [r['distance_cm'] for r in readings]
print(f"\nData Summary:")
print(f"Average temperature: {statistics.mean(temps):.1f}°C")
print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
print(f"Average distance: {statistics.mean(distances):.1f}cm")
print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")
# Example usage
if __name__ == "__main__":
# Run different examples
monitor_distance() # Uncomment to run distance monitoring
# motion_detector() # Uncomment to run motion detection
# log_sensor_data() # Uncomment to run data logging
Assessment Test - Grade 10-12 (14-16 Years)
Week 1-2 Assessment: Python Fundamentals
Format: Coding Assignment + Written Questions (60 minutes)
Part A: Code Structure and Syntax (25 points)
- Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average
calculate average(10, 20, 30)
Your corrected code:
# Write corrected version here
Explanation of errors: ________________________________
- Write a well-structured Python program (15 points): Create a program that:
- Has proper header comments
- Uses appropriate variable names
- Calculates the area of different shapes (circle, rectangle, triangle)
- Uses functions with parameters and return values
- Follows proper indentation and formatting
Part B: Functions and Loops (30 points)
- Write a function called
print_multiplication_table(15 points):
- Takes one parameter:
number - Prints multiplication table for that number (1-10)
- Uses a for loop
- Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
- Password Checker Program (15 points): Write a program using while loop that:
- Asks user to enter a password
- Keeps asking until they enter “python123”
- Counts number of attempts
- Prints “Access granted” when correct
- Prints number of attempts it took
Week 3-5 Assessment: Libraries and Hardware Control
Format: Practical Coding Project (75 minutes)
Part A: Library Usage (20 points)
- Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______ # What library do you need for calculating average?
# Create sensor object
light_sensor = MCP3008(channel=0)
def read_light_levels():
readings = []
# Collect 10 readings
for i in range(______): # Fill in the range
reading = light_sensor.______ # What property gives the reading?
readings.append(reading)
print(f"Reading {i+1}: {reading:.3f}")
sleep(0.5)
# Calculate and print statistics
average = ______.mean(readings) # Which function calculates mean?
maximum = ______(readings) # Built-in function for maximum
minimum = ______(readings) # Built-in function for minimum
print(f"Average: {average:.3f}")
print(f"Maximum: {maximum:.3f}")
print(f"Minimum: {minimum:.3f}")
# Call the function
read_light_levels()
Part B: Motor Control Project (25 points)
- Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
- Use a temperature sensor to read room temperature
- Control a motor (fan) based on temperature:
- Below 20°C: Fan off
- 20-25°C: Fan at 30% speed
- 25-30°C: Fan at 60% speed
- Above 30°C: Fan at 100% speed
- Print current temperature and fan speed every 2 seconds
- Include safety features (motor stop function)
Part C: Sensor Integration Challenge (30 points)
- Security System Prototype (30 points): Create a basic security system that:
- Uses a motion sensor to detect movement
- Uses a distance sensor to detect objects too close
- Controls LEDs to indicate system status:
- Green LED: System normal
- Yellow LED: Motion detected
- Red LED: Intrusion alert (object < 20cm)
- Logs events with timestamps
- Runs continuously until user presses Ctrl+C
Requirements:
- Use at least 3 different libraries
- Include proper error handling
- Use functions to organize code
- Add meaningful comments
- Follow Python coding best practices
Sample code structure:
from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time
# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)
def log_event(message):
# Write function to log events with timestamp
pass
def check_security():
# Write function to check all sensors and control LEDs
pass
def main():
# Write main program loop
pass
if __name__ == "__main__":
main()
Assessment Rubric:
- Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
- Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
- Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
- Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
- Incomplete (Below 65%): Code doesn’t run or major portions missing
Additional Resources and Extensions
For All Grade Levels:
Vocabulary Glossary:
- Algorithm: Step-by-step instructions to solve a problem
- Bug: Error in code that prevents it from working correctly
- Debug: Process of finding and fixing errors in code
- Hardware: Physical components of computer systems
- Software: Programs and applications that run on hardware
- Interface: Way users interact with programs or devices
- Sensor: Device that detects changes in environment
- Actuator: Device that causes movement or action
Project Portfolio Suggestions:
- Weekly Reflection Journal: Students document learning and challenges
- Photo Documentation: Pictures of projects and experiments
- Video Demonstrations: Students explain their projects
- Peer Teaching: Advanced students help beginners
- Innovation Challenges: Open-ended problems to solve creatively
Cross-Curricular Connections:
- Math: Geometry in robotics, statistics in data analysis
- Science: Physics of flight, electronics principles
- Art: Creative programming projects, design thinking
- Social Studies: Impact of technology on society
- Language Arts: Technical writing, documentation skills
Safety Reminders:
- Always supervise young children with electronic components
- Check battery connections before powering devices
- Keep work area clean and organized
- Wash hands after handling electronic components
- Report any damaged equipment immediately
- Follow proper shutdown procedures for all devices
Assessment Portfolio Checklist:
- Completed weekly assessments
- Project documentation with photos
- Reflection essays on learning progress
- Peer evaluation forms
- Self-assessment rubrics
- Evidence of problem-solving process
- Creative extensions or improvements to basic projects
Continuation - Weeks 6-8 for All Grade Levels
Preschoolers (4-6 Years) - Weeks 6-8
Advanced STEM Exploration & Technology Awareness
Week 6: Technology Parts Awareness
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically be able to follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Technology Components: Basic parts that make devices work
- Circuits: Paths that electricity follows
- Assembly/Disassembly: Taking apart and putting together
- Electronics Safety: Safe handling of batteries and components
- Problem-Solving: Trying different solutions when something doesn’t work
Activities:
- Technology Exploration: Examine old keyboards, phones, calculators
- Simple Circuits: Connect bulbs to batteries with safe materials
- Assembly Practice: Take apart and reassemble simple toys
- Tech Parts Sorting: Group similar technology components
Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors
Week 7: Sequencing & Floor Grid Coding
Learning Objectives:
- Develop understanding of sequencing by arranging steps in correct order
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence through trial-and-error learning
Key Concepts:
- Sequencing: Putting steps in the right order
- Algorithm Cards: Visual instructions to follow
- Floor Grid Coding: Moving through spaces following directions
- Left/Right/Forward/Back: Basic directional concepts
- Trial and Error: Learning by trying and improving
Activities:
- Obstacle Course Coding: Navigate through simple obstacles using arrow cards
- Sequencing Games: Put daily routine cards in correct order
- Paper Maze Coding: Use arrows to show path through printed mazes
- Robot Friend: One child gives directions, another follows like a robot
Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets
Week 8: Advanced Unplugged Coding & Storytelling
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
- Debugging: Finding and fixing mistakes in directions
- Block Building: Using physical blocks to represent code
- Story Algorithms: Step-by-step instructions for telling stories
Activities:
- Debug the Path: Present incorrect direction sequences for children to fix
- IF/THEN Games: “If you see a triangle, then clap your hands”
- Story Coding: Use picture cards to create step-by-step stories
- Block Code Building: Stack blocks to represent programming sequences
Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling
Preschoolers Assessment - Weeks 6-8
Week 6 Assessment: Technology Awareness
Format: Hands-on Exploration + Observation (20 minutes)
- Technology Parts Recognition (10 points)
- Point to and name 3 technology items from the collection
- Show how a simple circuit works (bulb + battery)
- Safely handle electronic components
- Explain one thing each item helps us do
- Assembly Skills (10 points)
- Take apart a simple toy or device
- Put it back together correctly
- Identify which parts go where
- Ask for help when needed
Assessment Criteria:
- Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
- Developing (2): Safe handling, completes most tasks with minimal help
- Emerging (1): Needs guidance but participates actively
- Beginning (0): Requires extensive support
Week 7-8 Assessment: Advanced Unplugged Coding
Format: Physical Coding Challenges (25 minutes)
- Sequencing Challenge (12 points)
- Arrange 6 direction cards to navigate through obstacle course
- Explain why each step comes in that order
- Successfully complete the physical navigation
- Fix mistakes when path doesn’t work
- IF/THEN Logic (8 points)
- Follow conditional instructions: “IF you see blue, THEN hop”
- Create own IF/THEN rule for a friend to follow
- Demonstrate understanding with actions
- Story Algorithm (10 points)
- Use 5 picture cards to create logical story sequence
- Tell story following the card order
- Explain what happens if cards are mixed up
- Help fix a mixed-up story sequence
Practical Skills Rubric:
- Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
- Proficient (20-24 points): Completes all challenges correctly with minor guidance
- Developing (15-19 points): Understands concepts but needs support for complex tasks
- Beginning (Below 15 points): Requires significant help to participate
Grade 2-5 (7-11 Years) - Weeks 6-8
Advanced Scratch Programming & Game Development
Week 6: Game Structure and Design
Learning Objectives:
- Understand basic game structure (start, play, end)
- Use Scratch blocks to move characters and detect collisions
- Make characters move between different scenes
- Create scoring or win conditions
Key Concepts:
- Game Design Elements: Characters, backgrounds, objectives, rules
- Game Loop: Continuous cycle of input, processing, output
- Collision Detection: Knowing when sprites touch each other
- Scene Transitions: Moving between different game screens
- Win/Lose Conditions: Rules that determine game outcomes
- User Interface: Buttons, scores, and information displays
Advanced Scratch Concepts:
- Sensing Blocks: “touching color”, “distance to”, “key pressed”
- Variables: Storing score, lives, or time
- Broadcast Messages: Communication between sprites
- Clone Sprites: Creating multiple copies of objects
- Custom Blocks: Making your own programming blocks
Game Development Process:
- Planning Phase: Sketch game idea, list needed sprites and backgrounds
- Prototype: Create basic movement and interaction
- Enhancement: Add sounds, effects, and polish
- Testing: Play game and fix bugs
- Sharing: Present to classmates
Example Game Structure:
When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
If key space pressed:
Move player sprite
If touching enemy:
Change lives by -1
If lives = 0:
Say "Game Over!"
Stop all
Week 7: Transition to Text-Based Concepts
Learning Objectives:
- Prepare learners for text-based coding
- Understand basic programming concepts using blocks
- Use logic and loops to control sprite or robot actions
- Begin transition to robotics or advanced coding platforms
Key Concepts:
- Programming Fundamentals: Sequence, selection, iteration
- Logic Blocks: IF/ELSE statements in visual form
- Loop Types: Forever, repeat until, repeat X times
- Variables and Operations: Math in programming
- Event-Driven Programming: Responding to user input
- Modular Programming: Breaking code into smaller parts
Bridging Visual to Text:
- Block-to-Code Thinking: Understanding what blocks represent
- Pseudocode: Writing steps in plain English before coding
- Debugging Strategies: Systematic problem-solving approaches
- Code Organization: Keeping projects neat and logical
Advanced Programming Patterns:
// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
If game state = "menu":
Show menu options
If game state = "playing":
Run game logic
If game state = "game over":
Show final score
// Pattern 2: Object Behavior
When I start as a clone:
Go to random position
Forever:
Move 2 steps
If on edge, bounce
If touching player:
Change score by 10
Delete this clone
Week 8: Blockly Integration and Logic Puzzles
Learning Objectives:
- Solve logic puzzles using visual programming concepts
- Create games using Blockly platform
- Demonstrate understanding of programming fundamentals
- Apply creative problem-solving skills
Key Concepts:
- Blockly Platform: Google’s visual programming language
- Logic Puzzles: Problems requiring systematic thinking
- Algorithm Efficiency: Finding the best solution method
- Pattern Recognition: Identifying repeated solutions
- Creative Programming: Using code for artistic expression
Blockly vs. Scratch Comparison:
| Feature | Scratch | Blockly |
|---|---|---|
| Focus | Storytelling & Games | Logic & Algorithms |
| Interface | Stage-based | Puzzle-based |
| Output | Animated Projects | Problem Solutions |
| Progression | Creative Expression | Mathematical Thinking |
Logic Puzzle Types:
- Maze Solving: Navigate through obstacles
- Pattern Completion: Fill in missing sequences
- Conditional Logic: IF/THEN decision making
- Loop Optimization: Repeat actions efficiently
Grade 2-5 Assessment - Weeks 6-8
Week 6 Assessment: Game Development Project
Format: Scratch Game Creation + Presentation (45 minutes)
Part A: Game Planning (10 points)
- Game Design Document - Create a simple plan including:
- Game objective (what’s the goal?)
- Main character description
- Basic rules (how do you win/lose?)
- Required sprites and backgrounds
- Storyboard - Draw 3 screens showing:
- Game start screen
- Main gameplay
- Win/lose screen
Part B: Game Implementation (25 points) 3. Core Functionality (15 points):
-
Character moves with arrow keys or WASD
-
At least one interactive element (enemy, collectible, obstacle)
-
Basic collision detection (touching = something happens)
-
Clear win or lose condition
- Polish and Enhancement (10 points):
- Sound effects or music
- Visual feedback (score, lives, timer)
- Smooth sprite movement
- Creative backgrounds or costumes
Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):
-
Explain game rules clearly
-
Demonstrate gameplay for 2 minutes
-
Show different game scenarios
-
Handle questions from classmates
- Technical Reflection (5 points):
- Explain one challenging problem you solved
- Describe one improvement you would make
- Share one new Scratch skill you learned
Week 7-8 Assessment: Programming Concepts Mastery
Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)
Part A: Blockly Logic Challenges (20 points)
- Maze Navigation (8 points):
- Complete 3 increasingly difficult maze puzzles
- Use efficient solutions (minimal blocks)
- Demonstrate understanding of loops and conditionals
- Pattern Recognition (6 points):
- Solve sequence completion puzzles
- Identify and extend number/color patterns
- Create original pattern for others to solve
- Logic Puzzles (6 points):
- Complete IF/THEN decision trees
- Solve multi-step conditional problems
- Optimize solutions for clarity
Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:
[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]
Write in pseudocode (plain English): “When the program starts, ________________”
- Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”
Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________
Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:
Option A - Scratch: Create a “digital pet” that:
- Follows mouse cursor
- Changes expression when clicked
- Makes sound when hungry (timer-based)
- Has at least 3 different costumes
Option B - Blockly: Design a solution for:
- Robot that sorts colored objects
- Path that avoids all obstacles
- Pattern that creates art using loops
Assessment Rubric:
- Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
- Proficient (80-89%): Meets all requirements with good understanding demonstrated
- Developing (70-79%): Meets most requirements but may have gaps in complex concepts
- Novice (60-69%): Shows basic understanding but struggles with application
- Beginning (Below 60%): Needs significant support to demonstrate concepts
Grade 6-9 (11-14 Years) - Weeks 6-8
Drone Laws, Emergency Procedures & Practical Flying
Week 6: Drone Laws and Regulations (Kenya Focus)
Learning Objectives:
- Learn basic drone laws in Kenya (KCAA regulations)
- Understand where and how children can fly drones legally
- Develop awareness of responsible drone operation
- Understand the importance of aviation safety
Key Concepts:
- Kenya Civil Aviation Authority (KCAA): National aviation regulator
- Drone Registration: Required identification and documentation
- No-Fly Zones: Airports, government buildings, restricted areas
- Altitude Restrictions: Maximum height limitations
- Visual Line of Sight (VLOS): Maintaining visual contact
- Privacy Laws: Respecting others’ rights and property
Kenya Drone Regulations Summary:
- Registration Requirements:
- All drones over 250g must be registered with KCAA
- Operator license required for commercial operations
- Age restrictions for different categories of operation
- Operational Limits:
- Maximum altitude: 400 feet (120 meters) AGL
- Minimum distance from airports: 8km for major airports
- No flying over crowds or public events
- Daylight operations only (without special permits)
- Prohibited Areas:
- Within 5km of any airport
- Over government buildings and installations
- National parks without permits
- Private property without permission
Safety and Legal Guidelines for Young Pilots:
- Always have adult supervision
- Start with toy drones under 250g
- Practice in open, safe areas
- Respect others’ privacy and property
- Learn emergency procedures
- Keep drone in sight at all times
Week 7: Emergency Procedures and Responsible Flying
Learning Objectives:
- Review key safety and legal concepts from previous weeks
- Understand emergency basics for beginner flyers
- Develop decision-making skills for unexpected situations
- Practice responsible pilot behavior
Key Concepts:
- Emergency Procedures: Systematic responses to problems
- Risk Assessment: Evaluating dangers before flying
- Decision Making: Choosing appropriate actions under pressure
- Communication: Alerting others during emergencies
- Equipment Failure: What to do when drone malfunctions
- Weather Awareness: Recognizing dangerous conditions
Emergency Scenarios and Responses:
- Lost Communication with Drone:
- Stay calm and observe drone behavior
- Activate Return-to-Home (RTH) function if available
- Move to higher ground for better signal
- Prepare for manual landing if signal returns
- Never chase after a flyaway drone
- Low Battery Warning:
- Immediately begin landing sequence
- Choose nearest safe landing spot
- Avoid flying over people or property
- Land even if not at original takeoff point
- Safety is more important than convenience
- Unexpected Weather Changes:
- Monitor weather conditions constantly
- Land immediately if wind increases
- Avoid flying in rain or snow
- Watch for sudden temperature changes
- When in doubt, don’t fly
- Equipment Malfunction:
- Attempt controlled landing immediately
- Don’t try to fix problems while airborne
- Inform other people in the area
- Document the problem for later analysis
- Never continue flying with known issues
Mission Planning Process:
- Pre-flight Planning: Weather check, equipment inspection, route planning
- Risk Assessment: Identify potential hazards and mitigation strategies
- Communication Plan: Inform others of flight activities
- Emergency Procedures: Know what to do if things go wrong
- Post-flight Review: Analyze what went well and areas for improvement
Week 8: Practical Flying Skills and Team Challenges
Learning Objectives:
- Demonstrate ability to control a mini drone (takeoff, hover, land)
- Apply basic flight skills in problem-solving mission scenarios
- Work as a team to complete drone-based challenges
- Evaluate personal progress and set goals for improvement
Key Concepts:
- Flight Control Mastery: Smooth, precise drone movements
- Situational Awareness: Understanding surroundings during flight
- Mission Planning: Preparing for specific flight objectives
- Teamwork: Collaborative problem-solving with drones
- Performance Evaluation: Self-assessment and peer feedback
- Safety Leadership: Taking responsibility for safe operations
Basic Flight Skills Progression:
- Fundamental Controls:
- Smooth takeoff to hover
- Maintaining steady hover
- Controlled landing
- Forward/backward movement
- Left/right movement
- Rotation control
- Intermediate Maneuvers:
- Figure-8 patterns
- Precision landing on target
- Obstacle avoidance
- Following predetermined paths
- Coordinated movements
- Advanced Challenges:
- Team relay races
- Rescue simulations
- Precision delivery tasks
- Group choreography
- Time-based challenges
Mission Scenarios:
Mission 1: Search and Rescue
- Objective: Locate “missing person” (target) in designated area
- Skills: Systematic search patterns, communication, observation
- Time limit: 5 minutes
- Success criteria: Target identified and location communicated
Mission 2: Delivery Challenge
- Objective: Transport small payload from Point A to Point B
- Skills: Precision flying, cargo management, safe landing
- Obstacles: Wind conditions, landing accuracy requirements
- Success criteria: Payload delivered undamaged within time limit
Mission 3: Team Coordination
- Objective: Multiple drones work together to complete complex task
- Skills: Communication, timing, spatial awareness
- Challenge: Choreographed flight pattern or group problem-solving
- Success criteria: All drones complete task without collisions
Safety Protocols for Practical Flying:
- Always maintain 10-foot safety zone around flying area
- Designate specific roles: pilot, observer, safety officer
- Use hand signals for communication during loud operations
- Practice emergency landing procedures before each session
- Rotate roles so everyone experiences different responsibilities
Grade 6-9 Assessment - Weeks 6-8
Week 6 Assessment: Drone Laws and Regulations
Format: Written Test + Legal Scenario Analysis (40 minutes)
Part A: Kenya Aviation Law Knowledge (25 points)
- KCAA Regulations (10 points) Fill in the blanks:
- Drones over ______ grams must be registered with KCAA
- Maximum altitude for recreational flying is ______ feet
- Minimum distance from major airports is ______ kilometers
- Commercial drone operations require a ______ license
- Drones must remain within ______ line of sight
- No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
- Your school playground during lunch break: ______
- Open field 2km from Wilson Airport: ______
- Your backyard with adult supervision: ______
- Uhuru Park during a public event: ______
- Private farm with owner’s permission: ______
- Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:
Part B: Scenario-Based Decision Making (20 points)
- Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:
Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________
Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________
Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________
Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________
Part C: Responsible Pilot Planning (15 points)
-
Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:
-
-
-
[Continue through 10]
Week 7-8 Assessment: Emergency Procedures and Practical Skills
Format: Practical Flight Test + Emergency Response Simulation (60 minutes)
Part A: Emergency Response Knowledge (20 points)
- Emergency Procedures (15 points) Describe the correct response for each emergency:
Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
- Risk Assessment (5 points) Identify 3 risks for flying in each environment:
- School playground: ____________, ____________, ____________
- Open field: ____________, ____________, ____________
Part B: Practical Flight Skills Assessment (30 points)
- Basic Flight Controls (15 points) Demonstrate competency in:
- Smooth takeoff and landing (3 points)
- Stable hovering for 30 seconds (3 points)
- Forward/backward precision movement (3 points)
- Left/right precision movement (3 points)
- Controlled rotation (3 points)
- Mission Challenge (15 points) Complete ONE of the following missions:
Option A - Navigation Course:
- Fly through 5 waypoints in sequence
- Land within 1-meter target circle
- Complete within 3 minutes
Option B - Team Coordination:
- Work with partner to complete relay challenge
- Communicate effectively during handoff
- Maintain safety throughout mission
Part C: Leadership and Safety Evaluation (15 points)
- Safety Leadership (8 points) While others are flying, demonstrate:
- Proper safety zone maintenance
- Clear communication with pilot
- Appropriate responses to unsafe situations
- Helpful coaching and encouragement
- Self-Assessment and Goal Setting (7 points) Written reflection:
- What flight skill are you most confident with? Why?
- What area needs the most improvement?
- Set one specific goal for future drone flying
- Describe one way you can help others fly safely
Practical Skills Rubric:
- Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
- Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
- Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
- Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
- Beginning Pilot (Below 60%): Requires significant instruction and supervision
Grade 10-12 (14-16 Years) - Weeks 6-8
Advanced Python Projects & Integration
Week 6-7: Integrated Systems Project (Combined Weeks)
Learning Objectives:
- Combine motors and sensors in complex systems
- Debug integrated hardware/software systems
- Apply creative problem-solving to real-world challenges
- Document projects professionally
Key Concepts:
- Systems Integration: Combining multiple components into unified solutions
- Hardware-Software Interface: Code that bridges digital and physical worlds
- System Architecture: Planning complex projects with multiple subsystems
- Error Handling: Managing failures gracefully in complex systems
- Performance Optimization: Making systems run efficiently
- Documentation Standards: Professional project recording
Advanced Integration Concepts:
1. Multi-Sensor Fusion
import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json
class SensorFusion:
def __init__(self):
self.distance_sensor = DistanceSensor(echo=24, trigger=23)
self.motion_sensor = MotionSensor(4)
self.light_sensor = MCP3008(channel=0)
self.temp_sensor = MCP3008(channel=1)
# Data queues for thread communication
self.sensor_data = queue.Queue()
self.running = False
def read_sensors(self):
"""Continuous sensor reading in separate thread"""
while self.running:
try:
data = {
'timestamp': time.time(),
'distance': self.distance_sensor.distance * 100,
'motion': self.motion_sensor.motion_detected,
'light_level': self.light_sensor.voltage,
'temperature': self.convert_temp(self.temp_sensor.voltage)
}
self.sensor_data.put(data)
sleep(0.1) # 10Hz sampling rate
except Exception as e:
print(f"Sensor reading error: {e}")
def convert_temp(self, voltage):
"""Convert sensor voltage to temperature"""
return (voltage - 0.5) * 100 # Example conversion
def start_monitoring(self):
"""Start sensor monitoring thread"""
self.running = True
self.sensor_thread = threading.Thread(target=self.read_sensors)
self.sensor_thread.start()
def stop_monitoring(self):
"""Stop sensor monitoring"""
self.running = False
if hasattr(self, 'sensor_thread'):
self.sensor_thread.join()
2. Intelligent Control Systems
class SmartEnvironmentController:
def __init__(self):
self.sensors = SensorFusion()
self.fan_motor = Motor(forward=2, backward=3)
self.heater_relay = OutputDevice(18)
self.lights = PWMOutputDevice(19)
# Control parameters
self.target_temp = 22.0 # Target temperature in Celsius
self.temp_tolerance = 1.0
self.light_threshold = 0.3
# Control state
self.auto_mode = True
self.manual_override = False
def analyze_environment(self, sensor_data):
"""Intelligent decision making based on sensor data"""
decisions = {
'fan_speed': 0.0,
'heater_on': False,
'light_level': 0.0,
'alert_status': 'normal'
}
# Temperature control logic
temp_diff = sensor_data['temperature'] - self.target_temp
if temp_diff > self.temp_tolerance: # Too hot
decisions['fan_speed'] = min(1.0, temp_diff / 5.0) # Scale fan speed
decisions['heater_on'] = False
elif temp_diff < -self.temp_tolerance: # Too cold
decisions['fan_speed'] = 0.0
decisions['heater_on'] = True
# Light control logic
if sensor_data['light_level'] < self.light_threshold:
decisions['light_level'] = 1.0 - sensor_data['light_level'] # Complement lighting
# Security monitoring
if sensor_data['motion'] and sensor_data['distance'] < 20: # Close motion
decisions['alert_status'] = 'intrusion_detected'
elif sensor_data['distance'] < 5: # Very close object
decisions['alert_status'] = 'obstacle_warning'
return decisions
def execute_controls(self, decisions):
"""Execute control decisions"""
if not self.manual_override:
# Motor control
if decisions['fan_speed'] > 0:
self.fan_motor.forward(decisions['fan_speed'])
else:
self.fan_motor.stop()
# Heater control
if decisions['heater_on']:
self.heater_relay.on()
else:
self.heater_relay.off()
# Light control
self.lights.value = decisions['light_level']
def run_control_loop(self):
"""Main control loop"""
self.sensors.start_monitoring()
try:
while True:
if not self.sensors.sensor_data.empty():
current_data = self.sensors.sensor_data.get()
decisions = self.analyze_environment(current_data)
self.execute_controls(decisions)
# Log system status
self.log_system_status(current_data, decisions)
sleep(0.5) # Control loop frequency
except KeyboardInterrupt:
print("Shutting down control system...")
finally:
self.sensors.stop_monitoring()
self.fan_motor.stop()
self.heater_relay.off()
self.lights.off()
def log_system_status(self, sensor_data, decisions):
"""Log system performance data"""
log_entry = {
'timestamp': sensor_data['timestamp'],
'sensors': sensor_data,
'controls': decisions,
'mode': 'auto' if self.auto_mode else 'manual'
}
# In a real system, this would write to a file or database
print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
f"Fan={decisions['fan_speed']:.1f}, "
f"Alert={decisions['alert_status']}")
3. Project Documentation Standards
"""
Smart Environment Control System
================================
Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0
Description:
An intelligent system that monitors environmental conditions and automatically
adjusts heating, cooling, and lighting based on sensor feedback.
Hardware Requirements:
- Raspberry Pi 4 or similar
- Temperature sensor (DS18B20 or similar)
- Light sensor (LDR with MCP3008 ADC)
- Motion sensor (PIR)
- Distance sensor (HC-SR04)
- DC Motor (for fan simulation)
- Relay module (for heater control)
- PWM-controlled LED (for lighting)
Software Dependencies:
- Python 3.7+
- gpiozero library
- threading module (standard library)
- queue module (standard library)
- json module (standard library)
Installation:
pip install gpiozero
Usage:
python smart_environment.py
Configuration:
Modify target_temp and light_threshold variables in SmartEnvironmentController
class to adjust system behavior.
Testing:
Run included test functions to verify sensor readings and control outputs
before deploying the full system.
Known Issues:
- Temperature sensor calibration may need adjustment for local conditions
- Motion sensor has 2-second reset time that affects rapid detection
Future Enhancements:
- Web interface for remote monitoring
- Data logging to CSV files
- Machine learning for predictive control
- Mobile app integration
"""
Project Examples for Students:
Project 1: Smart Garden Monitor
- Monitors soil moisture, light, and temperature
- Controls watering pump and grow lights
- Logs plant growth data
- Sends alerts when intervention needed
Project 2: Home Security System
- Multiple sensor integration (motion, door, window)
- Camera trigger on detection
- SMS/email notifications
- Mobile app control interface
Project 3: Weather Station
- Measures temperature, humidity, pressure, wind
- Data logging with timestamps
- Weather prediction algorithms
- Web dashboard for data visualization
Project 4: Automated Greenhouse
- Climate control (temperature, humidity)
- Automated watering system
- Light cycle management
- Growth optimization algorithms
Week 8: Project Presentations and Assessment
Learning Objectives:
- Present technical projects professionally
- Give and receive constructive feedback
- Self-evaluate learning progress and achievements
- Plan next steps for continued learning
Key Concepts:
- Technical Communication: Explaining complex systems clearly
- Presentation Skills: Engaging audiences with technical content
- Peer Review: Constructive feedback and collaboration
- Self-Assessment: Honest evaluation of own work
- Professional Development: Planning continued learning paths
- Portfolio Building: Documenting achievements for future opportunities
Presentation Structure:
- Project Overview (2 minutes)
- Problem statement and objectives
- Target audience and use cases
- Key features and functionality
- Technical Demonstration (2 minutes)
- Live system operation
- Key components and how they work
- Code walkthrough of critical sections
- Challenges and Solutions (1 minute)
- Major obstacles encountered
- Creative solutions implemented
- Lessons learned from failures
Evaluation Criteria:
Technical Merit (40%):
- System functionality and reliability
- Code quality and organization
- Creative problem-solving approach
- Integration of multiple technologies
Communication (30%):
- Clear explanation of technical concepts
- Engaging presentation delivery
- Appropriate use of visual aids
- Effective response to questions
Documentation (20%):
- Complete project documentation
- Code comments and structure
- User instructions and setup guides
- Reflection on learning process
Collaboration (10%):
- Constructive feedback to peers
- Professional interaction during Q&A
- Willingness to share knowledge
- Respectful critique and discussion
Python Programming Trivia Challenge: End the term with fun technical questions:
- What does “PEP 8” refer to in Python?
- What’s the difference between
==andisin Python? - How do you handle exceptions in Python?
- What is a Python decorator?
- What’s the difference between a list and a tuple?
Grade 10-12 Final Assessment - Weeks 6-8
Integrated Systems Project Assessment
Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)
Project Requirements: Students must create an integrated system that combines:
- At least 3 different sensors
- At least 2 actuators (motors, lights, relays, etc.)
- Data logging and analysis
- User interface (command line or simple GUI)
- Error handling and safety features
Part A: Technical Implementation (40 points)
System Design (10 points)
- Clear problem definition and solution approach
- System architecture diagram showing component relationships
- Hardware schematic or connection diagram
- Software flowchart or algorithm description
Code Quality (15 points)
- Well-structured, modular code with functions/classes
- Appropriate variable names and code organization
- Comprehensive comments explaining complex sections
- Error handling for hardware failures
- Efficient algorithms and resource usage
Hardware Integration (15 points)
- Stable sensor readings with appropriate filtering
- Reliable actuator control with safety limits
- Proper electrical connections and component usage
- System operates reliably for extended periods
- Professional cable management and mounting
Part B: Documentation and Communication (25 points)
Project Documentation (15 points) Create a complete project report including:
- Executive summary of project goals and achievements
- Detailed technical specifications and requirements
- Installation and setup instructions
- User manual with clear operating procedures
- Troubleshooting guide for common problems
- Code documentation with API reference
Technical Presentation (10 points)
- Clear 5-minute presentation explaining project
- Live demonstration of working system
- Professional slides with technical diagrams
- Confident handling of technical questions
- Appropriate use of technical vocabulary
Part C: Innovation and Problem Solving (20 points)
Creative Solutions (10 points)
- Original approach to solving chosen problem
- Creative use of available hardware and software
- Evidence of iterative design and improvement
- Solutions show depth of understanding beyond basic requirements
Advanced Features (10 points) Choose and implement at least TWO:
- Machine learning or AI decision making
- Network communication (IoT connectivity)
- Mobile app or web interface
- Data visualization and analytics
- Predictive algorithms or optimization
- Integration with external APIs or services
Part D: Professional Skills (15 points)
Peer Collaboration (8 points)
- Constructive feedback provided to classmates
- Professional behavior during presentations
- Willingness to help others debug problems
- Respectful and insightful questions during Q&A
Self-Assessment (7 points) Written reflection addressing:
- Most significant technical challenge and how you overcame it
- What you would do differently if starting over
- How this project connects to potential career interests
- Specific skills you want to develop further
- Your confidence level with different aspects of the project
Sample Project Evaluation Rubric:
Exceptional (90-100%)
- System exceeds all requirements with innovative features
- Code is publication-quality with comprehensive documentation
- Presentation is engaging and demonstrates deep understanding
- Shows leadership in helping others and contributing to class learning
- Self-reflection shows sophisticated understanding of learning process
Proficient (80-89%)
- System meets all requirements reliably
- Code is well-structured with good documentation
- Presentation is clear and technically accurate
- Actively participates in peer learning and feedback
- Self-reflection shows good awareness of strengths and growth areas
Developing (70-79%)
- System meets most requirements with minor issues
- Code works but may have organizational or documentation gaps
- Presentation covers required topics but may lack depth
- Participates adequately in class activities
- Self-reflection shows basic understanding of learning process
Beginning (60-69%)
- System meets basic requirements but has significant limitations
- Code works for demonstration but has structural or reliability issues
- Presentation covers basics but shows limited understanding
- Minimal participation in peer activities
- Self-reflection is superficial or lacks insight
Incomplete (Below 60%)
- System fails to meet basic requirements or doesn’t function reliably
- Code has major issues that prevent proper operation
- Presentation is unclear or shows misunderstanding of concepts
- Little to no participation in collaborative learning
- Self-reflection missing or shows no evidence of learning
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Notes
I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:
What’s Included:
For Each Grade Level:
- Detailed weekly lesson notes covering weeks 1-8 content
- Key concepts and learning objectives for each topic
- Practical examples and code samples (for programming grades)
- Age-appropriate assessment tests with multiple formats
Assessment Formats:
- Preschoolers (4-6): Practical/observational assessments with hands-on activities
- Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
- Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
- Grade 10-12 (14-16): Coding assignments + hardware integration projects
Key Features:
- ✅ Covers all 8 weeks of Term 1 content
- ✅ Aligned with curriculum from the IoT & Robotics document
- ✅ Progressive difficulty appropriate for each age group
- ✅ Practical assessments that test real understanding
- ✅ Detailed rubrics for fair evaluation
- ✅ Extension activities for advanced learners
- ✅ Safety guidelines and best practices
Topics Covered:
- Preschoolers: STEM basics, simple machines, unplugged coding
- Grade 2-5: Scratch programming, Blockly games, interface navigation
- Grade 6-9: Drone basics, aviation principles, safety regulations
- Grade 10-12: Python programming, hardware control, sensor integration
Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.
Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
IoT & Robotics Term 1 - Complete Notes & Assessment Tests
Table of Contents
- Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
- Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
- Grade 6-9 (11-14 Years) - Drone Aviation Introduction
- Grade 10-12 (14-16 Years) - Python Basics
Preschoolers (4-6 Years)
Term 1: STEM Storytelling & Coding Toys
Week 1: Introduction to STEM
Learning Objectives:
- Understand basic concepts of STEM (Science, Technology, Engineering, Math)
- Spark excitement and curiosity about STEM through hands-on activities
- Foster teamwork through group experiments
- Develop early thinking through guided play and experimentation
Key Concepts:
- Science: Learning about the world around us through observation
- Technology: Simple tools and devices that help us
- Engineering: Building and creating solutions
- Mathematics: Numbers, shapes, and patterns in everyday life
Activities:
- Floating vs. Sinking experiments with various objects
- Basic robot interaction and exploration
- STEM vocabulary building games
- Classification activities
Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet
Week 2: STEM Play Corners
Learning Objectives:
- Explore different STEM areas through play stations
- Develop fine motor skills through hands-on manipulation
- Practice problem-solving through guided discovery
- Build confidence in exploring new concepts
Key Concepts:
- Play-based learning: Learning through exploration and fun
- Spatial awareness: Understanding shapes, sizes, and positions
- Cause and effect: Understanding that actions have results
- Collaboration: Working together to solve problems
Week 3: Simple Machines & Environmental Science
Learning Objectives:
- Identify simple machines in everyday life
- Understand basic environmental concepts
- Develop observation skills
- Connect STEM to the natural world
Key Concepts:
- Simple Machines: Lever, pulley, wheel, ramp
- Environment: Plants, animals, weather, seasons
- Observation: Using our senses to learn
- Nature patterns: Recognizing patterns in nature
Week 4: Unplugged Coding
Learning Objectives:
- Introduction to coding concepts without computers
- Understand sequence and order
- Develop logical thinking
- Practice following and giving instructions
Key Concepts:
- Sequence: Steps in order
- Instructions: Clear directions to follow
- Algorithms: Step-by-step solutions
- Patterns: Recognizing and creating patterns
Assessment Test - Preschoolers (4-6 Years)
Week 1-2 Assessment: STEM Basics
Format: Practical/Observational Assessment
- Floating or Sinking? (Show child various objects)
- Point to objects that will float: feather, cork, plastic toy
- Point to objects that will sink: stone, coin, marble
- Explain why you think so (in simple words)
- STEM Matching (Picture cards)
- Match the scientist to the magnifying glass
- Match the engineer to the building blocks
- Match the mathematician to the numbers
- Match the technologist to the computer
- Following Instructions
- Can follow 2-step instructions: “Pick up the red block and put it in the box”
- Can give simple instructions to a friend
- Can arrange objects in order (biggest to smallest)
Assessment Rubric:
- Exceeding (3): Completes all tasks independently with explanation
- Meeting (2): Completes most tasks with minimal guidance
- Approaching (1): Attempts tasks with significant support
- Beginning (0): Needs extensive help to participate
Week 3-4 Assessment: Simple Machines & Coding
Format: Hands-on Demonstration
- Simple Machines Hunt
- Find the lever (seesaw, scissors)
- Find the wheel (bicycle, toy car)
- Find the ramp (slide, wedge)
- Explain what each machine helps us do
- Nature Observation
- Draw or point to living things vs. non-living things
- Identify basic shapes in nature (circles in flowers, triangles in mountains)
- Name things that grow vs. things that are made
- Unplugged Coding Challenge
- Arrange sequence cards to show morning routine
- Give directions to help friend reach the treasure
- Complete a simple pattern with blocks or shapes
Grade 2-5 (7-11 Years)
Term 1: Scratch & Blockly Programming
Week 1: Introduction to Programming
Learning Objectives:
- Understand what programming is
- Learn about Scratch programming environment
- Install and explore Scratch interface
- Grasp the concept of sequencing
Key Concepts:
- Programming: Giving instructions to computers
- Scratch: Visual programming language using blocks
- Interface: The screen where we work with Scratch
- Sequencing: Putting commands in the right order
- Sprites: Characters in Scratch programs
- Stage: Where Scratch programs run
Core Activities:
- Explore Scratch interface and tools
- Identify different areas (sprite area, blocks palette, stage)
- Learn about different block categories (Motion, Looks, Sound, etc.)
- Create first simple animation
Week 2: Understanding Scratch Interface
Learning Objectives:
- Navigate Scratch interface confidently
- Understand different block categories
- Create basic sprite movements
- Save and load projects
Key Concepts:
- Blocks Palette: Where programming blocks are stored
- Scripts Area: Where we build our programs
- Motion Blocks: Make sprites move
- Looks Blocks: Change sprite appearance
- Events: What starts our programs running
Week 3: Setting Up Scratch Projects
Learning Objectives:
- Plan and organize Scratch projects
- Understand project structure
- Use backgrounds and sprites effectively
- Practice debugging simple problems
Key Concepts:
- Project Planning: Thinking before coding
- Backgrounds: Scenes for our programs
- Sprite Library: Ready-made characters
- Debugging: Finding and fixing problems
Week 4: Introduction to Blockly
Learning Objectives:
- Understand Blockly visual programming
- Compare Blockly with Scratch
- Complete basic Blockly puzzles
- Transfer concepts between platforms
Key Concepts:
- Blockly: Another visual programming language
- Puzzle-based Learning: Learning through solving challenges
- Logic Blocks: Making decisions in programs
- Loops: Repeating actions
Week 5: Blockly Games for Scratch Programmers
Learning Objectives:
- Apply Scratch knowledge to Blockly games
- Solve increasingly complex puzzles
- Understand programming logic and flow
- Build problem-solving confidence
Key Concepts:
- Game Logic: Rules that make games work
- Progressive Difficulty: Challenges that get harder
- Pattern Recognition: Seeing repeated solutions
- Persistence: Keep trying when challenges are difficult
Assessment Test - Grade 2-5 (7-11 Years)
Week 1-3 Assessment: Scratch Fundamentals
Format: Practical Computer Assessment (30 minutes)
Part A: Interface Knowledge (10 points)
- Label the parts of Scratch interface:
- Blocks Palette
- Scripts Area
- Stage
- Sprite Area
- Match the block colors to their functions:
- Motion blocks: _____ (Blue)
- Looks blocks: _____ (Purple)
- Sound blocks: _____ (Pink)
- Events blocks: _____ (Yellow)
Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:
-
Move 10 steps forward
-
Turn 90 degrees right
-
Say “Hello” for 2 seconds
-
Change color
- Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]
Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?
-
Missing “when green flag clicked” block
-
Sprite is already at the edge
-
Motion blocks aren’t connected
-
All of the above
- Create a simple animation showing a cat walking across the stage.
Week 4-5 Assessment: Blockly & Problem Solving
Format: Computer-based Blockly Challenges (25 minutes)
Part A: Blockly Basics (8 points)
- Complete the “Move Forward” puzzle in Blockly
- Complete the “Turn Left/Right” puzzle
- Complete the “Repeat Loop” puzzle
- Complete the “If/Else” puzzle
Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:
Repeat 4 times:
Move forward
Turn right 90 degrees
Answer: _________________
- Write Blockly code to make a character:
- Move forward 3 steps
- Turn left if path is blocked
- Repeat until reaching goal
Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:
- Create a Scratch program that does the same thing as this Blockly code:
When started: Repeat 5 times: Move forward 20 steps Wait 1 second
Assessment Rubric:
- Advanced (90-100%): Completes all tasks efficiently with creative additions
- Proficient (80-89%): Completes most tasks correctly with minor errors
- Developing (70-79%): Completes basic tasks but struggles with complex problems
- Beginning (Below 70%): Needs significant support to complete tasks
Grade 6-9 (11-14 Years)
Term 1: Drone Aviation Introduction
Week 1: Introduction to Drones and Aviation Basics
Learning Objectives:
- Understand what drones are and their applications
- Learn basic aviation principles
- Identify different types of aircraft
- Understand the evolution of flight
Key Concepts:
- Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
- Remote Pilot: Person controlling the drone from the ground
- Autonomous Flight: Drones flying with minimal human control
- Commercial vs. Recreational Use: Different purposes for drones
- Four Forces of Flight: Lift, Weight, Thrust, Drag
- Aerodynamics: How air moves around objects in flight
Applications of Drones:
- Photography and videography
- Search and rescue operations
- Agriculture monitoring
- Package delivery
- Scientific research
- Military operations
Week 2: Drone Safety Rules and Best Practices
Learning Objectives:
- Learn essential drone safety protocols
- Understand pre-flight checklist procedures
- Identify potential hazards and risks
- Develop responsible drone operation habits
Key Concepts:
- Pre-flight Inspection: Checking drone condition before flying
- Weather Conditions: How weather affects drone flight
- Battery Safety: Proper battery handling and storage
- Emergency Procedures: What to do when things go wrong
- Situational Awareness: Being aware of surroundings while flying
Safety Rules:
- Always maintain visual contact with drone
- Check weather conditions before flying
- Inspect drone and equipment before each flight
- Fly in open areas away from people and property
- Never fly above 400 feet
- Respect others’ privacy
- Land immediately if drone malfunctions
Week 3: FAA/UAS Regulations (Basic Overview)
Learning Objectives:
- Understand basic aviation regulations
- Learn about no-fly zones and restricted airspace
- Understand registration requirements
- Learn about pilot certification basics
Key Concepts:
- Federal Aviation Administration (FAA): Government agency regulating aviation
- Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
- No-Fly Zones: Areas where drone flight is prohibited
- Remote Pilot Certificate: License required for commercial drone operations
- Registration: Required identification for drones over 0.55 pounds
Basic Regulations:
- Drones must be registered if over 0.55 lbs (250 grams)
- Maximum altitude: 400 feet above ground level
- Must yield right-of-way to manned aircraft
- No flying over groups of people
- No flying at night without special certification
- Respect airport operational areas (usually 5-mile radius)
Week 4: Key Drone Types & Components
Learning Objectives:
- Identify different drone configurations
- Understand key drone components and their functions
- Compare advantages and disadvantages of different designs
- Learn basic maintenance requirements
Key Concepts:
- Multirotor: Drones with multiple rotating propellers
- Fixed-wing: Airplane-like drones with wings
- Hybrid VTOL: Vertical takeoff and landing with forward flight capability
- Frame: Main structure holding all components
- Flight Controller: Computer controlling drone flight
- ESC (Electronic Speed Controller): Controls motor speed
- Gimbal: Stabilizes camera during flight
Drone Types:
- Quadcopter: 4 rotors, most common configuration
- Hexacopter: 6 rotors, more redundancy and payload capacity
- Octocopter: 8 rotors, highest redundancy and capacity
- Fixed-wing: Longer flight times, faster speeds
- Racing drones: Small, fast, agile for competitive flying
Week 5: Basic Principles of Flight
Learning Objectives:
- Understand the four forces of flight in detail
- Learn how drones achieve controlled flight
- Understand stability and control concepts
- Explore flight dynamics and physics
Key Concepts:
- Lift: Upward force generated by rotors or wings
- Weight (Gravity): Downward force pulling drone toward earth
- Thrust: Forward force propelling drone through air
- Drag: Resistance force opposing motion through air
- Center of Gravity: Balance point of drone
- Pitch, Roll, Yaw: Three axes of rotation
- Gyroscopic Effect: How spinning rotors affect stability
Flight Control:
- Throttle: Controls altitude (up/down)
- Pitch: Controls forward/backward movement
- Roll: Controls left/right movement
- Yaw: Controls rotation (turning left/right)
- Trim: Fine adjustments for balanced flight
Assessment Test - Grade 6-9 (11-14 Years)
Week 1-2 Assessment: Drone Basics and Safety
Format: Written Test + Practical Safety Demonstration (45 minutes)
Part A: Multiple Choice (20 points)
-
What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle
-
Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight
-
What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera
-
The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet
-
What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors
Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)
- Explain three commercial applications of drones: (9 points)
- Why is it important to maintain visual contact with your drone during flight? (6 points)
Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures
Week 3-5 Assessment: Regulations and Flight Principles
Format: Written Test + Flight Theory Application (50 minutes)
Part A: Regulations Knowledge (20 points)
- True/False (10 points)
- Drones under 0.55 lbs need to be registered: ___
- You can fly your drone anywhere as long as it’s daytime: ___
- Commercial drone operations require a Remote Pilot Certificate: ___
- Drones must always yield to manned aircraft: ___
- Flying over groups of people is allowed with permission: ___
- What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:
Part B: Drone Components (15 points) 3. Match the component to its function:
-
Flight Controller: _____ a) Provides power to motors
-
ESC: _____ b) Stabilizes camera
-
Gimbal: _____ c) Main structural support
-
Frame: _____ d) Controls drone flight
-
Battery: _____ e) Controls motor speed
- Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)
Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)
- Explain how a drone moves in each direction: (13 points)
- Forward: ________________________________
- Backward: ________________________________
- Left: ________________________________
- Right: ________________________________
- Up: ________________________________
- Rotate left: ________________________________
Assessment Rubric:
- Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
- Proficient (80-89%): Shows solid grasp of concepts with minor gaps
- Developing (70-79%): Understands basic concepts but lacks detail in complex areas
- Novice (Below 70%): Limited understanding, needs additional instruction
Grade 10-12 (14-16 Years)
Term 1: Introduction to Python Basics
Week 1: Writing Structured Python Code
Learning Objectives:
- Understand Python syntax and structure
- Learn proper code formatting and indentation
- Write clean, readable code following best practices
- Understand variables, data types, and basic operations
Key Concepts:
- Python: High-level programming language
- Syntax: Rules for writing Python code
- Indentation: Using spaces to organize code structure
- Variables: Named storage for data values
- Data Types: int, float, string, boolean
- Comments: Documentation within code using #
- Print Statement: Displaying output to screen
Code Structure Best Practices:
# Header comment explaining the program
# Author: Your Name
# Date: Today's Date
# Import statements
import module_name
# Constants (UPPERCASE naming)
MAX_VALUE = 100
# Main program logic
def main():
# Variable declarations
user_name = "Student"
age = 16
# Program logic with proper indentation
print(f"Hello, {user_name}!")
print(f"You are {age} years old.")
# Run the program
if __name__ == "__main__":
main()
Week 2: Functions and Loops
Learning Objectives:
- Create and use custom functions
- Understand function parameters and return values
- Implement for loops and while loops
- Apply loops to solve repetitive tasks
Key Concepts:
- Function: Reusable block of code that performs a specific task
- Parameters: Input values passed to functions
- Return Value: Output value from a function
- For Loop: Repeats code a specific number of times
- While Loop: Repeats code while a condition is true
- Range Function: Generates sequences of numbers
- Iteration: Each repetition of a loop
- Loop Control: Managing when loops start and stop
Function Examples:
# Simple function with no parameters
def greet():
print("Hello, World!")
# Function with parameters
def greet_person(name, age):
print(f"Hello, {name}! You are {age} years old.")
# Function with return value
def calculate_area(length, width):
area = length * width
return area
# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")
Loop Examples:
# For loop with range
for i in range(5):
print(f"Count: {i}")
# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(f"I like {fruit}")
# While loop
count = 0
while count < 3:
print(f"While loop count: {count}")
count += 1
Week 3: Using Python Libraries
Learning Objectives:
- Understand what Python libraries are and why they’re useful
- Learn to import and use common libraries
- Work with GPIOZero and time libraries
- Explore library documentation and help systems
Key Concepts:
- Library/Module: Pre-written code that adds functionality
- Import Statement: Bringing library functions into your program
- GPIOZero: Library for controlling Raspberry Pi GPIO pins
- Time Library: Functions for working with time and delays
- Documentation: Instructions for using library functions
- API: Application Programming Interface - how to use library functions
Library Usage Examples:
# Importing entire modules
import time
import math
# Importing specific functions
from gpiozero import LED, Button
from time import sleep
# Using time library
print("Starting program...")
time.sleep(2) # Wait 2 seconds
print("2 seconds have passed!")
# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")
# Using GPIOZero (for Raspberry Pi)
led = LED(18) # LED connected to GPIO pin 18
button = Button(2) # Button connected to GPIO pin 2
# Turn LED on and off
led.on()
sleep(1)
led.off()
Week 4: Controlling Motors with Python
Learning Objectives:
- Understand how to interface with motors using Python
- Learn about PWM (Pulse Width Modulation) for motor control
- Control motor speed and direction
- Implement safety features in motor control code
Key Concepts:
- Motor Control: Using code to make motors move
- PWM (Pulse Width Modulation): Method to control motor speed
- Duty Cycle: Percentage of time signal is “on” vs “off”
- Direction Control: Making motors spin clockwise/counterclockwise
- Motor Driver: Electronics that interface between Python and motors
- Safety Features: Code to prevent motor damage
Motor Control Examples:
from gpiozero import Motor, PWMOutputDevice
from time import sleep
# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)
# Basic motor control
def basic_motor_test():
print("Motor forward at full speed")
motor.forward(1.0) # Full speed forward
sleep(2)
print("Motor forward at half speed")
motor.forward(0.5) # Half speed forward
sleep(2)
print("Motor stopped")
motor.stop()
sleep(1)
print("Motor backward at full speed")
motor.backward(1.0) # Full speed backward
sleep(2)
motor.stop()
print("Motor test complete")
# PWM speed control example
def speed_ramp_test():
print("Ramping motor speed up...")
for speed in range(0, 101, 10): # 0 to 100% in 10% steps
motor_speed = speed / 100.0
motor.forward(motor_speed)
print(f"Speed: {speed}%")
sleep(0.5)
motor.stop()
print("Speed ramp complete")
# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()
Week 5: Controlling Sensors with Python
Learning Objectives:
- Interface with various sensors using Python
- Read and process sensor data
- Implement sensor-based decision making
- Create responsive programs based on sensor input
Key Concepts:
- Sensor: Device that detects and measures physical properties
- Analog vs Digital: Different types of sensor signals
- ADC (Analog-to-Digital Converter): Converts analog signals to digital
- Sensor Calibration: Adjusting sensor readings for accuracy
- Data Processing: Converting raw sensor data to useful information
- Polling vs Interrupts: Different ways to read sensor data
Common Sensors:
- Temperature sensors: Measure environmental temperature
- Light sensors (LDR): Detect light intensity
- Ultrasonic sensors: Measure distance using sound waves
- Motion sensors (PIR): Detect movement
- Pressure sensors: Measure force or pressure
Sensor Control Examples:
from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics
# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)
def read_temperature():
# Convert voltage to temperature (example conversion)
voltage = temp_sensor.voltage
temperature_c = (voltage - 0.5) * 100 # Example conversion formula
temperature_f = (temperature_c * 9/5) + 32
return temperature_c, temperature_f
# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)
def monitor_distance():
print("Distance monitoring (press Ctrl+C to stop)")
try:
while True:
distance = distance_sensor.distance * 100 # Convert to cm
print(f"Distance: {distance:.1f} cm")
if distance < 10:
print("WARNING: Object too close!")
sleep(0.5)
except KeyboardInterrupt:
print("Distance monitoring stopped")
# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)
def motion_detector():
print("Motion detector active...")
def motion_detected():
print("Motion detected!")
alert_led.on()
sleep(2)
alert_led.off()
def no_motion():
print("No motion")
alert_led.off()
# Set up motion sensor callbacks
motion.when_motion = motion_detected
motion.when_no_motion = no_motion
# Keep program running
try:
while True:
sleep(0.1)
except KeyboardInterrupt:
print("Motion detector stopped")
# Data logging example
def log_sensor_data():
readings = []
print("Collecting sensor data for 30 seconds...")
start_time = time.time()
while time.time() - start_time < 30:
temp_c, temp_f = read_temperature()
distance = distance_sensor.distance * 100
readings.append({
'timestamp': time.time(),
'temperature_c': temp_c,
'temperature_f': temp_f,
'distance_cm': distance
})
print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
sleep(1)
# Calculate statistics
temps = [r['temperature_c'] for r in readings]
distances = [r['distance_cm'] for r in readings]
print(f"\nData Summary:")
print(f"Average temperature: {statistics.mean(temps):.1f}°C")
print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
print(f"Average distance: {statistics.mean(distances):.1f}cm")
print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")
# Example usage
if __name__ == "__main__":
# Run different examples
monitor_distance() # Uncomment to run distance monitoring
# motion_detector() # Uncomment to run motion detection
# log_sensor_data() # Uncomment to run data logging
Assessment Test - Grade 10-12 (14-16 Years)
Week 1-2 Assessment: Python Fundamentals
Format: Coding Assignment + Written Questions (60 minutes)
Part A: Code Structure and Syntax (25 points)
- Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average
calculate average(10, 20, 30)
Your corrected code:
# Write corrected version here
Explanation of errors: ________________________________
- Write a well-structured Python program (15 points): Create a program that:
- Has proper header comments
- Uses appropriate variable names
- Calculates the area of different shapes (circle, rectangle, triangle)
- Uses functions with parameters and return values
- Follows proper indentation and formatting
Part B: Functions and Loops (30 points)
- Write a function called
print_multiplication_table(15 points):
- Takes one parameter:
number - Prints multiplication table for that number (1-10)
- Uses a for loop
- Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
- Password Checker Program (15 points): Write a program using while loop that:
- Asks user to enter a password
- Keeps asking until they enter “python123”
- Counts number of attempts
- Prints “Access granted” when correct
- Prints number of attempts it took
Week 3-5 Assessment: Libraries and Hardware Control
Format: Practical Coding Project (75 minutes)
Part A: Library Usage (20 points)
- Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______ # What library do you need for calculating average?
# Create sensor object
light_sensor = MCP3008(channel=0)
def read_light_levels():
readings = []
# Collect 10 readings
for i in range(______): # Fill in the range
reading = light_sensor.______ # What property gives the reading?
readings.append(reading)
print(f"Reading {i+1}: {reading:.3f}")
sleep(0.5)
# Calculate and print statistics
average = ______.mean(readings) # Which function calculates mean?
maximum = ______(readings) # Built-in function for maximum
minimum = ______(readings) # Built-in function for minimum
print(f"Average: {average:.3f}")
print(f"Maximum: {maximum:.3f}")
print(f"Minimum: {minimum:.3f}")
# Call the function
read_light_levels()
Part B: Motor Control Project (25 points)
- Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
- Use a temperature sensor to read room temperature
- Control a motor (fan) based on temperature:
- Below 20°C: Fan off
- 20-25°C: Fan at 30% speed
- 25-30°C: Fan at 60% speed
- Above 30°C: Fan at 100% speed
- Print current temperature and fan speed every 2 seconds
- Include safety features (motor stop function)
Part C: Sensor Integration Challenge (30 points)
- Security System Prototype (30 points): Create a basic security system that:
- Uses a motion sensor to detect movement
- Uses a distance sensor to detect objects too close
- Controls LEDs to indicate system status:
- Green LED: System normal
- Yellow LED: Motion detected
- Red LED: Intrusion alert (object < 20cm)
- Logs events with timestamps
- Runs continuously until user presses Ctrl+C
Requirements:
- Use at least 3 different libraries
- Include proper error handling
- Use functions to organize code
- Add meaningful comments
- Follow Python coding best practices
Sample code structure:
from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time
# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)
def log_event(message):
# Write function to log events with timestamp
pass
def check_security():
# Write function to check all sensors and control LEDs
pass
def main():
# Write main program loop
pass
if __name__ == "__main__":
main()
Assessment Rubric:
- Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
- Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
- Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
- Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
- Incomplete (Below 65%): Code doesn’t run or major portions missing
Additional Resources and Extensions
For All Grade Levels:
Vocabulary Glossary:
- Algorithm: Step-by-step instructions to solve a problem
- Bug: Error in code that prevents it from working correctly
- Debug: Process of finding and fixing errors in code
- Hardware: Physical components of computer systems
- Software: Programs and applications that run on hardware
- Interface: Way users interact with programs or devices
- Sensor: Device that detects changes in environment
- Actuator: Device that causes movement or action
Project Portfolio Suggestions:
- Weekly Reflection Journal: Students document learning and challenges
- Photo Documentation: Pictures of projects and experiments
- Video Demonstrations: Students explain their projects
- Peer Teaching: Advanced students help beginners
- Innovation Challenges: Open-ended problems to solve creatively
Cross-Curricular Connections:
- Math: Geometry in robotics, statistics in data analysis
- Science: Physics of flight, electronics principles
- Art: Creative programming projects, design thinking
- Social Studies: Impact of technology on society
- Language Arts: Technical writing, documentation skills
Safety Reminders:
- Always supervise young children with electronic components
- Check battery connections before powering devices
- Keep work area clean and organized
- Wash hands after handling electronic components
- Report any damaged equipment immediately
- Follow proper shutdown procedures for all devices
Assessment Portfolio Checklist:
- Completed weekly assessments
- Project documentation with photos
- Reflection essays on learning progress
- Peer evaluation forms
- Self-assessment rubrics
- Evidence of problem-solving process
- Creative extensions or improvements to basic projects
Continuation - Weeks 6-8 for All Grade Levels
Preschoolers (4-6 Years) - Weeks 6-8
Advanced STEM Exploration & Technology Awareness
Week 6: Technology Parts Awareness
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically be able to follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Technology Components: Basic parts that make devices work
- Circuits: Paths that electricity follows
- Assembly/Disassembly: Taking apart and putting together
- Electronics Safety: Safe handling of batteries and components
- Problem-Solving: Trying different solutions when something doesn’t work
Activities:
- Technology Exploration: Examine old keyboards, phones, calculators
- Simple Circuits: Connect bulbs to batteries with safe materials
- Assembly Practice: Take apart and reassemble simple toys
- Tech Parts Sorting: Group similar technology components
Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors
Week 7: Sequencing & Floor Grid Coding
Learning Objectives:
- Develop understanding of sequencing by arranging steps in correct order
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence through trial-and-error learning
Key Concepts:
- Sequencing: Putting steps in the right order
- Algorithm Cards: Visual instructions to follow
- Floor Grid Coding: Moving through spaces following directions
- Left/Right/Forward/Back: Basic directional concepts
- Trial and Error: Learning by trying and improving
Activities:
- Obstacle Course Coding: Navigate through simple obstacles using arrow cards
- Sequencing Games: Put daily routine cards in correct order
- Paper Maze Coding: Use arrows to show path through printed mazes
- Robot Friend: One child gives directions, another follows like a robot
Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets
Week 8: Advanced Unplugged Coding & Storytelling
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
- Debugging: Finding and fixing mistakes in directions
- Block Building: Using physical blocks to represent code
- Story Algorithms: Step-by-step instructions for telling stories
Activities:
- Debug the Path: Present incorrect direction sequences for children to fix
- IF/THEN Games: “If you see a triangle, then clap your hands”
- Story Coding: Use picture cards to create step-by-step stories
- Block Code Building: Stack blocks to represent programming sequences
Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling
Preschoolers Assessment - Weeks 6-8
Week 6 Assessment: Technology Awareness
Format: Hands-on Exploration + Observation (20 minutes)
- Technology Parts Recognition (10 points)
- Point to and name 3 technology items from the collection
- Show how a simple circuit works (bulb + battery)
- Safely handle electronic components
- Explain one thing each item helps us do
- Assembly Skills (10 points)
- Take apart a simple toy or device
- Put it back together correctly
- Identify which parts go where
- Ask for help when needed
Assessment Criteria:
- Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
- Developing (2): Safe handling, completes most tasks with minimal help
- Emerging (1): Needs guidance but participates actively
- Beginning (0): Requires extensive support
Week 7-8 Assessment: Advanced Unplugged Coding
Format: Physical Coding Challenges (25 minutes)
- Sequencing Challenge (12 points)
- Arrange 6 direction cards to navigate through obstacle course
- Explain why each step comes in that order
- Successfully complete the physical navigation
- Fix mistakes when path doesn’t work
- IF/THEN Logic (8 points)
- Follow conditional instructions: “IF you see blue, THEN hop”
- Create own IF/THEN rule for a friend to follow
- Demonstrate understanding with actions
- Story Algorithm (10 points)
- Use 5 picture cards to create logical story sequence
- Tell story following the card order
- Explain what happens if cards are mixed up
- Help fix a mixed-up story sequence
Practical Skills Rubric:
- Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
- Proficient (20-24 points): Completes all challenges correctly with minor guidance
- Developing (15-19 points): Understands concepts but needs support for complex tasks
- Beginning (Below 15 points): Requires significant help to participate
Grade 2-5 (7-11 Years) - Weeks 6-8
Advanced Scratch Programming & Game Development
Week 6: Game Structure and Design
Learning Objectives:
- Understand basic game structure (start, play, end)
- Use Scratch blocks to move characters and detect collisions
- Make characters move between different scenes
- Create scoring or win conditions
Key Concepts:
- Game Design Elements: Characters, backgrounds, objectives, rules
- Game Loop: Continuous cycle of input, processing, output
- Collision Detection: Knowing when sprites touch each other
- Scene Transitions: Moving between different game screens
- Win/Lose Conditions: Rules that determine game outcomes
- User Interface: Buttons, scores, and information displays
Advanced Scratch Concepts:
- Sensing Blocks: “touching color”, “distance to”, “key pressed”
- Variables: Storing score, lives, or time
- Broadcast Messages: Communication between sprites
- Clone Sprites: Creating multiple copies of objects
- Custom Blocks: Making your own programming blocks
Game Development Process:
- Planning Phase: Sketch game idea, list needed sprites and backgrounds
- Prototype: Create basic movement and interaction
- Enhancement: Add sounds, effects, and polish
- Testing: Play game and fix bugs
- Sharing: Present to classmates
Example Game Structure:
When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
If key space pressed:
Move player sprite
If touching enemy:
Change lives by -1
If lives = 0:
Say "Game Over!"
Stop all
Week 7: Transition to Text-Based Concepts
Learning Objectives:
- Prepare learners for text-based coding
- Understand basic programming concepts using blocks
- Use logic and loops to control sprite or robot actions
- Begin transition to robotics or advanced coding platforms
Key Concepts:
- Programming Fundamentals: Sequence, selection, iteration
- Logic Blocks: IF/ELSE statements in visual form
- Loop Types: Forever, repeat until, repeat X times
- Variables and Operations: Math in programming
- Event-Driven Programming: Responding to user input
- Modular Programming: Breaking code into smaller parts
Bridging Visual to Text:
- Block-to-Code Thinking: Understanding what blocks represent
- Pseudocode: Writing steps in plain English before coding
- Debugging Strategies: Systematic problem-solving approaches
- Code Organization: Keeping projects neat and logical
Advanced Programming Patterns:
// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
If game state = "menu":
Show menu options
If game state = "playing":
Run game logic
If game state = "game over":
Show final score
// Pattern 2: Object Behavior
When I start as a clone:
Go to random position
Forever:
Move 2 steps
If on edge, bounce
If touching player:
Change score by 10
Delete this clone
Week 8: Blockly Integration and Logic Puzzles
Learning Objectives:
- Solve logic puzzles using visual programming concepts
- Create games using Blockly platform
- Demonstrate understanding of programming fundamentals
- Apply creative problem-solving skills
Key Concepts:
- Blockly Platform: Google’s visual programming language
- Logic Puzzles: Problems requiring systematic thinking
- Algorithm Efficiency: Finding the best solution method
- Pattern Recognition: Identifying repeated solutions
- Creative Programming: Using code for artistic expression
Blockly vs. Scratch Comparison:
| Feature | Scratch | Blockly |
|---|---|---|
| Focus | Storytelling & Games | Logic & Algorithms |
| Interface | Stage-based | Puzzle-based |
| Output | Animated Projects | Problem Solutions |
| Progression | Creative Expression | Mathematical Thinking |
Logic Puzzle Types:
- Maze Solving: Navigate through obstacles
- Pattern Completion: Fill in missing sequences
- Conditional Logic: IF/THEN decision making
- Loop Optimization: Repeat actions efficiently
Grade 2-5 Assessment - Weeks 6-8
Week 6 Assessment: Game Development Project
Format: Scratch Game Creation + Presentation (45 minutes)
Part A: Game Planning (10 points)
- Game Design Document - Create a simple plan including:
- Game objective (what’s the goal?)
- Main character description
- Basic rules (how do you win/lose?)
- Required sprites and backgrounds
- Storyboard - Draw 3 screens showing:
- Game start screen
- Main gameplay
- Win/lose screen
Part B: Game Implementation (25 points) 3. Core Functionality (15 points):
-
Character moves with arrow keys or WASD
-
At least one interactive element (enemy, collectible, obstacle)
-
Basic collision detection (touching = something happens)
-
Clear win or lose condition
- Polish and Enhancement (10 points):
- Sound effects or music
- Visual feedback (score, lives, timer)
- Smooth sprite movement
- Creative backgrounds or costumes
Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):
-
Explain game rules clearly
-
Demonstrate gameplay for 2 minutes
-
Show different game scenarios
-
Handle questions from classmates
- Technical Reflection (5 points):
- Explain one challenging problem you solved
- Describe one improvement you would make
- Share one new Scratch skill you learned
Week 7-8 Assessment: Programming Concepts Mastery
Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)
Part A: Blockly Logic Challenges (20 points)
- Maze Navigation (8 points):
- Complete 3 increasingly difficult maze puzzles
- Use efficient solutions (minimal blocks)
- Demonstrate understanding of loops and conditionals
- Pattern Recognition (6 points):
- Solve sequence completion puzzles
- Identify and extend number/color patterns
- Create original pattern for others to solve
- Logic Puzzles (6 points):
- Complete IF/THEN decision trees
- Solve multi-step conditional problems
- Optimize solutions for clarity
Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:
[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]
Write in pseudocode (plain English): “When the program starts, ________________”
- Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”
Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________
Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:
Option A - Scratch: Create a “digital pet” that:
- Follows mouse cursor
- Changes expression when clicked
- Makes sound when hungry (timer-based)
- Has at least 3 different costumes
Option B - Blockly: Design a solution for:
- Robot that sorts colored objects
- Path that avoids all obstacles
- Pattern that creates art using loops
Assessment Rubric:
- Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
- Proficient (80-89%): Meets all requirements with good understanding demonstrated
- Developing (70-79%): Meets most requirements but may have gaps in complex concepts
- Novice (60-69%): Shows basic understanding but struggles with application
- Beginning (Below 60%): Needs significant support to demonstrate concepts
Grade 6-9 (11-14 Years) - Weeks 6-8
Drone Laws, Emergency Procedures & Practical Flying
Week 6: Drone Laws and Regulations (Kenya Focus)
Learning Objectives:
- Learn basic drone laws in Kenya (KCAA regulations)
- Understand where and how children can fly drones legally
- Develop awareness of responsible drone operation
- Understand the importance of aviation safety
Key Concepts:
- Kenya Civil Aviation Authority (KCAA): National aviation regulator
- Drone Registration: Required identification and documentation
- No-Fly Zones: Airports, government buildings, restricted areas
- Altitude Restrictions: Maximum height limitations
- Visual Line of Sight (VLOS): Maintaining visual contact
- Privacy Laws: Respecting others’ rights and property
Kenya Drone Regulations Summary:
- Registration Requirements:
- All drones over 250g must be registered with KCAA
- Operator license required for commercial operations
- Age restrictions for different categories of operation
- Operational Limits:
- Maximum altitude: 400 feet (120 meters) AGL
- Minimum distance from airports: 8km for major airports
- No flying over crowds or public events
- Daylight operations only (without special permits)
- Prohibited Areas:
- Within 5km of any airport
- Over government buildings and installations
- National parks without permits
- Private property without permission
Safety and Legal Guidelines for Young Pilots:
- Always have adult supervision
- Start with toy drones under 250g
- Practice in open, safe areas
- Respect others’ privacy and property
- Learn emergency procedures
- Keep drone in sight at all times
Week 7: Emergency Procedures and Responsible Flying
Learning Objectives:
- Review key safety and legal concepts from previous weeks
- Understand emergency basics for beginner flyers
- Develop decision-making skills for unexpected situations
- Practice responsible pilot behavior
Key Concepts:
- Emergency Procedures: Systematic responses to problems
- Risk Assessment: Evaluating dangers before flying
- Decision Making: Choosing appropriate actions under pressure
- Communication: Alerting others during emergencies
- Equipment Failure: What to do when drone malfunctions
- Weather Awareness: Recognizing dangerous conditions
Emergency Scenarios and Responses:
- Lost Communication with Drone:
- Stay calm and observe drone behavior
- Activate Return-to-Home (RTH) function if available
- Move to higher ground for better signal
- Prepare for manual landing if signal returns
- Never chase after a flyaway drone
- Low Battery Warning:
- Immediately begin landing sequence
- Choose nearest safe landing spot
- Avoid flying over people or property
- Land even if not at original takeoff point
- Safety is more important than convenience
- Unexpected Weather Changes:
- Monitor weather conditions constantly
- Land immediately if wind increases
- Avoid flying in rain or snow
- Watch for sudden temperature changes
- When in doubt, don’t fly
- Equipment Malfunction:
- Attempt controlled landing immediately
- Don’t try to fix problems while airborne
- Inform other people in the area
- Document the problem for later analysis
- Never continue flying with known issues
Mission Planning Process:
- Pre-flight Planning: Weather check, equipment inspection, route planning
- Risk Assessment: Identify potential hazards and mitigation strategies
- Communication Plan: Inform others of flight activities
- Emergency Procedures: Know what to do if things go wrong
- Post-flight Review: Analyze what went well and areas for improvement
Week 8: Practical Flying Skills and Team Challenges
Learning Objectives:
- Demonstrate ability to control a mini drone (takeoff, hover, land)
- Apply basic flight skills in problem-solving mission scenarios
- Work as a team to complete drone-based challenges
- Evaluate personal progress and set goals for improvement
Key Concepts:
- Flight Control Mastery: Smooth, precise drone movements
- Situational Awareness: Understanding surroundings during flight
- Mission Planning: Preparing for specific flight objectives
- Teamwork: Collaborative problem-solving with drones
- Performance Evaluation: Self-assessment and peer feedback
- Safety Leadership: Taking responsibility for safe operations
Basic Flight Skills Progression:
- Fundamental Controls:
- Smooth takeoff to hover
- Maintaining steady hover
- Controlled landing
- Forward/backward movement
- Left/right movement
- Rotation control
- Intermediate Maneuvers:
- Figure-8 patterns
- Precision landing on target
- Obstacle avoidance
- Following predetermined paths
- Coordinated movements
- Advanced Challenges:
- Team relay races
- Rescue simulations
- Precision delivery tasks
- Group choreography
- Time-based challenges
Mission Scenarios:
Mission 1: Search and Rescue
- Objective: Locate “missing person” (target) in designated area
- Skills: Systematic search patterns, communication, observation
- Time limit: 5 minutes
- Success criteria: Target identified and location communicated
Mission 2: Delivery Challenge
- Objective: Transport small payload from Point A to Point B
- Skills: Precision flying, cargo management, safe landing
- Obstacles: Wind conditions, landing accuracy requirements
- Success criteria: Payload delivered undamaged within time limit
Mission 3: Team Coordination
- Objective: Multiple drones work together to complete complex task
- Skills: Communication, timing, spatial awareness
- Challenge: Choreographed flight pattern or group problem-solving
- Success criteria: All drones complete task without collisions
Safety Protocols for Practical Flying:
- Always maintain 10-foot safety zone around flying area
- Designate specific roles: pilot, observer, safety officer
- Use hand signals for communication during loud operations
- Practice emergency landing procedures before each session
- Rotate roles so everyone experiences different responsibilities
Grade 6-9 Assessment - Weeks 6-8
Week 6 Assessment: Drone Laws and Regulations
Format: Written Test + Legal Scenario Analysis (40 minutes)
Part A: Kenya Aviation Law Knowledge (25 points)
- KCAA Regulations (10 points) Fill in the blanks:
- Drones over ______ grams must be registered with KCAA
- Maximum altitude for recreational flying is ______ feet
- Minimum distance from major airports is ______ kilometers
- Commercial drone operations require a ______ license
- Drones must remain within ______ line of sight
- No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
- Your school playground during lunch break: ______
- Open field 2km from Wilson Airport: ______
- Your backyard with adult supervision: ______
- Uhuru Park during a public event: ______
- Private farm with owner’s permission: ______
- Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:
Part B: Scenario-Based Decision Making (20 points)
- Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:
Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________
Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________
Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________
Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________
Part C: Responsible Pilot Planning (15 points)
-
Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:
-
-
-
[Continue through 10]
Week 7-8 Assessment: Emergency Procedures and Practical Skills
Format: Practical Flight Test + Emergency Response Simulation (60 minutes)
Part A: Emergency Response Knowledge (20 points)
- Emergency Procedures (15 points) Describe the correct response for each emergency:
Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
- Risk Assessment (5 points) Identify 3 risks for flying in each environment:
- School playground: ____________, ____________, ____________
- Open field: ____________, ____________, ____________
Part B: Practical Flight Skills Assessment (30 points)
- Basic Flight Controls (15 points) Demonstrate competency in:
- Smooth takeoff and landing (3 points)
- Stable hovering for 30 seconds (3 points)
- Forward/backward precision movement (3 points)
- Left/right precision movement (3 points)
- Controlled rotation (3 points)
- Mission Challenge (15 points) Complete ONE of the following missions:
Option A - Navigation Course:
- Fly through 5 waypoints in sequence
- Land within 1-meter target circle
- Complete within 3 minutes
Option B - Team Coordination:
- Work with partner to complete relay challenge
- Communicate effectively during handoff
- Maintain safety throughout mission
Part C: Leadership and Safety Evaluation (15 points)
- Safety Leadership (8 points) While others are flying, demonstrate:
- Proper safety zone maintenance
- Clear communication with pilot
- Appropriate responses to unsafe situations
- Helpful coaching and encouragement
- Self-Assessment and Goal Setting (7 points) Written reflection:
- What flight skill are you most confident with? Why?
- What area needs the most improvement?
- Set one specific goal for future drone flying
- Describe one way you can help others fly safely
Practical Skills Rubric:
- Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
- Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
- Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
- Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
- Beginning Pilot (Below 60%): Requires significant instruction and supervision
Grade 10-12 (14-16 Years) - Weeks 6-8
Advanced Python Projects & Integration
Week 6-7: Integrated Systems Project (Combined Weeks)
Learning Objectives:
- Combine motors and sensors in complex systems
- Debug integrated hardware/software systems
- Apply creative problem-solving to real-world challenges
- Document projects professionally
Key Concepts:
- Systems Integration: Combining multiple components into unified solutions
- Hardware-Software Interface: Code that bridges digital and physical worlds
- System Architecture: Planning complex projects with multiple subsystems
- Error Handling: Managing failures gracefully in complex systems
- Performance Optimization: Making systems run efficiently
- Documentation Standards: Professional project recording
Advanced Integration Concepts:
1. Multi-Sensor Fusion
import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json
class SensorFusion:
def __init__(self):
self.distance_sensor = DistanceSensor(echo=24, trigger=23)
self.motion_sensor = MotionSensor(4)
self.light_sensor = MCP3008(channel=0)
self.temp_sensor = MCP3008(channel=1)
# Data queues for thread communication
self.sensor_data = queue.Queue()
self.running = False
def read_sensors(self):
"""Continuous sensor reading in separate thread"""
while self.running:
try:
data = {
'timestamp': time.time(),
'distance': self.distance_sensor.distance * 100,
'motion': self.motion_sensor.motion_detected,
'light_level': self.light_sensor.voltage,
'temperature': self.convert_temp(self.temp_sensor.voltage)
}
self.sensor_data.put(data)
sleep(0.1) # 10Hz sampling rate
except Exception as e:
print(f"Sensor reading error: {e}")
def convert_temp(self, voltage):
"""Convert sensor voltage to temperature"""
return (voltage - 0.5) * 100 # Example conversion
def start_monitoring(self):
"""Start sensor monitoring thread"""
self.running = True
self.sensor_thread = threading.Thread(target=self.read_sensors)
self.sensor_thread.start()
def stop_monitoring(self):
"""Stop sensor monitoring"""
self.running = False
if hasattr(self, 'sensor_thread'):
self.sensor_thread.join()
2. Intelligent Control Systems
class SmartEnvironmentController:
def __init__(self):
self.sensors = SensorFusion()
self.fan_motor = Motor(forward=2, backward=3)
self.heater_relay = OutputDevice(18)
self.lights = PWMOutputDevice(19)
# Control parameters
self.target_temp = 22.0 # Target temperature in Celsius
self.temp_tolerance = 1.0
self.light_threshold = 0.3
# Control state
self.auto_mode = True
self.manual_override = False
def analyze_environment(self, sensor_data):
"""Intelligent decision making based on sensor data"""
decisions = {
'fan_speed': 0.0,
'heater_on': False,
'light_level': 0.0,
'alert_status': 'normal'
}
# Temperature control logic
temp_diff = sensor_data['temperature'] - self.target_temp
if temp_diff > self.temp_tolerance: # Too hot
decisions['fan_speed'] = min(1.0, temp_diff / 5.0) # Scale fan speed
decisions['heater_on'] = False
elif temp_diff < -self.temp_tolerance: # Too cold
decisions['fan_speed'] = 0.0
decisions['heater_on'] = True
# Light control logic
if sensor_data['light_level'] < self.light_threshold:
decisions['light_level'] = 1.0 - sensor_data['light_level'] # Complement lighting
# Security monitoring
if sensor_data['motion'] and sensor_data['distance'] < 20: # Close motion
decisions['alert_status'] = 'intrusion_detected'
elif sensor_data['distance'] < 5: # Very close object
decisions['alert_status'] = 'obstacle_warning'
return decisions
def execute_controls(self, decisions):
"""Execute control decisions"""
if not self.manual_override:
# Motor control
if decisions['fan_speed'] > 0:
self.fan_motor.forward(decisions['fan_speed'])
else:
self.fan_motor.stop()
# Heater control
if decisions['heater_on']:
self.heater_relay.on()
else:
self.heater_relay.off()
# Light control
self.lights.value = decisions['light_level']
def run_control_loop(self):
"""Main control loop"""
self.sensors.start_monitoring()
try:
while True:
if not self.sensors.sensor_data.empty():
current_data = self.sensors.sensor_data.get()
decisions = self.analyze_environment(current_data)
self.execute_controls(decisions)
# Log system status
self.log_system_status(current_data, decisions)
sleep(0.5) # Control loop frequency
except KeyboardInterrupt:
print("Shutting down control system...")
finally:
self.sensors.stop_monitoring()
self.fan_motor.stop()
self.heater_relay.off()
self.lights.off()
def log_system_status(self, sensor_data, decisions):
"""Log system performance data"""
log_entry = {
'timestamp': sensor_data['timestamp'],
'sensors': sensor_data,
'controls': decisions,
'mode': 'auto' if self.auto_mode else 'manual'
}
# In a real system, this would write to a file or database
print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
f"Fan={decisions['fan_speed']:.1f}, "
f"Alert={decisions['alert_status']}")
3. Project Documentation Standards
"""
Smart Environment Control System
================================
Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0
Description:
An intelligent system that monitors environmental conditions and automatically
adjusts heating, cooling, and lighting based on sensor feedback.
Hardware Requirements:
- Raspberry Pi 4 or similar
- Temperature sensor (DS18B20 or similar)
- Light sensor (LDR with MCP3008 ADC)
- Motion sensor (PIR)
- Distance sensor (HC-SR04)
- DC Motor (for fan simulation)
- Relay module (for heater control)
- PWM-controlled LED (for lighting)
Software Dependencies:
- Python 3.7+
- gpiozero library
- threading module (standard library)
- queue module (standard library)
- json module (standard library)
Installation:
pip install gpiozero
Usage:
python smart_environment.py
Configuration:
Modify target_temp and light_threshold variables in SmartEnvironmentController
class to adjust system behavior.
Testing:
Run included test functions to verify sensor readings and control outputs
before deploying the full system.
Known Issues:
- Temperature sensor calibration may need adjustment for local conditions
- Motion sensor has 2-second reset time that affects rapid detection
Future Enhancements:
- Web interface for remote monitoring
- Data logging to CSV files
- Machine learning for predictive control
- Mobile app integration
"""
Project Examples for Students:
Project 1: Smart Garden Monitor
- Monitors soil moisture, light, and temperature
- Controls watering pump and grow lights
- Logs plant growth data
- Sends alerts when intervention needed
Project 2: Home Security System
- Multiple sensor integration (motion, door, window)
- Camera trigger on detection
- SMS/email notifications
- Mobile app control interface
Project 3: Weather Station
- Measures temperature, humidity, pressure, wind
- Data logging with timestamps
- Weather prediction algorithms
- Web dashboard for data visualization
Project 4: Automated Greenhouse
- Climate control (temperature, humidity)
- Automated watering system
- Light cycle management
- Growth optimization algorithms
Week 8: Project Presentations and Assessment
Learning Objectives:
- Present technical projects professionally
- Give and receive constructive feedback
- Self-evaluate learning progress and achievements
- Plan next steps for continued learning
Key Concepts:
- Technical Communication: Explaining complex systems clearly
- Presentation Skills: Engaging audiences with technical content
- Peer Review: Constructive feedback and collaboration
- Self-Assessment: Honest evaluation of own work
- Professional Development: Planning continued learning paths
- Portfolio Building: Documenting achievements for future opportunities
Presentation Structure:
- Project Overview (2 minutes)
- Problem statement and objectives
- Target audience and use cases
- Key features and functionality
- Technical Demonstration (2 minutes)
- Live system operation
- Key components and how they work
- Code walkthrough of critical sections
- Challenges and Solutions (1 minute)
- Major obstacles encountered
- Creative solutions implemented
- Lessons learned from failures
Evaluation Criteria:
Technical Merit (40%):
- System functionality and reliability
- Code quality and organization
- Creative problem-solving approach
- Integration of multiple technologies
Communication (30%):
- Clear explanation of technical concepts
- Engaging presentation delivery
- Appropriate use of visual aids
- Effective response to questions
Documentation (20%):
- Complete project documentation
- Code comments and structure
- User instructions and setup guides
- Reflection on learning process
Collaboration (10%):
- Constructive feedback to peers
- Professional interaction during Q&A
- Willingness to share knowledge
- Respectful critique and discussion
Python Programming Trivia Challenge: End the term with fun technical questions:
- What does “PEP 8” refer to in Python?
- What’s the difference between
==andisin Python? - How do you handle exceptions in Python?
- What is a Python decorator?
- What’s the difference between a list and a tuple?
Grade 10-12 Final Assessment - Weeks 6-8
Integrated Systems Project Assessment
Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)
Project Requirements: Students must create an integrated system that combines:
- At least 3 different sensors
- At least 2 actuators (motors, lights, relays, etc.)
- Data logging and analysis
- User interface (command line or simple GUI)
- Error handling and safety features
Part A: Technical Implementation (40 points)
System Design (10 points)
- Clear problem definition and solution approach
- System architecture diagram showing component relationships
- Hardware schematic or connection diagram
- Software flowchart or algorithm description
Code Quality (15 points)
- Well-structured, modular code with functions/classes
- Appropriate variable names and code organization
- Comprehensive comments explaining complex sections
- Error handling for hardware failures
- Efficient algorithms and resource usage
Hardware Integration (15 points)
- Stable sensor readings with appropriate filtering
- Reliable actuator control with safety limits
- Proper electrical connections and component usage
- System operates reliably for extended periods
- Professional cable management and mounting
Part B: Documentation and Communication (25 points)
Project Documentation (15 points) Create a complete project report including:
- Executive summary of project goals and achievements
- Detailed technical specifications and requirements
- Installation and setup instructions
- User manual with clear operating procedures
- Troubleshooting guide for common problems
- Code documentation with API reference
Technical Presentation (10 points)
- Clear 5-minute presentation explaining project
- Live demonstration of working system
- Professional slides with technical diagrams
- Confident handling of technical questions
- Appropriate use of technical vocabulary
Part C: Innovation and Problem Solving (20 points)
Creative Solutions (10 points)
- Original approach to solving chosen problem
- Creative use of available hardware and software
- Evidence of iterative design and improvement
- Solutions show depth of understanding beyond basic requirements
Advanced Features (10 points) Choose and implement at least TWO:
- Machine learning or AI decision making
- Network communication (IoT connectivity)
- Mobile app or web interface
- Data visualization and analytics
- Predictive algorithms or optimization
- Integration with external APIs or services
Part D: Professional Skills (15 points)
Peer Collaboration (8 points)
- Constructive feedback provided to classmates
- Professional behavior during presentations
- Willingness to help others debug problems
- Respectful and insightful questions during Q&A
Self-Assessment (7 points) Written reflection addressing:
- Most significant technical challenge and how you overcame it
- What you would do differently if starting over
- How this project connects to potential career interests
- Specific skills you want to develop further
- Your confidence level with different aspects of the project
Sample Project Evaluation Rubric:
Exceptional (90-100%)
- System exceeds all requirements with innovative features
- Code is publication-quality with comprehensive documentation
- Presentation is engaging and demonstrates deep understanding
- Shows leadership in helping others and contributing to class learning
- Self-reflection shows sophisticated understanding of learning process
Proficient (80-89%)
- System meets all requirements reliably
- Code is well-structured with good documentation
- Presentation is clear and technically accurate
- Actively participates in peer learning and feedback
- Self-reflection shows good awareness of strengths and growth areas
Developing (70-79%)
- System meets most requirements with minor issues
- Code works but may have organizational or documentation gaps
- Presentation covers required topics but may lack depth
- Participates adequately in class activities
- Self-reflection shows basic understanding of learning process
Beginning (60-69%)
- System meets basic requirements but has significant limitations
- Code works for demonstration but has structural or reliability issues
- Presentation covers basics but shows limited understanding
- Minimal participation in peer activities
- Self-reflection is superficial or lacks insight
Incomplete (Below 60%)
- System fails to meet basic requirements or doesn’t function reliably
- Code has major issues that prevent proper operation
- Presentation is unclear or shows misunderstanding of concepts
- Little to no participation in collaborative learning
- Self-reflection missing or shows no evidence of learning
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Notes
I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:
What’s Included:
For Each Grade Level:
- Detailed weekly lesson notes covering weeks 1-8 content
- Key concepts and learning objectives for each topic
- Practical examples and code samples (for programming grades)
- Age-appropriate assessment tests with multiple formats
Assessment Formats:
- Preschoolers (4-6): Practical/observational assessments with hands-on activities
- Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
- Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
- Grade 10-12 (14-16): Coding assignments + hardware integration projects
Key Features:
- ✅ Covers all 8 weeks of Term 1 content
- ✅ Aligned with curriculum from the IoT & Robotics document
- ✅ Progressive difficulty appropriate for each age group
- ✅ Practical assessments that test real understanding
- ✅ Detailed rubrics for fair evaluation
- ✅ Extension activities for advanced learners
- ✅ Safety guidelines and best practices
Topics Covered:
- Preschoolers: STEM basics, simple machines, unplugged coding
- Grade 2-5: Scratch programming, Blockly games, interface navigation
- Grade 6-9: Drone basics, aviation principles, safety regulations
- Grade 10-12: Python programming, hardware control, sensor integration
Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.
Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Intro - Grade 2 - 5
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Grade 2-5 (7-11 Years)
Term 1: Scratch & Blockly Programming
Week 1: Introduction to Programming
Learning Objectives:
- Understand what programming is
- Learn about Scratch programming environment
- Install and explore Scratch interface
- Grasp the concept of sequencing
Key Concepts:
- Programming: Giving instructions to computers
- Scratch: Visual programming language using blocks
- Interface: The screen where we work with Scratch
- Sequencing: Putting commands in the right order
- Sprites: Characters in Scratch programs
- Stage: Where Scratch programs run
Core Activities:
- Explore Scratch interface and tools
- Identify different areas (sprite area, blocks palette, stage)
- Learn about different block categories (Motion, Looks, Sound, etc.)
- Create first simple animation
Assessment Test - Grade 2-5 (7-11 Years)
Week 1-3 Assessment: Scratch Fundamentals
Format: Practical Computer Assessment (30 minutes)
Part A: Interface Knowledge (10 points)
- Label the parts of Scratch interface:
- Blocks Palette
- Scripts Area
- Stage
- Sprite Area
- Match the block colors to their functions:
- Motion blocks: _ (Blue)
- Looks blocks: _ (Purple)
- Sound blocks: _ (Pink)
- Events blocks: _ (Yellow)
Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:
- Move 10 steps forward
- Turn 90 degrees right
- Say “Hello” for 2 seconds
- Change color
- Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]
Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?
- Missing “when green flag clicked” block
- Sprite is already at the edge
- Motion blocks aren’t connected
- All of the above
- Create a simple animation showing a cat walking across the stage.
Week 2: Understanding Scratch Interface
Learning Objectives:
- Navigate Scratch interface confidently
- Understand different block categories
- Create basic sprite movements
- Save and load projects
Key Concepts:
- Blocks Palette: Where programming blocks are stored
- Scripts Area: Where we build our programs
- Motion Blocks: Make sprites move
- Looks Blocks: Change sprite appearance
- Events: What starts our programs running
Assessment Test - Grade 2-5 (7-11 Years)
Week 1-3 Assessment: Scratch Fundamentals
Format: Practical Computer Assessment (30 minutes)
Part A: Interface Knowledge (10 points)
- Label the parts of Scratch interface:
- Blocks Palette
- Scripts Area
- Stage
- Sprite Area
- Match the block colors to their functions:
- Motion blocks: _ (Blue)
- Looks blocks: _ (Purple)
- Sound blocks: _ (Pink)
- Events blocks: _ (Yellow)
Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:
- Move 10 steps forward
- Turn 90 degrees right
- Say “Hello” for 2 seconds
- Change color
- Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]
Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?
- Missing “when green flag clicked” block
- Sprite is already at the edge
- Motion blocks aren’t connected
- All of the above
- Create a simple animation showing a cat walking across the stage.
Week 3: Setting Up Scratch Projects
Learning Objectives:
- Plan and organize Scratch projects
- Understand project structure
- Use backgrounds and sprites effectively
- Practice debugging simple problems
Key Concepts:
- Project Planning: Thinking before coding
- Backgrounds: Scenes for our programs
- Sprite Library: Ready-made characters
- Debugging: Finding and fixing problems
Assessment Test - Grade 2-5 (7-11 Years)
Week 1-3 Assessment: Scratch Fundamentals
Format: Practical Computer Assessment (30 minutes)
Part A: Interface Knowledge (10 points)
- Label the parts of Scratch interface:
- Blocks Palette
- Scripts Area
- Stage
- Sprite Area
- Match the block colors to their functions:
- Motion blocks: _ (Blue)
- Looks blocks: _ (Purple)
- Sound blocks: _ (Pink)
- Events blocks: _ (Yellow)
Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:
- Move 10 steps forward
- Turn 90 degrees right
- Say “Hello” for 2 seconds
- Change color
- Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]
Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?
- Missing “when green flag clicked” block
- Sprite is already at the edge
- Motion blocks aren’t connected
- All of the above
- Create a simple animation showing a cat walking across the stage.
Week 4: Introduction to Blockly
Learning Objectives:
- Understand Blockly visual programming
- Compare Blockly with Scratch
- Complete basic Blockly puzzles
- Transfer concepts between platforms
Key Concepts:
- Blockly: Another visual programming language
- Puzzle-based Learning: Learning through solving challenges
- Logic Blocks: Making decisions in programs
- Loops: Repeating actions
Week 4-5 Assessment: Blockly & Problem Solving
Format: Computer-based Blockly Challenges (25 minutes)
Part A: Blockly Basics (8 points)
- Complete the “Move Forward” puzzle in Blockly
- Complete the “Turn Left/Right” puzzle
- Complete the “Repeat Loop” puzzle
- Complete the “If/Else” puzzle
Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:
Repeat 4 times:
Move forward
Turn right 90 degrees
Answer: _
- Write Blockly code to make a character:
- Move forward 3 steps
- Turn left if path is blocked
- Repeat until reaching goal
Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:
- Create a Scratch program that does the same thing as this Blockly code:
When started: Repeat 5 times: Move forward 20 steps Wait 1 second
Assessment Rubric:
- Advanced (90-100%): Completes all tasks efficiently with creative additions
- Proficient (80-89%): Completes most tasks correctly with minor errors
- Developing (70-79%): Completes basic tasks but struggles with complex problems
- Beginning (Below 70%): Needs significant support to complete tasks
Week 5: Blockly Games for Scratch Programmers
Learning Objectives:
- Apply Scratch knowledge to Blockly games
- Solve increasingly complex puzzles
- Understand programming logic and flow
- Build problem-solving confidence
Key Concepts:
- Game Logic: Rules that make games work
- Progressive Difficulty: Challenges that get harder
- Pattern Recognition: Seeing repeated solutions
- Persistence: Keep trying when challenges are difficult
Week 4-5 Assessment: Blockly & Problem Solving
Format: Computer-based Blockly Challenges (25 minutes)
Part A: Blockly Basics (8 points)
- Complete the “Move Forward” puzzle in Blockly
- Complete the “Turn Left/Right” puzzle
- Complete the “Repeat Loop” puzzle
- Complete the “If/Else” puzzle
Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:
Repeat 4 times:
Move forward
Turn right 90 degrees
Answer: _
- Write Blockly code to make a character:
- Move forward 3 steps
- Turn left if path is blocked
- Repeat until reaching goal
Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:
- Create a Scratch program that does the same thing as this Blockly code:
When started: Repeat 5 times: Move forward 20 steps Wait 1 second
Assessment Rubric:
- Advanced (90-100%): Completes all tasks efficiently with creative additions
- Proficient (80-89%): Completes most tasks correctly with minor errors
- Developing (70-79%): Completes basic tasks but struggles with complex problems
- Beginning (Below 70%): Needs significant support to complete tasks
Grade 2-5 (7-11 Years) - Weeks 6-8
Advanced Scratch Programming & Game Development
Week 6: Game Structure and Design
Learning Objectives:
- Understand basic game structure (start, play, end)
- Use Scratch blocks to move characters and detect collisions
- Make characters move between different scenes
- Create scoring or win conditions
Key Concepts:
- Game Design Elements: Characters, backgrounds, objectives, rules
- Game Loop: Continuous cycle of input, processing, output
- Collision Detection: Knowing when sprites touch each other
- Scene Transitions: Moving between different game screens
- Win/Lose Conditions: Rules that determine game outcomes
- User Interface: Buttons, scores, and information displays
Advanced Scratch Concepts:
- Sensing Blocks: “touching color”, “distance to”, “key pressed”
- Variables: Storing score, lives, or time
- Broadcast Messages: Communication between sprites
- Clone Sprites: Creating multiple copies of objects
- Custom Blocks: Making your own programming blocks
Game Development Process:
- Planning Phase: Sketch game idea, list needed sprites and backgrounds
- Prototype: Create basic movement and interaction
- Enhancement: Add sounds, effects, and polish
- Testing: Play game and fix bugs
- Sharing: Present to classmates
Example Game Structure:
When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
If key space pressed:
Move player sprite
If touching enemy:
Change lives by -1
If lives = 0:
Say "Game Over!"
Stop all
Grade 2-5 Assessment - Weeks 6-8
Week 6 Assessment: Game Development Project
Format: Scratch Game Creation + Presentation (45 minutes)
Part A: Game Planning (10 points)
- Game Design Document - Create a simple plan including:
- Game objective (what’s the goal?)
- Main character description
- Basic rules (how do you win/lose?)
- Required sprites and backgrounds
- Storyboard - Draw 3 screens showing:
- Game start screen
- Main gameplay
- Win/lose screen
Part B: Game Implementation (25 points) 3. Core Functionality (15 points):
- Character moves with arrow keys or WASD
- At least one interactive element (enemy, collectible, obstacle)
- Basic collision detection (touching = something happens)
- Clear win or lose condition
- Polish and Enhancement (10 points):
- Sound effects or music
- Visual feedback (score, lives, timer)
- Smooth sprite movement
- Creative backgrounds or costumes
Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):
- Explain game rules clearly
- Demonstrate gameplay for 2 minutes
- Show different game scenarios
- Handle questions from classmates
- Technical Reflection (5 points):
- Explain one challenging problem you solved
- Describe one improvement you would make
- Share one new Scratch skill you learned
Week 7: Transition to Text-Based Concepts
Learning Objectives:
- Prepare learners for text-based coding
- Understand basic programming concepts using blocks
- Use logic and loops to control sprite or robot actions
- Begin transition to robotics or advanced coding platforms
Key Concepts:
- Programming Fundamentals: Sequence, selection, iteration
- Logic Blocks: IF/ELSE statements in visual form
- Loop Types: Forever, repeat until, repeat X times
- Variables and Operations: Math in programming
- Event-Driven Programming: Responding to user input
- Modular Programming: Breaking code into smaller parts
Bridging Visual to Text:
- Block-to-Code Thinking: Understanding what blocks represent
- Pseudocode: Writing steps in plain English before coding
- Debugging Strategies: Systematic problem-solving approaches
- Code Organization: Keeping projects neat and logical
Advanced Programming Patterns:
// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
If game state = "menu":
Show menu options
If game state = "playing":
Run game logic
If game state = "game over":
Show final score
// Pattern 2: Object Behavior
When I start as a clone:
Go to random position
Forever:
Move 2 steps
If on edge, bounce
If touching player:
Change score by 10
Delete this clone
Week 7-8 Assessment: Programming Concepts Mastery
Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)
Part A: Blockly Logic Challenges (20 points)
- Maze Navigation (8 points):
- Complete 3 increasingly difficult maze puzzles
- Use efficient solutions (minimal blocks)
- Demonstrate understanding of loops and conditionals
- Pattern Recognition (6 points):
- Solve sequence completion puzzles
- Identify and extend number/color patterns
- Create original pattern for others to solve
- Logic Puzzles (6 points):
- Complete IF/THEN decision trees
- Solve multi-step conditional problems
- Optimize solutions for clarity
Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:
[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]
Write in pseudocode (plain English): “When the program starts, ____”
- Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”
Step 1: ___ Step 2: ___ Step 3: ___ Step 4: ___
Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:
Option A - Scratch: Create a “digital pet” that:
- Follows mouse cursor
- Changes expression when clicked
- Makes sound when hungry (timer-based)
- Has at least 3 different costumes
Option B - Blockly: Design a solution for:
- Robot that sorts colored objects
- Path that avoids all obstacles
- Pattern that creates art using loops
Assessment Rubric:
- Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
- Proficient (80-89%): Meets all requirements with good understanding demonstrated
- Developing (70-79%): Meets most requirements but may have gaps in complex concepts
- Novice (60-69%): Shows basic understanding but struggles with application
- Beginning (Below 60%): Needs significant support to demonstrate concepts
Week 8: Blockly Integration and Logic Puzzles
Learning Objectives:
- Solve logic puzzles using visual programming concepts
- Create games using Blockly platform
- Demonstrate understanding of programming fundamentals
- Apply creative problem-solving skills
Key Concepts:
- Blockly Platform: Google’s visual programming language
- Logic Puzzles: Problems requiring systematic thinking
- Algorithm Efficiency: Finding the best solution method
- Pattern Recognition: Identifying repeated solutions
- Creative Programming: Using code for artistic expression
Blockly vs. Scratch Comparison:
| Feature | Scratch | Blockly |
|---|---|---|
| Focus | Storytelling & Games | Logic & Algorithms |
| Interface | Stage-based | Puzzle-based |
| Output | Animated Projects | Problem Solutions |
| Progression | Creative Expression | Mathematical Thinking |
Logic Puzzle Types:
- Maze Solving: Navigate through obstacles
- Pattern Completion: Fill in missing sequences
- Conditional Logic: IF/THEN decision making
- Loop Optimization: Repeat actions efficiently
Week 7-8 Assessment: Programming Concepts Mastery
Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)
Part A: Blockly Logic Challenges (20 points)
- Maze Navigation (8 points):
- Complete 3 increasingly difficult maze puzzles
- Use efficient solutions (minimal blocks)
- Demonstrate understanding of loops and conditionals
- Pattern Recognition (6 points):
- Solve sequence completion puzzles
- Identify and extend number/color patterns
- Create original pattern for others to solve
- Logic Puzzles (6 points):
- Complete IF/THEN decision trees
- Solve multi-step conditional problems
- Optimize solutions for clarity
Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:
[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]
Write in pseudocode (plain English): “When the program starts, ____”
- Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”
Step 1: ___ Step 2: ___ Step 3: ___ Step 4: ___
Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:
Option A - Scratch: Create a “digital pet” that:
- Follows mouse cursor
- Changes expression when clicked
- Makes sound when hungry (timer-based)
- Has at least 3 different costumes
Option B - Blockly: Design a solution for:
- Robot that sorts colored objects
- Path that avoids all obstacles
- Pattern that creates art using loops
Assessment Rubric:
- Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
- Proficient (80-89%): Meets all requirements with good understanding demonstrated
- Developing (70-79%): Meets most requirements but may have gaps in complex concepts
- Novice (60-69%): Shows basic understanding but struggles with application
- Beginning (Below 60%): Needs significant support to demonstrate concepts
IoT & Robotics Term 1 - Complete Notes & Assessment Tests
Table of Contents
- Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
- Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
- Grade 6-9 (11-14 Years) - Drone Aviation Introduction
- Grade 10-12 (14-16 Years) - Python Basics
Preschoolers (4-6 Years)
Term 1: STEM Storytelling & Coding Toys
Week 1: Introduction to STEM
Learning Objectives:
- Understand basic concepts of STEM (Science, Technology, Engineering, Math)
- Spark excitement and curiosity about STEM through hands-on activities
- Foster teamwork through group experiments
- Develop early thinking through guided play and experimentation
Key Concepts:
- Science: Learning about the world around us through observation
- Technology: Simple tools and devices that help us
- Engineering: Building and creating solutions
- Mathematics: Numbers, shapes, and patterns in everyday life
Activities:
- Floating vs. Sinking experiments with various objects
- Basic robot interaction and exploration
- STEM vocabulary building games
- Classification activities
Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet
Week 2: STEM Play Corners
Learning Objectives:
- Explore different STEM areas through play stations
- Develop fine motor skills through hands-on manipulation
- Practice problem-solving through guided discovery
- Build confidence in exploring new concepts
Key Concepts:
- Play-based learning: Learning through exploration and fun
- Spatial awareness: Understanding shapes, sizes, and positions
- Cause and effect: Understanding that actions have results
- Collaboration: Working together to solve problems
Week 3: Simple Machines & Environmental Science
Learning Objectives:
- Identify simple machines in everyday life
- Understand basic environmental concepts
- Develop observation skills
- Connect STEM to the natural world
Key Concepts:
- Simple Machines: Lever, pulley, wheel, ramp
- Environment: Plants, animals, weather, seasons
- Observation: Using our senses to learn
- Nature patterns: Recognizing patterns in nature
Week 4: Unplugged Coding
Learning Objectives:
- Introduction to coding concepts without computers
- Understand sequence and order
- Develop logical thinking
- Practice following and giving instructions
Key Concepts:
- Sequence: Steps in order
- Instructions: Clear directions to follow
- Algorithms: Step-by-step solutions
- Patterns: Recognizing and creating patterns
Assessment Test - Preschoolers (4-6 Years)
Week 1-2 Assessment: STEM Basics
Format: Practical/Observational Assessment
- Floating or Sinking? (Show child various objects)
- Point to objects that will float: feather, cork, plastic toy
- Point to objects that will sink: stone, coin, marble
- Explain why you think so (in simple words)
- STEM Matching (Picture cards)
- Match the scientist to the magnifying glass
- Match the engineer to the building blocks
- Match the mathematician to the numbers
- Match the technologist to the computer
- Following Instructions
- Can follow 2-step instructions: “Pick up the red block and put it in the box”
- Can give simple instructions to a friend
- Can arrange objects in order (biggest to smallest)
Assessment Rubric:
- Exceeding (3): Completes all tasks independently with explanation
- Meeting (2): Completes most tasks with minimal guidance
- Approaching (1): Attempts tasks with significant support
- Beginning (0): Needs extensive help to participate
Week 3-4 Assessment: Simple Machines & Coding
Format: Hands-on Demonstration
- Simple Machines Hunt
- Find the lever (seesaw, scissors)
- Find the wheel (bicycle, toy car)
- Find the ramp (slide, wedge)
- Explain what each machine helps us do
- Nature Observation
- Draw or point to living things vs. non-living things
- Identify basic shapes in nature (circles in flowers, triangles in mountains)
- Name things that grow vs. things that are made
- Unplugged Coding Challenge
- Arrange sequence cards to show morning routine
- Give directions to help friend reach the treasure
- Complete a simple pattern with blocks or shapes
Grade 2-5 (7-11 Years)
Term 1: Scratch & Blockly Programming
Week 1: Introduction to Programming
Learning Objectives:
- Understand what programming is
- Learn about Scratch programming environment
- Install and explore Scratch interface
- Grasp the concept of sequencing
Key Concepts:
- Programming: Giving instructions to computers
- Scratch: Visual programming language using blocks
- Interface: The screen where we work with Scratch
- Sequencing: Putting commands in the right order
- Sprites: Characters in Scratch programs
- Stage: Where Scratch programs run
Core Activities:
- Explore Scratch interface and tools
- Identify different areas (sprite area, blocks palette, stage)
- Learn about different block categories (Motion, Looks, Sound, etc.)
- Create first simple animation
Week 2: Understanding Scratch Interface
Learning Objectives:
- Navigate Scratch interface confidently
- Understand different block categories
- Create basic sprite movements
- Save and load projects
Key Concepts:
- Blocks Palette: Where programming blocks are stored
- Scripts Area: Where we build our programs
- Motion Blocks: Make sprites move
- Looks Blocks: Change sprite appearance
- Events: What starts our programs running
Week 3: Setting Up Scratch Projects
Learning Objectives:
- Plan and organize Scratch projects
- Understand project structure
- Use backgrounds and sprites effectively
- Practice debugging simple problems
Key Concepts:
- Project Planning: Thinking before coding
- Backgrounds: Scenes for our programs
- Sprite Library: Ready-made characters
- Debugging: Finding and fixing problems
Week 4: Introduction to Blockly
Learning Objectives:
- Understand Blockly visual programming
- Compare Blockly with Scratch
- Complete basic Blockly puzzles
- Transfer concepts between platforms
Key Concepts:
- Blockly: Another visual programming language
- Puzzle-based Learning: Learning through solving challenges
- Logic Blocks: Making decisions in programs
- Loops: Repeating actions
Week 5: Blockly Games for Scratch Programmers
Learning Objectives:
- Apply Scratch knowledge to Blockly games
- Solve increasingly complex puzzles
- Understand programming logic and flow
- Build problem-solving confidence
Key Concepts:
- Game Logic: Rules that make games work
- Progressive Difficulty: Challenges that get harder
- Pattern Recognition: Seeing repeated solutions
- Persistence: Keep trying when challenges are difficult
Assessment Test - Grade 2-5 (7-11 Years)
Week 1-3 Assessment: Scratch Fundamentals
Format: Practical Computer Assessment (30 minutes)
Part A: Interface Knowledge (10 points)
- Label the parts of Scratch interface:
- Blocks Palette
- Scripts Area
- Stage
- Sprite Area
- Match the block colors to their functions:
- Motion blocks: _____ (Blue)
- Looks blocks: _____ (Purple)
- Sound blocks: _____ (Pink)
- Events blocks: _____ (Yellow)
Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:
-
Move 10 steps forward
-
Turn 90 degrees right
-
Say “Hello” for 2 seconds
-
Change color
- Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]
Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?
-
Missing “when green flag clicked” block
-
Sprite is already at the edge
-
Motion blocks aren’t connected
-
All of the above
- Create a simple animation showing a cat walking across the stage.
Week 4-5 Assessment: Blockly & Problem Solving
Format: Computer-based Blockly Challenges (25 minutes)
Part A: Blockly Basics (8 points)
- Complete the “Move Forward” puzzle in Blockly
- Complete the “Turn Left/Right” puzzle
- Complete the “Repeat Loop” puzzle
- Complete the “If/Else” puzzle
Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:
Repeat 4 times:
Move forward
Turn right 90 degrees
Answer: _________________
- Write Blockly code to make a character:
- Move forward 3 steps
- Turn left if path is blocked
- Repeat until reaching goal
Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:
- Create a Scratch program that does the same thing as this Blockly code:
When started: Repeat 5 times: Move forward 20 steps Wait 1 second
Assessment Rubric:
- Advanced (90-100%): Completes all tasks efficiently with creative additions
- Proficient (80-89%): Completes most tasks correctly with minor errors
- Developing (70-79%): Completes basic tasks but struggles with complex problems
- Beginning (Below 70%): Needs significant support to complete tasks
Grade 6-9 (11-14 Years)
Term 1: Drone Aviation Introduction
Week 1: Introduction to Drones and Aviation Basics
Learning Objectives:
- Understand what drones are and their applications
- Learn basic aviation principles
- Identify different types of aircraft
- Understand the evolution of flight
Key Concepts:
- Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
- Remote Pilot: Person controlling the drone from the ground
- Autonomous Flight: Drones flying with minimal human control
- Commercial vs. Recreational Use: Different purposes for drones
- Four Forces of Flight: Lift, Weight, Thrust, Drag
- Aerodynamics: How air moves around objects in flight
Applications of Drones:
- Photography and videography
- Search and rescue operations
- Agriculture monitoring
- Package delivery
- Scientific research
- Military operations
Week 2: Drone Safety Rules and Best Practices
Learning Objectives:
- Learn essential drone safety protocols
- Understand pre-flight checklist procedures
- Identify potential hazards and risks
- Develop responsible drone operation habits
Key Concepts:
- Pre-flight Inspection: Checking drone condition before flying
- Weather Conditions: How weather affects drone flight
- Battery Safety: Proper battery handling and storage
- Emergency Procedures: What to do when things go wrong
- Situational Awareness: Being aware of surroundings while flying
Safety Rules:
- Always maintain visual contact with drone
- Check weather conditions before flying
- Inspect drone and equipment before each flight
- Fly in open areas away from people and property
- Never fly above 400 feet
- Respect others’ privacy
- Land immediately if drone malfunctions
Week 3: FAA/UAS Regulations (Basic Overview)
Learning Objectives:
- Understand basic aviation regulations
- Learn about no-fly zones and restricted airspace
- Understand registration requirements
- Learn about pilot certification basics
Key Concepts:
- Federal Aviation Administration (FAA): Government agency regulating aviation
- Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
- No-Fly Zones: Areas where drone flight is prohibited
- Remote Pilot Certificate: License required for commercial drone operations
- Registration: Required identification for drones over 0.55 pounds
Basic Regulations:
- Drones must be registered if over 0.55 lbs (250 grams)
- Maximum altitude: 400 feet above ground level
- Must yield right-of-way to manned aircraft
- No flying over groups of people
- No flying at night without special certification
- Respect airport operational areas (usually 5-mile radius)
Week 4: Key Drone Types & Components
Learning Objectives:
- Identify different drone configurations
- Understand key drone components and their functions
- Compare advantages and disadvantages of different designs
- Learn basic maintenance requirements
Key Concepts:
- Multirotor: Drones with multiple rotating propellers
- Fixed-wing: Airplane-like drones with wings
- Hybrid VTOL: Vertical takeoff and landing with forward flight capability
- Frame: Main structure holding all components
- Flight Controller: Computer controlling drone flight
- ESC (Electronic Speed Controller): Controls motor speed
- Gimbal: Stabilizes camera during flight
Drone Types:
- Quadcopter: 4 rotors, most common configuration
- Hexacopter: 6 rotors, more redundancy and payload capacity
- Octocopter: 8 rotors, highest redundancy and capacity
- Fixed-wing: Longer flight times, faster speeds
- Racing drones: Small, fast, agile for competitive flying
Week 5: Basic Principles of Flight
Learning Objectives:
- Understand the four forces of flight in detail
- Learn how drones achieve controlled flight
- Understand stability and control concepts
- Explore flight dynamics and physics
Key Concepts:
- Lift: Upward force generated by rotors or wings
- Weight (Gravity): Downward force pulling drone toward earth
- Thrust: Forward force propelling drone through air
- Drag: Resistance force opposing motion through air
- Center of Gravity: Balance point of drone
- Pitch, Roll, Yaw: Three axes of rotation
- Gyroscopic Effect: How spinning rotors affect stability
Flight Control:
- Throttle: Controls altitude (up/down)
- Pitch: Controls forward/backward movement
- Roll: Controls left/right movement
- Yaw: Controls rotation (turning left/right)
- Trim: Fine adjustments for balanced flight
Assessment Test - Grade 6-9 (11-14 Years)
Week 1-2 Assessment: Drone Basics and Safety
Format: Written Test + Practical Safety Demonstration (45 minutes)
Part A: Multiple Choice (20 points)
-
What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle
-
Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight
-
What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera
-
The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet
-
What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors
Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)
- Explain three commercial applications of drones: (9 points)
- Why is it important to maintain visual contact with your drone during flight? (6 points)
Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures
Week 3-5 Assessment: Regulations and Flight Principles
Format: Written Test + Flight Theory Application (50 minutes)
Part A: Regulations Knowledge (20 points)
- True/False (10 points)
- Drones under 0.55 lbs need to be registered: ___
- You can fly your drone anywhere as long as it’s daytime: ___
- Commercial drone operations require a Remote Pilot Certificate: ___
- Drones must always yield to manned aircraft: ___
- Flying over groups of people is allowed with permission: ___
- What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:
Part B: Drone Components (15 points) 3. Match the component to its function:
-
Flight Controller: _____ a) Provides power to motors
-
ESC: _____ b) Stabilizes camera
-
Gimbal: _____ c) Main structural support
-
Frame: _____ d) Controls drone flight
-
Battery: _____ e) Controls motor speed
- Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)
Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)
- Explain how a drone moves in each direction: (13 points)
- Forward: ________________________________
- Backward: ________________________________
- Left: ________________________________
- Right: ________________________________
- Up: ________________________________
- Rotate left: ________________________________
Assessment Rubric:
- Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
- Proficient (80-89%): Shows solid grasp of concepts with minor gaps
- Developing (70-79%): Understands basic concepts but lacks detail in complex areas
- Novice (Below 70%): Limited understanding, needs additional instruction
Grade 10-12 (14-16 Years)
Term 1: Introduction to Python Basics
Week 1: Writing Structured Python Code
Learning Objectives:
- Understand Python syntax and structure
- Learn proper code formatting and indentation
- Write clean, readable code following best practices
- Understand variables, data types, and basic operations
Key Concepts:
- Python: High-level programming language
- Syntax: Rules for writing Python code
- Indentation: Using spaces to organize code structure
- Variables: Named storage for data values
- Data Types: int, float, string, boolean
- Comments: Documentation within code using #
- Print Statement: Displaying output to screen
Code Structure Best Practices:
# Header comment explaining the program
# Author: Your Name
# Date: Today's Date
# Import statements
import module_name
# Constants (UPPERCASE naming)
MAX_VALUE = 100
# Main program logic
def main():
# Variable declarations
user_name = "Student"
age = 16
# Program logic with proper indentation
print(f"Hello, {user_name}!")
print(f"You are {age} years old.")
# Run the program
if __name__ == "__main__":
main()
Week 2: Functions and Loops
Learning Objectives:
- Create and use custom functions
- Understand function parameters and return values
- Implement for loops and while loops
- Apply loops to solve repetitive tasks
Key Concepts:
- Function: Reusable block of code that performs a specific task
- Parameters: Input values passed to functions
- Return Value: Output value from a function
- For Loop: Repeats code a specific number of times
- While Loop: Repeats code while a condition is true
- Range Function: Generates sequences of numbers
- Iteration: Each repetition of a loop
- Loop Control: Managing when loops start and stop
Function Examples:
# Simple function with no parameters
def greet():
print("Hello, World!")
# Function with parameters
def greet_person(name, age):
print(f"Hello, {name}! You are {age} years old.")
# Function with return value
def calculate_area(length, width):
area = length * width
return area
# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")
Loop Examples:
# For loop with range
for i in range(5):
print(f"Count: {i}")
# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(f"I like {fruit}")
# While loop
count = 0
while count < 3:
print(f"While loop count: {count}")
count += 1
Week 3: Using Python Libraries
Learning Objectives:
- Understand what Python libraries are and why they’re useful
- Learn to import and use common libraries
- Work with GPIOZero and time libraries
- Explore library documentation and help systems
Key Concepts:
- Library/Module: Pre-written code that adds functionality
- Import Statement: Bringing library functions into your program
- GPIOZero: Library for controlling Raspberry Pi GPIO pins
- Time Library: Functions for working with time and delays
- Documentation: Instructions for using library functions
- API: Application Programming Interface - how to use library functions
Library Usage Examples:
# Importing entire modules
import time
import math
# Importing specific functions
from gpiozero import LED, Button
from time import sleep
# Using time library
print("Starting program...")
time.sleep(2) # Wait 2 seconds
print("2 seconds have passed!")
# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")
# Using GPIOZero (for Raspberry Pi)
led = LED(18) # LED connected to GPIO pin 18
button = Button(2) # Button connected to GPIO pin 2
# Turn LED on and off
led.on()
sleep(1)
led.off()
Week 4: Controlling Motors with Python
Learning Objectives:
- Understand how to interface with motors using Python
- Learn about PWM (Pulse Width Modulation) for motor control
- Control motor speed and direction
- Implement safety features in motor control code
Key Concepts:
- Motor Control: Using code to make motors move
- PWM (Pulse Width Modulation): Method to control motor speed
- Duty Cycle: Percentage of time signal is “on” vs “off”
- Direction Control: Making motors spin clockwise/counterclockwise
- Motor Driver: Electronics that interface between Python and motors
- Safety Features: Code to prevent motor damage
Motor Control Examples:
from gpiozero import Motor, PWMOutputDevice
from time import sleep
# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)
# Basic motor control
def basic_motor_test():
print("Motor forward at full speed")
motor.forward(1.0) # Full speed forward
sleep(2)
print("Motor forward at half speed")
motor.forward(0.5) # Half speed forward
sleep(2)
print("Motor stopped")
motor.stop()
sleep(1)
print("Motor backward at full speed")
motor.backward(1.0) # Full speed backward
sleep(2)
motor.stop()
print("Motor test complete")
# PWM speed control example
def speed_ramp_test():
print("Ramping motor speed up...")
for speed in range(0, 101, 10): # 0 to 100% in 10% steps
motor_speed = speed / 100.0
motor.forward(motor_speed)
print(f"Speed: {speed}%")
sleep(0.5)
motor.stop()
print("Speed ramp complete")
# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()
Week 5: Controlling Sensors with Python
Learning Objectives:
- Interface with various sensors using Python
- Read and process sensor data
- Implement sensor-based decision making
- Create responsive programs based on sensor input
Key Concepts:
- Sensor: Device that detects and measures physical properties
- Analog vs Digital: Different types of sensor signals
- ADC (Analog-to-Digital Converter): Converts analog signals to digital
- Sensor Calibration: Adjusting sensor readings for accuracy
- Data Processing: Converting raw sensor data to useful information
- Polling vs Interrupts: Different ways to read sensor data
Common Sensors:
- Temperature sensors: Measure environmental temperature
- Light sensors (LDR): Detect light intensity
- Ultrasonic sensors: Measure distance using sound waves
- Motion sensors (PIR): Detect movement
- Pressure sensors: Measure force or pressure
Sensor Control Examples:
from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics
# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)
def read_temperature():
# Convert voltage to temperature (example conversion)
voltage = temp_sensor.voltage
temperature_c = (voltage - 0.5) * 100 # Example conversion formula
temperature_f = (temperature_c * 9/5) + 32
return temperature_c, temperature_f
# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)
def monitor_distance():
print("Distance monitoring (press Ctrl+C to stop)")
try:
while True:
distance = distance_sensor.distance * 100 # Convert to cm
print(f"Distance: {distance:.1f} cm")
if distance < 10:
print("WARNING: Object too close!")
sleep(0.5)
except KeyboardInterrupt:
print("Distance monitoring stopped")
# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)
def motion_detector():
print("Motion detector active...")
def motion_detected():
print("Motion detected!")
alert_led.on()
sleep(2)
alert_led.off()
def no_motion():
print("No motion")
alert_led.off()
# Set up motion sensor callbacks
motion.when_motion = motion_detected
motion.when_no_motion = no_motion
# Keep program running
try:
while True:
sleep(0.1)
except KeyboardInterrupt:
print("Motion detector stopped")
# Data logging example
def log_sensor_data():
readings = []
print("Collecting sensor data for 30 seconds...")
start_time = time.time()
while time.time() - start_time < 30:
temp_c, temp_f = read_temperature()
distance = distance_sensor.distance * 100
readings.append({
'timestamp': time.time(),
'temperature_c': temp_c,
'temperature_f': temp_f,
'distance_cm': distance
})
print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
sleep(1)
# Calculate statistics
temps = [r['temperature_c'] for r in readings]
distances = [r['distance_cm'] for r in readings]
print(f"\nData Summary:")
print(f"Average temperature: {statistics.mean(temps):.1f}°C")
print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
print(f"Average distance: {statistics.mean(distances):.1f}cm")
print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")
# Example usage
if __name__ == "__main__":
# Run different examples
monitor_distance() # Uncomment to run distance monitoring
# motion_detector() # Uncomment to run motion detection
# log_sensor_data() # Uncomment to run data logging
Assessment Test - Grade 10-12 (14-16 Years)
Week 1-2 Assessment: Python Fundamentals
Format: Coding Assignment + Written Questions (60 minutes)
Part A: Code Structure and Syntax (25 points)
- Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average
calculate average(10, 20, 30)
Your corrected code:
# Write corrected version here
Explanation of errors: ________________________________
- Write a well-structured Python program (15 points): Create a program that:
- Has proper header comments
- Uses appropriate variable names
- Calculates the area of different shapes (circle, rectangle, triangle)
- Uses functions with parameters and return values
- Follows proper indentation and formatting
Part B: Functions and Loops (30 points)
- Write a function called
print_multiplication_table(15 points):
- Takes one parameter:
number - Prints multiplication table for that number (1-10)
- Uses a for loop
- Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
- Password Checker Program (15 points): Write a program using while loop that:
- Asks user to enter a password
- Keeps asking until they enter “python123”
- Counts number of attempts
- Prints “Access granted” when correct
- Prints number of attempts it took
Week 3-5 Assessment: Libraries and Hardware Control
Format: Practical Coding Project (75 minutes)
Part A: Library Usage (20 points)
- Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______ # What library do you need for calculating average?
# Create sensor object
light_sensor = MCP3008(channel=0)
def read_light_levels():
readings = []
# Collect 10 readings
for i in range(______): # Fill in the range
reading = light_sensor.______ # What property gives the reading?
readings.append(reading)
print(f"Reading {i+1}: {reading:.3f}")
sleep(0.5)
# Calculate and print statistics
average = ______.mean(readings) # Which function calculates mean?
maximum = ______(readings) # Built-in function for maximum
minimum = ______(readings) # Built-in function for minimum
print(f"Average: {average:.3f}")
print(f"Maximum: {maximum:.3f}")
print(f"Minimum: {minimum:.3f}")
# Call the function
read_light_levels()
Part B: Motor Control Project (25 points)
- Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
- Use a temperature sensor to read room temperature
- Control a motor (fan) based on temperature:
- Below 20°C: Fan off
- 20-25°C: Fan at 30% speed
- 25-30°C: Fan at 60% speed
- Above 30°C: Fan at 100% speed
- Print current temperature and fan speed every 2 seconds
- Include safety features (motor stop function)
Part C: Sensor Integration Challenge (30 points)
- Security System Prototype (30 points): Create a basic security system that:
- Uses a motion sensor to detect movement
- Uses a distance sensor to detect objects too close
- Controls LEDs to indicate system status:
- Green LED: System normal
- Yellow LED: Motion detected
- Red LED: Intrusion alert (object < 20cm)
- Logs events with timestamps
- Runs continuously until user presses Ctrl+C
Requirements:
- Use at least 3 different libraries
- Include proper error handling
- Use functions to organize code
- Add meaningful comments
- Follow Python coding best practices
Sample code structure:
from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time
# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)
def log_event(message):
# Write function to log events with timestamp
pass
def check_security():
# Write function to check all sensors and control LEDs
pass
def main():
# Write main program loop
pass
if __name__ == "__main__":
main()
Assessment Rubric:
- Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
- Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
- Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
- Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
- Incomplete (Below 65%): Code doesn’t run or major portions missing
Additional Resources and Extensions
For All Grade Levels:
Vocabulary Glossary:
- Algorithm: Step-by-step instructions to solve a problem
- Bug: Error in code that prevents it from working correctly
- Debug: Process of finding and fixing errors in code
- Hardware: Physical components of computer systems
- Software: Programs and applications that run on hardware
- Interface: Way users interact with programs or devices
- Sensor: Device that detects changes in environment
- Actuator: Device that causes movement or action
Project Portfolio Suggestions:
- Weekly Reflection Journal: Students document learning and challenges
- Photo Documentation: Pictures of projects and experiments
- Video Demonstrations: Students explain their projects
- Peer Teaching: Advanced students help beginners
- Innovation Challenges: Open-ended problems to solve creatively
Cross-Curricular Connections:
- Math: Geometry in robotics, statistics in data analysis
- Science: Physics of flight, electronics principles
- Art: Creative programming projects, design thinking
- Social Studies: Impact of technology on society
- Language Arts: Technical writing, documentation skills
Safety Reminders:
- Always supervise young children with electronic components
- Check battery connections before powering devices
- Keep work area clean and organized
- Wash hands after handling electronic components
- Report any damaged equipment immediately
- Follow proper shutdown procedures for all devices
Assessment Portfolio Checklist:
- Completed weekly assessments
- Project documentation with photos
- Reflection essays on learning progress
- Peer evaluation forms
- Self-assessment rubrics
- Evidence of problem-solving process
- Creative extensions or improvements to basic projects
Continuation - Weeks 6-8 for All Grade Levels
Preschoolers (4-6 Years) - Weeks 6-8
Advanced STEM Exploration & Technology Awareness
Week 6: Technology Parts Awareness
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically be able to follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Technology Components: Basic parts that make devices work
- Circuits: Paths that electricity follows
- Assembly/Disassembly: Taking apart and putting together
- Electronics Safety: Safe handling of batteries and components
- Problem-Solving: Trying different solutions when something doesn’t work
Activities:
- Technology Exploration: Examine old keyboards, phones, calculators
- Simple Circuits: Connect bulbs to batteries with safe materials
- Assembly Practice: Take apart and reassemble simple toys
- Tech Parts Sorting: Group similar technology components
Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors
Week 7: Sequencing & Floor Grid Coding
Learning Objectives:
- Develop understanding of sequencing by arranging steps in correct order
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence through trial-and-error learning
Key Concepts:
- Sequencing: Putting steps in the right order
- Algorithm Cards: Visual instructions to follow
- Floor Grid Coding: Moving through spaces following directions
- Left/Right/Forward/Back: Basic directional concepts
- Trial and Error: Learning by trying and improving
Activities:
- Obstacle Course Coding: Navigate through simple obstacles using arrow cards
- Sequencing Games: Put daily routine cards in correct order
- Paper Maze Coding: Use arrows to show path through printed mazes
- Robot Friend: One child gives directions, another follows like a robot
Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets
Week 8: Advanced Unplugged Coding & Storytelling
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
- Debugging: Finding and fixing mistakes in directions
- Block Building: Using physical blocks to represent code
- Story Algorithms: Step-by-step instructions for telling stories
Activities:
- Debug the Path: Present incorrect direction sequences for children to fix
- IF/THEN Games: “If you see a triangle, then clap your hands”
- Story Coding: Use picture cards to create step-by-step stories
- Block Code Building: Stack blocks to represent programming sequences
Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling
Preschoolers Assessment - Weeks 6-8
Week 6 Assessment: Technology Awareness
Format: Hands-on Exploration + Observation (20 minutes)
- Technology Parts Recognition (10 points)
- Point to and name 3 technology items from the collection
- Show how a simple circuit works (bulb + battery)
- Safely handle electronic components
- Explain one thing each item helps us do
- Assembly Skills (10 points)
- Take apart a simple toy or device
- Put it back together correctly
- Identify which parts go where
- Ask for help when needed
Assessment Criteria:
- Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
- Developing (2): Safe handling, completes most tasks with minimal help
- Emerging (1): Needs guidance but participates actively
- Beginning (0): Requires extensive support
Week 7-8 Assessment: Advanced Unplugged Coding
Format: Physical Coding Challenges (25 minutes)
- Sequencing Challenge (12 points)
- Arrange 6 direction cards to navigate through obstacle course
- Explain why each step comes in that order
- Successfully complete the physical navigation
- Fix mistakes when path doesn’t work
- IF/THEN Logic (8 points)
- Follow conditional instructions: “IF you see blue, THEN hop”
- Create own IF/THEN rule for a friend to follow
- Demonstrate understanding with actions
- Story Algorithm (10 points)
- Use 5 picture cards to create logical story sequence
- Tell story following the card order
- Explain what happens if cards are mixed up
- Help fix a mixed-up story sequence
Practical Skills Rubric:
- Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
- Proficient (20-24 points): Completes all challenges correctly with minor guidance
- Developing (15-19 points): Understands concepts but needs support for complex tasks
- Beginning (Below 15 points): Requires significant help to participate
Grade 2-5 (7-11 Years) - Weeks 6-8
Advanced Scratch Programming & Game Development
Week 6: Game Structure and Design
Learning Objectives:
- Understand basic game structure (start, play, end)
- Use Scratch blocks to move characters and detect collisions
- Make characters move between different scenes
- Create scoring or win conditions
Key Concepts:
- Game Design Elements: Characters, backgrounds, objectives, rules
- Game Loop: Continuous cycle of input, processing, output
- Collision Detection: Knowing when sprites touch each other
- Scene Transitions: Moving between different game screens
- Win/Lose Conditions: Rules that determine game outcomes
- User Interface: Buttons, scores, and information displays
Advanced Scratch Concepts:
- Sensing Blocks: “touching color”, “distance to”, “key pressed”
- Variables: Storing score, lives, or time
- Broadcast Messages: Communication between sprites
- Clone Sprites: Creating multiple copies of objects
- Custom Blocks: Making your own programming blocks
Game Development Process:
- Planning Phase: Sketch game idea, list needed sprites and backgrounds
- Prototype: Create basic movement and interaction
- Enhancement: Add sounds, effects, and polish
- Testing: Play game and fix bugs
- Sharing: Present to classmates
Example Game Structure:
When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
If key space pressed:
Move player sprite
If touching enemy:
Change lives by -1
If lives = 0:
Say "Game Over!"
Stop all
Week 7: Transition to Text-Based Concepts
Learning Objectives:
- Prepare learners for text-based coding
- Understand basic programming concepts using blocks
- Use logic and loops to control sprite or robot actions
- Begin transition to robotics or advanced coding platforms
Key Concepts:
- Programming Fundamentals: Sequence, selection, iteration
- Logic Blocks: IF/ELSE statements in visual form
- Loop Types: Forever, repeat until, repeat X times
- Variables and Operations: Math in programming
- Event-Driven Programming: Responding to user input
- Modular Programming: Breaking code into smaller parts
Bridging Visual to Text:
- Block-to-Code Thinking: Understanding what blocks represent
- Pseudocode: Writing steps in plain English before coding
- Debugging Strategies: Systematic problem-solving approaches
- Code Organization: Keeping projects neat and logical
Advanced Programming Patterns:
// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
If game state = "menu":
Show menu options
If game state = "playing":
Run game logic
If game state = "game over":
Show final score
// Pattern 2: Object Behavior
When I start as a clone:
Go to random position
Forever:
Move 2 steps
If on edge, bounce
If touching player:
Change score by 10
Delete this clone
Week 8: Blockly Integration and Logic Puzzles
Learning Objectives:
- Solve logic puzzles using visual programming concepts
- Create games using Blockly platform
- Demonstrate understanding of programming fundamentals
- Apply creative problem-solving skills
Key Concepts:
- Blockly Platform: Google’s visual programming language
- Logic Puzzles: Problems requiring systematic thinking
- Algorithm Efficiency: Finding the best solution method
- Pattern Recognition: Identifying repeated solutions
- Creative Programming: Using code for artistic expression
Blockly vs. Scratch Comparison:
| Feature | Scratch | Blockly |
|---|---|---|
| Focus | Storytelling & Games | Logic & Algorithms |
| Interface | Stage-based | Puzzle-based |
| Output | Animated Projects | Problem Solutions |
| Progression | Creative Expression | Mathematical Thinking |
Logic Puzzle Types:
- Maze Solving: Navigate through obstacles
- Pattern Completion: Fill in missing sequences
- Conditional Logic: IF/THEN decision making
- Loop Optimization: Repeat actions efficiently
Grade 2-5 Assessment - Weeks 6-8
Week 6 Assessment: Game Development Project
Format: Scratch Game Creation + Presentation (45 minutes)
Part A: Game Planning (10 points)
- Game Design Document - Create a simple plan including:
- Game objective (what’s the goal?)
- Main character description
- Basic rules (how do you win/lose?)
- Required sprites and backgrounds
- Storyboard - Draw 3 screens showing:
- Game start screen
- Main gameplay
- Win/lose screen
Part B: Game Implementation (25 points) 3. Core Functionality (15 points):
-
Character moves with arrow keys or WASD
-
At least one interactive element (enemy, collectible, obstacle)
-
Basic collision detection (touching = something happens)
-
Clear win or lose condition
- Polish and Enhancement (10 points):
- Sound effects or music
- Visual feedback (score, lives, timer)
- Smooth sprite movement
- Creative backgrounds or costumes
Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):
-
Explain game rules clearly
-
Demonstrate gameplay for 2 minutes
-
Show different game scenarios
-
Handle questions from classmates
- Technical Reflection (5 points):
- Explain one challenging problem you solved
- Describe one improvement you would make
- Share one new Scratch skill you learned
Week 7-8 Assessment: Programming Concepts Mastery
Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)
Part A: Blockly Logic Challenges (20 points)
- Maze Navigation (8 points):
- Complete 3 increasingly difficult maze puzzles
- Use efficient solutions (minimal blocks)
- Demonstrate understanding of loops and conditionals
- Pattern Recognition (6 points):
- Solve sequence completion puzzles
- Identify and extend number/color patterns
- Create original pattern for others to solve
- Logic Puzzles (6 points):
- Complete IF/THEN decision trees
- Solve multi-step conditional problems
- Optimize solutions for clarity
Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:
[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]
Write in pseudocode (plain English): “When the program starts, ________________”
- Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”
Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________
Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:
Option A - Scratch: Create a “digital pet” that:
- Follows mouse cursor
- Changes expression when clicked
- Makes sound when hungry (timer-based)
- Has at least 3 different costumes
Option B - Blockly: Design a solution for:
- Robot that sorts colored objects
- Path that avoids all obstacles
- Pattern that creates art using loops
Assessment Rubric:
- Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
- Proficient (80-89%): Meets all requirements with good understanding demonstrated
- Developing (70-79%): Meets most requirements but may have gaps in complex concepts
- Novice (60-69%): Shows basic understanding but struggles with application
- Beginning (Below 60%): Needs significant support to demonstrate concepts
Grade 6-9 (11-14 Years) - Weeks 6-8
Drone Laws, Emergency Procedures & Practical Flying
Week 6: Drone Laws and Regulations (Kenya Focus)
Learning Objectives:
- Learn basic drone laws in Kenya (KCAA regulations)
- Understand where and how children can fly drones legally
- Develop awareness of responsible drone operation
- Understand the importance of aviation safety
Key Concepts:
- Kenya Civil Aviation Authority (KCAA): National aviation regulator
- Drone Registration: Required identification and documentation
- No-Fly Zones: Airports, government buildings, restricted areas
- Altitude Restrictions: Maximum height limitations
- Visual Line of Sight (VLOS): Maintaining visual contact
- Privacy Laws: Respecting others’ rights and property
Kenya Drone Regulations Summary:
- Registration Requirements:
- All drones over 250g must be registered with KCAA
- Operator license required for commercial operations
- Age restrictions for different categories of operation
- Operational Limits:
- Maximum altitude: 400 feet (120 meters) AGL
- Minimum distance from airports: 8km for major airports
- No flying over crowds or public events
- Daylight operations only (without special permits)
- Prohibited Areas:
- Within 5km of any airport
- Over government buildings and installations
- National parks without permits
- Private property without permission
Safety and Legal Guidelines for Young Pilots:
- Always have adult supervision
- Start with toy drones under 250g
- Practice in open, safe areas
- Respect others’ privacy and property
- Learn emergency procedures
- Keep drone in sight at all times
Week 7: Emergency Procedures and Responsible Flying
Learning Objectives:
- Review key safety and legal concepts from previous weeks
- Understand emergency basics for beginner flyers
- Develop decision-making skills for unexpected situations
- Practice responsible pilot behavior
Key Concepts:
- Emergency Procedures: Systematic responses to problems
- Risk Assessment: Evaluating dangers before flying
- Decision Making: Choosing appropriate actions under pressure
- Communication: Alerting others during emergencies
- Equipment Failure: What to do when drone malfunctions
- Weather Awareness: Recognizing dangerous conditions
Emergency Scenarios and Responses:
- Lost Communication with Drone:
- Stay calm and observe drone behavior
- Activate Return-to-Home (RTH) function if available
- Move to higher ground for better signal
- Prepare for manual landing if signal returns
- Never chase after a flyaway drone
- Low Battery Warning:
- Immediately begin landing sequence
- Choose nearest safe landing spot
- Avoid flying over people or property
- Land even if not at original takeoff point
- Safety is more important than convenience
- Unexpected Weather Changes:
- Monitor weather conditions constantly
- Land immediately if wind increases
- Avoid flying in rain or snow
- Watch for sudden temperature changes
- When in doubt, don’t fly
- Equipment Malfunction:
- Attempt controlled landing immediately
- Don’t try to fix problems while airborne
- Inform other people in the area
- Document the problem for later analysis
- Never continue flying with known issues
Mission Planning Process:
- Pre-flight Planning: Weather check, equipment inspection, route planning
- Risk Assessment: Identify potential hazards and mitigation strategies
- Communication Plan: Inform others of flight activities
- Emergency Procedures: Know what to do if things go wrong
- Post-flight Review: Analyze what went well and areas for improvement
Week 8: Practical Flying Skills and Team Challenges
Learning Objectives:
- Demonstrate ability to control a mini drone (takeoff, hover, land)
- Apply basic flight skills in problem-solving mission scenarios
- Work as a team to complete drone-based challenges
- Evaluate personal progress and set goals for improvement
Key Concepts:
- Flight Control Mastery: Smooth, precise drone movements
- Situational Awareness: Understanding surroundings during flight
- Mission Planning: Preparing for specific flight objectives
- Teamwork: Collaborative problem-solving with drones
- Performance Evaluation: Self-assessment and peer feedback
- Safety Leadership: Taking responsibility for safe operations
Basic Flight Skills Progression:
- Fundamental Controls:
- Smooth takeoff to hover
- Maintaining steady hover
- Controlled landing
- Forward/backward movement
- Left/right movement
- Rotation control
- Intermediate Maneuvers:
- Figure-8 patterns
- Precision landing on target
- Obstacle avoidance
- Following predetermined paths
- Coordinated movements
- Advanced Challenges:
- Team relay races
- Rescue simulations
- Precision delivery tasks
- Group choreography
- Time-based challenges
Mission Scenarios:
Mission 1: Search and Rescue
- Objective: Locate “missing person” (target) in designated area
- Skills: Systematic search patterns, communication, observation
- Time limit: 5 minutes
- Success criteria: Target identified and location communicated
Mission 2: Delivery Challenge
- Objective: Transport small payload from Point A to Point B
- Skills: Precision flying, cargo management, safe landing
- Obstacles: Wind conditions, landing accuracy requirements
- Success criteria: Payload delivered undamaged within time limit
Mission 3: Team Coordination
- Objective: Multiple drones work together to complete complex task
- Skills: Communication, timing, spatial awareness
- Challenge: Choreographed flight pattern or group problem-solving
- Success criteria: All drones complete task without collisions
Safety Protocols for Practical Flying:
- Always maintain 10-foot safety zone around flying area
- Designate specific roles: pilot, observer, safety officer
- Use hand signals for communication during loud operations
- Practice emergency landing procedures before each session
- Rotate roles so everyone experiences different responsibilities
Grade 6-9 Assessment - Weeks 6-8
Week 6 Assessment: Drone Laws and Regulations
Format: Written Test + Legal Scenario Analysis (40 minutes)
Part A: Kenya Aviation Law Knowledge (25 points)
- KCAA Regulations (10 points) Fill in the blanks:
- Drones over ______ grams must be registered with KCAA
- Maximum altitude for recreational flying is ______ feet
- Minimum distance from major airports is ______ kilometers
- Commercial drone operations require a ______ license
- Drones must remain within ______ line of sight
- No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
- Your school playground during lunch break: ______
- Open field 2km from Wilson Airport: ______
- Your backyard with adult supervision: ______
- Uhuru Park during a public event: ______
- Private farm with owner’s permission: ______
- Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:
Part B: Scenario-Based Decision Making (20 points)
- Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:
Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________
Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________
Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________
Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________
Part C: Responsible Pilot Planning (15 points)
-
Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:
-
-
-
[Continue through 10]
Week 7-8 Assessment: Emergency Procedures and Practical Skills
Format: Practical Flight Test + Emergency Response Simulation (60 minutes)
Part A: Emergency Response Knowledge (20 points)
- Emergency Procedures (15 points) Describe the correct response for each emergency:
Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
- Risk Assessment (5 points) Identify 3 risks for flying in each environment:
- School playground: ____________, ____________, ____________
- Open field: ____________, ____________, ____________
Part B: Practical Flight Skills Assessment (30 points)
- Basic Flight Controls (15 points) Demonstrate competency in:
- Smooth takeoff and landing (3 points)
- Stable hovering for 30 seconds (3 points)
- Forward/backward precision movement (3 points)
- Left/right precision movement (3 points)
- Controlled rotation (3 points)
- Mission Challenge (15 points) Complete ONE of the following missions:
Option A - Navigation Course:
- Fly through 5 waypoints in sequence
- Land within 1-meter target circle
- Complete within 3 minutes
Option B - Team Coordination:
- Work with partner to complete relay challenge
- Communicate effectively during handoff
- Maintain safety throughout mission
Part C: Leadership and Safety Evaluation (15 points)
- Safety Leadership (8 points) While others are flying, demonstrate:
- Proper safety zone maintenance
- Clear communication with pilot
- Appropriate responses to unsafe situations
- Helpful coaching and encouragement
- Self-Assessment and Goal Setting (7 points) Written reflection:
- What flight skill are you most confident with? Why?
- What area needs the most improvement?
- Set one specific goal for future drone flying
- Describe one way you can help others fly safely
Practical Skills Rubric:
- Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
- Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
- Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
- Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
- Beginning Pilot (Below 60%): Requires significant instruction and supervision
Grade 10-12 (14-16 Years) - Weeks 6-8
Advanced Python Projects & Integration
Week 6-7: Integrated Systems Project (Combined Weeks)
Learning Objectives:
- Combine motors and sensors in complex systems
- Debug integrated hardware/software systems
- Apply creative problem-solving to real-world challenges
- Document projects professionally
Key Concepts:
- Systems Integration: Combining multiple components into unified solutions
- Hardware-Software Interface: Code that bridges digital and physical worlds
- System Architecture: Planning complex projects with multiple subsystems
- Error Handling: Managing failures gracefully in complex systems
- Performance Optimization: Making systems run efficiently
- Documentation Standards: Professional project recording
Advanced Integration Concepts:
1. Multi-Sensor Fusion
import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json
class SensorFusion:
def __init__(self):
self.distance_sensor = DistanceSensor(echo=24, trigger=23)
self.motion_sensor = MotionSensor(4)
self.light_sensor = MCP3008(channel=0)
self.temp_sensor = MCP3008(channel=1)
# Data queues for thread communication
self.sensor_data = queue.Queue()
self.running = False
def read_sensors(self):
"""Continuous sensor reading in separate thread"""
while self.running:
try:
data = {
'timestamp': time.time(),
'distance': self.distance_sensor.distance * 100,
'motion': self.motion_sensor.motion_detected,
'light_level': self.light_sensor.voltage,
'temperature': self.convert_temp(self.temp_sensor.voltage)
}
self.sensor_data.put(data)
sleep(0.1) # 10Hz sampling rate
except Exception as e:
print(f"Sensor reading error: {e}")
def convert_temp(self, voltage):
"""Convert sensor voltage to temperature"""
return (voltage - 0.5) * 100 # Example conversion
def start_monitoring(self):
"""Start sensor monitoring thread"""
self.running = True
self.sensor_thread = threading.Thread(target=self.read_sensors)
self.sensor_thread.start()
def stop_monitoring(self):
"""Stop sensor monitoring"""
self.running = False
if hasattr(self, 'sensor_thread'):
self.sensor_thread.join()
2. Intelligent Control Systems
class SmartEnvironmentController:
def __init__(self):
self.sensors = SensorFusion()
self.fan_motor = Motor(forward=2, backward=3)
self.heater_relay = OutputDevice(18)
self.lights = PWMOutputDevice(19)
# Control parameters
self.target_temp = 22.0 # Target temperature in Celsius
self.temp_tolerance = 1.0
self.light_threshold = 0.3
# Control state
self.auto_mode = True
self.manual_override = False
def analyze_environment(self, sensor_data):
"""Intelligent decision making based on sensor data"""
decisions = {
'fan_speed': 0.0,
'heater_on': False,
'light_level': 0.0,
'alert_status': 'normal'
}
# Temperature control logic
temp_diff = sensor_data['temperature'] - self.target_temp
if temp_diff > self.temp_tolerance: # Too hot
decisions['fan_speed'] = min(1.0, temp_diff / 5.0) # Scale fan speed
decisions['heater_on'] = False
elif temp_diff < -self.temp_tolerance: # Too cold
decisions['fan_speed'] = 0.0
decisions['heater_on'] = True
# Light control logic
if sensor_data['light_level'] < self.light_threshold:
decisions['light_level'] = 1.0 - sensor_data['light_level'] # Complement lighting
# Security monitoring
if sensor_data['motion'] and sensor_data['distance'] < 20: # Close motion
decisions['alert_status'] = 'intrusion_detected'
elif sensor_data['distance'] < 5: # Very close object
decisions['alert_status'] = 'obstacle_warning'
return decisions
def execute_controls(self, decisions):
"""Execute control decisions"""
if not self.manual_override:
# Motor control
if decisions['fan_speed'] > 0:
self.fan_motor.forward(decisions['fan_speed'])
else:
self.fan_motor.stop()
# Heater control
if decisions['heater_on']:
self.heater_relay.on()
else:
self.heater_relay.off()
# Light control
self.lights.value = decisions['light_level']
def run_control_loop(self):
"""Main control loop"""
self.sensors.start_monitoring()
try:
while True:
if not self.sensors.sensor_data.empty():
current_data = self.sensors.sensor_data.get()
decisions = self.analyze_environment(current_data)
self.execute_controls(decisions)
# Log system status
self.log_system_status(current_data, decisions)
sleep(0.5) # Control loop frequency
except KeyboardInterrupt:
print("Shutting down control system...")
finally:
self.sensors.stop_monitoring()
self.fan_motor.stop()
self.heater_relay.off()
self.lights.off()
def log_system_status(self, sensor_data, decisions):
"""Log system performance data"""
log_entry = {
'timestamp': sensor_data['timestamp'],
'sensors': sensor_data,
'controls': decisions,
'mode': 'auto' if self.auto_mode else 'manual'
}
# In a real system, this would write to a file or database
print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
f"Fan={decisions['fan_speed']:.1f}, "
f"Alert={decisions['alert_status']}")
3. Project Documentation Standards
"""
Smart Environment Control System
================================
Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0
Description:
An intelligent system that monitors environmental conditions and automatically
adjusts heating, cooling, and lighting based on sensor feedback.
Hardware Requirements:
- Raspberry Pi 4 or similar
- Temperature sensor (DS18B20 or similar)
- Light sensor (LDR with MCP3008 ADC)
- Motion sensor (PIR)
- Distance sensor (HC-SR04)
- DC Motor (for fan simulation)
- Relay module (for heater control)
- PWM-controlled LED (for lighting)
Software Dependencies:
- Python 3.7+
- gpiozero library
- threading module (standard library)
- queue module (standard library)
- json module (standard library)
Installation:
pip install gpiozero
Usage:
python smart_environment.py
Configuration:
Modify target_temp and light_threshold variables in SmartEnvironmentController
class to adjust system behavior.
Testing:
Run included test functions to verify sensor readings and control outputs
before deploying the full system.
Known Issues:
- Temperature sensor calibration may need adjustment for local conditions
- Motion sensor has 2-second reset time that affects rapid detection
Future Enhancements:
- Web interface for remote monitoring
- Data logging to CSV files
- Machine learning for predictive control
- Mobile app integration
"""
Project Examples for Students:
Project 1: Smart Garden Monitor
- Monitors soil moisture, light, and temperature
- Controls watering pump and grow lights
- Logs plant growth data
- Sends alerts when intervention needed
Project 2: Home Security System
- Multiple sensor integration (motion, door, window)
- Camera trigger on detection
- SMS/email notifications
- Mobile app control interface
Project 3: Weather Station
- Measures temperature, humidity, pressure, wind
- Data logging with timestamps
- Weather prediction algorithms
- Web dashboard for data visualization
Project 4: Automated Greenhouse
- Climate control (temperature, humidity)
- Automated watering system
- Light cycle management
- Growth optimization algorithms
Week 8: Project Presentations and Assessment
Learning Objectives:
- Present technical projects professionally
- Give and receive constructive feedback
- Self-evaluate learning progress and achievements
- Plan next steps for continued learning
Key Concepts:
- Technical Communication: Explaining complex systems clearly
- Presentation Skills: Engaging audiences with technical content
- Peer Review: Constructive feedback and collaboration
- Self-Assessment: Honest evaluation of own work
- Professional Development: Planning continued learning paths
- Portfolio Building: Documenting achievements for future opportunities
Presentation Structure:
- Project Overview (2 minutes)
- Problem statement and objectives
- Target audience and use cases
- Key features and functionality
- Technical Demonstration (2 minutes)
- Live system operation
- Key components and how they work
- Code walkthrough of critical sections
- Challenges and Solutions (1 minute)
- Major obstacles encountered
- Creative solutions implemented
- Lessons learned from failures
Evaluation Criteria:
Technical Merit (40%):
- System functionality and reliability
- Code quality and organization
- Creative problem-solving approach
- Integration of multiple technologies
Communication (30%):
- Clear explanation of technical concepts
- Engaging presentation delivery
- Appropriate use of visual aids
- Effective response to questions
Documentation (20%):
- Complete project documentation
- Code comments and structure
- User instructions and setup guides
- Reflection on learning process
Collaboration (10%):
- Constructive feedback to peers
- Professional interaction during Q&A
- Willingness to share knowledge
- Respectful critique and discussion
Python Programming Trivia Challenge: End the term with fun technical questions:
- What does “PEP 8” refer to in Python?
- What’s the difference between
==andisin Python? - How do you handle exceptions in Python?
- What is a Python decorator?
- What’s the difference between a list and a tuple?
Grade 10-12 Final Assessment - Weeks 6-8
Integrated Systems Project Assessment
Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)
Project Requirements: Students must create an integrated system that combines:
- At least 3 different sensors
- At least 2 actuators (motors, lights, relays, etc.)
- Data logging and analysis
- User interface (command line or simple GUI)
- Error handling and safety features
Part A: Technical Implementation (40 points)
System Design (10 points)
- Clear problem definition and solution approach
- System architecture diagram showing component relationships
- Hardware schematic or connection diagram
- Software flowchart or algorithm description
Code Quality (15 points)
- Well-structured, modular code with functions/classes
- Appropriate variable names and code organization
- Comprehensive comments explaining complex sections
- Error handling for hardware failures
- Efficient algorithms and resource usage
Hardware Integration (15 points)
- Stable sensor readings with appropriate filtering
- Reliable actuator control with safety limits
- Proper electrical connections and component usage
- System operates reliably for extended periods
- Professional cable management and mounting
Part B: Documentation and Communication (25 points)
Project Documentation (15 points) Create a complete project report including:
- Executive summary of project goals and achievements
- Detailed technical specifications and requirements
- Installation and setup instructions
- User manual with clear operating procedures
- Troubleshooting guide for common problems
- Code documentation with API reference
Technical Presentation (10 points)
- Clear 5-minute presentation explaining project
- Live demonstration of working system
- Professional slides with technical diagrams
- Confident handling of technical questions
- Appropriate use of technical vocabulary
Part C: Innovation and Problem Solving (20 points)
Creative Solutions (10 points)
- Original approach to solving chosen problem
- Creative use of available hardware and software
- Evidence of iterative design and improvement
- Solutions show depth of understanding beyond basic requirements
Advanced Features (10 points) Choose and implement at least TWO:
- Machine learning or AI decision making
- Network communication (IoT connectivity)
- Mobile app or web interface
- Data visualization and analytics
- Predictive algorithms or optimization
- Integration with external APIs or services
Part D: Professional Skills (15 points)
Peer Collaboration (8 points)
- Constructive feedback provided to classmates
- Professional behavior during presentations
- Willingness to help others debug problems
- Respectful and insightful questions during Q&A
Self-Assessment (7 points) Written reflection addressing:
- Most significant technical challenge and how you overcame it
- What you would do differently if starting over
- How this project connects to potential career interests
- Specific skills you want to develop further
- Your confidence level with different aspects of the project
Sample Project Evaluation Rubric:
Exceptional (90-100%)
- System exceeds all requirements with innovative features
- Code is publication-quality with comprehensive documentation
- Presentation is engaging and demonstrates deep understanding
- Shows leadership in helping others and contributing to class learning
- Self-reflection shows sophisticated understanding of learning process
Proficient (80-89%)
- System meets all requirements reliably
- Code is well-structured with good documentation
- Presentation is clear and technically accurate
- Actively participates in peer learning and feedback
- Self-reflection shows good awareness of strengths and growth areas
Developing (70-79%)
- System meets most requirements with minor issues
- Code works but may have organizational or documentation gaps
- Presentation covers required topics but may lack depth
- Participates adequately in class activities
- Self-reflection shows basic understanding of learning process
Beginning (60-69%)
- System meets basic requirements but has significant limitations
- Code works for demonstration but has structural or reliability issues
- Presentation covers basics but shows limited understanding
- Minimal participation in peer activities
- Self-reflection is superficial or lacks insight
Incomplete (Below 60%)
- System fails to meet basic requirements or doesn’t function reliably
- Code has major issues that prevent proper operation
- Presentation is unclear or shows misunderstanding of concepts
- Little to no participation in collaborative learning
- Self-reflection missing or shows no evidence of learning
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Notes
I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:
What’s Included:
For Each Grade Level:
- Detailed weekly lesson notes covering weeks 1-8 content
- Key concepts and learning objectives for each topic
- Practical examples and code samples (for programming grades)
- Age-appropriate assessment tests with multiple formats
Assessment Formats:
- Preschoolers (4-6): Practical/observational assessments with hands-on activities
- Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
- Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
- Grade 10-12 (14-16): Coding assignments + hardware integration projects
Key Features:
- ✅ Covers all 8 weeks of Term 1 content
- ✅ Aligned with curriculum from the IoT & Robotics document
- ✅ Progressive difficulty appropriate for each age group
- ✅ Practical assessments that test real understanding
- ✅ Detailed rubrics for fair evaluation
- ✅ Extension activities for advanced learners
- ✅ Safety guidelines and best practices
Topics Covered:
- Preschoolers: STEM basics, simple machines, unplugged coding
- Grade 2-5: Scratch programming, Blockly games, interface navigation
- Grade 6-9: Drone basics, aviation principles, safety regulations
- Grade 10-12: Python programming, hardware control, sensor integration
Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.
Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
IoT & Robotics Term 1 - Complete Notes & Assessment Tests
Table of Contents
- Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
- Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
- Grade 6-9 (11-14 Years) - Drone Aviation Introduction
- Grade 10-12 (14-16 Years) - Python Basics
Preschoolers (4-6 Years)
Term 1: STEM Storytelling & Coding Toys
Week 1: Introduction to STEM
Learning Objectives:
- Understand basic concepts of STEM (Science, Technology, Engineering, Math)
- Spark excitement and curiosity about STEM through hands-on activities
- Foster teamwork through group experiments
- Develop early thinking through guided play and experimentation
Key Concepts:
- Science: Learning about the world around us through observation
- Technology: Simple tools and devices that help us
- Engineering: Building and creating solutions
- Mathematics: Numbers, shapes, and patterns in everyday life
Activities:
- Floating vs. Sinking experiments with various objects
- Basic robot interaction and exploration
- STEM vocabulary building games
- Classification activities
Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet
Week 2: STEM Play Corners
Learning Objectives:
- Explore different STEM areas through play stations
- Develop fine motor skills through hands-on manipulation
- Practice problem-solving through guided discovery
- Build confidence in exploring new concepts
Key Concepts:
- Play-based learning: Learning through exploration and fun
- Spatial awareness: Understanding shapes, sizes, and positions
- Cause and effect: Understanding that actions have results
- Collaboration: Working together to solve problems
Week 3: Simple Machines & Environmental Science
Learning Objectives:
- Identify simple machines in everyday life
- Understand basic environmental concepts
- Develop observation skills
- Connect STEM to the natural world
Key Concepts:
- Simple Machines: Lever, pulley, wheel, ramp
- Environment: Plants, animals, weather, seasons
- Observation: Using our senses to learn
- Nature patterns: Recognizing patterns in nature
Week 4: Unplugged Coding
Learning Objectives:
- Introduction to coding concepts without computers
- Understand sequence and order
- Develop logical thinking
- Practice following and giving instructions
Key Concepts:
- Sequence: Steps in order
- Instructions: Clear directions to follow
- Algorithms: Step-by-step solutions
- Patterns: Recognizing and creating patterns
Assessment Test - Preschoolers (4-6 Years)
Week 1-2 Assessment: STEM Basics
Format: Practical/Observational Assessment
- Floating or Sinking? (Show child various objects)
- Point to objects that will float: feather, cork, plastic toy
- Point to objects that will sink: stone, coin, marble
- Explain why you think so (in simple words)
- STEM Matching (Picture cards)
- Match the scientist to the magnifying glass
- Match the engineer to the building blocks
- Match the mathematician to the numbers
- Match the technologist to the computer
- Following Instructions
- Can follow 2-step instructions: “Pick up the red block and put it in the box”
- Can give simple instructions to a friend
- Can arrange objects in order (biggest to smallest)
Assessment Rubric:
- Exceeding (3): Completes all tasks independently with explanation
- Meeting (2): Completes most tasks with minimal guidance
- Approaching (1): Attempts tasks with significant support
- Beginning (0): Needs extensive help to participate
Week 3-4 Assessment: Simple Machines & Coding
Format: Hands-on Demonstration
- Simple Machines Hunt
- Find the lever (seesaw, scissors)
- Find the wheel (bicycle, toy car)
- Find the ramp (slide, wedge)
- Explain what each machine helps us do
- Nature Observation
- Draw or point to living things vs. non-living things
- Identify basic shapes in nature (circles in flowers, triangles in mountains)
- Name things that grow vs. things that are made
- Unplugged Coding Challenge
- Arrange sequence cards to show morning routine
- Give directions to help friend reach the treasure
- Complete a simple pattern with blocks or shapes
Grade 2-5 (7-11 Years)
Term 1: Scratch & Blockly Programming
Week 1: Introduction to Programming
Learning Objectives:
- Understand what programming is
- Learn about Scratch programming environment
- Install and explore Scratch interface
- Grasp the concept of sequencing
Key Concepts:
- Programming: Giving instructions to computers
- Scratch: Visual programming language using blocks
- Interface: The screen where we work with Scratch
- Sequencing: Putting commands in the right order
- Sprites: Characters in Scratch programs
- Stage: Where Scratch programs run
Core Activities:
- Explore Scratch interface and tools
- Identify different areas (sprite area, blocks palette, stage)
- Learn about different block categories (Motion, Looks, Sound, etc.)
- Create first simple animation
Week 2: Understanding Scratch Interface
Learning Objectives:
- Navigate Scratch interface confidently
- Understand different block categories
- Create basic sprite movements
- Save and load projects
Key Concepts:
- Blocks Palette: Where programming blocks are stored
- Scripts Area: Where we build our programs
- Motion Blocks: Make sprites move
- Looks Blocks: Change sprite appearance
- Events: What starts our programs running
Week 3: Setting Up Scratch Projects
Learning Objectives:
- Plan and organize Scratch projects
- Understand project structure
- Use backgrounds and sprites effectively
- Practice debugging simple problems
Key Concepts:
- Project Planning: Thinking before coding
- Backgrounds: Scenes for our programs
- Sprite Library: Ready-made characters
- Debugging: Finding and fixing problems
Week 4: Introduction to Blockly
Learning Objectives:
- Understand Blockly visual programming
- Compare Blockly with Scratch
- Complete basic Blockly puzzles
- Transfer concepts between platforms
Key Concepts:
- Blockly: Another visual programming language
- Puzzle-based Learning: Learning through solving challenges
- Logic Blocks: Making decisions in programs
- Loops: Repeating actions
Week 5: Blockly Games for Scratch Programmers
Learning Objectives:
- Apply Scratch knowledge to Blockly games
- Solve increasingly complex puzzles
- Understand programming logic and flow
- Build problem-solving confidence
Key Concepts:
- Game Logic: Rules that make games work
- Progressive Difficulty: Challenges that get harder
- Pattern Recognition: Seeing repeated solutions
- Persistence: Keep trying when challenges are difficult
Assessment Test - Grade 2-5 (7-11 Years)
Week 1-3 Assessment: Scratch Fundamentals
Format: Practical Computer Assessment (30 minutes)
Part A: Interface Knowledge (10 points)
- Label the parts of Scratch interface:
- Blocks Palette
- Scripts Area
- Stage
- Sprite Area
- Match the block colors to their functions:
- Motion blocks: _____ (Blue)
- Looks blocks: _____ (Purple)
- Sound blocks: _____ (Pink)
- Events blocks: _____ (Yellow)
Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:
-
Move 10 steps forward
-
Turn 90 degrees right
-
Say “Hello” for 2 seconds
-
Change color
- Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]
Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?
-
Missing “when green flag clicked” block
-
Sprite is already at the edge
-
Motion blocks aren’t connected
-
All of the above
- Create a simple animation showing a cat walking across the stage.
Week 4-5 Assessment: Blockly & Problem Solving
Format: Computer-based Blockly Challenges (25 minutes)
Part A: Blockly Basics (8 points)
- Complete the “Move Forward” puzzle in Blockly
- Complete the “Turn Left/Right” puzzle
- Complete the “Repeat Loop” puzzle
- Complete the “If/Else” puzzle
Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:
Repeat 4 times:
Move forward
Turn right 90 degrees
Answer: _________________
- Write Blockly code to make a character:
- Move forward 3 steps
- Turn left if path is blocked
- Repeat until reaching goal
Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:
- Create a Scratch program that does the same thing as this Blockly code:
When started: Repeat 5 times: Move forward 20 steps Wait 1 second
Assessment Rubric:
- Advanced (90-100%): Completes all tasks efficiently with creative additions
- Proficient (80-89%): Completes most tasks correctly with minor errors
- Developing (70-79%): Completes basic tasks but struggles with complex problems
- Beginning (Below 70%): Needs significant support to complete tasks
Grade 6-9 (11-14 Years)
Term 1: Drone Aviation Introduction
Week 1: Introduction to Drones and Aviation Basics
Learning Objectives:
- Understand what drones are and their applications
- Learn basic aviation principles
- Identify different types of aircraft
- Understand the evolution of flight
Key Concepts:
- Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
- Remote Pilot: Person controlling the drone from the ground
- Autonomous Flight: Drones flying with minimal human control
- Commercial vs. Recreational Use: Different purposes for drones
- Four Forces of Flight: Lift, Weight, Thrust, Drag
- Aerodynamics: How air moves around objects in flight
Applications of Drones:
- Photography and videography
- Search and rescue operations
- Agriculture monitoring
- Package delivery
- Scientific research
- Military operations
Week 2: Drone Safety Rules and Best Practices
Learning Objectives:
- Learn essential drone safety protocols
- Understand pre-flight checklist procedures
- Identify potential hazards and risks
- Develop responsible drone operation habits
Key Concepts:
- Pre-flight Inspection: Checking drone condition before flying
- Weather Conditions: How weather affects drone flight
- Battery Safety: Proper battery handling and storage
- Emergency Procedures: What to do when things go wrong
- Situational Awareness: Being aware of surroundings while flying
Safety Rules:
- Always maintain visual contact with drone
- Check weather conditions before flying
- Inspect drone and equipment before each flight
- Fly in open areas away from people and property
- Never fly above 400 feet
- Respect others’ privacy
- Land immediately if drone malfunctions
Week 3: FAA/UAS Regulations (Basic Overview)
Learning Objectives:
- Understand basic aviation regulations
- Learn about no-fly zones and restricted airspace
- Understand registration requirements
- Learn about pilot certification basics
Key Concepts:
- Federal Aviation Administration (FAA): Government agency regulating aviation
- Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
- No-Fly Zones: Areas where drone flight is prohibited
- Remote Pilot Certificate: License required for commercial drone operations
- Registration: Required identification for drones over 0.55 pounds
Basic Regulations:
- Drones must be registered if over 0.55 lbs (250 grams)
- Maximum altitude: 400 feet above ground level
- Must yield right-of-way to manned aircraft
- No flying over groups of people
- No flying at night without special certification
- Respect airport operational areas (usually 5-mile radius)
Week 4: Key Drone Types & Components
Learning Objectives:
- Identify different drone configurations
- Understand key drone components and their functions
- Compare advantages and disadvantages of different designs
- Learn basic maintenance requirements
Key Concepts:
- Multirotor: Drones with multiple rotating propellers
- Fixed-wing: Airplane-like drones with wings
- Hybrid VTOL: Vertical takeoff and landing with forward flight capability
- Frame: Main structure holding all components
- Flight Controller: Computer controlling drone flight
- ESC (Electronic Speed Controller): Controls motor speed
- Gimbal: Stabilizes camera during flight
Drone Types:
- Quadcopter: 4 rotors, most common configuration
- Hexacopter: 6 rotors, more redundancy and payload capacity
- Octocopter: 8 rotors, highest redundancy and capacity
- Fixed-wing: Longer flight times, faster speeds
- Racing drones: Small, fast, agile for competitive flying
Week 5: Basic Principles of Flight
Learning Objectives:
- Understand the four forces of flight in detail
- Learn how drones achieve controlled flight
- Understand stability and control concepts
- Explore flight dynamics and physics
Key Concepts:
- Lift: Upward force generated by rotors or wings
- Weight (Gravity): Downward force pulling drone toward earth
- Thrust: Forward force propelling drone through air
- Drag: Resistance force opposing motion through air
- Center of Gravity: Balance point of drone
- Pitch, Roll, Yaw: Three axes of rotation
- Gyroscopic Effect: How spinning rotors affect stability
Flight Control:
- Throttle: Controls altitude (up/down)
- Pitch: Controls forward/backward movement
- Roll: Controls left/right movement
- Yaw: Controls rotation (turning left/right)
- Trim: Fine adjustments for balanced flight
Assessment Test - Grade 6-9 (11-14 Years)
Week 1-2 Assessment: Drone Basics and Safety
Format: Written Test + Practical Safety Demonstration (45 minutes)
Part A: Multiple Choice (20 points)
-
What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle
-
Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight
-
What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera
-
The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet
-
What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors
Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)
- Explain three commercial applications of drones: (9 points)
- Why is it important to maintain visual contact with your drone during flight? (6 points)
Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures
Week 3-5 Assessment: Regulations and Flight Principles
Format: Written Test + Flight Theory Application (50 minutes)
Part A: Regulations Knowledge (20 points)
- True/False (10 points)
- Drones under 0.55 lbs need to be registered: ___
- You can fly your drone anywhere as long as it’s daytime: ___
- Commercial drone operations require a Remote Pilot Certificate: ___
- Drones must always yield to manned aircraft: ___
- Flying over groups of people is allowed with permission: ___
- What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:
Part B: Drone Components (15 points) 3. Match the component to its function:
-
Flight Controller: _____ a) Provides power to motors
-
ESC: _____ b) Stabilizes camera
-
Gimbal: _____ c) Main structural support
-
Frame: _____ d) Controls drone flight
-
Battery: _____ e) Controls motor speed
- Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)
Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)
- Explain how a drone moves in each direction: (13 points)
- Forward: ________________________________
- Backward: ________________________________
- Left: ________________________________
- Right: ________________________________
- Up: ________________________________
- Rotate left: ________________________________
Assessment Rubric:
- Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
- Proficient (80-89%): Shows solid grasp of concepts with minor gaps
- Developing (70-79%): Understands basic concepts but lacks detail in complex areas
- Novice (Below 70%): Limited understanding, needs additional instruction
Grade 10-12 (14-16 Years)
Term 1: Introduction to Python Basics
Week 1: Writing Structured Python Code
Learning Objectives:
- Understand Python syntax and structure
- Learn proper code formatting and indentation
- Write clean, readable code following best practices
- Understand variables, data types, and basic operations
Key Concepts:
- Python: High-level programming language
- Syntax: Rules for writing Python code
- Indentation: Using spaces to organize code structure
- Variables: Named storage for data values
- Data Types: int, float, string, boolean
- Comments: Documentation within code using #
- Print Statement: Displaying output to screen
Code Structure Best Practices:
# Header comment explaining the program
# Author: Your Name
# Date: Today's Date
# Import statements
import module_name
# Constants (UPPERCASE naming)
MAX_VALUE = 100
# Main program logic
def main():
# Variable declarations
user_name = "Student"
age = 16
# Program logic with proper indentation
print(f"Hello, {user_name}!")
print(f"You are {age} years old.")
# Run the program
if __name__ == "__main__":
main()
Week 2: Functions and Loops
Learning Objectives:
- Create and use custom functions
- Understand function parameters and return values
- Implement for loops and while loops
- Apply loops to solve repetitive tasks
Key Concepts:
- Function: Reusable block of code that performs a specific task
- Parameters: Input values passed to functions
- Return Value: Output value from a function
- For Loop: Repeats code a specific number of times
- While Loop: Repeats code while a condition is true
- Range Function: Generates sequences of numbers
- Iteration: Each repetition of a loop
- Loop Control: Managing when loops start and stop
Function Examples:
# Simple function with no parameters
def greet():
print("Hello, World!")
# Function with parameters
def greet_person(name, age):
print(f"Hello, {name}! You are {age} years old.")
# Function with return value
def calculate_area(length, width):
area = length * width
return area
# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")
Loop Examples:
# For loop with range
for i in range(5):
print(f"Count: {i}")
# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(f"I like {fruit}")
# While loop
count = 0
while count < 3:
print(f"While loop count: {count}")
count += 1
Week 3: Using Python Libraries
Learning Objectives:
- Understand what Python libraries are and why they’re useful
- Learn to import and use common libraries
- Work with GPIOZero and time libraries
- Explore library documentation and help systems
Key Concepts:
- Library/Module: Pre-written code that adds functionality
- Import Statement: Bringing library functions into your program
- GPIOZero: Library for controlling Raspberry Pi GPIO pins
- Time Library: Functions for working with time and delays
- Documentation: Instructions for using library functions
- API: Application Programming Interface - how to use library functions
Library Usage Examples:
# Importing entire modules
import time
import math
# Importing specific functions
from gpiozero import LED, Button
from time import sleep
# Using time library
print("Starting program...")
time.sleep(2) # Wait 2 seconds
print("2 seconds have passed!")
# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")
# Using GPIOZero (for Raspberry Pi)
led = LED(18) # LED connected to GPIO pin 18
button = Button(2) # Button connected to GPIO pin 2
# Turn LED on and off
led.on()
sleep(1)
led.off()
Week 4: Controlling Motors with Python
Learning Objectives:
- Understand how to interface with motors using Python
- Learn about PWM (Pulse Width Modulation) for motor control
- Control motor speed and direction
- Implement safety features in motor control code
Key Concepts:
- Motor Control: Using code to make motors move
- PWM (Pulse Width Modulation): Method to control motor speed
- Duty Cycle: Percentage of time signal is “on” vs “off”
- Direction Control: Making motors spin clockwise/counterclockwise
- Motor Driver: Electronics that interface between Python and motors
- Safety Features: Code to prevent motor damage
Motor Control Examples:
from gpiozero import Motor, PWMOutputDevice
from time import sleep
# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)
# Basic motor control
def basic_motor_test():
print("Motor forward at full speed")
motor.forward(1.0) # Full speed forward
sleep(2)
print("Motor forward at half speed")
motor.forward(0.5) # Half speed forward
sleep(2)
print("Motor stopped")
motor.stop()
sleep(1)
print("Motor backward at full speed")
motor.backward(1.0) # Full speed backward
sleep(2)
motor.stop()
print("Motor test complete")
# PWM speed control example
def speed_ramp_test():
print("Ramping motor speed up...")
for speed in range(0, 101, 10): # 0 to 100% in 10% steps
motor_speed = speed / 100.0
motor.forward(motor_speed)
print(f"Speed: {speed}%")
sleep(0.5)
motor.stop()
print("Speed ramp complete")
# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()
Week 5: Controlling Sensors with Python
Learning Objectives:
- Interface with various sensors using Python
- Read and process sensor data
- Implement sensor-based decision making
- Create responsive programs based on sensor input
Key Concepts:
- Sensor: Device that detects and measures physical properties
- Analog vs Digital: Different types of sensor signals
- ADC (Analog-to-Digital Converter): Converts analog signals to digital
- Sensor Calibration: Adjusting sensor readings for accuracy
- Data Processing: Converting raw sensor data to useful information
- Polling vs Interrupts: Different ways to read sensor data
Common Sensors:
- Temperature sensors: Measure environmental temperature
- Light sensors (LDR): Detect light intensity
- Ultrasonic sensors: Measure distance using sound waves
- Motion sensors (PIR): Detect movement
- Pressure sensors: Measure force or pressure
Sensor Control Examples:
from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics
# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)
def read_temperature():
# Convert voltage to temperature (example conversion)
voltage = temp_sensor.voltage
temperature_c = (voltage - 0.5) * 100 # Example conversion formula
temperature_f = (temperature_c * 9/5) + 32
return temperature_c, temperature_f
# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)
def monitor_distance():
print("Distance monitoring (press Ctrl+C to stop)")
try:
while True:
distance = distance_sensor.distance * 100 # Convert to cm
print(f"Distance: {distance:.1f} cm")
if distance < 10:
print("WARNING: Object too close!")
sleep(0.5)
except KeyboardInterrupt:
print("Distance monitoring stopped")
# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)
def motion_detector():
print("Motion detector active...")
def motion_detected():
print("Motion detected!")
alert_led.on()
sleep(2)
alert_led.off()
def no_motion():
print("No motion")
alert_led.off()
# Set up motion sensor callbacks
motion.when_motion = motion_detected
motion.when_no_motion = no_motion
# Keep program running
try:
while True:
sleep(0.1)
except KeyboardInterrupt:
print("Motion detector stopped")
# Data logging example
def log_sensor_data():
readings = []
print("Collecting sensor data for 30 seconds...")
start_time = time.time()
while time.time() - start_time < 30:
temp_c, temp_f = read_temperature()
distance = distance_sensor.distance * 100
readings.append({
'timestamp': time.time(),
'temperature_c': temp_c,
'temperature_f': temp_f,
'distance_cm': distance
})
print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
sleep(1)
# Calculate statistics
temps = [r['temperature_c'] for r in readings]
distances = [r['distance_cm'] for r in readings]
print(f"\nData Summary:")
print(f"Average temperature: {statistics.mean(temps):.1f}°C")
print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
print(f"Average distance: {statistics.mean(distances):.1f}cm")
print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")
# Example usage
if __name__ == "__main__":
# Run different examples
monitor_distance() # Uncomment to run distance monitoring
# motion_detector() # Uncomment to run motion detection
# log_sensor_data() # Uncomment to run data logging
Assessment Test - Grade 10-12 (14-16 Years)
Week 1-2 Assessment: Python Fundamentals
Format: Coding Assignment + Written Questions (60 minutes)
Part A: Code Structure and Syntax (25 points)
- Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average
calculate average(10, 20, 30)
Your corrected code:
# Write corrected version here
Explanation of errors: ________________________________
- Write a well-structured Python program (15 points): Create a program that:
- Has proper header comments
- Uses appropriate variable names
- Calculates the area of different shapes (circle, rectangle, triangle)
- Uses functions with parameters and return values
- Follows proper indentation and formatting
Part B: Functions and Loops (30 points)
- Write a function called
print_multiplication_table(15 points):
- Takes one parameter:
number - Prints multiplication table for that number (1-10)
- Uses a for loop
- Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
- Password Checker Program (15 points): Write a program using while loop that:
- Asks user to enter a password
- Keeps asking until they enter “python123”
- Counts number of attempts
- Prints “Access granted” when correct
- Prints number of attempts it took
Week 3-5 Assessment: Libraries and Hardware Control
Format: Practical Coding Project (75 minutes)
Part A: Library Usage (20 points)
- Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______ # What library do you need for calculating average?
# Create sensor object
light_sensor = MCP3008(channel=0)
def read_light_levels():
readings = []
# Collect 10 readings
for i in range(______): # Fill in the range
reading = light_sensor.______ # What property gives the reading?
readings.append(reading)
print(f"Reading {i+1}: {reading:.3f}")
sleep(0.5)
# Calculate and print statistics
average = ______.mean(readings) # Which function calculates mean?
maximum = ______(readings) # Built-in function for maximum
minimum = ______(readings) # Built-in function for minimum
print(f"Average: {average:.3f}")
print(f"Maximum: {maximum:.3f}")
print(f"Minimum: {minimum:.3f}")
# Call the function
read_light_levels()
Part B: Motor Control Project (25 points)
- Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
- Use a temperature sensor to read room temperature
- Control a motor (fan) based on temperature:
- Below 20°C: Fan off
- 20-25°C: Fan at 30% speed
- 25-30°C: Fan at 60% speed
- Above 30°C: Fan at 100% speed
- Print current temperature and fan speed every 2 seconds
- Include safety features (motor stop function)
Part C: Sensor Integration Challenge (30 points)
- Security System Prototype (30 points): Create a basic security system that:
- Uses a motion sensor to detect movement
- Uses a distance sensor to detect objects too close
- Controls LEDs to indicate system status:
- Green LED: System normal
- Yellow LED: Motion detected
- Red LED: Intrusion alert (object < 20cm)
- Logs events with timestamps
- Runs continuously until user presses Ctrl+C
Requirements:
- Use at least 3 different libraries
- Include proper error handling
- Use functions to organize code
- Add meaningful comments
- Follow Python coding best practices
Sample code structure:
from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time
# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)
def log_event(message):
# Write function to log events with timestamp
pass
def check_security():
# Write function to check all sensors and control LEDs
pass
def main():
# Write main program loop
pass
if __name__ == "__main__":
main()
Assessment Rubric:
- Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
- Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
- Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
- Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
- Incomplete (Below 65%): Code doesn’t run or major portions missing
Additional Resources and Extensions
For All Grade Levels:
Vocabulary Glossary:
- Algorithm: Step-by-step instructions to solve a problem
- Bug: Error in code that prevents it from working correctly
- Debug: Process of finding and fixing errors in code
- Hardware: Physical components of computer systems
- Software: Programs and applications that run on hardware
- Interface: Way users interact with programs or devices
- Sensor: Device that detects changes in environment
- Actuator: Device that causes movement or action
Project Portfolio Suggestions:
- Weekly Reflection Journal: Students document learning and challenges
- Photo Documentation: Pictures of projects and experiments
- Video Demonstrations: Students explain their projects
- Peer Teaching: Advanced students help beginners
- Innovation Challenges: Open-ended problems to solve creatively
Cross-Curricular Connections:
- Math: Geometry in robotics, statistics in data analysis
- Science: Physics of flight, electronics principles
- Art: Creative programming projects, design thinking
- Social Studies: Impact of technology on society
- Language Arts: Technical writing, documentation skills
Safety Reminders:
- Always supervise young children with electronic components
- Check battery connections before powering devices
- Keep work area clean and organized
- Wash hands after handling electronic components
- Report any damaged equipment immediately
- Follow proper shutdown procedures for all devices
Assessment Portfolio Checklist:
- Completed weekly assessments
- Project documentation with photos
- Reflection essays on learning progress
- Peer evaluation forms
- Self-assessment rubrics
- Evidence of problem-solving process
- Creative extensions or improvements to basic projects
Continuation - Weeks 6-8 for All Grade Levels
Preschoolers (4-6 Years) - Weeks 6-8
Advanced STEM Exploration & Technology Awareness
Week 6: Technology Parts Awareness
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically be able to follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Technology Components: Basic parts that make devices work
- Circuits: Paths that electricity follows
- Assembly/Disassembly: Taking apart and putting together
- Electronics Safety: Safe handling of batteries and components
- Problem-Solving: Trying different solutions when something doesn’t work
Activities:
- Technology Exploration: Examine old keyboards, phones, calculators
- Simple Circuits: Connect bulbs to batteries with safe materials
- Assembly Practice: Take apart and reassemble simple toys
- Tech Parts Sorting: Group similar technology components
Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors
Week 7: Sequencing & Floor Grid Coding
Learning Objectives:
- Develop understanding of sequencing by arranging steps in correct order
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence through trial-and-error learning
Key Concepts:
- Sequencing: Putting steps in the right order
- Algorithm Cards: Visual instructions to follow
- Floor Grid Coding: Moving through spaces following directions
- Left/Right/Forward/Back: Basic directional concepts
- Trial and Error: Learning by trying and improving
Activities:
- Obstacle Course Coding: Navigate through simple obstacles using arrow cards
- Sequencing Games: Put daily routine cards in correct order
- Paper Maze Coding: Use arrows to show path through printed mazes
- Robot Friend: One child gives directions, another follows like a robot
Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets
Week 8: Advanced Unplugged Coding & Storytelling
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
- Debugging: Finding and fixing mistakes in directions
- Block Building: Using physical blocks to represent code
- Story Algorithms: Step-by-step instructions for telling stories
Activities:
- Debug the Path: Present incorrect direction sequences for children to fix
- IF/THEN Games: “If you see a triangle, then clap your hands”
- Story Coding: Use picture cards to create step-by-step stories
- Block Code Building: Stack blocks to represent programming sequences
Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling
Preschoolers Assessment - Weeks 6-8
Week 6 Assessment: Technology Awareness
Format: Hands-on Exploration + Observation (20 minutes)
- Technology Parts Recognition (10 points)
- Point to and name 3 technology items from the collection
- Show how a simple circuit works (bulb + battery)
- Safely handle electronic components
- Explain one thing each item helps us do
- Assembly Skills (10 points)
- Take apart a simple toy or device
- Put it back together correctly
- Identify which parts go where
- Ask for help when needed
Assessment Criteria:
- Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
- Developing (2): Safe handling, completes most tasks with minimal help
- Emerging (1): Needs guidance but participates actively
- Beginning (0): Requires extensive support
Week 7-8 Assessment: Advanced Unplugged Coding
Format: Physical Coding Challenges (25 minutes)
- Sequencing Challenge (12 points)
- Arrange 6 direction cards to navigate through obstacle course
- Explain why each step comes in that order
- Successfully complete the physical navigation
- Fix mistakes when path doesn’t work
- IF/THEN Logic (8 points)
- Follow conditional instructions: “IF you see blue, THEN hop”
- Create own IF/THEN rule for a friend to follow
- Demonstrate understanding with actions
- Story Algorithm (10 points)
- Use 5 picture cards to create logical story sequence
- Tell story following the card order
- Explain what happens if cards are mixed up
- Help fix a mixed-up story sequence
Practical Skills Rubric:
- Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
- Proficient (20-24 points): Completes all challenges correctly with minor guidance
- Developing (15-19 points): Understands concepts but needs support for complex tasks
- Beginning (Below 15 points): Requires significant help to participate
Grade 2-5 (7-11 Years) - Weeks 6-8
Advanced Scratch Programming & Game Development
Week 6: Game Structure and Design
Learning Objectives:
- Understand basic game structure (start, play, end)
- Use Scratch blocks to move characters and detect collisions
- Make characters move between different scenes
- Create scoring or win conditions
Key Concepts:
- Game Design Elements: Characters, backgrounds, objectives, rules
- Game Loop: Continuous cycle of input, processing, output
- Collision Detection: Knowing when sprites touch each other
- Scene Transitions: Moving between different game screens
- Win/Lose Conditions: Rules that determine game outcomes
- User Interface: Buttons, scores, and information displays
Advanced Scratch Concepts:
- Sensing Blocks: “touching color”, “distance to”, “key pressed”
- Variables: Storing score, lives, or time
- Broadcast Messages: Communication between sprites
- Clone Sprites: Creating multiple copies of objects
- Custom Blocks: Making your own programming blocks
Game Development Process:
- Planning Phase: Sketch game idea, list needed sprites and backgrounds
- Prototype: Create basic movement and interaction
- Enhancement: Add sounds, effects, and polish
- Testing: Play game and fix bugs
- Sharing: Present to classmates
Example Game Structure:
When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
If key space pressed:
Move player sprite
If touching enemy:
Change lives by -1
If lives = 0:
Say "Game Over!"
Stop all
Week 7: Transition to Text-Based Concepts
Learning Objectives:
- Prepare learners for text-based coding
- Understand basic programming concepts using blocks
- Use logic and loops to control sprite or robot actions
- Begin transition to robotics or advanced coding platforms
Key Concepts:
- Programming Fundamentals: Sequence, selection, iteration
- Logic Blocks: IF/ELSE statements in visual form
- Loop Types: Forever, repeat until, repeat X times
- Variables and Operations: Math in programming
- Event-Driven Programming: Responding to user input
- Modular Programming: Breaking code into smaller parts
Bridging Visual to Text:
- Block-to-Code Thinking: Understanding what blocks represent
- Pseudocode: Writing steps in plain English before coding
- Debugging Strategies: Systematic problem-solving approaches
- Code Organization: Keeping projects neat and logical
Advanced Programming Patterns:
// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
If game state = "menu":
Show menu options
If game state = "playing":
Run game logic
If game state = "game over":
Show final score
// Pattern 2: Object Behavior
When I start as a clone:
Go to random position
Forever:
Move 2 steps
If on edge, bounce
If touching player:
Change score by 10
Delete this clone
Week 8: Blockly Integration and Logic Puzzles
Learning Objectives:
- Solve logic puzzles using visual programming concepts
- Create games using Blockly platform
- Demonstrate understanding of programming fundamentals
- Apply creative problem-solving skills
Key Concepts:
- Blockly Platform: Google’s visual programming language
- Logic Puzzles: Problems requiring systematic thinking
- Algorithm Efficiency: Finding the best solution method
- Pattern Recognition: Identifying repeated solutions
- Creative Programming: Using code for artistic expression
Blockly vs. Scratch Comparison:
| Feature | Scratch | Blockly |
|---|---|---|
| Focus | Storytelling & Games | Logic & Algorithms |
| Interface | Stage-based | Puzzle-based |
| Output | Animated Projects | Problem Solutions |
| Progression | Creative Expression | Mathematical Thinking |
Logic Puzzle Types:
- Maze Solving: Navigate through obstacles
- Pattern Completion: Fill in missing sequences
- Conditional Logic: IF/THEN decision making
- Loop Optimization: Repeat actions efficiently
Grade 2-5 Assessment - Weeks 6-8
Week 6 Assessment: Game Development Project
Format: Scratch Game Creation + Presentation (45 minutes)
Part A: Game Planning (10 points)
- Game Design Document - Create a simple plan including:
- Game objective (what’s the goal?)
- Main character description
- Basic rules (how do you win/lose?)
- Required sprites and backgrounds
- Storyboard - Draw 3 screens showing:
- Game start screen
- Main gameplay
- Win/lose screen
Part B: Game Implementation (25 points) 3. Core Functionality (15 points):
-
Character moves with arrow keys or WASD
-
At least one interactive element (enemy, collectible, obstacle)
-
Basic collision detection (touching = something happens)
-
Clear win or lose condition
- Polish and Enhancement (10 points):
- Sound effects or music
- Visual feedback (score, lives, timer)
- Smooth sprite movement
- Creative backgrounds or costumes
Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):
-
Explain game rules clearly
-
Demonstrate gameplay for 2 minutes
-
Show different game scenarios
-
Handle questions from classmates
- Technical Reflection (5 points):
- Explain one challenging problem you solved
- Describe one improvement you would make
- Share one new Scratch skill you learned
Week 7-8 Assessment: Programming Concepts Mastery
Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)
Part A: Blockly Logic Challenges (20 points)
- Maze Navigation (8 points):
- Complete 3 increasingly difficult maze puzzles
- Use efficient solutions (minimal blocks)
- Demonstrate understanding of loops and conditionals
- Pattern Recognition (6 points):
- Solve sequence completion puzzles
- Identify and extend number/color patterns
- Create original pattern for others to solve
- Logic Puzzles (6 points):
- Complete IF/THEN decision trees
- Solve multi-step conditional problems
- Optimize solutions for clarity
Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:
[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]
Write in pseudocode (plain English): “When the program starts, ________________”
- Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”
Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________
Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:
Option A - Scratch: Create a “digital pet” that:
- Follows mouse cursor
- Changes expression when clicked
- Makes sound when hungry (timer-based)
- Has at least 3 different costumes
Option B - Blockly: Design a solution for:
- Robot that sorts colored objects
- Path that avoids all obstacles
- Pattern that creates art using loops
Assessment Rubric:
- Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
- Proficient (80-89%): Meets all requirements with good understanding demonstrated
- Developing (70-79%): Meets most requirements but may have gaps in complex concepts
- Novice (60-69%): Shows basic understanding but struggles with application
- Beginning (Below 60%): Needs significant support to demonstrate concepts
Grade 6-9 (11-14 Years) - Weeks 6-8
Drone Laws, Emergency Procedures & Practical Flying
Week 6: Drone Laws and Regulations (Kenya Focus)
Learning Objectives:
- Learn basic drone laws in Kenya (KCAA regulations)
- Understand where and how children can fly drones legally
- Develop awareness of responsible drone operation
- Understand the importance of aviation safety
Key Concepts:
- Kenya Civil Aviation Authority (KCAA): National aviation regulator
- Drone Registration: Required identification and documentation
- No-Fly Zones: Airports, government buildings, restricted areas
- Altitude Restrictions: Maximum height limitations
- Visual Line of Sight (VLOS): Maintaining visual contact
- Privacy Laws: Respecting others’ rights and property
Kenya Drone Regulations Summary:
- Registration Requirements:
- All drones over 250g must be registered with KCAA
- Operator license required for commercial operations
- Age restrictions for different categories of operation
- Operational Limits:
- Maximum altitude: 400 feet (120 meters) AGL
- Minimum distance from airports: 8km for major airports
- No flying over crowds or public events
- Daylight operations only (without special permits)
- Prohibited Areas:
- Within 5km of any airport
- Over government buildings and installations
- National parks without permits
- Private property without permission
Safety and Legal Guidelines for Young Pilots:
- Always have adult supervision
- Start with toy drones under 250g
- Practice in open, safe areas
- Respect others’ privacy and property
- Learn emergency procedures
- Keep drone in sight at all times
Week 7: Emergency Procedures and Responsible Flying
Learning Objectives:
- Review key safety and legal concepts from previous weeks
- Understand emergency basics for beginner flyers
- Develop decision-making skills for unexpected situations
- Practice responsible pilot behavior
Key Concepts:
- Emergency Procedures: Systematic responses to problems
- Risk Assessment: Evaluating dangers before flying
- Decision Making: Choosing appropriate actions under pressure
- Communication: Alerting others during emergencies
- Equipment Failure: What to do when drone malfunctions
- Weather Awareness: Recognizing dangerous conditions
Emergency Scenarios and Responses:
- Lost Communication with Drone:
- Stay calm and observe drone behavior
- Activate Return-to-Home (RTH) function if available
- Move to higher ground for better signal
- Prepare for manual landing if signal returns
- Never chase after a flyaway drone
- Low Battery Warning:
- Immediately begin landing sequence
- Choose nearest safe landing spot
- Avoid flying over people or property
- Land even if not at original takeoff point
- Safety is more important than convenience
- Unexpected Weather Changes:
- Monitor weather conditions constantly
- Land immediately if wind increases
- Avoid flying in rain or snow
- Watch for sudden temperature changes
- When in doubt, don’t fly
- Equipment Malfunction:
- Attempt controlled landing immediately
- Don’t try to fix problems while airborne
- Inform other people in the area
- Document the problem for later analysis
- Never continue flying with known issues
Mission Planning Process:
- Pre-flight Planning: Weather check, equipment inspection, route planning
- Risk Assessment: Identify potential hazards and mitigation strategies
- Communication Plan: Inform others of flight activities
- Emergency Procedures: Know what to do if things go wrong
- Post-flight Review: Analyze what went well and areas for improvement
Week 8: Practical Flying Skills and Team Challenges
Learning Objectives:
- Demonstrate ability to control a mini drone (takeoff, hover, land)
- Apply basic flight skills in problem-solving mission scenarios
- Work as a team to complete drone-based challenges
- Evaluate personal progress and set goals for improvement
Key Concepts:
- Flight Control Mastery: Smooth, precise drone movements
- Situational Awareness: Understanding surroundings during flight
- Mission Planning: Preparing for specific flight objectives
- Teamwork: Collaborative problem-solving with drones
- Performance Evaluation: Self-assessment and peer feedback
- Safety Leadership: Taking responsibility for safe operations
Basic Flight Skills Progression:
- Fundamental Controls:
- Smooth takeoff to hover
- Maintaining steady hover
- Controlled landing
- Forward/backward movement
- Left/right movement
- Rotation control
- Intermediate Maneuvers:
- Figure-8 patterns
- Precision landing on target
- Obstacle avoidance
- Following predetermined paths
- Coordinated movements
- Advanced Challenges:
- Team relay races
- Rescue simulations
- Precision delivery tasks
- Group choreography
- Time-based challenges
Mission Scenarios:
Mission 1: Search and Rescue
- Objective: Locate “missing person” (target) in designated area
- Skills: Systematic search patterns, communication, observation
- Time limit: 5 minutes
- Success criteria: Target identified and location communicated
Mission 2: Delivery Challenge
- Objective: Transport small payload from Point A to Point B
- Skills: Precision flying, cargo management, safe landing
- Obstacles: Wind conditions, landing accuracy requirements
- Success criteria: Payload delivered undamaged within time limit
Mission 3: Team Coordination
- Objective: Multiple drones work together to complete complex task
- Skills: Communication, timing, spatial awareness
- Challenge: Choreographed flight pattern or group problem-solving
- Success criteria: All drones complete task without collisions
Safety Protocols for Practical Flying:
- Always maintain 10-foot safety zone around flying area
- Designate specific roles: pilot, observer, safety officer
- Use hand signals for communication during loud operations
- Practice emergency landing procedures before each session
- Rotate roles so everyone experiences different responsibilities
Grade 6-9 Assessment - Weeks 6-8
Week 6 Assessment: Drone Laws and Regulations
Format: Written Test + Legal Scenario Analysis (40 minutes)
Part A: Kenya Aviation Law Knowledge (25 points)
- KCAA Regulations (10 points) Fill in the blanks:
- Drones over ______ grams must be registered with KCAA
- Maximum altitude for recreational flying is ______ feet
- Minimum distance from major airports is ______ kilometers
- Commercial drone operations require a ______ license
- Drones must remain within ______ line of sight
- No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
- Your school playground during lunch break: ______
- Open field 2km from Wilson Airport: ______
- Your backyard with adult supervision: ______
- Uhuru Park during a public event: ______
- Private farm with owner’s permission: ______
- Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:
Part B: Scenario-Based Decision Making (20 points)
- Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:
Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________
Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________
Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________
Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________
Part C: Responsible Pilot Planning (15 points)
-
Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:
-
-
-
[Continue through 10]
Week 7-8 Assessment: Emergency Procedures and Practical Skills
Format: Practical Flight Test + Emergency Response Simulation (60 minutes)
Part A: Emergency Response Knowledge (20 points)
- Emergency Procedures (15 points) Describe the correct response for each emergency:
Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
- Risk Assessment (5 points) Identify 3 risks for flying in each environment:
- School playground: ____________, ____________, ____________
- Open field: ____________, ____________, ____________
Part B: Practical Flight Skills Assessment (30 points)
- Basic Flight Controls (15 points) Demonstrate competency in:
- Smooth takeoff and landing (3 points)
- Stable hovering for 30 seconds (3 points)
- Forward/backward precision movement (3 points)
- Left/right precision movement (3 points)
- Controlled rotation (3 points)
- Mission Challenge (15 points) Complete ONE of the following missions:
Option A - Navigation Course:
- Fly through 5 waypoints in sequence
- Land within 1-meter target circle
- Complete within 3 minutes
Option B - Team Coordination:
- Work with partner to complete relay challenge
- Communicate effectively during handoff
- Maintain safety throughout mission
Part C: Leadership and Safety Evaluation (15 points)
- Safety Leadership (8 points) While others are flying, demonstrate:
- Proper safety zone maintenance
- Clear communication with pilot
- Appropriate responses to unsafe situations
- Helpful coaching and encouragement
- Self-Assessment and Goal Setting (7 points) Written reflection:
- What flight skill are you most confident with? Why?
- What area needs the most improvement?
- Set one specific goal for future drone flying
- Describe one way you can help others fly safely
Practical Skills Rubric:
- Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
- Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
- Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
- Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
- Beginning Pilot (Below 60%): Requires significant instruction and supervision
Grade 10-12 (14-16 Years) - Weeks 6-8
Advanced Python Projects & Integration
Week 6-7: Integrated Systems Project (Combined Weeks)
Learning Objectives:
- Combine motors and sensors in complex systems
- Debug integrated hardware/software systems
- Apply creative problem-solving to real-world challenges
- Document projects professionally
Key Concepts:
- Systems Integration: Combining multiple components into unified solutions
- Hardware-Software Interface: Code that bridges digital and physical worlds
- System Architecture: Planning complex projects with multiple subsystems
- Error Handling: Managing failures gracefully in complex systems
- Performance Optimization: Making systems run efficiently
- Documentation Standards: Professional project recording
Advanced Integration Concepts:
1. Multi-Sensor Fusion
import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json
class SensorFusion:
def __init__(self):
self.distance_sensor = DistanceSensor(echo=24, trigger=23)
self.motion_sensor = MotionSensor(4)
self.light_sensor = MCP3008(channel=0)
self.temp_sensor = MCP3008(channel=1)
# Data queues for thread communication
self.sensor_data = queue.Queue()
self.running = False
def read_sensors(self):
"""Continuous sensor reading in separate thread"""
while self.running:
try:
data = {
'timestamp': time.time(),
'distance': self.distance_sensor.distance * 100,
'motion': self.motion_sensor.motion_detected,
'light_level': self.light_sensor.voltage,
'temperature': self.convert_temp(self.temp_sensor.voltage)
}
self.sensor_data.put(data)
sleep(0.1) # 10Hz sampling rate
except Exception as e:
print(f"Sensor reading error: {e}")
def convert_temp(self, voltage):
"""Convert sensor voltage to temperature"""
return (voltage - 0.5) * 100 # Example conversion
def start_monitoring(self):
"""Start sensor monitoring thread"""
self.running = True
self.sensor_thread = threading.Thread(target=self.read_sensors)
self.sensor_thread.start()
def stop_monitoring(self):
"""Stop sensor monitoring"""
self.running = False
if hasattr(self, 'sensor_thread'):
self.sensor_thread.join()
2. Intelligent Control Systems
class SmartEnvironmentController:
def __init__(self):
self.sensors = SensorFusion()
self.fan_motor = Motor(forward=2, backward=3)
self.heater_relay = OutputDevice(18)
self.lights = PWMOutputDevice(19)
# Control parameters
self.target_temp = 22.0 # Target temperature in Celsius
self.temp_tolerance = 1.0
self.light_threshold = 0.3
# Control state
self.auto_mode = True
self.manual_override = False
def analyze_environment(self, sensor_data):
"""Intelligent decision making based on sensor data"""
decisions = {
'fan_speed': 0.0,
'heater_on': False,
'light_level': 0.0,
'alert_status': 'normal'
}
# Temperature control logic
temp_diff = sensor_data['temperature'] - self.target_temp
if temp_diff > self.temp_tolerance: # Too hot
decisions['fan_speed'] = min(1.0, temp_diff / 5.0) # Scale fan speed
decisions['heater_on'] = False
elif temp_diff < -self.temp_tolerance: # Too cold
decisions['fan_speed'] = 0.0
decisions['heater_on'] = True
# Light control logic
if sensor_data['light_level'] < self.light_threshold:
decisions['light_level'] = 1.0 - sensor_data['light_level'] # Complement lighting
# Security monitoring
if sensor_data['motion'] and sensor_data['distance'] < 20: # Close motion
decisions['alert_status'] = 'intrusion_detected'
elif sensor_data['distance'] < 5: # Very close object
decisions['alert_status'] = 'obstacle_warning'
return decisions
def execute_controls(self, decisions):
"""Execute control decisions"""
if not self.manual_override:
# Motor control
if decisions['fan_speed'] > 0:
self.fan_motor.forward(decisions['fan_speed'])
else:
self.fan_motor.stop()
# Heater control
if decisions['heater_on']:
self.heater_relay.on()
else:
self.heater_relay.off()
# Light control
self.lights.value = decisions['light_level']
def run_control_loop(self):
"""Main control loop"""
self.sensors.start_monitoring()
try:
while True:
if not self.sensors.sensor_data.empty():
current_data = self.sensors.sensor_data.get()
decisions = self.analyze_environment(current_data)
self.execute_controls(decisions)
# Log system status
self.log_system_status(current_data, decisions)
sleep(0.5) # Control loop frequency
except KeyboardInterrupt:
print("Shutting down control system...")
finally:
self.sensors.stop_monitoring()
self.fan_motor.stop()
self.heater_relay.off()
self.lights.off()
def log_system_status(self, sensor_data, decisions):
"""Log system performance data"""
log_entry = {
'timestamp': sensor_data['timestamp'],
'sensors': sensor_data,
'controls': decisions,
'mode': 'auto' if self.auto_mode else 'manual'
}
# In a real system, this would write to a file or database
print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
f"Fan={decisions['fan_speed']:.1f}, "
f"Alert={decisions['alert_status']}")
3. Project Documentation Standards
"""
Smart Environment Control System
================================
Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0
Description:
An intelligent system that monitors environmental conditions and automatically
adjusts heating, cooling, and lighting based on sensor feedback.
Hardware Requirements:
- Raspberry Pi 4 or similar
- Temperature sensor (DS18B20 or similar)
- Light sensor (LDR with MCP3008 ADC)
- Motion sensor (PIR)
- Distance sensor (HC-SR04)
- DC Motor (for fan simulation)
- Relay module (for heater control)
- PWM-controlled LED (for lighting)
Software Dependencies:
- Python 3.7+
- gpiozero library
- threading module (standard library)
- queue module (standard library)
- json module (standard library)
Installation:
pip install gpiozero
Usage:
python smart_environment.py
Configuration:
Modify target_temp and light_threshold variables in SmartEnvironmentController
class to adjust system behavior.
Testing:
Run included test functions to verify sensor readings and control outputs
before deploying the full system.
Known Issues:
- Temperature sensor calibration may need adjustment for local conditions
- Motion sensor has 2-second reset time that affects rapid detection
Future Enhancements:
- Web interface for remote monitoring
- Data logging to CSV files
- Machine learning for predictive control
- Mobile app integration
"""
Project Examples for Students:
Project 1: Smart Garden Monitor
- Monitors soil moisture, light, and temperature
- Controls watering pump and grow lights
- Logs plant growth data
- Sends alerts when intervention needed
Project 2: Home Security System
- Multiple sensor integration (motion, door, window)
- Camera trigger on detection
- SMS/email notifications
- Mobile app control interface
Project 3: Weather Station
- Measures temperature, humidity, pressure, wind
- Data logging with timestamps
- Weather prediction algorithms
- Web dashboard for data visualization
Project 4: Automated Greenhouse
- Climate control (temperature, humidity)
- Automated watering system
- Light cycle management
- Growth optimization algorithms
Week 8: Project Presentations and Assessment
Learning Objectives:
- Present technical projects professionally
- Give and receive constructive feedback
- Self-evaluate learning progress and achievements
- Plan next steps for continued learning
Key Concepts:
- Technical Communication: Explaining complex systems clearly
- Presentation Skills: Engaging audiences with technical content
- Peer Review: Constructive feedback and collaboration
- Self-Assessment: Honest evaluation of own work
- Professional Development: Planning continued learning paths
- Portfolio Building: Documenting achievements for future opportunities
Presentation Structure:
- Project Overview (2 minutes)
- Problem statement and objectives
- Target audience and use cases
- Key features and functionality
- Technical Demonstration (2 minutes)
- Live system operation
- Key components and how they work
- Code walkthrough of critical sections
- Challenges and Solutions (1 minute)
- Major obstacles encountered
- Creative solutions implemented
- Lessons learned from failures
Evaluation Criteria:
Technical Merit (40%):
- System functionality and reliability
- Code quality and organization
- Creative problem-solving approach
- Integration of multiple technologies
Communication (30%):
- Clear explanation of technical concepts
- Engaging presentation delivery
- Appropriate use of visual aids
- Effective response to questions
Documentation (20%):
- Complete project documentation
- Code comments and structure
- User instructions and setup guides
- Reflection on learning process
Collaboration (10%):
- Constructive feedback to peers
- Professional interaction during Q&A
- Willingness to share knowledge
- Respectful critique and discussion
Python Programming Trivia Challenge: End the term with fun technical questions:
- What does “PEP 8” refer to in Python?
- What’s the difference between
==andisin Python? - How do you handle exceptions in Python?
- What is a Python decorator?
- What’s the difference between a list and a tuple?
Grade 10-12 Final Assessment - Weeks 6-8
Integrated Systems Project Assessment
Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)
Project Requirements: Students must create an integrated system that combines:
- At least 3 different sensors
- At least 2 actuators (motors, lights, relays, etc.)
- Data logging and analysis
- User interface (command line or simple GUI)
- Error handling and safety features
Part A: Technical Implementation (40 points)
System Design (10 points)
- Clear problem definition and solution approach
- System architecture diagram showing component relationships
- Hardware schematic or connection diagram
- Software flowchart or algorithm description
Code Quality (15 points)
- Well-structured, modular code with functions/classes
- Appropriate variable names and code organization
- Comprehensive comments explaining complex sections
- Error handling for hardware failures
- Efficient algorithms and resource usage
Hardware Integration (15 points)
- Stable sensor readings with appropriate filtering
- Reliable actuator control with safety limits
- Proper electrical connections and component usage
- System operates reliably for extended periods
- Professional cable management and mounting
Part B: Documentation and Communication (25 points)
Project Documentation (15 points) Create a complete project report including:
- Executive summary of project goals and achievements
- Detailed technical specifications and requirements
- Installation and setup instructions
- User manual with clear operating procedures
- Troubleshooting guide for common problems
- Code documentation with API reference
Technical Presentation (10 points)
- Clear 5-minute presentation explaining project
- Live demonstration of working system
- Professional slides with technical diagrams
- Confident handling of technical questions
- Appropriate use of technical vocabulary
Part C: Innovation and Problem Solving (20 points)
Creative Solutions (10 points)
- Original approach to solving chosen problem
- Creative use of available hardware and software
- Evidence of iterative design and improvement
- Solutions show depth of understanding beyond basic requirements
Advanced Features (10 points) Choose and implement at least TWO:
- Machine learning or AI decision making
- Network communication (IoT connectivity)
- Mobile app or web interface
- Data visualization and analytics
- Predictive algorithms or optimization
- Integration with external APIs or services
Part D: Professional Skills (15 points)
Peer Collaboration (8 points)
- Constructive feedback provided to classmates
- Professional behavior during presentations
- Willingness to help others debug problems
- Respectful and insightful questions during Q&A
Self-Assessment (7 points) Written reflection addressing:
- Most significant technical challenge and how you overcame it
- What you would do differently if starting over
- How this project connects to potential career interests
- Specific skills you want to develop further
- Your confidence level with different aspects of the project
Sample Project Evaluation Rubric:
Exceptional (90-100%)
- System exceeds all requirements with innovative features
- Code is publication-quality with comprehensive documentation
- Presentation is engaging and demonstrates deep understanding
- Shows leadership in helping others and contributing to class learning
- Self-reflection shows sophisticated understanding of learning process
Proficient (80-89%)
- System meets all requirements reliably
- Code is well-structured with good documentation
- Presentation is clear and technically accurate
- Actively participates in peer learning and feedback
- Self-reflection shows good awareness of strengths and growth areas
Developing (70-79%)
- System meets most requirements with minor issues
- Code works but may have organizational or documentation gaps
- Presentation covers required topics but may lack depth
- Participates adequately in class activities
- Self-reflection shows basic understanding of learning process
Beginning (60-69%)
- System meets basic requirements but has significant limitations
- Code works for demonstration but has structural or reliability issues
- Presentation covers basics but shows limited understanding
- Minimal participation in peer activities
- Self-reflection is superficial or lacks insight
Incomplete (Below 60%)
- System fails to meet basic requirements or doesn’t function reliably
- Code has major issues that prevent proper operation
- Presentation is unclear or shows misunderstanding of concepts
- Little to no participation in collaborative learning
- Self-reflection missing or shows no evidence of learning
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Notes
I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:
What’s Included:
For Each Grade Level:
- Detailed weekly lesson notes covering weeks 1-8 content
- Key concepts and learning objectives for each topic
- Practical examples and code samples (for programming grades)
- Age-appropriate assessment tests with multiple formats
Assessment Formats:
- Preschoolers (4-6): Practical/observational assessments with hands-on activities
- Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
- Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
- Grade 10-12 (14-16): Coding assignments + hardware integration projects
Key Features:
- ✅ Covers all 8 weeks of Term 1 content
- ✅ Aligned with curriculum from the IoT & Robotics document
- ✅ Progressive difficulty appropriate for each age group
- ✅ Practical assessments that test real understanding
- ✅ Detailed rubrics for fair evaluation
- ✅ Extension activities for advanced learners
- ✅ Safety guidelines and best practices
Topics Covered:
- Preschoolers: STEM basics, simple machines, unplugged coding
- Grade 2-5: Scratch programming, Blockly games, interface navigation
- Grade 6-9: Drone basics, aviation principles, safety regulations
- Grade 10-12: Python programming, hardware control, sensor integration
Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.
Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Intro - Grade 6 - 9
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Grade 6-9 (11-14 Years)
Term 1: Drone Aviation Introduction
Week 1: Introduction to Drones and Aviation Basics
Learning Objectives:
- Understand what drones are and their applications
- Learn basic aviation principles
- Identify different types of aircraft
- Understand the evolution of flight
Key Concepts:
- Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
- Remote Pilot: Person controlling the drone from the ground
- Autonomous Flight: Drones flying with minimal human control
- Commercial vs. Recreational Use: Different purposes for drones
- Four Forces of Flight: Lift, Weight, Thrust, Drag
- Aerodynamics: How air moves around objects in flight
Applications of Drones:
- Photography and videography
- Search and rescue operations
- Agriculture monitoring
- Package delivery
- Scientific research
- Military operations
Assessment Test - Grade 6-9 (11-14 Years)
Week 1-2 Assessment: Drone Basics and Safety
Format: Written Test + Practical Safety Demonstration (45 minutes)
Part A: Multiple Choice (20 points)
-
What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle
-
Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight
-
What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera
-
The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet
-
What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors
Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)
-
Explain three commercial applications of drones: (9 points)
-
Why is it important to maintain visual contact with your drone during flight? (6 points)
Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures
Week 2: Drone Safety Rules and Best Practices
Learning Objectives:
- Learn essential drone safety protocols
- Understand pre-flight checklist procedures
- Identify potential hazards and risks
- Develop responsible drone operation habits
Key Concepts:
- Pre-flight Inspection: Checking drone condition before flying
- Weather Conditions: How weather affects drone flight
- Battery Safety: Proper battery handling and storage
- Emergency Procedures: What to do when things go wrong
- Situational Awareness: Being aware of surroundings while flying
Safety Rules:
- Always maintain visual contact with drone
- Check weather conditions before flying
- Inspect drone and equipment before each flight
- Fly in open areas away from people and property
- Never fly above 400 feet
- Respect others’ privacy
- Land immediately if drone malfunctions
Assessment Test - Grade 6-9 (11-14 Years)
Week 1-2 Assessment: Drone Basics and Safety
Format: Written Test + Practical Safety Demonstration (45 minutes)
Part A: Multiple Choice (20 points)
-
What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle
-
Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight
-
What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera
-
The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet
-
What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors
Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)
-
Explain three commercial applications of drones: (9 points)
-
Why is it important to maintain visual contact with your drone during flight? (6 points)
Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures
Week 3: FAA/UAS Regulations (Basic Overview)
Learning Objectives:
- Understand basic aviation regulations
- Learn about no-fly zones and restricted airspace
- Understand registration requirements
- Learn about pilot certification basics
Key Concepts:
- Federal Aviation Administration (FAA): Government agency regulating aviation
- Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
- No-Fly Zones: Areas where drone flight is prohibited
- Remote Pilot Certificate: License required for commercial drone operations
- Registration: Required identification for drones over 0.55 pounds
Basic Regulations:
- Drones must be registered if over 0.55 lbs (250 grams)
- Maximum altitude: 400 feet above ground level
- Must yield right-of-way to manned aircraft
- No flying over groups of people
- No flying at night without special certification
- Respect airport operational areas (usually 5-mile radius)
Week 3-5 Assessment: Regulations and Flight Principles
Format: Written Test + Flight Theory Application (50 minutes)
Part A: Regulations Knowledge (20 points)
- True/False (10 points)
- Drones under 0.55 lbs need to be registered: ___
- You can fly your drone anywhere as long as it’s daytime: ___
- Commercial drone operations require a Remote Pilot Certificate: ___
- Drones must always yield to manned aircraft: ___
- Flying over groups of people is allowed with permission: ___
-
What is a no-fly zone and give 3 examples: (10 points) Definition: ____ Examples:
Part B: Drone Components (15 points) 3. Match the component to its function:
- Flight Controller: _ a) Provides power to motors
- ESC: _ b) Stabilizes camera
- Gimbal: _ c) Main structural support
- Frame: _ d) Controls drone flight
- Battery: _ e) Controls motor speed
- Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)
Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)
- Explain how a drone moves in each direction: (13 points)
- Forward: ____
- Backward: ____
- Left: ____
- Right: ____
- Up: ____
- Rotate left: ____
Assessment Rubric:
- Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
- Proficient (80-89%): Shows solid grasp of concepts with minor gaps
- Developing (70-79%): Understands basic concepts but lacks detail in complex areas
- Novice (Below 70%): Limited understanding, needs additional instruction
Week 4: Key Drone Types & Components
Learning Objectives:
- Identify different drone configurations
- Understand key drone components and their functions
- Compare advantages and disadvantages of different designs
- Learn basic maintenance requirements
Key Concepts:
- Multirotor: Drones with multiple rotating propellers
- Fixed-wing: Airplane-like drones with wings
- Hybrid VTOL: Vertical takeoff and landing with forward flight capability
- Frame: Main structure holding all components
- Flight Controller: Computer controlling drone flight
- ESC (Electronic Speed Controller): Controls motor speed
- Gimbal: Stabilizes camera during flight
Drone Types:
- Quadcopter: 4 rotors, most common configuration
- Hexacopter: 6 rotors, more redundancy and payload capacity
- Octocopter: 8 rotors, highest redundancy and capacity
- Fixed-wing: Longer flight times, faster speeds
- Racing drones: Small, fast, agile for competitive flying
Week 3-5 Assessment: Regulations and Flight Principles
Format: Written Test + Flight Theory Application (50 minutes)
Part A: Regulations Knowledge (20 points)
- True/False (10 points)
- Drones under 0.55 lbs need to be registered: ___
- You can fly your drone anywhere as long as it’s daytime: ___
- Commercial drone operations require a Remote Pilot Certificate: ___
- Drones must always yield to manned aircraft: ___
- Flying over groups of people is allowed with permission: ___
-
What is a no-fly zone and give 3 examples: (10 points) Definition: ____ Examples:
Part B: Drone Components (15 points) 3. Match the component to its function:
- Flight Controller: _ a) Provides power to motors
- ESC: _ b) Stabilizes camera
- Gimbal: _ c) Main structural support
- Frame: _ d) Controls drone flight
- Battery: _ e) Controls motor speed
- Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)
Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)
- Explain how a drone moves in each direction: (13 points)
- Forward: ____
- Backward: ____
- Left: ____
- Right: ____
- Up: ____
- Rotate left: ____
Assessment Rubric:
- Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
- Proficient (80-89%): Shows solid grasp of concepts with minor gaps
- Developing (70-79%): Understands basic concepts but lacks detail in complex areas
- Novice (Below 70%): Limited understanding, needs additional instruction
Week 5: Basic Principles of Flight
Learning Objectives:
- Understand the four forces of flight in detail
- Learn how drones achieve controlled flight
- Understand stability and control concepts
- Explore flight dynamics and physics
Key Concepts:
- Lift: Upward force generated by rotors or wings
- Weight (Gravity): Downward force pulling drone toward earth
- Thrust: Forward force propelling drone through air
- Drag: Resistance force opposing motion through air
- Center of Gravity: Balance point of drone
- Pitch, Roll, Yaw: Three axes of rotation
- Gyroscopic Effect: How spinning rotors affect stability
Flight Control:
- Throttle: Controls altitude (up/down)
- Pitch: Controls forward/backward movement
- Roll: Controls left/right movement
- Yaw: Controls rotation (turning left/right)
- Trim: Fine adjustments for balanced flight
Week 3-5 Assessment: Regulations and Flight Principles
Format: Written Test + Flight Theory Application (50 minutes)
Part A: Regulations Knowledge (20 points)
- True/False (10 points)
- Drones under 0.55 lbs need to be registered: ___
- You can fly your drone anywhere as long as it’s daytime: ___
- Commercial drone operations require a Remote Pilot Certificate: ___
- Drones must always yield to manned aircraft: ___
- Flying over groups of people is allowed with permission: ___
-
What is a no-fly zone and give 3 examples: (10 points) Definition: ____ Examples:
Part B: Drone Components (15 points) 3. Match the component to its function:
- Flight Controller: _ a) Provides power to motors
- ESC: _ b) Stabilizes camera
- Gimbal: _ c) Main structural support
- Frame: _ d) Controls drone flight
- Battery: _ e) Controls motor speed
- Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)
Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)
- Explain how a drone moves in each direction: (13 points)
- Forward: ____
- Backward: ____
- Left: ____
- Right: ____
- Up: ____
- Rotate left: ____
Assessment Rubric:
- Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
- Proficient (80-89%): Shows solid grasp of concepts with minor gaps
- Developing (70-79%): Understands basic concepts but lacks detail in complex areas
- Novice (Below 70%): Limited understanding, needs additional instruction
Grade 6-9 (11-14 Years) - Weeks 6-8
Drone Laws, Emergency Procedures & Practical Flying
Week 6: Drone Laws and Regulations (Kenya Focus)
Learning Objectives:
- Learn basic drone laws in Kenya (KCAA regulations)
- Understand where and how children can fly drones legally
- Develop awareness of responsible drone operation
- Understand the importance of aviation safety
Key Concepts:
- Kenya Civil Aviation Authority (KCAA): National aviation regulator
- Drone Registration: Required identification and documentation
- No-Fly Zones: Airports, government buildings, restricted areas
- Altitude Restrictions: Maximum height limitations
- Visual Line of Sight (VLOS): Maintaining visual contact
- Privacy Laws: Respecting others’ rights and property
Kenya Drone Regulations Summary:
- Registration Requirements:
- All drones over 250g must be registered with KCAA
- Operator license required for commercial operations
- Age restrictions for different categories of operation
- Operational Limits:
- Maximum altitude: 400 feet (120 meters) AGL
- Minimum distance from airports: 8km for major airports
- No flying over crowds or public events
- Daylight operations only (without special permits)
- Prohibited Areas:
- Within 5km of any airport
- Over government buildings and installations
- National parks without permits
- Private property without permission
Safety and Legal Guidelines for Young Pilots:
- Always have adult supervision
- Start with toy drones under 250g
- Practice in open, safe areas
- Respect others’ privacy and property
- Learn emergency procedures
- Keep drone in sight at all times
Grade 6-9 Assessment - Weeks 6-8
Week 6 Assessment: Drone Laws and Regulations
Format: Written Test + Legal Scenario Analysis (40 minutes)
Part A: Kenya Aviation Law Knowledge (25 points)
- KCAA Regulations (10 points) Fill in the blanks:
- Drones over __ grams must be registered with KCAA
- Maximum altitude for recreational flying is __ feet
- Minimum distance from major airports is __ kilometers
- Commercial drone operations require a __ license
- Drones must remain within __ line of sight
- No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
- Your school playground during lunch break: __
- Open field 2km from Wilson Airport: __
- Your backyard with adult supervision: __
- Uhuru Park during a public event: __
- Private farm with owner’s permission: __
-
Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:
Part B: Scenario-Based Decision Making (20 points)
-
Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:
Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _ Why? ___
Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _ Why? ___
Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _ Why? ___
Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _ Why? ___
Part C: Responsible Pilot Planning (15 points)
-
Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:
-
-
-
[Continue through 10]
Week 7: Emergency Procedures and Responsible Flying
Learning Objectives:
- Review key safety and legal concepts from previous weeks
- Understand emergency basics for beginner flyers
- Develop decision-making skills for unexpected situations
- Practice responsible pilot behavior
Key Concepts:
- Emergency Procedures: Systematic responses to problems
- Risk Assessment: Evaluating dangers before flying
- Decision Making: Choosing appropriate actions under pressure
- Communication: Alerting others during emergencies
- Equipment Failure: What to do when drone malfunctions
- Weather Awareness: Recognizing dangerous conditions
Emergency Scenarios and Responses:
- Lost Communication with Drone:
- Stay calm and observe drone behavior
- Activate Return-to-Home (RTH) function if available
- Move to higher ground for better signal
- Prepare for manual landing if signal returns
- Never chase after a flyaway drone
- Low Battery Warning:
- Immediately begin landing sequence
- Choose nearest safe landing spot
- Avoid flying over people or property
- Land even if not at original takeoff point
- Safety is more important than convenience
- Unexpected Weather Changes:
- Monitor weather conditions constantly
- Land immediately if wind increases
- Avoid flying in rain or snow
- Watch for sudden temperature changes
- When in doubt, don’t fly
- Equipment Malfunction:
- Attempt controlled landing immediately
- Don’t try to fix problems while airborne
- Inform other people in the area
- Document the problem for later analysis
- Never continue flying with known issues
Mission Planning Process:
- Pre-flight Planning: Weather check, equipment inspection, route planning
- Risk Assessment: Identify potential hazards and mitigation strategies
- Communication Plan: Inform others of flight activities
- Emergency Procedures: Know what to do if things go wrong
- Post-flight Review: Analyze what went well and areas for improvement
Week 7-8 Assessment: Emergency Procedures and Practical Skills
Format: Practical Flight Test + Emergency Response Simulation (60 minutes)
Part A: Emergency Response Knowledge (20 points)
-
Emergency Procedures (15 points) Describe the correct response for each emergency:
Low Battery Warning: Step 1: ___ Step 2: ___ Step 3: ___
Lost Radio Contact: Step 1: ___ Step 2: ___ Step 3: ___
Sudden Weather Change: Step 1: ___ Step 2: ___ Step 3: ___
-
Risk Assessment (5 points) Identify 3 risks for flying in each environment:
- School playground: ____, ____, ____
- Open field: ____, ____, ____
Part B: Practical Flight Skills Assessment (30 points)
- Basic Flight Controls (15 points) Demonstrate competency in:
- Smooth takeoff and landing (3 points)
- Stable hovering for 30 seconds (3 points)
- Forward/backward precision movement (3 points)
- Left/right precision movement (3 points)
- Controlled rotation (3 points)
-
Mission Challenge (15 points) Complete ONE of the following missions:
Option A - Navigation Course:
- Fly through 5 waypoints in sequence
- Land within 1-meter target circle
- Complete within 3 minutes
Option B - Team Coordination:
- Work with partner to complete relay challenge
- Communicate effectively during handoff
- Maintain safety throughout mission
Part C: Leadership and Safety Evaluation (15 points)
- Safety Leadership (8 points) While others are flying, demonstrate:
- Proper safety zone maintenance
- Clear communication with pilot
- Appropriate responses to unsafe situations
- Helpful coaching and encouragement
- Self-Assessment and Goal Setting (7 points) Written reflection:
- What flight skill are you most confident with? Why?
- What area needs the most improvement?
- Set one specific goal for future drone flying
- Describe one way you can help others fly safely
Practical Skills Rubric:
- Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
- Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
- Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
- Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
- Beginning Pilot (Below 60%): Requires significant instruction and supervision
Week 8: Practical Flying Skills and Team Challenges
Learning Objectives:
- Demonstrate ability to control a mini drone (takeoff, hover, land)
- Apply basic flight skills in problem-solving mission scenarios
- Work as a team to complete drone-based challenges
- Evaluate personal progress and set goals for improvement
Key Concepts:
- Flight Control Mastery: Smooth, precise drone movements
- Situational Awareness: Understanding surroundings during flight
- Mission Planning: Preparing for specific flight objectives
- Teamwork: Collaborative problem-solving with drones
- Performance Evaluation: Self-assessment and peer feedback
- Safety Leadership: Taking responsibility for safe operations
Basic Flight Skills Progression:
- Fundamental Controls:
- Smooth takeoff to hover
- Maintaining steady hover
- Controlled landing
- Forward/backward movement
- Left/right movement
- Rotation control
- Intermediate Maneuvers:
- Figure-8 patterns
- Precision landing on target
- Obstacle avoidance
- Following predetermined paths
- Coordinated movements
- Advanced Challenges:
- Team relay races
- Rescue simulations
- Precision delivery tasks
- Group choreography
- Time-based challenges
Mission Scenarios:
Mission 1: Search and Rescue
- Objective: Locate “missing person” (target) in designated area
- Skills: Systematic search patterns, communication, observation
- Time limit: 5 minutes
- Success criteria: Target identified and location communicated
Mission 2: Delivery Challenge
- Objective: Transport small payload from Point A to Point B
- Skills: Precision flying, cargo management, safe landing
- Obstacles: Wind conditions, landing accuracy requirements
- Success criteria: Payload delivered undamaged within time limit
Mission 3: Team Coordination
- Objective: Multiple drones work together to complete complex task
- Skills: Communication, timing, spatial awareness
- Challenge: Choreographed flight pattern or group problem-solving
- Success criteria: All drones complete task without collisions
Safety Protocols for Practical Flying:
- Always maintain 10-foot safety zone around flying area
- Designate specific roles: pilot, observer, safety officer
- Use hand signals for communication during loud operations
- Practice emergency landing procedures before each session
- Rotate roles so everyone experiences different responsibilities
Week 7-8 Assessment: Emergency Procedures and Practical Skills
Format: Practical Flight Test + Emergency Response Simulation (60 minutes)
Part A: Emergency Response Knowledge (20 points)
-
Emergency Procedures (15 points) Describe the correct response for each emergency:
Low Battery Warning: Step 1: **___** Step 2: **___** Step 3: **___**
Lost Radio Contact: Step 1: **___** Step 2: **___** Step 3: **___**
Sudden Weather Change: Step 1: **___** Step 2: **___** Step 3: **___**
-
Risk Assessment (5 points) Identify 3 risks for flying in each environment:
- School playground: **____**, **____**, **____**
- Open field: **____**, **____**, **____**
Part B: Practical Flight Skills Assessment (30 points)
- Basic Flight Controls (15 points) Demonstrate competency in:
- Smooth takeoff and landing (3 points)
- Stable hovering for 30 seconds (3 points)
- Forward/backward precision movement (3 points)
- Left/right precision movement (3 points)
- Controlled rotation (3 points)
-
Mission Challenge (15 points) Complete ONE of the following missions:
Option A - Navigation Course:
- Fly through 5 waypoints in sequence
- Land within 1-meter target circle
- Complete within 3 minutes
Option B - Team Coordination:
- Work with partner to complete relay challenge
- Communicate effectively during handoff
- Maintain safety throughout mission
Part C: Leadership and Safety Evaluation (15 points)
- Safety Leadership (8 points) While others are flying, demonstrate:
- Proper safety zone maintenance
- Clear communication with pilot
- Appropriate responses to unsafe situations
- Helpful coaching and encouragement
- Self-Assessment and Goal Setting (7 points) Written reflection:
- What flight skill are you most confident with? Why?
- What area needs the most improvement?
- Set one specific goal for future drone flying
- Describe one way you can help others fly safely
Practical Skills Rubric:
- Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
- Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
- Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
- Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
- Beginning Pilot (Below 60%): Requires significant instruction and supervision
IoT & Robotics Term 1 - Complete Notes & Assessment Tests
Table of Contents
- Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
- Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
- Grade 6-9 (11-14 Years) - Drone Aviation Introduction
- Grade 10-12 (14-16 Years) - Python Basics
Preschoolers (4-6 Years)
Term 1: STEM Storytelling & Coding Toys
Week 1: Introduction to STEM
Learning Objectives:
- Understand basic concepts of STEM (Science, Technology, Engineering, Math)
- Spark excitement and curiosity about STEM through hands-on activities
- Foster teamwork through group experiments
- Develop early thinking through guided play and experimentation
Key Concepts:
- Science: Learning about the world around us through observation
- Technology: Simple tools and devices that help us
- Engineering: Building and creating solutions
- Mathematics: Numbers, shapes, and patterns in everyday life
Activities:
- Floating vs. Sinking experiments with various objects
- Basic robot interaction and exploration
- STEM vocabulary building games
- Classification activities
Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet
Week 2: STEM Play Corners
Learning Objectives:
- Explore different STEM areas through play stations
- Develop fine motor skills through hands-on manipulation
- Practice problem-solving through guided discovery
- Build confidence in exploring new concepts
Key Concepts:
- Play-based learning: Learning through exploration and fun
- Spatial awareness: Understanding shapes, sizes, and positions
- Cause and effect: Understanding that actions have results
- Collaboration: Working together to solve problems
Week 3: Simple Machines & Environmental Science
Learning Objectives:
- Identify simple machines in everyday life
- Understand basic environmental concepts
- Develop observation skills
- Connect STEM to the natural world
Key Concepts:
- Simple Machines: Lever, pulley, wheel, ramp
- Environment: Plants, animals, weather, seasons
- Observation: Using our senses to learn
- Nature patterns: Recognizing patterns in nature
Week 4: Unplugged Coding
Learning Objectives:
- Introduction to coding concepts without computers
- Understand sequence and order
- Develop logical thinking
- Practice following and giving instructions
Key Concepts:
- Sequence: Steps in order
- Instructions: Clear directions to follow
- Algorithms: Step-by-step solutions
- Patterns: Recognizing and creating patterns
Assessment Test - Preschoolers (4-6 Years)
Week 1-2 Assessment: STEM Basics
Format: Practical/Observational Assessment
- Floating or Sinking? (Show child various objects)
- Point to objects that will float: feather, cork, plastic toy
- Point to objects that will sink: stone, coin, marble
- Explain why you think so (in simple words)
- STEM Matching (Picture cards)
- Match the scientist to the magnifying glass
- Match the engineer to the building blocks
- Match the mathematician to the numbers
- Match the technologist to the computer
- Following Instructions
- Can follow 2-step instructions: “Pick up the red block and put it in the box”
- Can give simple instructions to a friend
- Can arrange objects in order (biggest to smallest)
Assessment Rubric:
- Exceeding (3): Completes all tasks independently with explanation
- Meeting (2): Completes most tasks with minimal guidance
- Approaching (1): Attempts tasks with significant support
- Beginning (0): Needs extensive help to participate
Week 3-4 Assessment: Simple Machines & Coding
Format: Hands-on Demonstration
- Simple Machines Hunt
- Find the lever (seesaw, scissors)
- Find the wheel (bicycle, toy car)
- Find the ramp (slide, wedge)
- Explain what each machine helps us do
- Nature Observation
- Draw or point to living things vs. non-living things
- Identify basic shapes in nature (circles in flowers, triangles in mountains)
- Name things that grow vs. things that are made
- Unplugged Coding Challenge
- Arrange sequence cards to show morning routine
- Give directions to help friend reach the treasure
- Complete a simple pattern with blocks or shapes
Grade 2-5 (7-11 Years)
Term 1: Scratch & Blockly Programming
Week 1: Introduction to Programming
Learning Objectives:
- Understand what programming is
- Learn about Scratch programming environment
- Install and explore Scratch interface
- Grasp the concept of sequencing
Key Concepts:
- Programming: Giving instructions to computers
- Scratch: Visual programming language using blocks
- Interface: The screen where we work with Scratch
- Sequencing: Putting commands in the right order
- Sprites: Characters in Scratch programs
- Stage: Where Scratch programs run
Core Activities:
- Explore Scratch interface and tools
- Identify different areas (sprite area, blocks palette, stage)
- Learn about different block categories (Motion, Looks, Sound, etc.)
- Create first simple animation
Week 2: Understanding Scratch Interface
Learning Objectives:
- Navigate Scratch interface confidently
- Understand different block categories
- Create basic sprite movements
- Save and load projects
Key Concepts:
- Blocks Palette: Where programming blocks are stored
- Scripts Area: Where we build our programs
- Motion Blocks: Make sprites move
- Looks Blocks: Change sprite appearance
- Events: What starts our programs running
Week 3: Setting Up Scratch Projects
Learning Objectives:
- Plan and organize Scratch projects
- Understand project structure
- Use backgrounds and sprites effectively
- Practice debugging simple problems
Key Concepts:
- Project Planning: Thinking before coding
- Backgrounds: Scenes for our programs
- Sprite Library: Ready-made characters
- Debugging: Finding and fixing problems
Week 4: Introduction to Blockly
Learning Objectives:
- Understand Blockly visual programming
- Compare Blockly with Scratch
- Complete basic Blockly puzzles
- Transfer concepts between platforms
Key Concepts:
- Blockly: Another visual programming language
- Puzzle-based Learning: Learning through solving challenges
- Logic Blocks: Making decisions in programs
- Loops: Repeating actions
Week 5: Blockly Games for Scratch Programmers
Learning Objectives:
- Apply Scratch knowledge to Blockly games
- Solve increasingly complex puzzles
- Understand programming logic and flow
- Build problem-solving confidence
Key Concepts:
- Game Logic: Rules that make games work
- Progressive Difficulty: Challenges that get harder
- Pattern Recognition: Seeing repeated solutions
- Persistence: Keep trying when challenges are difficult
Assessment Test - Grade 2-5 (7-11 Years)
Week 1-3 Assessment: Scratch Fundamentals
Format: Practical Computer Assessment (30 minutes)
Part A: Interface Knowledge (10 points)
- Label the parts of Scratch interface:
- Blocks Palette
- Scripts Area
- Stage
- Sprite Area
- Match the block colors to their functions:
- Motion blocks: _____ (Blue)
- Looks blocks: _____ (Purple)
- Sound blocks: _____ (Pink)
- Events blocks: _____ (Yellow)
Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:
-
Move 10 steps forward
-
Turn 90 degrees right
-
Say “Hello” for 2 seconds
-
Change color
- Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]
Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?
-
Missing “when green flag clicked” block
-
Sprite is already at the edge
-
Motion blocks aren’t connected
-
All of the above
- Create a simple animation showing a cat walking across the stage.
Week 4-5 Assessment: Blockly & Problem Solving
Format: Computer-based Blockly Challenges (25 minutes)
Part A: Blockly Basics (8 points)
- Complete the “Move Forward” puzzle in Blockly
- Complete the “Turn Left/Right” puzzle
- Complete the “Repeat Loop” puzzle
- Complete the “If/Else” puzzle
Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:
Repeat 4 times:
Move forward
Turn right 90 degrees
Answer: _________________
- Write Blockly code to make a character:
- Move forward 3 steps
- Turn left if path is blocked
- Repeat until reaching goal
Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:
- Create a Scratch program that does the same thing as this Blockly code:
When started: Repeat 5 times: Move forward 20 steps Wait 1 second
Assessment Rubric:
- Advanced (90-100%): Completes all tasks efficiently with creative additions
- Proficient (80-89%): Completes most tasks correctly with minor errors
- Developing (70-79%): Completes basic tasks but struggles with complex problems
- Beginning (Below 70%): Needs significant support to complete tasks
Grade 6-9 (11-14 Years)
Term 1: Drone Aviation Introduction
Week 1: Introduction to Drones and Aviation Basics
Learning Objectives:
- Understand what drones are and their applications
- Learn basic aviation principles
- Identify different types of aircraft
- Understand the evolution of flight
Key Concepts:
- Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
- Remote Pilot: Person controlling the drone from the ground
- Autonomous Flight: Drones flying with minimal human control
- Commercial vs. Recreational Use: Different purposes for drones
- Four Forces of Flight: Lift, Weight, Thrust, Drag
- Aerodynamics: How air moves around objects in flight
Applications of Drones:
- Photography and videography
- Search and rescue operations
- Agriculture monitoring
- Package delivery
- Scientific research
- Military operations
Week 2: Drone Safety Rules and Best Practices
Learning Objectives:
- Learn essential drone safety protocols
- Understand pre-flight checklist procedures
- Identify potential hazards and risks
- Develop responsible drone operation habits
Key Concepts:
- Pre-flight Inspection: Checking drone condition before flying
- Weather Conditions: How weather affects drone flight
- Battery Safety: Proper battery handling and storage
- Emergency Procedures: What to do when things go wrong
- Situational Awareness: Being aware of surroundings while flying
Safety Rules:
- Always maintain visual contact with drone
- Check weather conditions before flying
- Inspect drone and equipment before each flight
- Fly in open areas away from people and property
- Never fly above 400 feet
- Respect others’ privacy
- Land immediately if drone malfunctions
Week 3: FAA/UAS Regulations (Basic Overview)
Learning Objectives:
- Understand basic aviation regulations
- Learn about no-fly zones and restricted airspace
- Understand registration requirements
- Learn about pilot certification basics
Key Concepts:
- Federal Aviation Administration (FAA): Government agency regulating aviation
- Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
- No-Fly Zones: Areas where drone flight is prohibited
- Remote Pilot Certificate: License required for commercial drone operations
- Registration: Required identification for drones over 0.55 pounds
Basic Regulations:
- Drones must be registered if over 0.55 lbs (250 grams)
- Maximum altitude: 400 feet above ground level
- Must yield right-of-way to manned aircraft
- No flying over groups of people
- No flying at night without special certification
- Respect airport operational areas (usually 5-mile radius)
Week 4: Key Drone Types & Components
Learning Objectives:
- Identify different drone configurations
- Understand key drone components and their functions
- Compare advantages and disadvantages of different designs
- Learn basic maintenance requirements
Key Concepts:
- Multirotor: Drones with multiple rotating propellers
- Fixed-wing: Airplane-like drones with wings
- Hybrid VTOL: Vertical takeoff and landing with forward flight capability
- Frame: Main structure holding all components
- Flight Controller: Computer controlling drone flight
- ESC (Electronic Speed Controller): Controls motor speed
- Gimbal: Stabilizes camera during flight
Drone Types:
- Quadcopter: 4 rotors, most common configuration
- Hexacopter: 6 rotors, more redundancy and payload capacity
- Octocopter: 8 rotors, highest redundancy and capacity
- Fixed-wing: Longer flight times, faster speeds
- Racing drones: Small, fast, agile for competitive flying
Week 5: Basic Principles of Flight
Learning Objectives:
- Understand the four forces of flight in detail
- Learn how drones achieve controlled flight
- Understand stability and control concepts
- Explore flight dynamics and physics
Key Concepts:
- Lift: Upward force generated by rotors or wings
- Weight (Gravity): Downward force pulling drone toward earth
- Thrust: Forward force propelling drone through air
- Drag: Resistance force opposing motion through air
- Center of Gravity: Balance point of drone
- Pitch, Roll, Yaw: Three axes of rotation
- Gyroscopic Effect: How spinning rotors affect stability
Flight Control:
- Throttle: Controls altitude (up/down)
- Pitch: Controls forward/backward movement
- Roll: Controls left/right movement
- Yaw: Controls rotation (turning left/right)
- Trim: Fine adjustments for balanced flight
Assessment Test - Grade 6-9 (11-14 Years)
Week 1-2 Assessment: Drone Basics and Safety
Format: Written Test + Practical Safety Demonstration (45 minutes)
Part A: Multiple Choice (20 points)
-
What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle
-
Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight
-
What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera
-
The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet
-
What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors
Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)
- Explain three commercial applications of drones: (9 points)
- Why is it important to maintain visual contact with your drone during flight? (6 points)
Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures
Week 3-5 Assessment: Regulations and Flight Principles
Format: Written Test + Flight Theory Application (50 minutes)
Part A: Regulations Knowledge (20 points)
- True/False (10 points)
- Drones under 0.55 lbs need to be registered: ___
- You can fly your drone anywhere as long as it’s daytime: ___
- Commercial drone operations require a Remote Pilot Certificate: ___
- Drones must always yield to manned aircraft: ___
- Flying over groups of people is allowed with permission: ___
- What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:
Part B: Drone Components (15 points) 3. Match the component to its function:
-
Flight Controller: _____ a) Provides power to motors
-
ESC: _____ b) Stabilizes camera
-
Gimbal: _____ c) Main structural support
-
Frame: _____ d) Controls drone flight
-
Battery: _____ e) Controls motor speed
- Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)
Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)
- Explain how a drone moves in each direction: (13 points)
- Forward: ________________________________
- Backward: ________________________________
- Left: ________________________________
- Right: ________________________________
- Up: ________________________________
- Rotate left: ________________________________
Assessment Rubric:
- Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
- Proficient (80-89%): Shows solid grasp of concepts with minor gaps
- Developing (70-79%): Understands basic concepts but lacks detail in complex areas
- Novice (Below 70%): Limited understanding, needs additional instruction
Grade 10-12 (14-16 Years)
Term 1: Introduction to Python Basics
Week 1: Writing Structured Python Code
Learning Objectives:
- Understand Python syntax and structure
- Learn proper code formatting and indentation
- Write clean, readable code following best practices
- Understand variables, data types, and basic operations
Key Concepts:
- Python: High-level programming language
- Syntax: Rules for writing Python code
- Indentation: Using spaces to organize code structure
- Variables: Named storage for data values
- Data Types: int, float, string, boolean
- Comments: Documentation within code using #
- Print Statement: Displaying output to screen
Code Structure Best Practices:
# Header comment explaining the program
# Author: Your Name
# Date: Today's Date
# Import statements
import module_name
# Constants (UPPERCASE naming)
MAX_VALUE = 100
# Main program logic
def main():
# Variable declarations
user_name = "Student"
age = 16
# Program logic with proper indentation
print(f"Hello, {user_name}!")
print(f"You are {age} years old.")
# Run the program
if __name__ == "__main__":
main()
Week 2: Functions and Loops
Learning Objectives:
- Create and use custom functions
- Understand function parameters and return values
- Implement for loops and while loops
- Apply loops to solve repetitive tasks
Key Concepts:
- Function: Reusable block of code that performs a specific task
- Parameters: Input values passed to functions
- Return Value: Output value from a function
- For Loop: Repeats code a specific number of times
- While Loop: Repeats code while a condition is true
- Range Function: Generates sequences of numbers
- Iteration: Each repetition of a loop
- Loop Control: Managing when loops start and stop
Function Examples:
# Simple function with no parameters
def greet():
print("Hello, World!")
# Function with parameters
def greet_person(name, age):
print(f"Hello, {name}! You are {age} years old.")
# Function with return value
def calculate_area(length, width):
area = length * width
return area
# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")
Loop Examples:
# For loop with range
for i in range(5):
print(f"Count: {i}")
# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(f"I like {fruit}")
# While loop
count = 0
while count < 3:
print(f"While loop count: {count}")
count += 1
Week 3: Using Python Libraries
Learning Objectives:
- Understand what Python libraries are and why they’re useful
- Learn to import and use common libraries
- Work with GPIOZero and time libraries
- Explore library documentation and help systems
Key Concepts:
- Library/Module: Pre-written code that adds functionality
- Import Statement: Bringing library functions into your program
- GPIOZero: Library for controlling Raspberry Pi GPIO pins
- Time Library: Functions for working with time and delays
- Documentation: Instructions for using library functions
- API: Application Programming Interface - how to use library functions
Library Usage Examples:
# Importing entire modules
import time
import math
# Importing specific functions
from gpiozero import LED, Button
from time import sleep
# Using time library
print("Starting program...")
time.sleep(2) # Wait 2 seconds
print("2 seconds have passed!")
# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")
# Using GPIOZero (for Raspberry Pi)
led = LED(18) # LED connected to GPIO pin 18
button = Button(2) # Button connected to GPIO pin 2
# Turn LED on and off
led.on()
sleep(1)
led.off()
Week 4: Controlling Motors with Python
Learning Objectives:
- Understand how to interface with motors using Python
- Learn about PWM (Pulse Width Modulation) for motor control
- Control motor speed and direction
- Implement safety features in motor control code
Key Concepts:
- Motor Control: Using code to make motors move
- PWM (Pulse Width Modulation): Method to control motor speed
- Duty Cycle: Percentage of time signal is “on” vs “off”
- Direction Control: Making motors spin clockwise/counterclockwise
- Motor Driver: Electronics that interface between Python and motors
- Safety Features: Code to prevent motor damage
Motor Control Examples:
from gpiozero import Motor, PWMOutputDevice
from time import sleep
# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)
# Basic motor control
def basic_motor_test():
print("Motor forward at full speed")
motor.forward(1.0) # Full speed forward
sleep(2)
print("Motor forward at half speed")
motor.forward(0.5) # Half speed forward
sleep(2)
print("Motor stopped")
motor.stop()
sleep(1)
print("Motor backward at full speed")
motor.backward(1.0) # Full speed backward
sleep(2)
motor.stop()
print("Motor test complete")
# PWM speed control example
def speed_ramp_test():
print("Ramping motor speed up...")
for speed in range(0, 101, 10): # 0 to 100% in 10% steps
motor_speed = speed / 100.0
motor.forward(motor_speed)
print(f"Speed: {speed}%")
sleep(0.5)
motor.stop()
print("Speed ramp complete")
# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()
Week 5: Controlling Sensors with Python
Learning Objectives:
- Interface with various sensors using Python
- Read and process sensor data
- Implement sensor-based decision making
- Create responsive programs based on sensor input
Key Concepts:
- Sensor: Device that detects and measures physical properties
- Analog vs Digital: Different types of sensor signals
- ADC (Analog-to-Digital Converter): Converts analog signals to digital
- Sensor Calibration: Adjusting sensor readings for accuracy
- Data Processing: Converting raw sensor data to useful information
- Polling vs Interrupts: Different ways to read sensor data
Common Sensors:
- Temperature sensors: Measure environmental temperature
- Light sensors (LDR): Detect light intensity
- Ultrasonic sensors: Measure distance using sound waves
- Motion sensors (PIR): Detect movement
- Pressure sensors: Measure force or pressure
Sensor Control Examples:
from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics
# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)
def read_temperature():
# Convert voltage to temperature (example conversion)
voltage = temp_sensor.voltage
temperature_c = (voltage - 0.5) * 100 # Example conversion formula
temperature_f = (temperature_c * 9/5) + 32
return temperature_c, temperature_f
# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)
def monitor_distance():
print("Distance monitoring (press Ctrl+C to stop)")
try:
while True:
distance = distance_sensor.distance * 100 # Convert to cm
print(f"Distance: {distance:.1f} cm")
if distance < 10:
print("WARNING: Object too close!")
sleep(0.5)
except KeyboardInterrupt:
print("Distance monitoring stopped")
# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)
def motion_detector():
print("Motion detector active...")
def motion_detected():
print("Motion detected!")
alert_led.on()
sleep(2)
alert_led.off()
def no_motion():
print("No motion")
alert_led.off()
# Set up motion sensor callbacks
motion.when_motion = motion_detected
motion.when_no_motion = no_motion
# Keep program running
try:
while True:
sleep(0.1)
except KeyboardInterrupt:
print("Motion detector stopped")
# Data logging example
def log_sensor_data():
readings = []
print("Collecting sensor data for 30 seconds...")
start_time = time.time()
while time.time() - start_time < 30:
temp_c, temp_f = read_temperature()
distance = distance_sensor.distance * 100
readings.append({
'timestamp': time.time(),
'temperature_c': temp_c,
'temperature_f': temp_f,
'distance_cm': distance
})
print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
sleep(1)
# Calculate statistics
temps = [r['temperature_c'] for r in readings]
distances = [r['distance_cm'] for r in readings]
print(f"\nData Summary:")
print(f"Average temperature: {statistics.mean(temps):.1f}°C")
print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
print(f"Average distance: {statistics.mean(distances):.1f}cm")
print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")
# Example usage
if __name__ == "__main__":
# Run different examples
monitor_distance() # Uncomment to run distance monitoring
# motion_detector() # Uncomment to run motion detection
# log_sensor_data() # Uncomment to run data logging
Assessment Test - Grade 10-12 (14-16 Years)
Week 1-2 Assessment: Python Fundamentals
Format: Coding Assignment + Written Questions (60 minutes)
Part A: Code Structure and Syntax (25 points)
- Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average
calculate average(10, 20, 30)
Your corrected code:
# Write corrected version here
Explanation of errors: ________________________________
- Write a well-structured Python program (15 points): Create a program that:
- Has proper header comments
- Uses appropriate variable names
- Calculates the area of different shapes (circle, rectangle, triangle)
- Uses functions with parameters and return values
- Follows proper indentation and formatting
Part B: Functions and Loops (30 points)
- Write a function called
print_multiplication_table(15 points):
- Takes one parameter:
number - Prints multiplication table for that number (1-10)
- Uses a for loop
- Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
- Password Checker Program (15 points): Write a program using while loop that:
- Asks user to enter a password
- Keeps asking until they enter “python123”
- Counts number of attempts
- Prints “Access granted” when correct
- Prints number of attempts it took
Week 3-5 Assessment: Libraries and Hardware Control
Format: Practical Coding Project (75 minutes)
Part A: Library Usage (20 points)
- Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______ # What library do you need for calculating average?
# Create sensor object
light_sensor = MCP3008(channel=0)
def read_light_levels():
readings = []
# Collect 10 readings
for i in range(______): # Fill in the range
reading = light_sensor.______ # What property gives the reading?
readings.append(reading)
print(f"Reading {i+1}: {reading:.3f}")
sleep(0.5)
# Calculate and print statistics
average = ______.mean(readings) # Which function calculates mean?
maximum = ______(readings) # Built-in function for maximum
minimum = ______(readings) # Built-in function for minimum
print(f"Average: {average:.3f}")
print(f"Maximum: {maximum:.3f}")
print(f"Minimum: {minimum:.3f}")
# Call the function
read_light_levels()
Part B: Motor Control Project (25 points)
- Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
- Use a temperature sensor to read room temperature
- Control a motor (fan) based on temperature:
- Below 20°C: Fan off
- 20-25°C: Fan at 30% speed
- 25-30°C: Fan at 60% speed
- Above 30°C: Fan at 100% speed
- Print current temperature and fan speed every 2 seconds
- Include safety features (motor stop function)
Part C: Sensor Integration Challenge (30 points)
- Security System Prototype (30 points): Create a basic security system that:
- Uses a motion sensor to detect movement
- Uses a distance sensor to detect objects too close
- Controls LEDs to indicate system status:
- Green LED: System normal
- Yellow LED: Motion detected
- Red LED: Intrusion alert (object < 20cm)
- Logs events with timestamps
- Runs continuously until user presses Ctrl+C
Requirements:
- Use at least 3 different libraries
- Include proper error handling
- Use functions to organize code
- Add meaningful comments
- Follow Python coding best practices
Sample code structure:
from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time
# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)
def log_event(message):
# Write function to log events with timestamp
pass
def check_security():
# Write function to check all sensors and control LEDs
pass
def main():
# Write main program loop
pass
if __name__ == "__main__":
main()
Assessment Rubric:
- Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
- Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
- Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
- Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
- Incomplete (Below 65%): Code doesn’t run or major portions missing
Additional Resources and Extensions
For All Grade Levels:
Vocabulary Glossary:
- Algorithm: Step-by-step instructions to solve a problem
- Bug: Error in code that prevents it from working correctly
- Debug: Process of finding and fixing errors in code
- Hardware: Physical components of computer systems
- Software: Programs and applications that run on hardware
- Interface: Way users interact with programs or devices
- Sensor: Device that detects changes in environment
- Actuator: Device that causes movement or action
Project Portfolio Suggestions:
- Weekly Reflection Journal: Students document learning and challenges
- Photo Documentation: Pictures of projects and experiments
- Video Demonstrations: Students explain their projects
- Peer Teaching: Advanced students help beginners
- Innovation Challenges: Open-ended problems to solve creatively
Cross-Curricular Connections:
- Math: Geometry in robotics, statistics in data analysis
- Science: Physics of flight, electronics principles
- Art: Creative programming projects, design thinking
- Social Studies: Impact of technology on society
- Language Arts: Technical writing, documentation skills
Safety Reminders:
- Always supervise young children with electronic components
- Check battery connections before powering devices
- Keep work area clean and organized
- Wash hands after handling electronic components
- Report any damaged equipment immediately
- Follow proper shutdown procedures for all devices
Assessment Portfolio Checklist:
- Completed weekly assessments
- Project documentation with photos
- Reflection essays on learning progress
- Peer evaluation forms
- Self-assessment rubrics
- Evidence of problem-solving process
- Creative extensions or improvements to basic projects
Continuation - Weeks 6-8 for All Grade Levels
Preschoolers (4-6 Years) - Weeks 6-8
Advanced STEM Exploration & Technology Awareness
Week 6: Technology Parts Awareness
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically be able to follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Technology Components: Basic parts that make devices work
- Circuits: Paths that electricity follows
- Assembly/Disassembly: Taking apart and putting together
- Electronics Safety: Safe handling of batteries and components
- Problem-Solving: Trying different solutions when something doesn’t work
Activities:
- Technology Exploration: Examine old keyboards, phones, calculators
- Simple Circuits: Connect bulbs to batteries with safe materials
- Assembly Practice: Take apart and reassemble simple toys
- Tech Parts Sorting: Group similar technology components
Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors
Week 7: Sequencing & Floor Grid Coding
Learning Objectives:
- Develop understanding of sequencing by arranging steps in correct order
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence through trial-and-error learning
Key Concepts:
- Sequencing: Putting steps in the right order
- Algorithm Cards: Visual instructions to follow
- Floor Grid Coding: Moving through spaces following directions
- Left/Right/Forward/Back: Basic directional concepts
- Trial and Error: Learning by trying and improving
Activities:
- Obstacle Course Coding: Navigate through simple obstacles using arrow cards
- Sequencing Games: Put daily routine cards in correct order
- Paper Maze Coding: Use arrows to show path through printed mazes
- Robot Friend: One child gives directions, another follows like a robot
Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets
Week 8: Advanced Unplugged Coding & Storytelling
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
- Debugging: Finding and fixing mistakes in directions
- Block Building: Using physical blocks to represent code
- Story Algorithms: Step-by-step instructions for telling stories
Activities:
- Debug the Path: Present incorrect direction sequences for children to fix
- IF/THEN Games: “If you see a triangle, then clap your hands”
- Story Coding: Use picture cards to create step-by-step stories
- Block Code Building: Stack blocks to represent programming sequences
Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling
Preschoolers Assessment - Weeks 6-8
Week 6 Assessment: Technology Awareness
Format: Hands-on Exploration + Observation (20 minutes)
- Technology Parts Recognition (10 points)
- Point to and name 3 technology items from the collection
- Show how a simple circuit works (bulb + battery)
- Safely handle electronic components
- Explain one thing each item helps us do
- Assembly Skills (10 points)
- Take apart a simple toy or device
- Put it back together correctly
- Identify which parts go where
- Ask for help when needed
Assessment Criteria:
- Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
- Developing (2): Safe handling, completes most tasks with minimal help
- Emerging (1): Needs guidance but participates actively
- Beginning (0): Requires extensive support
Week 7-8 Assessment: Advanced Unplugged Coding
Format: Physical Coding Challenges (25 minutes)
- Sequencing Challenge (12 points)
- Arrange 6 direction cards to navigate through obstacle course
- Explain why each step comes in that order
- Successfully complete the physical navigation
- Fix mistakes when path doesn’t work
- IF/THEN Logic (8 points)
- Follow conditional instructions: “IF you see blue, THEN hop”
- Create own IF/THEN rule for a friend to follow
- Demonstrate understanding with actions
- Story Algorithm (10 points)
- Use 5 picture cards to create logical story sequence
- Tell story following the card order
- Explain what happens if cards are mixed up
- Help fix a mixed-up story sequence
Practical Skills Rubric:
- Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
- Proficient (20-24 points): Completes all challenges correctly with minor guidance
- Developing (15-19 points): Understands concepts but needs support for complex tasks
- Beginning (Below 15 points): Requires significant help to participate
Grade 2-5 (7-11 Years) - Weeks 6-8
Advanced Scratch Programming & Game Development
Week 6: Game Structure and Design
Learning Objectives:
- Understand basic game structure (start, play, end)
- Use Scratch blocks to move characters and detect collisions
- Make characters move between different scenes
- Create scoring or win conditions
Key Concepts:
- Game Design Elements: Characters, backgrounds, objectives, rules
- Game Loop: Continuous cycle of input, processing, output
- Collision Detection: Knowing when sprites touch each other
- Scene Transitions: Moving between different game screens
- Win/Lose Conditions: Rules that determine game outcomes
- User Interface: Buttons, scores, and information displays
Advanced Scratch Concepts:
- Sensing Blocks: “touching color”, “distance to”, “key pressed”
- Variables: Storing score, lives, or time
- Broadcast Messages: Communication between sprites
- Clone Sprites: Creating multiple copies of objects
- Custom Blocks: Making your own programming blocks
Game Development Process:
- Planning Phase: Sketch game idea, list needed sprites and backgrounds
- Prototype: Create basic movement and interaction
- Enhancement: Add sounds, effects, and polish
- Testing: Play game and fix bugs
- Sharing: Present to classmates
Example Game Structure:
When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
If key space pressed:
Move player sprite
If touching enemy:
Change lives by -1
If lives = 0:
Say "Game Over!"
Stop all
Week 7: Transition to Text-Based Concepts
Learning Objectives:
- Prepare learners for text-based coding
- Understand basic programming concepts using blocks
- Use logic and loops to control sprite or robot actions
- Begin transition to robotics or advanced coding platforms
Key Concepts:
- Programming Fundamentals: Sequence, selection, iteration
- Logic Blocks: IF/ELSE statements in visual form
- Loop Types: Forever, repeat until, repeat X times
- Variables and Operations: Math in programming
- Event-Driven Programming: Responding to user input
- Modular Programming: Breaking code into smaller parts
Bridging Visual to Text:
- Block-to-Code Thinking: Understanding what blocks represent
- Pseudocode: Writing steps in plain English before coding
- Debugging Strategies: Systematic problem-solving approaches
- Code Organization: Keeping projects neat and logical
Advanced Programming Patterns:
// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
If game state = "menu":
Show menu options
If game state = "playing":
Run game logic
If game state = "game over":
Show final score
// Pattern 2: Object Behavior
When I start as a clone:
Go to random position
Forever:
Move 2 steps
If on edge, bounce
If touching player:
Change score by 10
Delete this clone
Week 8: Blockly Integration and Logic Puzzles
Learning Objectives:
- Solve logic puzzles using visual programming concepts
- Create games using Blockly platform
- Demonstrate understanding of programming fundamentals
- Apply creative problem-solving skills
Key Concepts:
- Blockly Platform: Google’s visual programming language
- Logic Puzzles: Problems requiring systematic thinking
- Algorithm Efficiency: Finding the best solution method
- Pattern Recognition: Identifying repeated solutions
- Creative Programming: Using code for artistic expression
Blockly vs. Scratch Comparison:
| Feature | Scratch | Blockly |
|---|---|---|
| Focus | Storytelling & Games | Logic & Algorithms |
| Interface | Stage-based | Puzzle-based |
| Output | Animated Projects | Problem Solutions |
| Progression | Creative Expression | Mathematical Thinking |
Logic Puzzle Types:
- Maze Solving: Navigate through obstacles
- Pattern Completion: Fill in missing sequences
- Conditional Logic: IF/THEN decision making
- Loop Optimization: Repeat actions efficiently
Grade 2-5 Assessment - Weeks 6-8
Week 6 Assessment: Game Development Project
Format: Scratch Game Creation + Presentation (45 minutes)
Part A: Game Planning (10 points)
- Game Design Document - Create a simple plan including:
- Game objective (what’s the goal?)
- Main character description
- Basic rules (how do you win/lose?)
- Required sprites and backgrounds
- Storyboard - Draw 3 screens showing:
- Game start screen
- Main gameplay
- Win/lose screen
Part B: Game Implementation (25 points) 3. Core Functionality (15 points):
-
Character moves with arrow keys or WASD
-
At least one interactive element (enemy, collectible, obstacle)
-
Basic collision detection (touching = something happens)
-
Clear win or lose condition
- Polish and Enhancement (10 points):
- Sound effects or music
- Visual feedback (score, lives, timer)
- Smooth sprite movement
- Creative backgrounds or costumes
Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):
-
Explain game rules clearly
-
Demonstrate gameplay for 2 minutes
-
Show different game scenarios
-
Handle questions from classmates
- Technical Reflection (5 points):
- Explain one challenging problem you solved
- Describe one improvement you would make
- Share one new Scratch skill you learned
Week 7-8 Assessment: Programming Concepts Mastery
Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)
Part A: Blockly Logic Challenges (20 points)
- Maze Navigation (8 points):
- Complete 3 increasingly difficult maze puzzles
- Use efficient solutions (minimal blocks)
- Demonstrate understanding of loops and conditionals
- Pattern Recognition (6 points):
- Solve sequence completion puzzles
- Identify and extend number/color patterns
- Create original pattern for others to solve
- Logic Puzzles (6 points):
- Complete IF/THEN decision trees
- Solve multi-step conditional problems
- Optimize solutions for clarity
Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:
[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]
Write in pseudocode (plain English): “When the program starts, ________________”
- Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”
Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________
Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:
Option A - Scratch: Create a “digital pet” that:
- Follows mouse cursor
- Changes expression when clicked
- Makes sound when hungry (timer-based)
- Has at least 3 different costumes
Option B - Blockly: Design a solution for:
- Robot that sorts colored objects
- Path that avoids all obstacles
- Pattern that creates art using loops
Assessment Rubric:
- Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
- Proficient (80-89%): Meets all requirements with good understanding demonstrated
- Developing (70-79%): Meets most requirements but may have gaps in complex concepts
- Novice (60-69%): Shows basic understanding but struggles with application
- Beginning (Below 60%): Needs significant support to demonstrate concepts
Grade 6-9 (11-14 Years) - Weeks 6-8
Drone Laws, Emergency Procedures & Practical Flying
Week 6: Drone Laws and Regulations (Kenya Focus)
Learning Objectives:
- Learn basic drone laws in Kenya (KCAA regulations)
- Understand where and how children can fly drones legally
- Develop awareness of responsible drone operation
- Understand the importance of aviation safety
Key Concepts:
- Kenya Civil Aviation Authority (KCAA): National aviation regulator
- Drone Registration: Required identification and documentation
- No-Fly Zones: Airports, government buildings, restricted areas
- Altitude Restrictions: Maximum height limitations
- Visual Line of Sight (VLOS): Maintaining visual contact
- Privacy Laws: Respecting others’ rights and property
Kenya Drone Regulations Summary:
- Registration Requirements:
- All drones over 250g must be registered with KCAA
- Operator license required for commercial operations
- Age restrictions for different categories of operation
- Operational Limits:
- Maximum altitude: 400 feet (120 meters) AGL
- Minimum distance from airports: 8km for major airports
- No flying over crowds or public events
- Daylight operations only (without special permits)
- Prohibited Areas:
- Within 5km of any airport
- Over government buildings and installations
- National parks without permits
- Private property without permission
Safety and Legal Guidelines for Young Pilots:
- Always have adult supervision
- Start with toy drones under 250g
- Practice in open, safe areas
- Respect others’ privacy and property
- Learn emergency procedures
- Keep drone in sight at all times
Week 7: Emergency Procedures and Responsible Flying
Learning Objectives:
- Review key safety and legal concepts from previous weeks
- Understand emergency basics for beginner flyers
- Develop decision-making skills for unexpected situations
- Practice responsible pilot behavior
Key Concepts:
- Emergency Procedures: Systematic responses to problems
- Risk Assessment: Evaluating dangers before flying
- Decision Making: Choosing appropriate actions under pressure
- Communication: Alerting others during emergencies
- Equipment Failure: What to do when drone malfunctions
- Weather Awareness: Recognizing dangerous conditions
Emergency Scenarios and Responses:
- Lost Communication with Drone:
- Stay calm and observe drone behavior
- Activate Return-to-Home (RTH) function if available
- Move to higher ground for better signal
- Prepare for manual landing if signal returns
- Never chase after a flyaway drone
- Low Battery Warning:
- Immediately begin landing sequence
- Choose nearest safe landing spot
- Avoid flying over people or property
- Land even if not at original takeoff point
- Safety is more important than convenience
- Unexpected Weather Changes:
- Monitor weather conditions constantly
- Land immediately if wind increases
- Avoid flying in rain or snow
- Watch for sudden temperature changes
- When in doubt, don’t fly
- Equipment Malfunction:
- Attempt controlled landing immediately
- Don’t try to fix problems while airborne
- Inform other people in the area
- Document the problem for later analysis
- Never continue flying with known issues
Mission Planning Process:
- Pre-flight Planning: Weather check, equipment inspection, route planning
- Risk Assessment: Identify potential hazards and mitigation strategies
- Communication Plan: Inform others of flight activities
- Emergency Procedures: Know what to do if things go wrong
- Post-flight Review: Analyze what went well and areas for improvement
Week 8: Practical Flying Skills and Team Challenges
Learning Objectives:
- Demonstrate ability to control a mini drone (takeoff, hover, land)
- Apply basic flight skills in problem-solving mission scenarios
- Work as a team to complete drone-based challenges
- Evaluate personal progress and set goals for improvement
Key Concepts:
- Flight Control Mastery: Smooth, precise drone movements
- Situational Awareness: Understanding surroundings during flight
- Mission Planning: Preparing for specific flight objectives
- Teamwork: Collaborative problem-solving with drones
- Performance Evaluation: Self-assessment and peer feedback
- Safety Leadership: Taking responsibility for safe operations
Basic Flight Skills Progression:
- Fundamental Controls:
- Smooth takeoff to hover
- Maintaining steady hover
- Controlled landing
- Forward/backward movement
- Left/right movement
- Rotation control
- Intermediate Maneuvers:
- Figure-8 patterns
- Precision landing on target
- Obstacle avoidance
- Following predetermined paths
- Coordinated movements
- Advanced Challenges:
- Team relay races
- Rescue simulations
- Precision delivery tasks
- Group choreography
- Time-based challenges
Mission Scenarios:
Mission 1: Search and Rescue
- Objective: Locate “missing person” (target) in designated area
- Skills: Systematic search patterns, communication, observation
- Time limit: 5 minutes
- Success criteria: Target identified and location communicated
Mission 2: Delivery Challenge
- Objective: Transport small payload from Point A to Point B
- Skills: Precision flying, cargo management, safe landing
- Obstacles: Wind conditions, landing accuracy requirements
- Success criteria: Payload delivered undamaged within time limit
Mission 3: Team Coordination
- Objective: Multiple drones work together to complete complex task
- Skills: Communication, timing, spatial awareness
- Challenge: Choreographed flight pattern or group problem-solving
- Success criteria: All drones complete task without collisions
Safety Protocols for Practical Flying:
- Always maintain 10-foot safety zone around flying area
- Designate specific roles: pilot, observer, safety officer
- Use hand signals for communication during loud operations
- Practice emergency landing procedures before each session
- Rotate roles so everyone experiences different responsibilities
Grade 6-9 Assessment - Weeks 6-8
Week 6 Assessment: Drone Laws and Regulations
Format: Written Test + Legal Scenario Analysis (40 minutes)
Part A: Kenya Aviation Law Knowledge (25 points)
- KCAA Regulations (10 points) Fill in the blanks:
- Drones over ______ grams must be registered with KCAA
- Maximum altitude for recreational flying is ______ feet
- Minimum distance from major airports is ______ kilometers
- Commercial drone operations require a ______ license
- Drones must remain within ______ line of sight
- No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
- Your school playground during lunch break: ______
- Open field 2km from Wilson Airport: ______
- Your backyard with adult supervision: ______
- Uhuru Park during a public event: ______
- Private farm with owner’s permission: ______
- Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:
Part B: Scenario-Based Decision Making (20 points)
- Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:
Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________
Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________
Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________
Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________
Part C: Responsible Pilot Planning (15 points)
-
Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:
-
-
-
[Continue through 10]
Week 7-8 Assessment: Emergency Procedures and Practical Skills
Format: Practical Flight Test + Emergency Response Simulation (60 minutes)
Part A: Emergency Response Knowledge (20 points)
- Emergency Procedures (15 points) Describe the correct response for each emergency:
Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
- Risk Assessment (5 points) Identify 3 risks for flying in each environment:
- School playground: ____________, ____________, ____________
- Open field: ____________, ____________, ____________
Part B: Practical Flight Skills Assessment (30 points)
- Basic Flight Controls (15 points) Demonstrate competency in:
- Smooth takeoff and landing (3 points)
- Stable hovering for 30 seconds (3 points)
- Forward/backward precision movement (3 points)
- Left/right precision movement (3 points)
- Controlled rotation (3 points)
- Mission Challenge (15 points) Complete ONE of the following missions:
Option A - Navigation Course:
- Fly through 5 waypoints in sequence
- Land within 1-meter target circle
- Complete within 3 minutes
Option B - Team Coordination:
- Work with partner to complete relay challenge
- Communicate effectively during handoff
- Maintain safety throughout mission
Part C: Leadership and Safety Evaluation (15 points)
- Safety Leadership (8 points) While others are flying, demonstrate:
- Proper safety zone maintenance
- Clear communication with pilot
- Appropriate responses to unsafe situations
- Helpful coaching and encouragement
- Self-Assessment and Goal Setting (7 points) Written reflection:
- What flight skill are you most confident with? Why?
- What area needs the most improvement?
- Set one specific goal for future drone flying
- Describe one way you can help others fly safely
Practical Skills Rubric:
- Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
- Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
- Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
- Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
- Beginning Pilot (Below 60%): Requires significant instruction and supervision
Grade 10-12 (14-16 Years) - Weeks 6-8
Advanced Python Projects & Integration
Week 6-7: Integrated Systems Project (Combined Weeks)
Learning Objectives:
- Combine motors and sensors in complex systems
- Debug integrated hardware/software systems
- Apply creative problem-solving to real-world challenges
- Document projects professionally
Key Concepts:
- Systems Integration: Combining multiple components into unified solutions
- Hardware-Software Interface: Code that bridges digital and physical worlds
- System Architecture: Planning complex projects with multiple subsystems
- Error Handling: Managing failures gracefully in complex systems
- Performance Optimization: Making systems run efficiently
- Documentation Standards: Professional project recording
Advanced Integration Concepts:
1. Multi-Sensor Fusion
import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json
class SensorFusion:
def __init__(self):
self.distance_sensor = DistanceSensor(echo=24, trigger=23)
self.motion_sensor = MotionSensor(4)
self.light_sensor = MCP3008(channel=0)
self.temp_sensor = MCP3008(channel=1)
# Data queues for thread communication
self.sensor_data = queue.Queue()
self.running = False
def read_sensors(self):
"""Continuous sensor reading in separate thread"""
while self.running:
try:
data = {
'timestamp': time.time(),
'distance': self.distance_sensor.distance * 100,
'motion': self.motion_sensor.motion_detected,
'light_level': self.light_sensor.voltage,
'temperature': self.convert_temp(self.temp_sensor.voltage)
}
self.sensor_data.put(data)
sleep(0.1) # 10Hz sampling rate
except Exception as e:
print(f"Sensor reading error: {e}")
def convert_temp(self, voltage):
"""Convert sensor voltage to temperature"""
return (voltage - 0.5) * 100 # Example conversion
def start_monitoring(self):
"""Start sensor monitoring thread"""
self.running = True
self.sensor_thread = threading.Thread(target=self.read_sensors)
self.sensor_thread.start()
def stop_monitoring(self):
"""Stop sensor monitoring"""
self.running = False
if hasattr(self, 'sensor_thread'):
self.sensor_thread.join()
2. Intelligent Control Systems
class SmartEnvironmentController:
def __init__(self):
self.sensors = SensorFusion()
self.fan_motor = Motor(forward=2, backward=3)
self.heater_relay = OutputDevice(18)
self.lights = PWMOutputDevice(19)
# Control parameters
self.target_temp = 22.0 # Target temperature in Celsius
self.temp_tolerance = 1.0
self.light_threshold = 0.3
# Control state
self.auto_mode = True
self.manual_override = False
def analyze_environment(self, sensor_data):
"""Intelligent decision making based on sensor data"""
decisions = {
'fan_speed': 0.0,
'heater_on': False,
'light_level': 0.0,
'alert_status': 'normal'
}
# Temperature control logic
temp_diff = sensor_data['temperature'] - self.target_temp
if temp_diff > self.temp_tolerance: # Too hot
decisions['fan_speed'] = min(1.0, temp_diff / 5.0) # Scale fan speed
decisions['heater_on'] = False
elif temp_diff < -self.temp_tolerance: # Too cold
decisions['fan_speed'] = 0.0
decisions['heater_on'] = True
# Light control logic
if sensor_data['light_level'] < self.light_threshold:
decisions['light_level'] = 1.0 - sensor_data['light_level'] # Complement lighting
# Security monitoring
if sensor_data['motion'] and sensor_data['distance'] < 20: # Close motion
decisions['alert_status'] = 'intrusion_detected'
elif sensor_data['distance'] < 5: # Very close object
decisions['alert_status'] = 'obstacle_warning'
return decisions
def execute_controls(self, decisions):
"""Execute control decisions"""
if not self.manual_override:
# Motor control
if decisions['fan_speed'] > 0:
self.fan_motor.forward(decisions['fan_speed'])
else:
self.fan_motor.stop()
# Heater control
if decisions['heater_on']:
self.heater_relay.on()
else:
self.heater_relay.off()
# Light control
self.lights.value = decisions['light_level']
def run_control_loop(self):
"""Main control loop"""
self.sensors.start_monitoring()
try:
while True:
if not self.sensors.sensor_data.empty():
current_data = self.sensors.sensor_data.get()
decisions = self.analyze_environment(current_data)
self.execute_controls(decisions)
# Log system status
self.log_system_status(current_data, decisions)
sleep(0.5) # Control loop frequency
except KeyboardInterrupt:
print("Shutting down control system...")
finally:
self.sensors.stop_monitoring()
self.fan_motor.stop()
self.heater_relay.off()
self.lights.off()
def log_system_status(self, sensor_data, decisions):
"""Log system performance data"""
log_entry = {
'timestamp': sensor_data['timestamp'],
'sensors': sensor_data,
'controls': decisions,
'mode': 'auto' if self.auto_mode else 'manual'
}
# In a real system, this would write to a file or database
print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
f"Fan={decisions['fan_speed']:.1f}, "
f"Alert={decisions['alert_status']}")
3. Project Documentation Standards
"""
Smart Environment Control System
================================
Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0
Description:
An intelligent system that monitors environmental conditions and automatically
adjusts heating, cooling, and lighting based on sensor feedback.
Hardware Requirements:
- Raspberry Pi 4 or similar
- Temperature sensor (DS18B20 or similar)
- Light sensor (LDR with MCP3008 ADC)
- Motion sensor (PIR)
- Distance sensor (HC-SR04)
- DC Motor (for fan simulation)
- Relay module (for heater control)
- PWM-controlled LED (for lighting)
Software Dependencies:
- Python 3.7+
- gpiozero library
- threading module (standard library)
- queue module (standard library)
- json module (standard library)
Installation:
pip install gpiozero
Usage:
python smart_environment.py
Configuration:
Modify target_temp and light_threshold variables in SmartEnvironmentController
class to adjust system behavior.
Testing:
Run included test functions to verify sensor readings and control outputs
before deploying the full system.
Known Issues:
- Temperature sensor calibration may need adjustment for local conditions
- Motion sensor has 2-second reset time that affects rapid detection
Future Enhancements:
- Web interface for remote monitoring
- Data logging to CSV files
- Machine learning for predictive control
- Mobile app integration
"""
Project Examples for Students:
Project 1: Smart Garden Monitor
- Monitors soil moisture, light, and temperature
- Controls watering pump and grow lights
- Logs plant growth data
- Sends alerts when intervention needed
Project 2: Home Security System
- Multiple sensor integration (motion, door, window)
- Camera trigger on detection
- SMS/email notifications
- Mobile app control interface
Project 3: Weather Station
- Measures temperature, humidity, pressure, wind
- Data logging with timestamps
- Weather prediction algorithms
- Web dashboard for data visualization
Project 4: Automated Greenhouse
- Climate control (temperature, humidity)
- Automated watering system
- Light cycle management
- Growth optimization algorithms
Week 8: Project Presentations and Assessment
Learning Objectives:
- Present technical projects professionally
- Give and receive constructive feedback
- Self-evaluate learning progress and achievements
- Plan next steps for continued learning
Key Concepts:
- Technical Communication: Explaining complex systems clearly
- Presentation Skills: Engaging audiences with technical content
- Peer Review: Constructive feedback and collaboration
- Self-Assessment: Honest evaluation of own work
- Professional Development: Planning continued learning paths
- Portfolio Building: Documenting achievements for future opportunities
Presentation Structure:
- Project Overview (2 minutes)
- Problem statement and objectives
- Target audience and use cases
- Key features and functionality
- Technical Demonstration (2 minutes)
- Live system operation
- Key components and how they work
- Code walkthrough of critical sections
- Challenges and Solutions (1 minute)
- Major obstacles encountered
- Creative solutions implemented
- Lessons learned from failures
Evaluation Criteria:
Technical Merit (40%):
- System functionality and reliability
- Code quality and organization
- Creative problem-solving approach
- Integration of multiple technologies
Communication (30%):
- Clear explanation of technical concepts
- Engaging presentation delivery
- Appropriate use of visual aids
- Effective response to questions
Documentation (20%):
- Complete project documentation
- Code comments and structure
- User instructions and setup guides
- Reflection on learning process
Collaboration (10%):
- Constructive feedback to peers
- Professional interaction during Q&A
- Willingness to share knowledge
- Respectful critique and discussion
Python Programming Trivia Challenge: End the term with fun technical questions:
- What does “PEP 8” refer to in Python?
- What’s the difference between
==andisin Python? - How do you handle exceptions in Python?
- What is a Python decorator?
- What’s the difference between a list and a tuple?
Grade 10-12 Final Assessment - Weeks 6-8
Integrated Systems Project Assessment
Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)
Project Requirements: Students must create an integrated system that combines:
- At least 3 different sensors
- At least 2 actuators (motors, lights, relays, etc.)
- Data logging and analysis
- User interface (command line or simple GUI)
- Error handling and safety features
Part A: Technical Implementation (40 points)
System Design (10 points)
- Clear problem definition and solution approach
- System architecture diagram showing component relationships
- Hardware schematic or connection diagram
- Software flowchart or algorithm description
Code Quality (15 points)
- Well-structured, modular code with functions/classes
- Appropriate variable names and code organization
- Comprehensive comments explaining complex sections
- Error handling for hardware failures
- Efficient algorithms and resource usage
Hardware Integration (15 points)
- Stable sensor readings with appropriate filtering
- Reliable actuator control with safety limits
- Proper electrical connections and component usage
- System operates reliably for extended periods
- Professional cable management and mounting
Part B: Documentation and Communication (25 points)
Project Documentation (15 points) Create a complete project report including:
- Executive summary of project goals and achievements
- Detailed technical specifications and requirements
- Installation and setup instructions
- User manual with clear operating procedures
- Troubleshooting guide for common problems
- Code documentation with API reference
Technical Presentation (10 points)
- Clear 5-minute presentation explaining project
- Live demonstration of working system
- Professional slides with technical diagrams
- Confident handling of technical questions
- Appropriate use of technical vocabulary
Part C: Innovation and Problem Solving (20 points)
Creative Solutions (10 points)
- Original approach to solving chosen problem
- Creative use of available hardware and software
- Evidence of iterative design and improvement
- Solutions show depth of understanding beyond basic requirements
Advanced Features (10 points) Choose and implement at least TWO:
- Machine learning or AI decision making
- Network communication (IoT connectivity)
- Mobile app or web interface
- Data visualization and analytics
- Predictive algorithms or optimization
- Integration with external APIs or services
Part D: Professional Skills (15 points)
Peer Collaboration (8 points)
- Constructive feedback provided to classmates
- Professional behavior during presentations
- Willingness to help others debug problems
- Respectful and insightful questions during Q&A
Self-Assessment (7 points) Written reflection addressing:
- Most significant technical challenge and how you overcame it
- What you would do differently if starting over
- How this project connects to potential career interests
- Specific skills you want to develop further
- Your confidence level with different aspects of the project
Sample Project Evaluation Rubric:
Exceptional (90-100%)
- System exceeds all requirements with innovative features
- Code is publication-quality with comprehensive documentation
- Presentation is engaging and demonstrates deep understanding
- Shows leadership in helping others and contributing to class learning
- Self-reflection shows sophisticated understanding of learning process
Proficient (80-89%)
- System meets all requirements reliably
- Code is well-structured with good documentation
- Presentation is clear and technically accurate
- Actively participates in peer learning and feedback
- Self-reflection shows good awareness of strengths and growth areas
Developing (70-79%)
- System meets most requirements with minor issues
- Code works but may have organizational or documentation gaps
- Presentation covers required topics but may lack depth
- Participates adequately in class activities
- Self-reflection shows basic understanding of learning process
Beginning (60-69%)
- System meets basic requirements but has significant limitations
- Code works for demonstration but has structural or reliability issues
- Presentation covers basics but shows limited understanding
- Minimal participation in peer activities
- Self-reflection is superficial or lacks insight
Incomplete (Below 60%)
- System fails to meet basic requirements or doesn’t function reliably
- Code has major issues that prevent proper operation
- Presentation is unclear or shows misunderstanding of concepts
- Little to no participation in collaborative learning
- Self-reflection missing or shows no evidence of learning
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Notes
I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:
What’s Included:
For Each Grade Level:
- Detailed weekly lesson notes covering weeks 1-8 content
- Key concepts and learning objectives for each topic
- Practical examples and code samples (for programming grades)
- Age-appropriate assessment tests with multiple formats
Assessment Formats:
- Preschoolers (4-6): Practical/observational assessments with hands-on activities
- Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
- Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
- Grade 10-12 (14-16): Coding assignments + hardware integration projects
Key Features:
- ✅ Covers all 8 weeks of Term 1 content
- ✅ Aligned with curriculum from the IoT & Robotics document
- ✅ Progressive difficulty appropriate for each age group
- ✅ Practical assessments that test real understanding
- ✅ Detailed rubrics for fair evaluation
- ✅ Extension activities for advanced learners
- ✅ Safety guidelines and best practices
Topics Covered:
- Preschoolers: STEM basics, simple machines, unplugged coding
- Grade 2-5: Scratch programming, Blockly games, interface navigation
- Grade 6-9: Drone basics, aviation principles, safety regulations
- Grade 10-12: Python programming, hardware control, sensor integration
Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.
Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
IoT & Robotics Term 1 - Complete Notes & Assessment Tests
Table of Contents
- Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
- Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
- Grade 6-9 (11-14 Years) - Drone Aviation Introduction
- Grade 10-12 (14-16 Years) - Python Basics
Preschoolers (4-6 Years)
Term 1: STEM Storytelling & Coding Toys
Week 1: Introduction to STEM
Learning Objectives:
- Understand basic concepts of STEM (Science, Technology, Engineering, Math)
- Spark excitement and curiosity about STEM through hands-on activities
- Foster teamwork through group experiments
- Develop early thinking through guided play and experimentation
Key Concepts:
- Science: Learning about the world around us through observation
- Technology: Simple tools and devices that help us
- Engineering: Building and creating solutions
- Mathematics: Numbers, shapes, and patterns in everyday life
Activities:
- Floating vs. Sinking experiments with various objects
- Basic robot interaction and exploration
- STEM vocabulary building games
- Classification activities
Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet
Week 2: STEM Play Corners
Learning Objectives:
- Explore different STEM areas through play stations
- Develop fine motor skills through hands-on manipulation
- Practice problem-solving through guided discovery
- Build confidence in exploring new concepts
Key Concepts:
- Play-based learning: Learning through exploration and fun
- Spatial awareness: Understanding shapes, sizes, and positions
- Cause and effect: Understanding that actions have results
- Collaboration: Working together to solve problems
Week 3: Simple Machines & Environmental Science
Learning Objectives:
- Identify simple machines in everyday life
- Understand basic environmental concepts
- Develop observation skills
- Connect STEM to the natural world
Key Concepts:
- Simple Machines: Lever, pulley, wheel, ramp
- Environment: Plants, animals, weather, seasons
- Observation: Using our senses to learn
- Nature patterns: Recognizing patterns in nature
Week 4: Unplugged Coding
Learning Objectives:
- Introduction to coding concepts without computers
- Understand sequence and order
- Develop logical thinking
- Practice following and giving instructions
Key Concepts:
- Sequence: Steps in order
- Instructions: Clear directions to follow
- Algorithms: Step-by-step solutions
- Patterns: Recognizing and creating patterns
Assessment Test - Preschoolers (4-6 Years)
Week 1-2 Assessment: STEM Basics
Format: Practical/Observational Assessment
- Floating or Sinking? (Show child various objects)
- Point to objects that will float: feather, cork, plastic toy
- Point to objects that will sink: stone, coin, marble
- Explain why you think so (in simple words)
- STEM Matching (Picture cards)
- Match the scientist to the magnifying glass
- Match the engineer to the building blocks
- Match the mathematician to the numbers
- Match the technologist to the computer
- Following Instructions
- Can follow 2-step instructions: “Pick up the red block and put it in the box”
- Can give simple instructions to a friend
- Can arrange objects in order (biggest to smallest)
Assessment Rubric:
- Exceeding (3): Completes all tasks independently with explanation
- Meeting (2): Completes most tasks with minimal guidance
- Approaching (1): Attempts tasks with significant support
- Beginning (0): Needs extensive help to participate
Week 3-4 Assessment: Simple Machines & Coding
Format: Hands-on Demonstration
- Simple Machines Hunt
- Find the lever (seesaw, scissors)
- Find the wheel (bicycle, toy car)
- Find the ramp (slide, wedge)
- Explain what each machine helps us do
- Nature Observation
- Draw or point to living things vs. non-living things
- Identify basic shapes in nature (circles in flowers, triangles in mountains)
- Name things that grow vs. things that are made
- Unplugged Coding Challenge
- Arrange sequence cards to show morning routine
- Give directions to help friend reach the treasure
- Complete a simple pattern with blocks or shapes
Grade 2-5 (7-11 Years)
Term 1: Scratch & Blockly Programming
Week 1: Introduction to Programming
Learning Objectives:
- Understand what programming is
- Learn about Scratch programming environment
- Install and explore Scratch interface
- Grasp the concept of sequencing
Key Concepts:
- Programming: Giving instructions to computers
- Scratch: Visual programming language using blocks
- Interface: The screen where we work with Scratch
- Sequencing: Putting commands in the right order
- Sprites: Characters in Scratch programs
- Stage: Where Scratch programs run
Core Activities:
- Explore Scratch interface and tools
- Identify different areas (sprite area, blocks palette, stage)
- Learn about different block categories (Motion, Looks, Sound, etc.)
- Create first simple animation
Week 2: Understanding Scratch Interface
Learning Objectives:
- Navigate Scratch interface confidently
- Understand different block categories
- Create basic sprite movements
- Save and load projects
Key Concepts:
- Blocks Palette: Where programming blocks are stored
- Scripts Area: Where we build our programs
- Motion Blocks: Make sprites move
- Looks Blocks: Change sprite appearance
- Events: What starts our programs running
Week 3: Setting Up Scratch Projects
Learning Objectives:
- Plan and organize Scratch projects
- Understand project structure
- Use backgrounds and sprites effectively
- Practice debugging simple problems
Key Concepts:
- Project Planning: Thinking before coding
- Backgrounds: Scenes for our programs
- Sprite Library: Ready-made characters
- Debugging: Finding and fixing problems
Week 4: Introduction to Blockly
Learning Objectives:
- Understand Blockly visual programming
- Compare Blockly with Scratch
- Complete basic Blockly puzzles
- Transfer concepts between platforms
Key Concepts:
- Blockly: Another visual programming language
- Puzzle-based Learning: Learning through solving challenges
- Logic Blocks: Making decisions in programs
- Loops: Repeating actions
Week 5: Blockly Games for Scratch Programmers
Learning Objectives:
- Apply Scratch knowledge to Blockly games
- Solve increasingly complex puzzles
- Understand programming logic and flow
- Build problem-solving confidence
Key Concepts:
- Game Logic: Rules that make games work
- Progressive Difficulty: Challenges that get harder
- Pattern Recognition: Seeing repeated solutions
- Persistence: Keep trying when challenges are difficult
Assessment Test - Grade 2-5 (7-11 Years)
Week 1-3 Assessment: Scratch Fundamentals
Format: Practical Computer Assessment (30 minutes)
Part A: Interface Knowledge (10 points)
- Label the parts of Scratch interface:
- Blocks Palette
- Scripts Area
- Stage
- Sprite Area
- Match the block colors to their functions:
- Motion blocks: _____ (Blue)
- Looks blocks: _____ (Purple)
- Sound blocks: _____ (Pink)
- Events blocks: _____ (Yellow)
Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:
-
Move 10 steps forward
-
Turn 90 degrees right
-
Say “Hello” for 2 seconds
-
Change color
- Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]
Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?
-
Missing “when green flag clicked” block
-
Sprite is already at the edge
-
Motion blocks aren’t connected
-
All of the above
- Create a simple animation showing a cat walking across the stage.
Week 4-5 Assessment: Blockly & Problem Solving
Format: Computer-based Blockly Challenges (25 minutes)
Part A: Blockly Basics (8 points)
- Complete the “Move Forward” puzzle in Blockly
- Complete the “Turn Left/Right” puzzle
- Complete the “Repeat Loop” puzzle
- Complete the “If/Else” puzzle
Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:
Repeat 4 times:
Move forward
Turn right 90 degrees
Answer: _________________
- Write Blockly code to make a character:
- Move forward 3 steps
- Turn left if path is blocked
- Repeat until reaching goal
Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:
- Create a Scratch program that does the same thing as this Blockly code:
When started: Repeat 5 times: Move forward 20 steps Wait 1 second
Assessment Rubric:
- Advanced (90-100%): Completes all tasks efficiently with creative additions
- Proficient (80-89%): Completes most tasks correctly with minor errors
- Developing (70-79%): Completes basic tasks but struggles with complex problems
- Beginning (Below 70%): Needs significant support to complete tasks
Grade 6-9 (11-14 Years)
Term 1: Drone Aviation Introduction
Week 1: Introduction to Drones and Aviation Basics
Learning Objectives:
- Understand what drones are and their applications
- Learn basic aviation principles
- Identify different types of aircraft
- Understand the evolution of flight
Key Concepts:
- Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
- Remote Pilot: Person controlling the drone from the ground
- Autonomous Flight: Drones flying with minimal human control
- Commercial vs. Recreational Use: Different purposes for drones
- Four Forces of Flight: Lift, Weight, Thrust, Drag
- Aerodynamics: How air moves around objects in flight
Applications of Drones:
- Photography and videography
- Search and rescue operations
- Agriculture monitoring
- Package delivery
- Scientific research
- Military operations
Week 2: Drone Safety Rules and Best Practices
Learning Objectives:
- Learn essential drone safety protocols
- Understand pre-flight checklist procedures
- Identify potential hazards and risks
- Develop responsible drone operation habits
Key Concepts:
- Pre-flight Inspection: Checking drone condition before flying
- Weather Conditions: How weather affects drone flight
- Battery Safety: Proper battery handling and storage
- Emergency Procedures: What to do when things go wrong
- Situational Awareness: Being aware of surroundings while flying
Safety Rules:
- Always maintain visual contact with drone
- Check weather conditions before flying
- Inspect drone and equipment before each flight
- Fly in open areas away from people and property
- Never fly above 400 feet
- Respect others’ privacy
- Land immediately if drone malfunctions
Week 3: FAA/UAS Regulations (Basic Overview)
Learning Objectives:
- Understand basic aviation regulations
- Learn about no-fly zones and restricted airspace
- Understand registration requirements
- Learn about pilot certification basics
Key Concepts:
- Federal Aviation Administration (FAA): Government agency regulating aviation
- Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
- No-Fly Zones: Areas where drone flight is prohibited
- Remote Pilot Certificate: License required for commercial drone operations
- Registration: Required identification for drones over 0.55 pounds
Basic Regulations:
- Drones must be registered if over 0.55 lbs (250 grams)
- Maximum altitude: 400 feet above ground level
- Must yield right-of-way to manned aircraft
- No flying over groups of people
- No flying at night without special certification
- Respect airport operational areas (usually 5-mile radius)
Week 4: Key Drone Types & Components
Learning Objectives:
- Identify different drone configurations
- Understand key drone components and their functions
- Compare advantages and disadvantages of different designs
- Learn basic maintenance requirements
Key Concepts:
- Multirotor: Drones with multiple rotating propellers
- Fixed-wing: Airplane-like drones with wings
- Hybrid VTOL: Vertical takeoff and landing with forward flight capability
- Frame: Main structure holding all components
- Flight Controller: Computer controlling drone flight
- ESC (Electronic Speed Controller): Controls motor speed
- Gimbal: Stabilizes camera during flight
Drone Types:
- Quadcopter: 4 rotors, most common configuration
- Hexacopter: 6 rotors, more redundancy and payload capacity
- Octocopter: 8 rotors, highest redundancy and capacity
- Fixed-wing: Longer flight times, faster speeds
- Racing drones: Small, fast, agile for competitive flying
Week 5: Basic Principles of Flight
Learning Objectives:
- Understand the four forces of flight in detail
- Learn how drones achieve controlled flight
- Understand stability and control concepts
- Explore flight dynamics and physics
Key Concepts:
- Lift: Upward force generated by rotors or wings
- Weight (Gravity): Downward force pulling drone toward earth
- Thrust: Forward force propelling drone through air
- Drag: Resistance force opposing motion through air
- Center of Gravity: Balance point of drone
- Pitch, Roll, Yaw: Three axes of rotation
- Gyroscopic Effect: How spinning rotors affect stability
Flight Control:
- Throttle: Controls altitude (up/down)
- Pitch: Controls forward/backward movement
- Roll: Controls left/right movement
- Yaw: Controls rotation (turning left/right)
- Trim: Fine adjustments for balanced flight
Assessment Test - Grade 6-9 (11-14 Years)
Week 1-2 Assessment: Drone Basics and Safety
Format: Written Test + Practical Safety Demonstration (45 minutes)
Part A: Multiple Choice (20 points)
-
What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle
-
Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight
-
What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera
-
The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet
-
What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors
Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)
- Explain three commercial applications of drones: (9 points)
- Why is it important to maintain visual contact with your drone during flight? (6 points)
Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures
Week 3-5 Assessment: Regulations and Flight Principles
Format: Written Test + Flight Theory Application (50 minutes)
Part A: Regulations Knowledge (20 points)
- True/False (10 points)
- Drones under 0.55 lbs need to be registered: ___
- You can fly your drone anywhere as long as it’s daytime: ___
- Commercial drone operations require a Remote Pilot Certificate: ___
- Drones must always yield to manned aircraft: ___
- Flying over groups of people is allowed with permission: ___
- What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:
Part B: Drone Components (15 points) 3. Match the component to its function:
-
Flight Controller: _____ a) Provides power to motors
-
ESC: _____ b) Stabilizes camera
-
Gimbal: _____ c) Main structural support
-
Frame: _____ d) Controls drone flight
-
Battery: _____ e) Controls motor speed
- Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)
Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)
- Explain how a drone moves in each direction: (13 points)
- Forward: ________________________________
- Backward: ________________________________
- Left: ________________________________
- Right: ________________________________
- Up: ________________________________
- Rotate left: ________________________________
Assessment Rubric:
- Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
- Proficient (80-89%): Shows solid grasp of concepts with minor gaps
- Developing (70-79%): Understands basic concepts but lacks detail in complex areas
- Novice (Below 70%): Limited understanding, needs additional instruction
Grade 10-12 (14-16 Years)
Term 1: Introduction to Python Basics
Week 1: Writing Structured Python Code
Learning Objectives:
- Understand Python syntax and structure
- Learn proper code formatting and indentation
- Write clean, readable code following best practices
- Understand variables, data types, and basic operations
Key Concepts:
- Python: High-level programming language
- Syntax: Rules for writing Python code
- Indentation: Using spaces to organize code structure
- Variables: Named storage for data values
- Data Types: int, float, string, boolean
- Comments: Documentation within code using #
- Print Statement: Displaying output to screen
Code Structure Best Practices:
# Header comment explaining the program
# Author: Your Name
# Date: Today's Date
# Import statements
import module_name
# Constants (UPPERCASE naming)
MAX_VALUE = 100
# Main program logic
def main():
# Variable declarations
user_name = "Student"
age = 16
# Program logic with proper indentation
print(f"Hello, {user_name}!")
print(f"You are {age} years old.")
# Run the program
if __name__ == "__main__":
main()
Week 2: Functions and Loops
Learning Objectives:
- Create and use custom functions
- Understand function parameters and return values
- Implement for loops and while loops
- Apply loops to solve repetitive tasks
Key Concepts:
- Function: Reusable block of code that performs a specific task
- Parameters: Input values passed to functions
- Return Value: Output value from a function
- For Loop: Repeats code a specific number of times
- While Loop: Repeats code while a condition is true
- Range Function: Generates sequences of numbers
- Iteration: Each repetition of a loop
- Loop Control: Managing when loops start and stop
Function Examples:
# Simple function with no parameters
def greet():
print("Hello, World!")
# Function with parameters
def greet_person(name, age):
print(f"Hello, {name}! You are {age} years old.")
# Function with return value
def calculate_area(length, width):
area = length * width
return area
# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")
Loop Examples:
# For loop with range
for i in range(5):
print(f"Count: {i}")
# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(f"I like {fruit}")
# While loop
count = 0
while count < 3:
print(f"While loop count: {count}")
count += 1
Week 3: Using Python Libraries
Learning Objectives:
- Understand what Python libraries are and why they’re useful
- Learn to import and use common libraries
- Work with GPIOZero and time libraries
- Explore library documentation and help systems
Key Concepts:
- Library/Module: Pre-written code that adds functionality
- Import Statement: Bringing library functions into your program
- GPIOZero: Library for controlling Raspberry Pi GPIO pins
- Time Library: Functions for working with time and delays
- Documentation: Instructions for using library functions
- API: Application Programming Interface - how to use library functions
Library Usage Examples:
# Importing entire modules
import time
import math
# Importing specific functions
from gpiozero import LED, Button
from time import sleep
# Using time library
print("Starting program...")
time.sleep(2) # Wait 2 seconds
print("2 seconds have passed!")
# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")
# Using GPIOZero (for Raspberry Pi)
led = LED(18) # LED connected to GPIO pin 18
button = Button(2) # Button connected to GPIO pin 2
# Turn LED on and off
led.on()
sleep(1)
led.off()
Week 4: Controlling Motors with Python
Learning Objectives:
- Understand how to interface with motors using Python
- Learn about PWM (Pulse Width Modulation) for motor control
- Control motor speed and direction
- Implement safety features in motor control code
Key Concepts:
- Motor Control: Using code to make motors move
- PWM (Pulse Width Modulation): Method to control motor speed
- Duty Cycle: Percentage of time signal is “on” vs “off”
- Direction Control: Making motors spin clockwise/counterclockwise
- Motor Driver: Electronics that interface between Python and motors
- Safety Features: Code to prevent motor damage
Motor Control Examples:
from gpiozero import Motor, PWMOutputDevice
from time import sleep
# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)
# Basic motor control
def basic_motor_test():
print("Motor forward at full speed")
motor.forward(1.0) # Full speed forward
sleep(2)
print("Motor forward at half speed")
motor.forward(0.5) # Half speed forward
sleep(2)
print("Motor stopped")
motor.stop()
sleep(1)
print("Motor backward at full speed")
motor.backward(1.0) # Full speed backward
sleep(2)
motor.stop()
print("Motor test complete")
# PWM speed control example
def speed_ramp_test():
print("Ramping motor speed up...")
for speed in range(0, 101, 10): # 0 to 100% in 10% steps
motor_speed = speed / 100.0
motor.forward(motor_speed)
print(f"Speed: {speed}%")
sleep(0.5)
motor.stop()
print("Speed ramp complete")
# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()
Week 5: Controlling Sensors with Python
Learning Objectives:
- Interface with various sensors using Python
- Read and process sensor data
- Implement sensor-based decision making
- Create responsive programs based on sensor input
Key Concepts:
- Sensor: Device that detects and measures physical properties
- Analog vs Digital: Different types of sensor signals
- ADC (Analog-to-Digital Converter): Converts analog signals to digital
- Sensor Calibration: Adjusting sensor readings for accuracy
- Data Processing: Converting raw sensor data to useful information
- Polling vs Interrupts: Different ways to read sensor data
Common Sensors:
- Temperature sensors: Measure environmental temperature
- Light sensors (LDR): Detect light intensity
- Ultrasonic sensors: Measure distance using sound waves
- Motion sensors (PIR): Detect movement
- Pressure sensors: Measure force or pressure
Sensor Control Examples:
from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics
# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)
def read_temperature():
# Convert voltage to temperature (example conversion)
voltage = temp_sensor.voltage
temperature_c = (voltage - 0.5) * 100 # Example conversion formula
temperature_f = (temperature_c * 9/5) + 32
return temperature_c, temperature_f
# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)
def monitor_distance():
print("Distance monitoring (press Ctrl+C to stop)")
try:
while True:
distance = distance_sensor.distance * 100 # Convert to cm
print(f"Distance: {distance:.1f} cm")
if distance < 10:
print("WARNING: Object too close!")
sleep(0.5)
except KeyboardInterrupt:
print("Distance monitoring stopped")
# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)
def motion_detector():
print("Motion detector active...")
def motion_detected():
print("Motion detected!")
alert_led.on()
sleep(2)
alert_led.off()
def no_motion():
print("No motion")
alert_led.off()
# Set up motion sensor callbacks
motion.when_motion = motion_detected
motion.when_no_motion = no_motion
# Keep program running
try:
while True:
sleep(0.1)
except KeyboardInterrupt:
print("Motion detector stopped")
# Data logging example
def log_sensor_data():
readings = []
print("Collecting sensor data for 30 seconds...")
start_time = time.time()
while time.time() - start_time < 30:
temp_c, temp_f = read_temperature()
distance = distance_sensor.distance * 100
readings.append({
'timestamp': time.time(),
'temperature_c': temp_c,
'temperature_f': temp_f,
'distance_cm': distance
})
print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
sleep(1)
# Calculate statistics
temps = [r['temperature_c'] for r in readings]
distances = [r['distance_cm'] for r in readings]
print(f"\nData Summary:")
print(f"Average temperature: {statistics.mean(temps):.1f}°C")
print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
print(f"Average distance: {statistics.mean(distances):.1f}cm")
print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")
# Example usage
if __name__ == "__main__":
# Run different examples
monitor_distance() # Uncomment to run distance monitoring
# motion_detector() # Uncomment to run motion detection
# log_sensor_data() # Uncomment to run data logging
Assessment Test - Grade 10-12 (14-16 Years)
Week 1-2 Assessment: Python Fundamentals
Format: Coding Assignment + Written Questions (60 minutes)
Part A: Code Structure and Syntax (25 points)
- Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average
calculate average(10, 20, 30)
Your corrected code:
# Write corrected version here
Explanation of errors: ________________________________
- Write a well-structured Python program (15 points): Create a program that:
- Has proper header comments
- Uses appropriate variable names
- Calculates the area of different shapes (circle, rectangle, triangle)
- Uses functions with parameters and return values
- Follows proper indentation and formatting
Part B: Functions and Loops (30 points)
- Write a function called
print_multiplication_table(15 points):
- Takes one parameter:
number - Prints multiplication table for that number (1-10)
- Uses a for loop
- Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
- Password Checker Program (15 points): Write a program using while loop that:
- Asks user to enter a password
- Keeps asking until they enter “python123”
- Counts number of attempts
- Prints “Access granted” when correct
- Prints number of attempts it took
Week 3-5 Assessment: Libraries and Hardware Control
Format: Practical Coding Project (75 minutes)
Part A: Library Usage (20 points)
- Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______ # What library do you need for calculating average?
# Create sensor object
light_sensor = MCP3008(channel=0)
def read_light_levels():
readings = []
# Collect 10 readings
for i in range(______): # Fill in the range
reading = light_sensor.______ # What property gives the reading?
readings.append(reading)
print(f"Reading {i+1}: {reading:.3f}")
sleep(0.5)
# Calculate and print statistics
average = ______.mean(readings) # Which function calculates mean?
maximum = ______(readings) # Built-in function for maximum
minimum = ______(readings) # Built-in function for minimum
print(f"Average: {average:.3f}")
print(f"Maximum: {maximum:.3f}")
print(f"Minimum: {minimum:.3f}")
# Call the function
read_light_levels()
Part B: Motor Control Project (25 points)
- Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
- Use a temperature sensor to read room temperature
- Control a motor (fan) based on temperature:
- Below 20°C: Fan off
- 20-25°C: Fan at 30% speed
- 25-30°C: Fan at 60% speed
- Above 30°C: Fan at 100% speed
- Print current temperature and fan speed every 2 seconds
- Include safety features (motor stop function)
Part C: Sensor Integration Challenge (30 points)
- Security System Prototype (30 points): Create a basic security system that:
- Uses a motion sensor to detect movement
- Uses a distance sensor to detect objects too close
- Controls LEDs to indicate system status:
- Green LED: System normal
- Yellow LED: Motion detected
- Red LED: Intrusion alert (object < 20cm)
- Logs events with timestamps
- Runs continuously until user presses Ctrl+C
Requirements:
- Use at least 3 different libraries
- Include proper error handling
- Use functions to organize code
- Add meaningful comments
- Follow Python coding best practices
Sample code structure:
from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time
# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)
def log_event(message):
# Write function to log events with timestamp
pass
def check_security():
# Write function to check all sensors and control LEDs
pass
def main():
# Write main program loop
pass
if __name__ == "__main__":
main()
Assessment Rubric:
- Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
- Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
- Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
- Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
- Incomplete (Below 65%): Code doesn’t run or major portions missing
Additional Resources and Extensions
For All Grade Levels:
Vocabulary Glossary:
- Algorithm: Step-by-step instructions to solve a problem
- Bug: Error in code that prevents it from working correctly
- Debug: Process of finding and fixing errors in code
- Hardware: Physical components of computer systems
- Software: Programs and applications that run on hardware
- Interface: Way users interact with programs or devices
- Sensor: Device that detects changes in environment
- Actuator: Device that causes movement or action
Project Portfolio Suggestions:
- Weekly Reflection Journal: Students document learning and challenges
- Photo Documentation: Pictures of projects and experiments
- Video Demonstrations: Students explain their projects
- Peer Teaching: Advanced students help beginners
- Innovation Challenges: Open-ended problems to solve creatively
Cross-Curricular Connections:
- Math: Geometry in robotics, statistics in data analysis
- Science: Physics of flight, electronics principles
- Art: Creative programming projects, design thinking
- Social Studies: Impact of technology on society
- Language Arts: Technical writing, documentation skills
Safety Reminders:
- Always supervise young children with electronic components
- Check battery connections before powering devices
- Keep work area clean and organized
- Wash hands after handling electronic components
- Report any damaged equipment immediately
- Follow proper shutdown procedures for all devices
Assessment Portfolio Checklist:
- Completed weekly assessments
- Project documentation with photos
- Reflection essays on learning progress
- Peer evaluation forms
- Self-assessment rubrics
- Evidence of problem-solving process
- Creative extensions or improvements to basic projects
Continuation - Weeks 6-8 for All Grade Levels
Preschoolers (4-6 Years) - Weeks 6-8
Advanced STEM Exploration & Technology Awareness
Week 6: Technology Parts Awareness
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically be able to follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Technology Components: Basic parts that make devices work
- Circuits: Paths that electricity follows
- Assembly/Disassembly: Taking apart and putting together
- Electronics Safety: Safe handling of batteries and components
- Problem-Solving: Trying different solutions when something doesn’t work
Activities:
- Technology Exploration: Examine old keyboards, phones, calculators
- Simple Circuits: Connect bulbs to batteries with safe materials
- Assembly Practice: Take apart and reassemble simple toys
- Tech Parts Sorting: Group similar technology components
Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors
Week 7: Sequencing & Floor Grid Coding
Learning Objectives:
- Develop understanding of sequencing by arranging steps in correct order
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence through trial-and-error learning
Key Concepts:
- Sequencing: Putting steps in the right order
- Algorithm Cards: Visual instructions to follow
- Floor Grid Coding: Moving through spaces following directions
- Left/Right/Forward/Back: Basic directional concepts
- Trial and Error: Learning by trying and improving
Activities:
- Obstacle Course Coding: Navigate through simple obstacles using arrow cards
- Sequencing Games: Put daily routine cards in correct order
- Paper Maze Coding: Use arrows to show path through printed mazes
- Robot Friend: One child gives directions, another follows like a robot
Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets
Week 8: Advanced Unplugged Coding & Storytelling
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
- Debugging: Finding and fixing mistakes in directions
- Block Building: Using physical blocks to represent code
- Story Algorithms: Step-by-step instructions for telling stories
Activities:
- Debug the Path: Present incorrect direction sequences for children to fix
- IF/THEN Games: “If you see a triangle, then clap your hands”
- Story Coding: Use picture cards to create step-by-step stories
- Block Code Building: Stack blocks to represent programming sequences
Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling
Preschoolers Assessment - Weeks 6-8
Week 6 Assessment: Technology Awareness
Format: Hands-on Exploration + Observation (20 minutes)
- Technology Parts Recognition (10 points)
- Point to and name 3 technology items from the collection
- Show how a simple circuit works (bulb + battery)
- Safely handle electronic components
- Explain one thing each item helps us do
- Assembly Skills (10 points)
- Take apart a simple toy or device
- Put it back together correctly
- Identify which parts go where
- Ask for help when needed
Assessment Criteria:
- Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
- Developing (2): Safe handling, completes most tasks with minimal help
- Emerging (1): Needs guidance but participates actively
- Beginning (0): Requires extensive support
Week 7-8 Assessment: Advanced Unplugged Coding
Format: Physical Coding Challenges (25 minutes)
- Sequencing Challenge (12 points)
- Arrange 6 direction cards to navigate through obstacle course
- Explain why each step comes in that order
- Successfully complete the physical navigation
- Fix mistakes when path doesn’t work
- IF/THEN Logic (8 points)
- Follow conditional instructions: “IF you see blue, THEN hop”
- Create own IF/THEN rule for a friend to follow
- Demonstrate understanding with actions
- Story Algorithm (10 points)
- Use 5 picture cards to create logical story sequence
- Tell story following the card order
- Explain what happens if cards are mixed up
- Help fix a mixed-up story sequence
Practical Skills Rubric:
- Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
- Proficient (20-24 points): Completes all challenges correctly with minor guidance
- Developing (15-19 points): Understands concepts but needs support for complex tasks
- Beginning (Below 15 points): Requires significant help to participate
Grade 2-5 (7-11 Years) - Weeks 6-8
Advanced Scratch Programming & Game Development
Week 6: Game Structure and Design
Learning Objectives:
- Understand basic game structure (start, play, end)
- Use Scratch blocks to move characters and detect collisions
- Make characters move between different scenes
- Create scoring or win conditions
Key Concepts:
- Game Design Elements: Characters, backgrounds, objectives, rules
- Game Loop: Continuous cycle of input, processing, output
- Collision Detection: Knowing when sprites touch each other
- Scene Transitions: Moving between different game screens
- Win/Lose Conditions: Rules that determine game outcomes
- User Interface: Buttons, scores, and information displays
Advanced Scratch Concepts:
- Sensing Blocks: “touching color”, “distance to”, “key pressed”
- Variables: Storing score, lives, or time
- Broadcast Messages: Communication between sprites
- Clone Sprites: Creating multiple copies of objects
- Custom Blocks: Making your own programming blocks
Game Development Process:
- Planning Phase: Sketch game idea, list needed sprites and backgrounds
- Prototype: Create basic movement and interaction
- Enhancement: Add sounds, effects, and polish
- Testing: Play game and fix bugs
- Sharing: Present to classmates
Example Game Structure:
When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
If key space pressed:
Move player sprite
If touching enemy:
Change lives by -1
If lives = 0:
Say "Game Over!"
Stop all
Week 7: Transition to Text-Based Concepts
Learning Objectives:
- Prepare learners for text-based coding
- Understand basic programming concepts using blocks
- Use logic and loops to control sprite or robot actions
- Begin transition to robotics or advanced coding platforms
Key Concepts:
- Programming Fundamentals: Sequence, selection, iteration
- Logic Blocks: IF/ELSE statements in visual form
- Loop Types: Forever, repeat until, repeat X times
- Variables and Operations: Math in programming
- Event-Driven Programming: Responding to user input
- Modular Programming: Breaking code into smaller parts
Bridging Visual to Text:
- Block-to-Code Thinking: Understanding what blocks represent
- Pseudocode: Writing steps in plain English before coding
- Debugging Strategies: Systematic problem-solving approaches
- Code Organization: Keeping projects neat and logical
Advanced Programming Patterns:
// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
If game state = "menu":
Show menu options
If game state = "playing":
Run game logic
If game state = "game over":
Show final score
// Pattern 2: Object Behavior
When I start as a clone:
Go to random position
Forever:
Move 2 steps
If on edge, bounce
If touching player:
Change score by 10
Delete this clone
Week 8: Blockly Integration and Logic Puzzles
Learning Objectives:
- Solve logic puzzles using visual programming concepts
- Create games using Blockly platform
- Demonstrate understanding of programming fundamentals
- Apply creative problem-solving skills
Key Concepts:
- Blockly Platform: Google’s visual programming language
- Logic Puzzles: Problems requiring systematic thinking
- Algorithm Efficiency: Finding the best solution method
- Pattern Recognition: Identifying repeated solutions
- Creative Programming: Using code for artistic expression
Blockly vs. Scratch Comparison:
| Feature | Scratch | Blockly |
|---|---|---|
| Focus | Storytelling & Games | Logic & Algorithms |
| Interface | Stage-based | Puzzle-based |
| Output | Animated Projects | Problem Solutions |
| Progression | Creative Expression | Mathematical Thinking |
Logic Puzzle Types:
- Maze Solving: Navigate through obstacles
- Pattern Completion: Fill in missing sequences
- Conditional Logic: IF/THEN decision making
- Loop Optimization: Repeat actions efficiently
Grade 2-5 Assessment - Weeks 6-8
Week 6 Assessment: Game Development Project
Format: Scratch Game Creation + Presentation (45 minutes)
Part A: Game Planning (10 points)
- Game Design Document - Create a simple plan including:
- Game objective (what’s the goal?)
- Main character description
- Basic rules (how do you win/lose?)
- Required sprites and backgrounds
- Storyboard - Draw 3 screens showing:
- Game start screen
- Main gameplay
- Win/lose screen
Part B: Game Implementation (25 points) 3. Core Functionality (15 points):
-
Character moves with arrow keys or WASD
-
At least one interactive element (enemy, collectible, obstacle)
-
Basic collision detection (touching = something happens)
-
Clear win or lose condition
- Polish and Enhancement (10 points):
- Sound effects or music
- Visual feedback (score, lives, timer)
- Smooth sprite movement
- Creative backgrounds or costumes
Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):
-
Explain game rules clearly
-
Demonstrate gameplay for 2 minutes
-
Show different game scenarios
-
Handle questions from classmates
- Technical Reflection (5 points):
- Explain one challenging problem you solved
- Describe one improvement you would make
- Share one new Scratch skill you learned
Week 7-8 Assessment: Programming Concepts Mastery
Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)
Part A: Blockly Logic Challenges (20 points)
- Maze Navigation (8 points):
- Complete 3 increasingly difficult maze puzzles
- Use efficient solutions (minimal blocks)
- Demonstrate understanding of loops and conditionals
- Pattern Recognition (6 points):
- Solve sequence completion puzzles
- Identify and extend number/color patterns
- Create original pattern for others to solve
- Logic Puzzles (6 points):
- Complete IF/THEN decision trees
- Solve multi-step conditional problems
- Optimize solutions for clarity
Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:
[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]
Write in pseudocode (plain English): “When the program starts, ________________”
- Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”
Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________
Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:
Option A - Scratch: Create a “digital pet” that:
- Follows mouse cursor
- Changes expression when clicked
- Makes sound when hungry (timer-based)
- Has at least 3 different costumes
Option B - Blockly: Design a solution for:
- Robot that sorts colored objects
- Path that avoids all obstacles
- Pattern that creates art using loops
Assessment Rubric:
- Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
- Proficient (80-89%): Meets all requirements with good understanding demonstrated
- Developing (70-79%): Meets most requirements but may have gaps in complex concepts
- Novice (60-69%): Shows basic understanding but struggles with application
- Beginning (Below 60%): Needs significant support to demonstrate concepts
Grade 6-9 (11-14 Years) - Weeks 6-8
Drone Laws, Emergency Procedures & Practical Flying
Week 6: Drone Laws and Regulations (Kenya Focus)
Learning Objectives:
- Learn basic drone laws in Kenya (KCAA regulations)
- Understand where and how children can fly drones legally
- Develop awareness of responsible drone operation
- Understand the importance of aviation safety
Key Concepts:
- Kenya Civil Aviation Authority (KCAA): National aviation regulator
- Drone Registration: Required identification and documentation
- No-Fly Zones: Airports, government buildings, restricted areas
- Altitude Restrictions: Maximum height limitations
- Visual Line of Sight (VLOS): Maintaining visual contact
- Privacy Laws: Respecting others’ rights and property
Kenya Drone Regulations Summary:
- Registration Requirements:
- All drones over 250g must be registered with KCAA
- Operator license required for commercial operations
- Age restrictions for different categories of operation
- Operational Limits:
- Maximum altitude: 400 feet (120 meters) AGL
- Minimum distance from airports: 8km for major airports
- No flying over crowds or public events
- Daylight operations only (without special permits)
- Prohibited Areas:
- Within 5km of any airport
- Over government buildings and installations
- National parks without permits
- Private property without permission
Safety and Legal Guidelines for Young Pilots:
- Always have adult supervision
- Start with toy drones under 250g
- Practice in open, safe areas
- Respect others’ privacy and property
- Learn emergency procedures
- Keep drone in sight at all times
Week 7: Emergency Procedures and Responsible Flying
Learning Objectives:
- Review key safety and legal concepts from previous weeks
- Understand emergency basics for beginner flyers
- Develop decision-making skills for unexpected situations
- Practice responsible pilot behavior
Key Concepts:
- Emergency Procedures: Systematic responses to problems
- Risk Assessment: Evaluating dangers before flying
- Decision Making: Choosing appropriate actions under pressure
- Communication: Alerting others during emergencies
- Equipment Failure: What to do when drone malfunctions
- Weather Awareness: Recognizing dangerous conditions
Emergency Scenarios and Responses:
- Lost Communication with Drone:
- Stay calm and observe drone behavior
- Activate Return-to-Home (RTH) function if available
- Move to higher ground for better signal
- Prepare for manual landing if signal returns
- Never chase after a flyaway drone
- Low Battery Warning:
- Immediately begin landing sequence
- Choose nearest safe landing spot
- Avoid flying over people or property
- Land even if not at original takeoff point
- Safety is more important than convenience
- Unexpected Weather Changes:
- Monitor weather conditions constantly
- Land immediately if wind increases
- Avoid flying in rain or snow
- Watch for sudden temperature changes
- When in doubt, don’t fly
- Equipment Malfunction:
- Attempt controlled landing immediately
- Don’t try to fix problems while airborne
- Inform other people in the area
- Document the problem for later analysis
- Never continue flying with known issues
Mission Planning Process:
- Pre-flight Planning: Weather check, equipment inspection, route planning
- Risk Assessment: Identify potential hazards and mitigation strategies
- Communication Plan: Inform others of flight activities
- Emergency Procedures: Know what to do if things go wrong
- Post-flight Review: Analyze what went well and areas for improvement
Week 8: Practical Flying Skills and Team Challenges
Learning Objectives:
- Demonstrate ability to control a mini drone (takeoff, hover, land)
- Apply basic flight skills in problem-solving mission scenarios
- Work as a team to complete drone-based challenges
- Evaluate personal progress and set goals for improvement
Key Concepts:
- Flight Control Mastery: Smooth, precise drone movements
- Situational Awareness: Understanding surroundings during flight
- Mission Planning: Preparing for specific flight objectives
- Teamwork: Collaborative problem-solving with drones
- Performance Evaluation: Self-assessment and peer feedback
- Safety Leadership: Taking responsibility for safe operations
Basic Flight Skills Progression:
- Fundamental Controls:
- Smooth takeoff to hover
- Maintaining steady hover
- Controlled landing
- Forward/backward movement
- Left/right movement
- Rotation control
- Intermediate Maneuvers:
- Figure-8 patterns
- Precision landing on target
- Obstacle avoidance
- Following predetermined paths
- Coordinated movements
- Advanced Challenges:
- Team relay races
- Rescue simulations
- Precision delivery tasks
- Group choreography
- Time-based challenges
Mission Scenarios:
Mission 1: Search and Rescue
- Objective: Locate “missing person” (target) in designated area
- Skills: Systematic search patterns, communication, observation
- Time limit: 5 minutes
- Success criteria: Target identified and location communicated
Mission 2: Delivery Challenge
- Objective: Transport small payload from Point A to Point B
- Skills: Precision flying, cargo management, safe landing
- Obstacles: Wind conditions, landing accuracy requirements
- Success criteria: Payload delivered undamaged within time limit
Mission 3: Team Coordination
- Objective: Multiple drones work together to complete complex task
- Skills: Communication, timing, spatial awareness
- Challenge: Choreographed flight pattern or group problem-solving
- Success criteria: All drones complete task without collisions
Safety Protocols for Practical Flying:
- Always maintain 10-foot safety zone around flying area
- Designate specific roles: pilot, observer, safety officer
- Use hand signals for communication during loud operations
- Practice emergency landing procedures before each session
- Rotate roles so everyone experiences different responsibilities
Grade 6-9 Assessment - Weeks 6-8
Week 6 Assessment: Drone Laws and Regulations
Format: Written Test + Legal Scenario Analysis (40 minutes)
Part A: Kenya Aviation Law Knowledge (25 points)
- KCAA Regulations (10 points) Fill in the blanks:
- Drones over ______ grams must be registered with KCAA
- Maximum altitude for recreational flying is ______ feet
- Minimum distance from major airports is ______ kilometers
- Commercial drone operations require a ______ license
- Drones must remain within ______ line of sight
- No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
- Your school playground during lunch break: ______
- Open field 2km from Wilson Airport: ______
- Your backyard with adult supervision: ______
- Uhuru Park during a public event: ______
- Private farm with owner’s permission: ______
- Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:
Part B: Scenario-Based Decision Making (20 points)
- Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:
Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________
Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________
Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________
Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________
Part C: Responsible Pilot Planning (15 points)
-
Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:
-
-
-
[Continue through 10]
Week 7-8 Assessment: Emergency Procedures and Practical Skills
Format: Practical Flight Test + Emergency Response Simulation (60 minutes)
Part A: Emergency Response Knowledge (20 points)
- Emergency Procedures (15 points) Describe the correct response for each emergency:
Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
- Risk Assessment (5 points) Identify 3 risks for flying in each environment:
- School playground: ____________, ____________, ____________
- Open field: ____________, ____________, ____________
Part B: Practical Flight Skills Assessment (30 points)
- Basic Flight Controls (15 points) Demonstrate competency in:
- Smooth takeoff and landing (3 points)
- Stable hovering for 30 seconds (3 points)
- Forward/backward precision movement (3 points)
- Left/right precision movement (3 points)
- Controlled rotation (3 points)
- Mission Challenge (15 points) Complete ONE of the following missions:
Option A - Navigation Course:
- Fly through 5 waypoints in sequence
- Land within 1-meter target circle
- Complete within 3 minutes
Option B - Team Coordination:
- Work with partner to complete relay challenge
- Communicate effectively during handoff
- Maintain safety throughout mission
Part C: Leadership and Safety Evaluation (15 points)
- Safety Leadership (8 points) While others are flying, demonstrate:
- Proper safety zone maintenance
- Clear communication with pilot
- Appropriate responses to unsafe situations
- Helpful coaching and encouragement
- Self-Assessment and Goal Setting (7 points) Written reflection:
- What flight skill are you most confident with? Why?
- What area needs the most improvement?
- Set one specific goal for future drone flying
- Describe one way you can help others fly safely
Practical Skills Rubric:
- Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
- Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
- Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
- Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
- Beginning Pilot (Below 60%): Requires significant instruction and supervision
Grade 10-12 (14-16 Years) - Weeks 6-8
Advanced Python Projects & Integration
Week 6-7: Integrated Systems Project (Combined Weeks)
Learning Objectives:
- Combine motors and sensors in complex systems
- Debug integrated hardware/software systems
- Apply creative problem-solving to real-world challenges
- Document projects professionally
Key Concepts:
- Systems Integration: Combining multiple components into unified solutions
- Hardware-Software Interface: Code that bridges digital and physical worlds
- System Architecture: Planning complex projects with multiple subsystems
- Error Handling: Managing failures gracefully in complex systems
- Performance Optimization: Making systems run efficiently
- Documentation Standards: Professional project recording
Advanced Integration Concepts:
1. Multi-Sensor Fusion
import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json
class SensorFusion:
def __init__(self):
self.distance_sensor = DistanceSensor(echo=24, trigger=23)
self.motion_sensor = MotionSensor(4)
self.light_sensor = MCP3008(channel=0)
self.temp_sensor = MCP3008(channel=1)
# Data queues for thread communication
self.sensor_data = queue.Queue()
self.running = False
def read_sensors(self):
"""Continuous sensor reading in separate thread"""
while self.running:
try:
data = {
'timestamp': time.time(),
'distance': self.distance_sensor.distance * 100,
'motion': self.motion_sensor.motion_detected,
'light_level': self.light_sensor.voltage,
'temperature': self.convert_temp(self.temp_sensor.voltage)
}
self.sensor_data.put(data)
sleep(0.1) # 10Hz sampling rate
except Exception as e:
print(f"Sensor reading error: {e}")
def convert_temp(self, voltage):
"""Convert sensor voltage to temperature"""
return (voltage - 0.5) * 100 # Example conversion
def start_monitoring(self):
"""Start sensor monitoring thread"""
self.running = True
self.sensor_thread = threading.Thread(target=self.read_sensors)
self.sensor_thread.start()
def stop_monitoring(self):
"""Stop sensor monitoring"""
self.running = False
if hasattr(self, 'sensor_thread'):
self.sensor_thread.join()
2. Intelligent Control Systems
class SmartEnvironmentController:
def __init__(self):
self.sensors = SensorFusion()
self.fan_motor = Motor(forward=2, backward=3)
self.heater_relay = OutputDevice(18)
self.lights = PWMOutputDevice(19)
# Control parameters
self.target_temp = 22.0 # Target temperature in Celsius
self.temp_tolerance = 1.0
self.light_threshold = 0.3
# Control state
self.auto_mode = True
self.manual_override = False
def analyze_environment(self, sensor_data):
"""Intelligent decision making based on sensor data"""
decisions = {
'fan_speed': 0.0,
'heater_on': False,
'light_level': 0.0,
'alert_status': 'normal'
}
# Temperature control logic
temp_diff = sensor_data['temperature'] - self.target_temp
if temp_diff > self.temp_tolerance: # Too hot
decisions['fan_speed'] = min(1.0, temp_diff / 5.0) # Scale fan speed
decisions['heater_on'] = False
elif temp_diff < -self.temp_tolerance: # Too cold
decisions['fan_speed'] = 0.0
decisions['heater_on'] = True
# Light control logic
if sensor_data['light_level'] < self.light_threshold:
decisions['light_level'] = 1.0 - sensor_data['light_level'] # Complement lighting
# Security monitoring
if sensor_data['motion'] and sensor_data['distance'] < 20: # Close motion
decisions['alert_status'] = 'intrusion_detected'
elif sensor_data['distance'] < 5: # Very close object
decisions['alert_status'] = 'obstacle_warning'
return decisions
def execute_controls(self, decisions):
"""Execute control decisions"""
if not self.manual_override:
# Motor control
if decisions['fan_speed'] > 0:
self.fan_motor.forward(decisions['fan_speed'])
else:
self.fan_motor.stop()
# Heater control
if decisions['heater_on']:
self.heater_relay.on()
else:
self.heater_relay.off()
# Light control
self.lights.value = decisions['light_level']
def run_control_loop(self):
"""Main control loop"""
self.sensors.start_monitoring()
try:
while True:
if not self.sensors.sensor_data.empty():
current_data = self.sensors.sensor_data.get()
decisions = self.analyze_environment(current_data)
self.execute_controls(decisions)
# Log system status
self.log_system_status(current_data, decisions)
sleep(0.5) # Control loop frequency
except KeyboardInterrupt:
print("Shutting down control system...")
finally:
self.sensors.stop_monitoring()
self.fan_motor.stop()
self.heater_relay.off()
self.lights.off()
def log_system_status(self, sensor_data, decisions):
"""Log system performance data"""
log_entry = {
'timestamp': sensor_data['timestamp'],
'sensors': sensor_data,
'controls': decisions,
'mode': 'auto' if self.auto_mode else 'manual'
}
# In a real system, this would write to a file or database
print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
f"Fan={decisions['fan_speed']:.1f}, "
f"Alert={decisions['alert_status']}")
3. Project Documentation Standards
"""
Smart Environment Control System
================================
Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0
Description:
An intelligent system that monitors environmental conditions and automatically
adjusts heating, cooling, and lighting based on sensor feedback.
Hardware Requirements:
- Raspberry Pi 4 or similar
- Temperature sensor (DS18B20 or similar)
- Light sensor (LDR with MCP3008 ADC)
- Motion sensor (PIR)
- Distance sensor (HC-SR04)
- DC Motor (for fan simulation)
- Relay module (for heater control)
- PWM-controlled LED (for lighting)
Software Dependencies:
- Python 3.7+
- gpiozero library
- threading module (standard library)
- queue module (standard library)
- json module (standard library)
Installation:
pip install gpiozero
Usage:
python smart_environment.py
Configuration:
Modify target_temp and light_threshold variables in SmartEnvironmentController
class to adjust system behavior.
Testing:
Run included test functions to verify sensor readings and control outputs
before deploying the full system.
Known Issues:
- Temperature sensor calibration may need adjustment for local conditions
- Motion sensor has 2-second reset time that affects rapid detection
Future Enhancements:
- Web interface for remote monitoring
- Data logging to CSV files
- Machine learning for predictive control
- Mobile app integration
"""
Project Examples for Students:
Project 1: Smart Garden Monitor
- Monitors soil moisture, light, and temperature
- Controls watering pump and grow lights
- Logs plant growth data
- Sends alerts when intervention needed
Project 2: Home Security System
- Multiple sensor integration (motion, door, window)
- Camera trigger on detection
- SMS/email notifications
- Mobile app control interface
Project 3: Weather Station
- Measures temperature, humidity, pressure, wind
- Data logging with timestamps
- Weather prediction algorithms
- Web dashboard for data visualization
Project 4: Automated Greenhouse
- Climate control (temperature, humidity)
- Automated watering system
- Light cycle management
- Growth optimization algorithms
Week 8: Project Presentations and Assessment
Learning Objectives:
- Present technical projects professionally
- Give and receive constructive feedback
- Self-evaluate learning progress and achievements
- Plan next steps for continued learning
Key Concepts:
- Technical Communication: Explaining complex systems clearly
- Presentation Skills: Engaging audiences with technical content
- Peer Review: Constructive feedback and collaboration
- Self-Assessment: Honest evaluation of own work
- Professional Development: Planning continued learning paths
- Portfolio Building: Documenting achievements for future opportunities
Presentation Structure:
- Project Overview (2 minutes)
- Problem statement and objectives
- Target audience and use cases
- Key features and functionality
- Technical Demonstration (2 minutes)
- Live system operation
- Key components and how they work
- Code walkthrough of critical sections
- Challenges and Solutions (1 minute)
- Major obstacles encountered
- Creative solutions implemented
- Lessons learned from failures
Evaluation Criteria:
Technical Merit (40%):
- System functionality and reliability
- Code quality and organization
- Creative problem-solving approach
- Integration of multiple technologies
Communication (30%):
- Clear explanation of technical concepts
- Engaging presentation delivery
- Appropriate use of visual aids
- Effective response to questions
Documentation (20%):
- Complete project documentation
- Code comments and structure
- User instructions and setup guides
- Reflection on learning process
Collaboration (10%):
- Constructive feedback to peers
- Professional interaction during Q&A
- Willingness to share knowledge
- Respectful critique and discussion
Python Programming Trivia Challenge: End the term with fun technical questions:
- What does “PEP 8” refer to in Python?
- What’s the difference between
==andisin Python? - How do you handle exceptions in Python?
- What is a Python decorator?
- What’s the difference between a list and a tuple?
Grade 10-12 Final Assessment - Weeks 6-8
Integrated Systems Project Assessment
Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)
Project Requirements: Students must create an integrated system that combines:
- At least 3 different sensors
- At least 2 actuators (motors, lights, relays, etc.)
- Data logging and analysis
- User interface (command line or simple GUI)
- Error handling and safety features
Part A: Technical Implementation (40 points)
System Design (10 points)
- Clear problem definition and solution approach
- System architecture diagram showing component relationships
- Hardware schematic or connection diagram
- Software flowchart or algorithm description
Code Quality (15 points)
- Well-structured, modular code with functions/classes
- Appropriate variable names and code organization
- Comprehensive comments explaining complex sections
- Error handling for hardware failures
- Efficient algorithms and resource usage
Hardware Integration (15 points)
- Stable sensor readings with appropriate filtering
- Reliable actuator control with safety limits
- Proper electrical connections and component usage
- System operates reliably for extended periods
- Professional cable management and mounting
Part B: Documentation and Communication (25 points)
Project Documentation (15 points) Create a complete project report including:
- Executive summary of project goals and achievements
- Detailed technical specifications and requirements
- Installation and setup instructions
- User manual with clear operating procedures
- Troubleshooting guide for common problems
- Code documentation with API reference
Technical Presentation (10 points)
- Clear 5-minute presentation explaining project
- Live demonstration of working system
- Professional slides with technical diagrams
- Confident handling of technical questions
- Appropriate use of technical vocabulary
Part C: Innovation and Problem Solving (20 points)
Creative Solutions (10 points)
- Original approach to solving chosen problem
- Creative use of available hardware and software
- Evidence of iterative design and improvement
- Solutions show depth of understanding beyond basic requirements
Advanced Features (10 points) Choose and implement at least TWO:
- Machine learning or AI decision making
- Network communication (IoT connectivity)
- Mobile app or web interface
- Data visualization and analytics
- Predictive algorithms or optimization
- Integration with external APIs or services
Part D: Professional Skills (15 points)
Peer Collaboration (8 points)
- Constructive feedback provided to classmates
- Professional behavior during presentations
- Willingness to help others debug problems
- Respectful and insightful questions during Q&A
Self-Assessment (7 points) Written reflection addressing:
- Most significant technical challenge and how you overcame it
- What you would do differently if starting over
- How this project connects to potential career interests
- Specific skills you want to develop further
- Your confidence level with different aspects of the project
Sample Project Evaluation Rubric:
Exceptional (90-100%)
- System exceeds all requirements with innovative features
- Code is publication-quality with comprehensive documentation
- Presentation is engaging and demonstrates deep understanding
- Shows leadership in helping others and contributing to class learning
- Self-reflection shows sophisticated understanding of learning process
Proficient (80-89%)
- System meets all requirements reliably
- Code is well-structured with good documentation
- Presentation is clear and technically accurate
- Actively participates in peer learning and feedback
- Self-reflection shows good awareness of strengths and growth areas
Developing (70-79%)
- System meets most requirements with minor issues
- Code works but may have organizational or documentation gaps
- Presentation covers required topics but may lack depth
- Participates adequately in class activities
- Self-reflection shows basic understanding of learning process
Beginning (60-69%)
- System meets basic requirements but has significant limitations
- Code works for demonstration but has structural or reliability issues
- Presentation covers basics but shows limited understanding
- Minimal participation in peer activities
- Self-reflection is superficial or lacks insight
Incomplete (Below 60%)
- System fails to meet basic requirements or doesn’t function reliably
- Code has major issues that prevent proper operation
- Presentation is unclear or shows misunderstanding of concepts
- Little to no participation in collaborative learning
- Self-reflection missing or shows no evidence of learning
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Notes
I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:
What’s Included:
For Each Grade Level:
- Detailed weekly lesson notes covering weeks 1-8 content
- Key concepts and learning objectives for each topic
- Practical examples and code samples (for programming grades)
- Age-appropriate assessment tests with multiple formats
Assessment Formats:
- Preschoolers (4-6): Practical/observational assessments with hands-on activities
- Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
- Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
- Grade 10-12 (14-16): Coding assignments + hardware integration projects
Key Features:
- ✅ Covers all 8 weeks of Term 1 content
- ✅ Aligned with curriculum from the IoT & Robotics document
- ✅ Progressive difficulty appropriate for each age group
- ✅ Practical assessments that test real understanding
- ✅ Detailed rubrics for fair evaluation
- ✅ Extension activities for advanced learners
- ✅ Safety guidelines and best practices
Topics Covered:
- Preschoolers: STEM basics, simple machines, unplugged coding
- Grade 2-5: Scratch programming, Blockly games, interface navigation
- Grade 6-9: Drone basics, aviation principles, safety regulations
- Grade 10-12: Python programming, hardware control, sensor integration
Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.
Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Intro - Grade 10 - 12
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Grade 10-12 (14-16 Years)
Term 1: Introduction to Python Basics
Week 1: Writing Structured Python Code
Learning Objectives:
- Understand Python syntax and structure
- Learn proper code formatting and indentation
- Write clean, readable code following best practices
- Understand variables, data types, and basic operations
Key Concepts:
- Python: High-level programming language
- Syntax: Rules for writing Python code
- Indentation: Using spaces to organize code structure
- Variables: Named storage for data values
- Data Types: int, float, string, boolean
- Comments: Documentation within code using #
- Print Statement: Displaying output to screen
Code Structure Best Practices:
# Header comment explaining the program
# Author: Your Name
# Date: Today's Date
# Import statements
import module_name
# Constants (UPPERCASE naming)
MAX_VALUE = 100
# Main program logic
def main():
# Variable declarations
user_name = "Student"
age = 16
# Program logic with proper indentation
print(f"Hello, {user_name}!")
print(f"You are {age} years old.")
# Run the program
if __name__ == "__main__":
main()
Week 2: Functions and Loops
Learning Objectives:
- Create and use custom functions
- Understand function parameters and return values
- Implement for loops and while loops
- Apply loops to solve repetitive tasks
Key Concepts:
- Function: Reusable block of code that performs a specific task
- Parameters: Input values passed to functions
- Return Value: Output value from a function
- For Loop: Repeats code a specific number of times
- While Loop: Repeats code while a condition is true
- Range Function: Generates sequences of numbers
- Iteration: Each repetition of a loop
- Loop Control: Managing when loops start and stop
Function Examples:
# Simple function with no parameters
def greet():
print("Hello, World!")
# Function with parameters
def greet_person(name, age):
print(f"Hello, {name}! You are {age} years old.")
# Function with return value
def calculate_area(length, width):
area = length * width
return area
# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")
Loop Examples:
# For loop with range
for i in range(5):
print(f"Count: {i}")
# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(f"I like {fruit}")
# While loop
count = 0
while count < 3:
print(f"While loop count: {count}")
count += 1
Week 3: Using Python Libraries
Learning Objectives:
- Understand what Python libraries are and why they’re useful
- Learn to import and use common libraries
- Work with GPIOZero and time libraries
- Explore library documentation and help systems
Key Concepts:
- Library/Module: Pre-written code that adds functionality
- Import Statement: Bringing library functions into your program
- GPIOZero: Library for controlling Raspberry Pi GPIO pins
- Time Library: Functions for working with time and delays
- Documentation: Instructions for using library functions
- API: Application Programming Interface - how to use library functions
Library Usage Examples:
# Importing entire modules
import time
import math
# Importing specific functions
from gpiozero import LED, Button
from time import sleep
# Using time library
print("Starting program...")
time.sleep(2) # Wait 2 seconds
print("2 seconds have passed!")
# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")
# Using GPIOZero (for Raspberry Pi)
led = LED(18) # LED connected to GPIO pin 18
button = Button(2) # Button connected to GPIO pin 2
# Turn LED on and off
led.on()
sleep(1)
led.off()
Week 4: Controlling Motors with Python
Learning Objectives:
- Understand how to interface with motors using Python
- Learn about PWM (Pulse Width Modulation) for motor control
- Control motor speed and direction
- Implement safety features in motor control code
Key Concepts:
- Motor Control: Using code to make motors move
- PWM (Pulse Width Modulation): Method to control motor speed
- Duty Cycle: Percentage of time signal is “on” vs “off”
- Direction Control: Making motors spin clockwise/counterclockwise
- Motor Driver: Electronics that interface between Python and motors
- Safety Features: Code to prevent motor damage
Motor Control Examples:
from gpiozero import Motor, PWMOutputDevice
from time import sleep
# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)
# Basic motor control
def basic_motor_test():
print("Motor forward at full speed")
motor.forward(1.0) # Full speed forward
sleep(2)
print("Motor forward at half speed")
motor.forward(0.5) # Half speed forward
sleep(2)
print("Motor stopped")
motor.stop()
sleep(1)
print("Motor backward at full speed")
motor.backward(1.0) # Full speed backward
sleep(2)
motor.stop()
print("Motor test complete")
# PWM speed control example
def speed_ramp_test():
print("Ramping motor speed up...")
for speed in range(0, 101, 10): # 0 to 100% in 10% steps
motor_speed = speed / 100.0
motor.forward(motor_speed)
print(f"Speed: {speed}%")
sleep(0.5)
motor.stop()
print("Speed ramp complete")
# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()
Week 5: Controlling Sensors with Python
Learning Objectives:
- Interface with various sensors using Python
- Read and process sensor data
- Implement sensor-based decision making
- Create responsive programs based on sensor input
Key Concepts:
- Sensor: Device that detects and measures physical properties
- Analog vs Digital: Different types of sensor signals
- ADC (Analog-to-Digital Converter): Converts analog signals to digital
- Sensor Calibration: Adjusting sensor readings for accuracy
- Data Processing: Converting raw sensor data to useful information
- Polling vs Interrupts: Different ways to read sensor data
Common Sensors:
- Temperature sensors: Measure environmental temperature
- Light sensors (LDR): Detect light intensity
- Ultrasonic sensors: Measure distance using sound waves
- Motion sensors (PIR): Detect movement
- Pressure sensors: Measure force or pressure
Sensor Control Examples:
from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics
# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)
def read_temperature():
# Convert voltage to temperature (example conversion)
voltage = temp_sensor.voltage
temperature_c = (voltage - 0.5) * 100 # Example conversion formula
temperature_f = (temperature_c * 9/5) + 32
return temperature_c, temperature_f
# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)
def monitor_distance():
print("Distance monitoring (press Ctrl+C to stop)")
try:
while True:
distance = distance_sensor.distance * 100 # Convert to cm
print(f"Distance: {distance:.1f} cm")
if distance < 10:
print("WARNING: Object too close!")
sleep(0.5)
except KeyboardInterrupt:
print("Distance monitoring stopped")
# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)
def motion_detector():
print("Motion detector active...")
def motion_detected():
print("Motion detected!")
alert_led.on()
sleep(2)
alert_led.off()
def no_motion():
print("No motion")
alert_led.off()
# Set up motion sensor callbacks
motion.when_motion = motion_detected
motion.when_no_motion = no_motion
# Keep program running
try:
while True:
sleep(0.1)
except KeyboardInterrupt:
print("Motion detector stopped")
# Data logging example
def log_sensor_data():
readings = []
print("Collecting sensor data for 30 seconds...")
start_time = time.time()
while time.time() - start_time < 30:
temp_c, temp_f = read_temperature()
distance = distance_sensor.distance * 100
readings.append({
'timestamp': time.time(),
'temperature_c': temp_c,
'temperature_f': temp_f,
'distance_cm': distance
})
print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
sleep(1)
# Calculate statistics
temps = [r['temperature_c'] for r in readings]
distances = [r['distance_cm'] for r in readings]
print(f"\nData Summary:")
print(f"Average temperature: {statistics.mean(temps):.1f}°C")
print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
print(f"Average distance: {statistics.mean(distances):.1f}cm")
print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")
# Example usage
if __name__ == "__main__":
# Run different examples
monitor_distance() # Uncomment to run distance monitoring
# motion_detector() # Uncomment to run motion detection
# log_sensor_data() # Uncomment to run data logging
Assessment Test - Grade 10-12 (14-16 Years)
Week 1-2 Assessment: Python Fundamentals
Format: Coding Assignment + Written Questions (60 minutes)
Part A: Code Structure and Syntax (25 points)
- Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average
calculate average(10, 20, 30)
Your corrected code:
# Write corrected version here
Explanation of errors: ____
- Write a well-structured Python program (15 points): Create a program that:
- Has proper header comments
- Uses appropriate variable names
- Calculates the area of different shapes (circle, rectangle, triangle)
- Uses functions with parameters and return values
- Follows proper indentation and formatting
Part B: Functions and Loops (30 points)
- Write a function called
print_multiplication_table(15 points):
- Takes one parameter:
number - Prints multiplication table for that number (1-10)
- Uses a for loop
- Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
- Password Checker Program (15 points): Write a program using while loop that:
- Asks user to enter a password
- Keeps asking until they enter “python123”
- Counts number of attempts
- Prints “Access granted” when correct
- Prints number of attempts it took
Week 3-5 Assessment: Libraries and Hardware Control
Format: Practical Coding Project (75 minutes)
Part A: Library Usage (20 points)
- Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______ # What library do you need for calculating average?
# Create sensor object
light_sensor = MCP3008(channel=0)
def read_light_levels():
readings = []
# Collect 10 readings
for i in range(______): # Fill in the range
reading = light_sensor.______ # What property gives the reading?
readings.append(reading)
print(f"Reading {i+1}: {reading:.3f}")
sleep(0.5)
# Calculate and print statistics
average = ______.mean(readings) # Which function calculates mean?
maximum = ______(readings) # Built-in function for maximum
minimum = ______(readings) # Built-in function for minimum
print(f"Average: {average:.3f}")
print(f"Maximum: {maximum:.3f}")
print(f"Minimum: {minimum:.3f}")
# Call the function
read_light_levels()
Part B: Motor Control Project (25 points)
- Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
- Use a temperature sensor to read room temperature
- Control a motor (fan) based on temperature:
- Below 20°C: Fan off
- 20-25°C: Fan at 30% speed
- 25-30°C: Fan at 60% speed
- Above 30°C: Fan at 100% speed
- Print current temperature and fan speed every 2 seconds
- Include safety features (motor stop function)
Part C: Sensor Integration Challenge (30 points)
- Security System Prototype (30 points): Create a basic security system that:
- Uses a motion sensor to detect movement
- Uses a distance sensor to detect objects too close
- Controls LEDs to indicate system status:
- Green LED: System normal
- Yellow LED: Motion detected
- Red LED: Intrusion alert (object < 20cm)
- Logs events with timestamps
- Runs continuously until user presses Ctrl+C
Requirements:
- Use at least 3 different libraries
- Include proper error handling
- Use functions to organize code
- Add meaningful comments
- Follow Python coding best practices
Sample code structure:
from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time
# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)
def log_event(message):
# Write function to log events with timestamp
pass
def check_security():
# Write function to check all sensors and control LEDs
pass
def main():
# Write main program loop
pass
if __name__ == "__main__":
main()
Continuation - Weeks 6-8 for All Grade Levels
Preschoolers (4-6 Years) - Weeks 6-8
Advanced STEM Exploration & Technology Awareness
Week 6: Technology Parts Awareness
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically be able to follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Technology Components: Basic parts that make devices work
- Circuits: Paths that electricity follows
- Assembly/Disassembly: Taking apart and putting together
- Electronics Safety: Safe handling of batteries and components
- Problem-Solving: Trying different solutions when something doesn’t work
Activities:
- Technology Exploration: Examine old keyboards, phones, calculators
- Simple Circuits: Connect bulbs to batteries with safe materials
- Assembly Practice: Take apart and reassemble simple toys
- Tech Parts Sorting: Group similar technology components
Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors
Week 7: Sequencing & Floor Grid Coding
Learning Objectives:
- Develop understanding of sequencing by arranging steps in correct order
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence through trial-and-error learning
Key Concepts:
- Sequencing: Putting steps in the right order
- Algorithm Cards: Visual instructions to follow
- Floor Grid Coding: Moving through spaces following directions
- Left/Right/Forward/Back: Basic directional concepts
- Trial and Error: Learning by trying and improving
Activities:
- Obstacle Course Coding: Navigate through simple obstacles using arrow cards
- Sequencing Games: Put daily routine cards in correct order
- Paper Maze Coding: Use arrows to show path through printed mazes
- Robot Friend: One child gives directions, another follows like a robot
Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets
Week 8: Advanced Unplugged Coding & Storytelling
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
- Debugging: Finding and fixing mistakes in directions
- Block Building: Using physical blocks to represent code
- Story Algorithms: Step-by-step instructions for telling stories
Activities:
- Debug the Path: Present incorrect direction sequences for children to fix
- IF/THEN Games: “If you see a triangle, then clap your hands”
- Story Coding: Use picture cards to create step-by-step stories
- Block Code Building: Stack blocks to represent programming sequences
Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling
Preschoolers Assessment - Weeks 6-8
Week 6 Assessment: Technology Awareness
Format: Hands-on Exploration + Observation (20 minutes)
- Technology Parts Recognition (10 points)
- Point to and name 3 technology items from the collection
- Show how a simple circuit works (bulb + battery)
- Safely handle electronic components
- Explain one thing each item helps us do
- Assembly Skills (10 points)
- Take apart a simple toy or device
- Put it back together correctly
- Identify which parts go where
- Ask for help when needed
Assessment Criteria:
- Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
- Developing (2): Safe handling, completes most tasks with minimal help
- Emerging (1): Needs guidance but participates actively
- Beginning (0): Requires extensive support
Week 7-8 Assessment: Advanced Unplugged Coding
Format: Physical Coding Challenges (25 minutes)
- Sequencing Challenge (12 points)
- Arrange 6 direction cards to navigate through obstacle course
- Explain why each step comes in that order
- Successfully complete the physical navigation
- Fix mistakes when path doesn’t work
- IF/THEN Logic (8 points)
- Follow conditional instructions: “IF you see blue, THEN hop”
- Create own IF/THEN rule for a friend to follow
- Demonstrate understanding with actions
- Story Algorithm (10 points)
- Use 5 picture cards to create logical story sequence
- Tell story following the card order
- Explain what happens if cards are mixed up
- Help fix a mixed-up story sequence
Practical Skills Rubric:
- Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
- Proficient (20-24 points): Completes all challenges correctly with minor guidance
- Developing (15-19 points): Understands concepts but needs support for complex tasks
- Beginning (Below 15 points): Requires significant help to participate
Grade 2-5 (7-11 Years) - Weeks 6-8
Advanced Scratch Programming & Game Development
Week 6: Game Structure and Design
Learning Objectives:
- Understand basic game structure (start, play, end)
- Use Scratch blocks to move characters and detect collisions
- Make characters move between different scenes
- Create scoring or win conditions
Key Concepts:
- Game Design Elements: Characters, backgrounds, objectives, rules
- Game Loop: Continuous cycle of input, processing, output
- Collision Detection: Knowing when sprites touch each other
- Scene Transitions: Moving between different game screens
- Win/Lose Conditions: Rules that determine game outcomes
- User Interface: Buttons, scores, and information displays
Advanced Scratch Concepts:
- Sensing Blocks: “touching color”, “distance to”, “key pressed”
- Variables: Storing score, lives, or time
- Broadcast Messages: Communication between sprites
- Clone Sprites: Creating multiple copies of objects
- Custom Blocks: Making your own programming blocks
Game Development Process:
- Planning Phase: Sketch game idea, list needed sprites and backgrounds
- Prototype: Create basic movement and interaction
- Enhancement: Add sounds, effects, and polish
- Testing: Play game and fix bugs
- Sharing: Present to classmates
Example Game Structure:
When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
If key space pressed:
Move player sprite
If touching enemy:
Change lives by -1
If lives = 0:
Say "Game Over!"
Stop all
Week 7: Transition to Text-Based Concepts
Learning Objectives:
- Prepare learners for text-based coding
- Understand basic programming concepts using blocks
- Use logic and loops to control sprite or robot actions
- Begin transition to robotics or advanced coding platforms
Key Concepts:
- Programming Fundamentals: Sequence, selection, iteration
- Logic Blocks: IF/ELSE statements in visual form
- Loop Types: Forever, repeat until, repeat X times
- Variables and Operations: Math in programming
- Event-Driven Programming: Responding to user input
- Modular Programming: Breaking code into smaller parts
Bridging Visual to Text:
- Block-to-Code Thinking: Understanding what blocks represent
- Pseudocode: Writing steps in plain English before coding
- Debugging Strategies: Systematic problem-solving approaches
- Code Organization: Keeping projects neat and logical
Advanced Programming Patterns:
// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
If game state = "menu":
Show menu options
If game state = "playing":
Run game logic
If game state = "game over":
Show final score
// Pattern 2: Object Behavior
When I start as a clone:
Go to random position
Forever:
Move 2 steps
If on edge, bounce
If touching player:
Change score by 10
Delete this clone
Week 8: Blockly Integration and Logic Puzzles
Learning Objectives:
- Solve logic puzzles using visual programming concepts
- Create games using Blockly platform
- Demonstrate understanding of programming fundamentals
- Apply creative problem-solving skills
Key Concepts:
- Blockly Platform: Google’s visual programming language
- Logic Puzzles: Problems requiring systematic thinking
- Algorithm Efficiency: Finding the best solution method
- Pattern Recognition: Identifying repeated solutions
- Creative Programming: Using code for artistic expression
Blockly vs. Scratch Comparison:
| Feature | Scratch | Blockly |
|---|---|---|
| Focus | Storytelling & Games | Logic & Algorithms |
| Interface | Stage-based | Puzzle-based |
| Output | Animated Projects | Problem Solutions |
| Progression | Creative Expression | Mathematical Thinking |
Logic Puzzle Types:
- Maze Solving: Navigate through obstacles
- Pattern Completion: Fill in missing sequences
- Conditional Logic: IF/THEN decision making
- Loop Optimization: Repeat actions efficiently
Grade 2-5 Assessment - Weeks 6-8
Week 6 Assessment: Game Development Project
Format: Scratch Game Creation + Presentation (45 minutes)
Part A: Game Planning (10 points)
- Game Design Document - Create a simple plan including:
- Game objective (what’s the goal?)
- Main character description
- Basic rules (how do you win/lose?)
- Required sprites and backgrounds
- Storyboard - Draw 3 screens showing:
- Game start screen
- Main gameplay
- Win/lose screen
Part B: Game Implementation (25 points) 3. Core Functionality (15 points):
-
Character moves with arrow keys or WASD
-
At least one interactive element (enemy, collectible, obstacle)
-
Basic collision detection (touching = something happens)
-
Clear win or lose condition
- Polish and Enhancement (10 points):
- Sound effects or music
- Visual feedback (score, lives, timer)
- Smooth sprite movement
- Creative backgrounds or costumes
Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):
-
Explain game rules clearly
-
Demonstrate gameplay for 2 minutes
-
Show different game scenarios
-
Handle questions from classmates
- Technical Reflection (5 points):
- Explain one challenging problem you solved
- Describe one improvement you would make
- Share one new Scratch skill you learned
Week 7-8 Assessment: Programming Concepts Mastery
Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)
Part A: Blockly Logic Challenges (20 points)
- Maze Navigation (8 points):
- Complete 3 increasingly difficult maze puzzles
- Use efficient solutions (minimal blocks)
- Demonstrate understanding of loops and conditionals
- Pattern Recognition (6 points):
- Solve sequence completion puzzles
- Identify and extend number/color patterns
- Create original pattern for others to solve
- Logic Puzzles (6 points):
- Complete IF/THEN decision trees
- Solve multi-step conditional problems
- Optimize solutions for clarity
Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:
[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]
Write in pseudocode (plain English): “When the program starts, ________________”
- Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”
Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________
Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:
Option A - Scratch: Create a “digital pet” that:
- Follows mouse cursor
- Changes expression when clicked
- Makes sound when hungry (timer-based)
- Has at least 3 different costumes
Option B - Blockly: Design a solution for:
- Robot that sorts colored objects
- Path that avoids all obstacles
- Pattern that creates art using loops
Assessment Rubric:
- Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
- Proficient (80-89%): Meets all requirements with good understanding demonstrated
- Developing (70-79%): Meets most requirements but may have gaps in complex concepts
- Novice (60-69%): Shows basic understanding but struggles with application
- Beginning (Below 60%): Needs significant support to demonstrate concepts
Grade 6-9 (11-14 Years) - Weeks 6-8
Drone Laws, Emergency Procedures & Practical Flying
Week 6: Drone Laws and Regulations (Kenya Focus)
Learning Objectives:
- Learn basic drone laws in Kenya (KCAA regulations)
- Understand where and how children can fly drones legally
- Develop awareness of responsible drone operation
- Understand the importance of aviation safety
Key Concepts:
- Kenya Civil Aviation Authority (KCAA): National aviation regulator
- Drone Registration: Required identification and documentation
- No-Fly Zones: Airports, government buildings, restricted areas
- Altitude Restrictions: Maximum height limitations
- Visual Line of Sight (VLOS): Maintaining visual contact
- Privacy Laws: Respecting others’ rights and property
Kenya Drone Regulations Summary:
- Registration Requirements:
- All drones over 250g must be registered with KCAA
- Operator license required for commercial operations
- Age restrictions for different categories of operation
- Operational Limits:
- Maximum altitude: 400 feet (120 meters) AGL
- Minimum distance from airports: 8km for major airports
- No flying over crowds or public events
- Daylight operations only (without special permits)
- Prohibited Areas:
- Within 5km of any airport
- Over government buildings and installations
- National parks without permits
- Private property without permission
Safety and Legal Guidelines for Young Pilots:
- Always have adult supervision
- Start with toy drones under 250g
- Practice in open, safe areas
- Respect others’ privacy and property
- Learn emergency procedures
- Keep drone in sight at all times
Week 7: Emergency Procedures and Responsible Flying
Learning Objectives:
- Review key safety and legal concepts from previous weeks
- Understand emergency basics for beginner flyers
- Develop decision-making skills for unexpected situations
- Practice responsible pilot behavior
Key Concepts:
- Emergency Procedures: Systematic responses to problems
- Risk Assessment: Evaluating dangers before flying
- Decision Making: Choosing appropriate actions under pressure
- Communication: Alerting others during emergencies
- Equipment Failure: What to do when drone malfunctions
- Weather Awareness: Recognizing dangerous conditions
Emergency Scenarios and Responses:
- Lost Communication with Drone:
- Stay calm and observe drone behavior
- Activate Return-to-Home (RTH) function if available
- Move to higher ground for better signal
- Prepare for manual landing if signal returns
- Never chase after a flyaway drone
- Low Battery Warning:
- Immediately begin landing sequence
- Choose nearest safe landing spot
- Avoid flying over people or property
- Land even if not at original takeoff point
- Safety is more important than convenience
- Unexpected Weather Changes:
- Monitor weather conditions constantly
- Land immediately if wind increases
- Avoid flying in rain or snow
- Watch for sudden temperature changes
- When in doubt, don’t fly
- Equipment Malfunction:
- Attempt controlled landing immediately
- Don’t try to fix problems while airborne
- Inform other people in the area
- Document the problem for later analysis
- Never continue flying with known issues
Mission Planning Process:
- Pre-flight Planning: Weather check, equipment inspection, route planning
- Risk Assessment: Identify potential hazards and mitigation strategies
- Communication Plan: Inform others of flight activities
- Emergency Procedures: Know what to do if things go wrong
- Post-flight Review: Analyze what went well and areas for improvement
Week 8: Practical Flying Skills and Team Challenges
Learning Objectives:
- Demonstrate ability to control a mini drone (takeoff, hover, land)
- Apply basic flight skills in problem-solving mission scenarios
- Work as a team to complete drone-based challenges
- Evaluate personal progress and set goals for improvement
Key Concepts:
- Flight Control Mastery: Smooth, precise drone movements
- Situational Awareness: Understanding surroundings during flight
- Mission Planning: Preparing for specific flight objectives
- Teamwork: Collaborative problem-solving with drones
- Performance Evaluation: Self-assessment and peer feedback
- Safety Leadership: Taking responsibility for safe operations
Basic Flight Skills Progression:
- Fundamental Controls:
- Smooth takeoff to hover
- Maintaining steady hover
- Controlled landing
- Forward/backward movement
- Left/right movement
- Rotation control
- Intermediate Maneuvers:
- Figure-8 patterns
- Precision landing on target
- Obstacle avoidance
- Following predetermined paths
- Coordinated movements
- Advanced Challenges:
- Team relay races
- Rescue simulations
- Precision delivery tasks
- Group choreography
- Time-based challenges
Mission Scenarios:
Mission 1: Search and Rescue
- Objective: Locate “missing person” (target) in designated area
- Skills: Systematic search patterns, communication, observation
- Time limit: 5 minutes
- Success criteria: Target identified and location communicated
Mission 2: Delivery Challenge
- Objective: Transport small payload from Point A to Point B
- Skills: Precision flying, cargo management, safe landing
- Obstacles: Wind conditions, landing accuracy requirements
- Success criteria: Payload delivered undamaged within time limit
Mission 3: Team Coordination
- Objective: Multiple drones work together to complete complex task
- Skills: Communication, timing, spatial awareness
- Challenge: Choreographed flight pattern or group problem-solving
- Success criteria: All drones complete task without collisions
Safety Protocols for Practical Flying:
- Always maintain 10-foot safety zone around flying area
- Designate specific roles: pilot, observer, safety officer
- Use hand signals for communication during loud operations
- Practice emergency landing procedures before each session
- Rotate roles so everyone experiences different responsibilities
Grade 6-9 Assessment - Weeks 6-8
Week 6 Assessment: Drone Laws and Regulations
Format: Written Test + Legal Scenario Analysis (40 minutes)
Part A: Kenya Aviation Law Knowledge (25 points)
- KCAA Regulations (10 points) Fill in the blanks:
- Drones over ______ grams must be registered with KCAA
- Maximum altitude for recreational flying is ______ feet
- Minimum distance from major airports is ______ kilometers
- Commercial drone operations require a ______ license
- Drones must remain within ______ line of sight
- No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
- Your school playground during lunch break: ______
- Open field 2km from Wilson Airport: ______
- Your backyard with adult supervision: ______
- Uhuru Park during a public event: ______
- Private farm with owner’s permission: ______
- Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:
Part B: Scenario-Based Decision Making (20 points)
- Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:
Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________
Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________
Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________
Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________
Part C: Responsible Pilot Planning (15 points)
-
Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:
-
-
-
[Continue through 10]
Week 7-8 Assessment: Emergency Procedures and Practical Skills
Format: Practical Flight Test + Emergency Response Simulation (60 minutes)
Part A: Emergency Response Knowledge (20 points)
- Emergency Procedures (15 points) Describe the correct response for each emergency:
Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
- Risk Assessment (5 points) Identify 3 risks for flying in each environment:
- School playground: ____________, ____________, ____________
- Open field: ____________, ____________, ____________
Part B: Practical Flight Skills Assessment (30 points)
- Basic Flight Controls (15 points) Demonstrate competency in:
- Smooth takeoff and landing (3 points)
- Stable hovering for 30 seconds (3 points)
- Forward/backward precision movement (3 points)
- Left/right precision movement (3 points)
- Controlled rotation (3 points)
- Mission Challenge (15 points) Complete ONE of the following missions:
Option A - Navigation Course:
- Fly through 5 waypoints in sequence
- Land within 1-meter target circle
- Complete within 3 minutes
Option B - Team Coordination:
- Work with partner to complete relay challenge
- Communicate effectively during handoff
- Maintain safety throughout mission
Part C: Leadership and Safety Evaluation (15 points)
- Safety Leadership (8 points) While others are flying, demonstrate:
- Proper safety zone maintenance
- Clear communication with pilot
- Appropriate responses to unsafe situations
- Helpful coaching and encouragement
- Self-Assessment and Goal Setting (7 points) Written reflection:
- What flight skill are you most confident with? Why?
- What area needs the most improvement?
- Set one specific goal for future drone flying
- Describe one way you can help others fly safely
Practical Skills Rubric:
- Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
- Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
- Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
- Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
- Beginning Pilot (Below 60%): Requires significant instruction and supervision
Grade 10-12 (14-16 Years) - Weeks 6-8
Advanced Python Projects & Integration
Week 6-7: Integrated Systems Project (Combined Weeks)
Learning Objectives:
- Combine motors and sensors in complex systems
- Debug integrated hardware/software systems
- Apply creative problem-solving to real-world challenges
- Document projects professionally
Key Concepts:
- Systems Integration: Combining multiple components into unified solutions
- Hardware-Software Interface: Code that bridges digital and physical worlds
- System Architecture: Planning complex projects with multiple subsystems
- Error Handling: Managing failures gracefully in complex systems
- Performance Optimization: Making systems run efficiently
- Documentation Standards: Professional project recording
Advanced Integration Concepts:
1. Multi-Sensor Fusion
import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json
class SensorFusion:
def __init__(self):
self.distance_sensor = DistanceSensor(echo=24, trigger=23)
self.motion_sensor = MotionSensor(4)
self.light_sensor = MCP3008(channel=0)
self.temp_sensor = MCP3008(channel=1)
# Data queues for thread communication
self.sensor_data = queue.Queue()
self.running = False
def read_sensors(self):
"""Continuous sensor reading in separate thread"""
while self.running:
try:
data = {
'timestamp': time.time(),
'distance': self.distance_sensor.distance * 100,
'motion': self.motion_sensor.motion_detected,
'light_level': self.light_sensor.voltage,
'temperature': self.convert_temp(self.temp_sensor.voltage)
}
self.sensor_data.put(data)
sleep(0.1) # 10Hz sampling rate
except Exception as e:
print(f"Sensor reading error: {e}")
def convert_temp(self, voltage):
"""Convert sensor voltage to temperature"""
return (voltage - 0.5) * 100 # Example conversion
def start_monitoring(self):
"""Start sensor monitoring thread"""
self.running = True
self.sensor_thread = threading.Thread(target=self.read_sensors)
self.sensor_thread.start()
def stop_monitoring(self):
"""Stop sensor monitoring"""
self.running = False
if hasattr(self, 'sensor_thread'):
self.sensor_thread.join()
2. Intelligent Control Systems
class SmartEnvironmentController:
def __init__(self):
self.sensors = SensorFusion()
self.fan_motor = Motor(forward=2, backward=3)
self.heater_relay = OutputDevice(18)
self.lights = PWMOutputDevice(19)
# Control parameters
self.target_temp = 22.0 # Target temperature in Celsius
self.temp_tolerance = 1.0
self.light_threshold = 0.3
# Control state
self.auto_mode = True
self.manual_override = False
def analyze_environment(self, sensor_data):
"""Intelligent decision making based on sensor data"""
decisions = {
'fan_speed': 0.0,
'heater_on': False,
'light_level': 0.0,
'alert_status': 'normal'
}
# Temperature control logic
temp_diff = sensor_data['temperature'] - self.target_temp
if temp_diff > self.temp_tolerance: # Too hot
decisions['fan_speed'] = min(1.0, temp_diff / 5.0) # Scale fan speed
decisions['heater_on'] = False
elif temp_diff < -self.temp_tolerance: # Too cold
decisions['fan_speed'] = 0.0
decisions['heater_on'] = True
# Light control logic
if sensor_data['light_level'] < self.light_threshold:
decisions['light_level'] = 1.0 - sensor_data['light_level'] # Complement lighting
# Security monitoring
if sensor_data['motion'] and sensor_data['distance'] < 20: # Close motion
decisions['alert_status'] = 'intrusion_detected'
elif sensor_data['distance'] < 5: # Very close object
decisions['alert_status'] = 'obstacle_warning'
return decisions
def execute_controls(self, decisions):
"""Execute control decisions"""
if not self.manual_override:
# Motor control
if decisions['fan_speed'] > 0:
self.fan_motor.forward(decisions['fan_speed'])
else:
self.fan_motor.stop()
# Heater control
if decisions['heater_on']:
self.heater_relay.on()
else:
self.heater_relay.off()
# Light control
self.lights.value = decisions['light_level']
def run_control_loop(self):
"""Main control loop"""
self.sensors.start_monitoring()
try:
while True:
if not self.sensors.sensor_data.empty():
current_data = self.sensors.sensor_data.get()
decisions = self.analyze_environment(current_data)
self.execute_controls(decisions)
# Log system status
self.log_system_status(current_data, decisions)
sleep(0.5) # Control loop frequency
except KeyboardInterrupt:
print("Shutting down control system...")
finally:
self.sensors.stop_monitoring()
self.fan_motor.stop()
self.heater_relay.off()
self.lights.off()
def log_system_status(self, sensor_data, decisions):
"""Log system performance data"""
log_entry = {
'timestamp': sensor_data['timestamp'],
'sensors': sensor_data,
'controls': decisions,
'mode': 'auto' if self.auto_mode else 'manual'
}
# In a real system, this would write to a file or database
print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
f"Fan={decisions['fan_speed']:.1f}, "
f"Alert={decisions['alert_status']}")
3. Project Documentation Standards
"""
Smart Environment Control System
================================
Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0
Description:
An intelligent system that monitors environmental conditions and automatically
adjusts heating, cooling, and lighting based on sensor feedback.
Hardware Requirements:
- Raspberry Pi 4 or similar
- Temperature sensor (DS18B20 or similar)
- Light sensor (LDR with MCP3008 ADC)
- Motion sensor (PIR)
- Distance sensor (HC-SR04)
- DC Motor (for fan simulation)
- Relay module (for heater control)
- PWM-controlled LED (for lighting)
Software Dependencies:
- Python 3.7+
- gpiozero library
- threading module (standard library)
- queue module (standard library)
- json module (standard library)
Installation:
pip install gpiozero
Usage:
python smart_environment.py
Configuration:
Modify target_temp and light_threshold variables in SmartEnvironmentController
class to adjust system behavior.
Testing:
Run included test functions to verify sensor readings and control outputs
before deploying the full system.
Known Issues:
- Temperature sensor calibration may need adjustment for local conditions
- Motion sensor has 2-second reset time that affects rapid detection
Future Enhancements:
- Web interface for remote monitoring
- Data logging to CSV files
- Machine learning for predictive control
- Mobile app integration
"""
Project Examples for Students:
Project 1: Smart Garden Monitor
- Monitors soil moisture, light, and temperature
- Controls watering pump and grow lights
- Logs plant growth data
- Sends alerts when intervention needed
Project 2: Home Security System
- Multiple sensor integration (motion, door, window)
- Camera trigger on detection
- SMS/email notifications
- Mobile app control interface
Project 3: Weather Station
- Measures temperature, humidity, pressure, wind
- Data logging with timestamps
- Weather prediction algorithms
- Web dashboard for data visualization
Project 4: Automated Greenhouse
- Climate control (temperature, humidity)
- Automated watering system
- Light cycle management
- Growth optimization algorithms
Week 8: Project Presentations and Assessment
Learning Objectives:
- Present technical projects professionally
- Give and receive constructive feedback
- Self-evaluate learning progress and achievements
- Plan next steps for continued learning
Key Concepts:
- Technical Communication: Explaining complex systems clearly
- Presentation Skills: Engaging audiences with technical content
- Peer Review: Constructive feedback and collaboration
- Self-Assessment: Honest evaluation of own work
- Professional Development: Planning continued learning paths
- Portfolio Building: Documenting achievements for future opportunities
Presentation Structure:
- Project Overview (2 minutes)
- Problem statement and objectives
- Target audience and use cases
- Key features and functionality
- Technical Demonstration (2 minutes)
- Live system operation
- Key components and how they work
- Code walkthrough of critical sections
- Challenges and Solutions (1 minute)
- Major obstacles encountered
- Creative solutions implemented
- Lessons learned from failures
Evaluation Criteria:
Technical Merit (40%):
- System functionality and reliability
- Code quality and organization
- Creative problem-solving approach
- Integration of multiple technologies
Communication (30%):
- Clear explanation of technical concepts
- Engaging presentation delivery
- Appropriate use of visual aids
- Effective response to questions
Documentation (20%):
- Complete project documentation
- Code comments and structure
- User instructions and setup guides
- Reflection on learning process
Collaboration (10%):
- Constructive feedback to peers
- Professional interaction during Q&A
- Willingness to share knowledge
- Respectful critique and discussion
Python Programming Trivia Challenge: End the term with fun technical questions:
- What does “PEP 8” refer to in Python?
- What’s the difference between
==andisin Python? - How do you handle exceptions in Python?
- What is a Python decorator?
- What’s the difference between a list and a tuple?
Grade 10-12 Final Assessment - Weeks 6-8
Integrated Systems Project Assessment
Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)
Project Requirements: Students must create an integrated system that combines:
- At least 3 different sensors
- At least 2 actuators (motors, lights, relays, etc.)
- Data logging and analysis
- User interface (command line or simple GUI)
- Error handling and safety features
Part A: Technical Implementation (40 points)
System Design (10 points)
- Clear problem definition and solution approach
- System architecture diagram showing component relationships
- Hardware schematic or connection diagram
- Software flowchart or algorithm description
Code Quality (15 points)
- Well-structured, modular code with functions/classes
- Appropriate variable names and code organization
- Comprehensive comments explaining complex sections
- Error handling for hardware failures
- Efficient algorithms and resource usage
Hardware Integration (15 points)
- Stable sensor readings with appropriate filtering
- Reliable actuator control with safety limits
- Proper electrical connections and component usage
- System operates reliably for extended periods
- Professional cable management and mounting
Part B: Documentation and Communication (25 points)
Project Documentation (15 points) Create a complete project report including:
- Executive summary of project goals and achievements
- Detailed technical specifications and requirements
- Installation and setup instructions
- User manual with clear operating procedures
- Troubleshooting guide for common problems
- Code documentation with API reference
Technical Presentation (10 points)
- Clear 5-minute presentation explaining project
- Live demonstration of working system
- Professional slides with technical diagrams
- Confident handling of technical questions
- Appropriate use of technical vocabulary
Part C: Innovation and Problem Solving (20 points)
Creative Solutions (10 points)
- Original approach to solving chosen problem
- Creative use of available hardware and software
- Evidence of iterative design and improvement
- Solutions show depth of understanding beyond basic requirements
Advanced Features (10 points) Choose and implement at least TWO:
- Machine learning or AI decision making
- Network communication (IoT connectivity)
- Mobile app or web interface
- Data visualization and analytics
- Predictive algorithms or optimization
- Integration with external APIs or services
Part D: Professional Skills (15 points)
Peer Collaboration (8 points)
- Constructive feedback provided to classmates
- Professional behavior during presentations
- Willingness to help others debug problems
- Respectful and insightful questions during Q&A
Self-Assessment (7 points) Written reflection addressing:
- Most significant technical challenge and how you overcame it
- What you would do differently if starting over
- How this project connects to potential career interests
- Specific skills you want to develop further
- Your confidence level with different aspects of the project
Sample Project Evaluation Rubric:
Exceptional (90-100%)
- System exceeds all requirements with innovative features
- Code is publication-quality with comprehensive documentation
- Presentation is engaging and demonstrates deep understanding
- Shows leadership in helping others and contributing to class learning
- Self-reflection shows sophisticated understanding of learning process
Proficient (80-89%)
- System meets all requirements reliably
- Code is well-structured with good documentation
- Presentation is clear and technically accurate
- Actively participates in peer learning and feedback
- Self-reflection shows good awareness of strengths and growth areas
Developing (70-79%)
- System meets most requirements with minor issues
- Code works but may have organizational or documentation gaps
- Presentation covers required topics but may lack depth
- Participates adequately in class activities
- Self-reflection shows basic understanding of learning process
Beginning (60-69%)
- System meets basic requirements but has significant limitations
- Code works for demonstration but has structural or reliability issues
- Presentation covers basics but shows limited understanding
- Minimal participation in peer activities
- Self-reflection is superficial or lacks insight
Incomplete (Below 60%)
- System fails to meet basic requirements or doesn’t function reliably
- Code has major issues that prevent proper operation
- Presentation is unclear or shows misunderstanding of concepts
- Little to no participation in collaborative learning
- Self-reflection missing or shows no evidence of learning
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Notes
I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:
What’s Included:
For Each Grade Level:
- Detailed weekly lesson notes covering weeks 1-8 content
- Key concepts and learning objectives for each topic
- Practical examples and code samples (for programming grades)
- Age-appropriate assessment tests with multiple formats
Assessment Formats:
- Preschoolers (4-6): Practical/observational assessments with hands-on activities
- Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
- Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
- Grade 10-12 (14-16): Coding assignments + hardware integration projects
Key Features:
- ✅ Covers all 8 weeks of Term 1 content
- ✅ Aligned with curriculum from the IoT & Robotics document
- ✅ Progressive difficulty appropriate for each age group
- ✅ Practical assessments that test real understanding
- ✅ Detailed rubrics for fair evaluation
- ✅ Extension activities for advanced learners
- ✅ Safety guidelines and best practices
Topics Covered:
- Preschoolers: STEM basics, simple machines, unplugged coding
- Grade 2-5: Scratch programming, Blockly games, interface navigation
- Grade 6-9: Drone basics, aviation principles, safety regulations
- Grade 10-12: Python programming, hardware control, sensor integration
Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.
Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Grade 10-12 (14-16 Years) - Weeks 6-8
Advanced Python Projects & Integration
Week 6-7: Integrated Systems Project (Combined Weeks)
Learning Objectives:
- Combine motors and sensors in complex systems
- Debug integrated hardware/software systems
- Apply creative problem-solving to real-world challenges
- Document projects professionally
Key Concepts:
- Systems Integration: Combining multiple components into unified solutions
- Hardware-Software Interface: Code that bridges digital and physical worlds
- System Architecture: Planning complex projects with multiple subsystems
- Error Handling: Managing failures gracefully in complex systems
- Performance Optimization: Making systems run efficiently
- Documentation Standards: Professional project recording
Advanced Integration Concepts:
1. Multi-Sensor Fusion
import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json
class SensorFusion:
def __init__(self):
self.distance_sensor = DistanceSensor(echo=24, trigger=23)
self.motion_sensor = MotionSensor(4)
self.light_sensor = MCP3008(channel=0)
self.temp_sensor = MCP3008(channel=1)
# Data queues for thread communication
self.sensor_data = queue.Queue()
self.running = False
def read_sensors(self):
"""Continuous sensor reading in separate thread"""
while self.running:
try:
data = {
'timestamp': time.time(),
'distance': self.distance_sensor.distance * 100,
'motion': self.motion_sensor.motion_detected,
'light_level': self.light_sensor.voltage,
'temperature': self.convert_temp(self.temp_sensor.voltage)
}
self.sensor_data.put(data)
sleep(0.1) # 10Hz sampling rate
except Exception as e:
print(f"Sensor reading error: {e}")
def convert_temp(self, voltage):
"""Convert sensor voltage to temperature"""
return (voltage - 0.5) * 100 # Example conversion
def start_monitoring(self):
"""Start sensor monitoring thread"""
self.running = True
self.sensor_thread = threading.Thread(target=self.read_sensors)
self.sensor_thread.start()
def stop_monitoring(self):
"""Stop sensor monitoring"""
self.running = False
if hasattr(self, 'sensor_thread'):
self.sensor_thread.join()
2. Intelligent Control Systems
class SmartEnvironmentController:
def __init__(self):
self.sensors = SensorFusion()
self.fan_motor = Motor(forward=2, backward=3)
self.heater_relay = OutputDevice(18)
self.lights = PWMOutputDevice(19)
# Control parameters
self.target_temp = 22.0 # Target temperature in Celsius
self.temp_tolerance = 1.0
self.light_threshold = 0.3
# Control state
self.auto_mode = True
self.manual_override = False
def analyze_environment(self, sensor_data):
"""Intelligent decision making based on sensor data"""
decisions = {
'fan_speed': 0.0,
'heater_on': False,
'light_level': 0.0,
'alert_status': 'normal'
}
# Temperature control logic
temp_diff = sensor_data['temperature'] - self.target_temp
if temp_diff > self.temp_tolerance: # Too hot
decisions['fan_speed'] = min(1.0, temp_diff / 5.0) # Scale fan speed
decisions['heater_on'] = False
elif temp_diff < -self.temp_tolerance: # Too cold
decisions['fan_speed'] = 0.0
decisions['heater_on'] = True
# Light control logic
if sensor_data['light_level'] < self.light_threshold:
decisions['light_level'] = 1.0 - sensor_data['light_level'] # Complement lighting
# Security monitoring
if sensor_data['motion'] and sensor_data['distance'] < 20: # Close motion
decisions['alert_status'] = 'intrusion_detected'
elif sensor_data['distance'] < 5: # Very close object
decisions['alert_status'] = 'obstacle_warning'
return decisions
def execute_controls(self, decisions):
"""Execute control decisions"""
if not self.manual_override:
# Motor control
if decisions['fan_speed'] > 0:
self.fan_motor.forward(decisions['fan_speed'])
else:
self.fan_motor.stop()
# Heater control
if decisions['heater_on']:
self.heater_relay.on()
else:
self.heater_relay.off()
# Light control
self.lights.value = decisions['light_level']
def run_control_loop(self):
"""Main control loop"""
self.sensors.start_monitoring()
try:
while True:
if not self.sensors.sensor_data.empty():
current_data = self.sensors.sensor_data.get()
decisions = self.analyze_environment(current_data)
self.execute_controls(decisions)
# Log system status
self.log_system_status(current_data, decisions)
sleep(0.5) # Control loop frequency
except KeyboardInterrupt:
print("Shutting down control system...")
finally:
self.sensors.stop_monitoring()
self.fan_motor.stop()
self.heater_relay.off()
self.lights.off()
def log_system_status(self, sensor_data, decisions):
"""Log system performance data"""
log_entry = {
'timestamp': sensor_data['timestamp'],
'sensors': sensor_data,
'controls': decisions,
'mode': 'auto' if self.auto_mode else 'manual'
}
# In a real system, this would write to a file or database
print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
f"Fan={decisions['fan_speed']:.1f}, "
f"Alert={decisions['alert_status']}")
3. Project Documentation Standards
"""
Smart Environment Control System
================================
Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0
Description:
An intelligent system that monitors environmental conditions and automatically
adjusts heating, cooling, and lighting based on sensor feedback.
Hardware Requirements:
- Raspberry Pi 4 or similar
- Temperature sensor (DS18B20 or similar)
- Light sensor (LDR with MCP3008 ADC)
- Motion sensor (PIR)
- Distance sensor (HC-SR04)
- DC Motor (for fan simulation)
- Relay module (for heater control)
- PWM-controlled LED (for lighting)
Software Dependencies:
- Python 3.7+
- gpiozero library
- threading module (standard library)
- queue module (standard library)
- json module (standard library)
Installation:
pip install gpiozero
Usage:
python smart_environment.py
Configuration:
Modify target_temp and light_threshold variables in SmartEnvironmentController
class to adjust system behavior.
Testing:
Run included test functions to verify sensor readings and control outputs
before deploying the full system.
Known Issues:
- Temperature sensor calibration may need adjustment for local conditions
- Motion sensor has 2-second reset time that affects rapid detection
Future Enhancements:
- Web interface for remote monitoring
- Data logging to CSV files
- Machine learning for predictive control
- Mobile app integration
"""
Project Examples for Students:
Project 1: Smart Garden Monitor
- Monitors soil moisture, light, and temperature
- Controls watering pump and grow lights
- Logs plant growth data
- Sends alerts when intervention needed
Project 2: Home Security System
- Multiple sensor integration (motion, door, window)
- Camera trigger on detection
- SMS/email notifications
- Mobile app control interface
Project 3: Weather Station
- Measures temperature, humidity, pressure, wind
- Data logging with timestamps
- Weather prediction algorithms
- Web dashboard for data visualization
Project 4: Automated Greenhouse
- Climate control (temperature, humidity)
- Automated watering system
- Light cycle management
- Growth optimization algorithms
Grade 10-12 Final Assessment - Weeks 6-8
Integrated Systems Project Assessment
Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)
Project Requirements: Students must create an integrated system that combines:
- At least 3 different sensors
- At least 2 actuators (motors, lights, relays, etc.)
- Data logging and analysis
- User interface (command line or simple GUI)
- Error handling and safety features
Part A: Technical Implementation (40 points)
System Design (10 points)
- Clear problem definition and solution approach
- System architecture diagram showing component relationships
- Hardware schematic or connection diagram
- Software flowchart or algorithm description
Code Quality (15 points)
- Well-structured, modular code with functions/classes
- Appropriate variable names and code organization
- Comprehensive comments explaining complex sections
- Error handling for hardware failures
- Efficient algorithms and resource usage
Hardware Integration (15 points)
- Stable sensor readings with appropriate filtering
- Reliable actuator control with safety limits
- Proper electrical connections and component usage
- System operates reliably for extended periods
- Professional cable management and mounting
Part B: Documentation and Communication (25 points)
Project Documentation (15 points) Create a complete project report including:
- Executive summary of project goals and achievements
- Detailed technical specifications and requirements
- Installation and setup instructions
- User manual with clear operating procedures
- Troubleshooting guide for common problems
- Code documentation with API reference
Technical Presentation (10 points)
- Clear 5-minute presentation explaining project
- Live demonstration of working system
- Professional slides with technical diagrams
- Confident handling of technical questions
- Appropriate use of technical vocabulary
Part C: Innovation and Problem Solving (20 points)
Creative Solutions (10 points)
- Original approach to solving chosen problem
- Creative use of available hardware and software
- Evidence of iterative design and improvement
- Solutions show depth of understanding beyond basic requirements
Advanced Features (10 points) Choose and implement at least TWO:
- Machine learning or AI decision making
- Network communication (IoT connectivity)
- Mobile app or web interface
- Data visualization and analytics
- Predictive algorithms or optimization
- Integration with external APIs or services
Part D: Professional Skills (15 points)
Peer Collaboration (8 points)
- Constructive feedback provided to classmates
- Professional behavior during presentations
- Willingness to help others debug problems
- Respectful and insightful questions during Q&A
Self-Assessment (7 points) Written reflection addressing:
- Most significant technical challenge and how you overcame it
- What you would do differently if starting over
- How this project connects to potential career interests
- Specific skills you want to develop further
- Your confidence level with different aspects of the project
Sample Project Evaluation Rubric:
Exceptional (90-100%)
- System exceeds all requirements with innovative features
- Code is publication-quality with comprehensive documentation
- Presentation is engaging and demonstrates deep understanding
- Shows leadership in helping others and contributing to class learning
- Self-reflection shows sophisticated understanding of learning process
Proficient (80-89%)
- System meets all requirements reliably
- Code is well-structured with good documentation
- Presentation is clear and technically accurate
- Actively participates in peer learning and feedback
- Self-reflection shows good awareness of strengths and growth areas
Developing (70-79%)
- System meets most requirements with minor issues
- Code works but may have organizational or documentation gaps
- Presentation covers required topics but may lack depth
- Participates adequately in class activities
- Self-reflection shows basic understanding of learning process
Beginning (60-69%)
- System meets basic requirements but has significant limitations
- Code works for demonstration but has structural or reliability issues
- Presentation covers basics but shows limited understanding
- Minimal participation in peer activities
- Self-reflection is superficial or lacks insight
Incomplete (Below 60%)
- System fails to meet basic requirements or doesn’t function reliably
- Code has major issues that prevent proper operation
- Presentation is unclear or shows misunderstanding of concepts
- Little to no participation in collaborative learning
- Self-reflection missing or shows no evidence of learning
Assessment Test
Week 6-7: Integrated Systems Project (Combined Weeks)
Learning Objectives:
- Combine motors and sensors in complex systems
- Debug integrated hardware/software systems
- Apply creative problem-solving to real-world challenges
- Document projects professionally
Key Concepts:
- Systems Integration: Combining multiple components into unified solutions
- Hardware-Software Interface: Code that bridges digital and physical worlds
- System Architecture: Planning complex projects with multiple subsystems
- Error Handling: Managing failures gracefully in complex systems
- Performance Optimization: Making systems run efficiently
- Documentation Standards: Professional project recording
Advanced Integration Concepts:
1. Multi-Sensor Fusion
import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json
class SensorFusion:
def __init__(self):
self.distance_sensor = DistanceSensor(echo=24, trigger=23)
self.motion_sensor = MotionSensor(4)
self.light_sensor = MCP3008(channel=0)
self.temp_sensor = MCP3008(channel=1)
# Data queues for thread communication
self.sensor_data = queue.Queue()
self.running = False
def read_sensors(self):
"""Continuous sensor reading in separate thread"""
while self.running:
try:
data = {
'timestamp': time.time(),
'distance': self.distance_sensor.distance * 100,
'motion': self.motion_sensor.motion_detected,
'light_level': self.light_sensor.voltage,
'temperature': self.convert_temp(self.temp_sensor.voltage)
}
self.sensor_data.put(data)
sleep(0.1) # 10Hz sampling rate
except Exception as e:
print(f"Sensor reading error: {e}")
def convert_temp(self, voltage):
"""Convert sensor voltage to temperature"""
return (voltage - 0.5) * 100 # Example conversion
def start_monitoring(self):
"""Start sensor monitoring thread"""
self.running = True
self.sensor_thread = threading.Thread(target=self.read_sensors)
self.sensor_thread.start()
def stop_monitoring(self):
"""Stop sensor monitoring"""
self.running = False
if hasattr(self, 'sensor_thread'):
self.sensor_thread.join()
2. Intelligent Control Systems
class SmartEnvironmentController:
def __init__(self):
self.sensors = SensorFusion()
self.fan_motor = Motor(forward=2, backward=3)
self.heater_relay = OutputDevice(18)
self.lights = PWMOutputDevice(19)
# Control parameters
self.target_temp = 22.0 # Target temperature in Celsius
self.temp_tolerance = 1.0
self.light_threshold = 0.3
# Control state
self.auto_mode = True
self.manual_override = False
def analyze_environment(self, sensor_data):
"""Intelligent decision making based on sensor data"""
decisions = {
'fan_speed': 0.0,
'heater_on': False,
'light_level': 0.0,
'alert_status': 'normal'
}
# Temperature control logic
temp_diff = sensor_data['temperature'] - self.target_temp
if temp_diff > self.temp_tolerance: # Too hot
decisions['fan_speed'] = min(1.0, temp_diff / 5.0) # Scale fan speed
decisions['heater_on'] = False
elif temp_diff < -self.temp_tolerance: # Too cold
decisions['fan_speed'] = 0.0
decisions['heater_on'] = True
# Light control logic
if sensor_data['light_level'] < self.light_threshold:
decisions['light_level'] = 1.0 - sensor_data['light_level'] # Complement lighting
# Security monitoring
if sensor_data['motion'] and sensor_data['distance'] < 20: # Close motion
decisions['alert_status'] = 'intrusion_detected'
elif sensor_data['distance'] < 5: # Very close object
decisions['alert_status'] = 'obstacle_warning'
return decisions
def execute_controls(self, decisions):
"""Execute control decisions"""
if not self.manual_override:
# Motor control
if decisions['fan_speed'] > 0:
self.fan_motor.forward(decisions['fan_speed'])
else:
self.fan_motor.stop()
# Heater control
if decisions['heater_on']:
self.heater_relay.on()
else:
self.heater_relay.off()
# Light control
self.lights.value = decisions['light_level']
def run_control_loop(self):
"""Main control loop"""
self.sensors.start_monitoring()
try:
while True:
if not self.sensors.sensor_data.empty():
current_data = self.sensors.sensor_data.get()
decisions = self.analyze_environment(current_data)
self.execute_controls(decisions)
# Log system status
self.log_system_status(current_data, decisions)
sleep(0.5) # Control loop frequency
except KeyboardInterrupt:
print("Shutting down control system...")
finally:
self.sensors.stop_monitoring()
self.fan_motor.stop()
self.heater_relay.off()
self.lights.off()
def log_system_status(self, sensor_data, decisions):
"""Log system performance data"""
log_entry = {
'timestamp': sensor_data['timestamp'],
'sensors': sensor_data,
'controls': decisions,
'mode': 'auto' if self.auto_mode else 'manual'
}
# In a real system, this would write to a file or database
print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
f"Fan={decisions['fan_speed']:.1f}, "
f"Alert={decisions['alert_status']}")
3. Project Documentation Standards
"""
Smart Environment Control System
================================
Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0
Description:
An intelligent system that monitors environmental conditions and automatically
adjusts heating, cooling, and lighting based on sensor feedback.
Hardware Requirements:
- Raspberry Pi 4 or similar
- Temperature sensor (DS18B20 or similar)
- Light sensor (LDR with MCP3008 ADC)
- Motion sensor (PIR)
- Distance sensor (HC-SR04)
- DC Motor (for fan simulation)
- Relay module (for heater control)
- PWM-controlled LED (for lighting)
Software Dependencies:
- Python 3.7+
- gpiozero library
- threading module (standard library)
- queue module (standard library)
- json module (standard library)
Installation:
pip install gpiozero
Usage:
python smart_environment.py
Configuration:
Modify target_temp and light_threshold variables in SmartEnvironmentController
class to adjust system behavior.
Testing:
Run included test functions to verify sensor readings and control outputs
before deploying the full system.
Known Issues:
- Temperature sensor calibration may need adjustment for local conditions
- Motion sensor has 2-second reset time that affects rapid detection
Future Enhancements:
- Web interface for remote monitoring
- Data logging to CSV files
- Machine learning for predictive control
- Mobile app integration
"""
Project Examples for Students:
Project 1: Smart Garden Monitor
- Monitors soil moisture, light, and temperature
- Controls watering pump and grow lights
- Logs plant growth data
- Sends alerts when intervention needed
Project 2: Home Security System
- Multiple sensor integration (motion, door, window)
- Camera trigger on detection
- SMS/email notifications
- Mobile app control interface
Project 3: Weather Station
- Measures temperature, humidity, pressure, wind
- Data logging with timestamps
- Weather prediction algorithms
- Web dashboard for data visualization
Project 4: Automated Greenhouse
- Climate control (temperature, humidity)
- Automated watering system
- Light cycle management
- Growth optimization algorithms
Assessment Test
Week 8: Project Presentations and Assessment
Learning Objectives:
- Present technical projects professionally
- Give and receive constructive feedback
- Self-evaluate learning progress and achievements
- Plan next steps for continued learning
Key Concepts:
- Technical Communication: Explaining complex systems clearly
- Presentation Skills: Engaging audiences with technical content
- Peer Review: Constructive feedback and collaboration
- Self-Assessment: Honest evaluation of own work
- Professional Development: Planning continued learning paths
- Portfolio Building: Documenting achievements for future opportunities
Presentation Structure:
- Project Overview (2 minutes)
- Problem statement and objectives
- Target audience and use cases
- Key features and functionality
- Technical Demonstration (2 minutes)
- Live system operation
- Key components and how they work
- Code walkthrough of critical sections
- Challenges and Solutions (1 minute)
- Major obstacles encountered
- Creative solutions implemented
- Lessons learned from failures
Evaluation Criteria:
Technical Merit (40%):
- System functionality and reliability
- Code quality and organization
- Creative problem-solving approach
- Integration of multiple technologies
Communication (30%):
- Clear explanation of technical concepts
- Engaging presentation delivery
- Appropriate use of visual aids
- Effective response to questions
Documentation (20%):
- Complete project documentation
- Code comments and structure
- User instructions and setup guides
- Reflection on learning process
Collaboration (10%):
- Constructive feedback to peers
- Professional interaction during Q&A
- Willingness to share knowledge
- Respectful critique and discussion
Python Programming Trivia Challenge: End the term with fun technical questions:
- What does “PEP 8” refer to in Python?
- What’s the difference between
==andisin Python? - How do you handle exceptions in Python?
- What is a Python decorator?
- What’s the difference between a list and a tuple?
Assessment Test
IoT & Robotics Term 1 - Complete Notes & Assessment Tests
Table of Contents
- Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
- Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
- Grade 6-9 (11-14 Years) - Drone Aviation Introduction
- Grade 10-12 (14-16 Years) - Python Basics
Preschoolers (4-6 Years)
Term 1: STEM Storytelling & Coding Toys
Week 1: Introduction to STEM
Learning Objectives:
- Understand basic concepts of STEM (Science, Technology, Engineering, Math)
- Spark excitement and curiosity about STEM through hands-on activities
- Foster teamwork through group experiments
- Develop early thinking through guided play and experimentation
Key Concepts:
- Science: Learning about the world around us through observation
- Technology: Simple tools and devices that help us
- Engineering: Building and creating solutions
- Mathematics: Numbers, shapes, and patterns in everyday life
Activities:
- Floating vs. Sinking experiments with various objects
- Basic robot interaction and exploration
- STEM vocabulary building games
- Classification activities
Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet
Week 2: STEM Play Corners
Learning Objectives:
- Explore different STEM areas through play stations
- Develop fine motor skills through hands-on manipulation
- Practice problem-solving through guided discovery
- Build confidence in exploring new concepts
Key Concepts:
- Play-based learning: Learning through exploration and fun
- Spatial awareness: Understanding shapes, sizes, and positions
- Cause and effect: Understanding that actions have results
- Collaboration: Working together to solve problems
Week 3: Simple Machines & Environmental Science
Learning Objectives:
- Identify simple machines in everyday life
- Understand basic environmental concepts
- Develop observation skills
- Connect STEM to the natural world
Key Concepts:
- Simple Machines: Lever, pulley, wheel, ramp
- Environment: Plants, animals, weather, seasons
- Observation: Using our senses to learn
- Nature patterns: Recognizing patterns in nature
Week 4: Unplugged Coding
Learning Objectives:
- Introduction to coding concepts without computers
- Understand sequence and order
- Develop logical thinking
- Practice following and giving instructions
Key Concepts:
- Sequence: Steps in order
- Instructions: Clear directions to follow
- Algorithms: Step-by-step solutions
- Patterns: Recognizing and creating patterns
Assessment Test - Preschoolers (4-6 Years)
Week 1-2 Assessment: STEM Basics
Format: Practical/Observational Assessment
- Floating or Sinking? (Show child various objects)
- Point to objects that will float: feather, cork, plastic toy
- Point to objects that will sink: stone, coin, marble
- Explain why you think so (in simple words)
- STEM Matching (Picture cards)
- Match the scientist to the magnifying glass
- Match the engineer to the building blocks
- Match the mathematician to the numbers
- Match the technologist to the computer
- Following Instructions
- Can follow 2-step instructions: “Pick up the red block and put it in the box”
- Can give simple instructions to a friend
- Can arrange objects in order (biggest to smallest)
Assessment Rubric:
- Exceeding (3): Completes all tasks independently with explanation
- Meeting (2): Completes most tasks with minimal guidance
- Approaching (1): Attempts tasks with significant support
- Beginning (0): Needs extensive help to participate
Week 3-4 Assessment: Simple Machines & Coding
Format: Hands-on Demonstration
- Simple Machines Hunt
- Find the lever (seesaw, scissors)
- Find the wheel (bicycle, toy car)
- Find the ramp (slide, wedge)
- Explain what each machine helps us do
- Nature Observation
- Draw or point to living things vs. non-living things
- Identify basic shapes in nature (circles in flowers, triangles in mountains)
- Name things that grow vs. things that are made
- Unplugged Coding Challenge
- Arrange sequence cards to show morning routine
- Give directions to help friend reach the treasure
- Complete a simple pattern with blocks or shapes
Grade 2-5 (7-11 Years)
Term 1: Scratch & Blockly Programming
Week 1: Introduction to Programming
Learning Objectives:
- Understand what programming is
- Learn about Scratch programming environment
- Install and explore Scratch interface
- Grasp the concept of sequencing
Key Concepts:
- Programming: Giving instructions to computers
- Scratch: Visual programming language using blocks
- Interface: The screen where we work with Scratch
- Sequencing: Putting commands in the right order
- Sprites: Characters in Scratch programs
- Stage: Where Scratch programs run
Core Activities:
- Explore Scratch interface and tools
- Identify different areas (sprite area, blocks palette, stage)
- Learn about different block categories (Motion, Looks, Sound, etc.)
- Create first simple animation
Week 2: Understanding Scratch Interface
Learning Objectives:
- Navigate Scratch interface confidently
- Understand different block categories
- Create basic sprite movements
- Save and load projects
Key Concepts:
- Blocks Palette: Where programming blocks are stored
- Scripts Area: Where we build our programs
- Motion Blocks: Make sprites move
- Looks Blocks: Change sprite appearance
- Events: What starts our programs running
Week 3: Setting Up Scratch Projects
Learning Objectives:
- Plan and organize Scratch projects
- Understand project structure
- Use backgrounds and sprites effectively
- Practice debugging simple problems
Key Concepts:
- Project Planning: Thinking before coding
- Backgrounds: Scenes for our programs
- Sprite Library: Ready-made characters
- Debugging: Finding and fixing problems
Week 4: Introduction to Blockly
Learning Objectives:
- Understand Blockly visual programming
- Compare Blockly with Scratch
- Complete basic Blockly puzzles
- Transfer concepts between platforms
Key Concepts:
- Blockly: Another visual programming language
- Puzzle-based Learning: Learning through solving challenges
- Logic Blocks: Making decisions in programs
- Loops: Repeating actions
Week 5: Blockly Games for Scratch Programmers
Learning Objectives:
- Apply Scratch knowledge to Blockly games
- Solve increasingly complex puzzles
- Understand programming logic and flow
- Build problem-solving confidence
Key Concepts:
- Game Logic: Rules that make games work
- Progressive Difficulty: Challenges that get harder
- Pattern Recognition: Seeing repeated solutions
- Persistence: Keep trying when challenges are difficult
Assessment Test - Grade 2-5 (7-11 Years)
Week 1-3 Assessment: Scratch Fundamentals
Format: Practical Computer Assessment (30 minutes)
Part A: Interface Knowledge (10 points)
- Label the parts of Scratch interface:
- Blocks Palette
- Scripts Area
- Stage
- Sprite Area
- Match the block colors to their functions:
- Motion blocks: _____ (Blue)
- Looks blocks: _____ (Purple)
- Sound blocks: _____ (Pink)
- Events blocks: _____ (Yellow)
Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:
-
Move 10 steps forward
-
Turn 90 degrees right
-
Say “Hello” for 2 seconds
-
Change color
- Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]
Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?
-
Missing “when green flag clicked” block
-
Sprite is already at the edge
-
Motion blocks aren’t connected
-
All of the above
- Create a simple animation showing a cat walking across the stage.
Week 4-5 Assessment: Blockly & Problem Solving
Format: Computer-based Blockly Challenges (25 minutes)
Part A: Blockly Basics (8 points)
- Complete the “Move Forward” puzzle in Blockly
- Complete the “Turn Left/Right” puzzle
- Complete the “Repeat Loop” puzzle
- Complete the “If/Else” puzzle
Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:
Repeat 4 times:
Move forward
Turn right 90 degrees
Answer: _________________
- Write Blockly code to make a character:
- Move forward 3 steps
- Turn left if path is blocked
- Repeat until reaching goal
Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:
- Create a Scratch program that does the same thing as this Blockly code:
When started: Repeat 5 times: Move forward 20 steps Wait 1 second
Assessment Rubric:
- Advanced (90-100%): Completes all tasks efficiently with creative additions
- Proficient (80-89%): Completes most tasks correctly with minor errors
- Developing (70-79%): Completes basic tasks but struggles with complex problems
- Beginning (Below 70%): Needs significant support to complete tasks
Grade 6-9 (11-14 Years)
Term 1: Drone Aviation Introduction
Week 1: Introduction to Drones and Aviation Basics
Learning Objectives:
- Understand what drones are and their applications
- Learn basic aviation principles
- Identify different types of aircraft
- Understand the evolution of flight
Key Concepts:
- Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
- Remote Pilot: Person controlling the drone from the ground
- Autonomous Flight: Drones flying with minimal human control
- Commercial vs. Recreational Use: Different purposes for drones
- Four Forces of Flight: Lift, Weight, Thrust, Drag
- Aerodynamics: How air moves around objects in flight
Applications of Drones:
- Photography and videography
- Search and rescue operations
- Agriculture monitoring
- Package delivery
- Scientific research
- Military operations
Week 2: Drone Safety Rules and Best Practices
Learning Objectives:
- Learn essential drone safety protocols
- Understand pre-flight checklist procedures
- Identify potential hazards and risks
- Develop responsible drone operation habits
Key Concepts:
- Pre-flight Inspection: Checking drone condition before flying
- Weather Conditions: How weather affects drone flight
- Battery Safety: Proper battery handling and storage
- Emergency Procedures: What to do when things go wrong
- Situational Awareness: Being aware of surroundings while flying
Safety Rules:
- Always maintain visual contact with drone
- Check weather conditions before flying
- Inspect drone and equipment before each flight
- Fly in open areas away from people and property
- Never fly above 400 feet
- Respect others’ privacy
- Land immediately if drone malfunctions
Week 3: FAA/UAS Regulations (Basic Overview)
Learning Objectives:
- Understand basic aviation regulations
- Learn about no-fly zones and restricted airspace
- Understand registration requirements
- Learn about pilot certification basics
Key Concepts:
- Federal Aviation Administration (FAA): Government agency regulating aviation
- Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
- No-Fly Zones: Areas where drone flight is prohibited
- Remote Pilot Certificate: License required for commercial drone operations
- Registration: Required identification for drones over 0.55 pounds
Basic Regulations:
- Drones must be registered if over 0.55 lbs (250 grams)
- Maximum altitude: 400 feet above ground level
- Must yield right-of-way to manned aircraft
- No flying over groups of people
- No flying at night without special certification
- Respect airport operational areas (usually 5-mile radius)
Week 4: Key Drone Types & Components
Learning Objectives:
- Identify different drone configurations
- Understand key drone components and their functions
- Compare advantages and disadvantages of different designs
- Learn basic maintenance requirements
Key Concepts:
- Multirotor: Drones with multiple rotating propellers
- Fixed-wing: Airplane-like drones with wings
- Hybrid VTOL: Vertical takeoff and landing with forward flight capability
- Frame: Main structure holding all components
- Flight Controller: Computer controlling drone flight
- ESC (Electronic Speed Controller): Controls motor speed
- Gimbal: Stabilizes camera during flight
Drone Types:
- Quadcopter: 4 rotors, most common configuration
- Hexacopter: 6 rotors, more redundancy and payload capacity
- Octocopter: 8 rotors, highest redundancy and capacity
- Fixed-wing: Longer flight times, faster speeds
- Racing drones: Small, fast, agile for competitive flying
Week 5: Basic Principles of Flight
Learning Objectives:
- Understand the four forces of flight in detail
- Learn how drones achieve controlled flight
- Understand stability and control concepts
- Explore flight dynamics and physics
Key Concepts:
- Lift: Upward force generated by rotors or wings
- Weight (Gravity): Downward force pulling drone toward earth
- Thrust: Forward force propelling drone through air
- Drag: Resistance force opposing motion through air
- Center of Gravity: Balance point of drone
- Pitch, Roll, Yaw: Three axes of rotation
- Gyroscopic Effect: How spinning rotors affect stability
Flight Control:
- Throttle: Controls altitude (up/down)
- Pitch: Controls forward/backward movement
- Roll: Controls left/right movement
- Yaw: Controls rotation (turning left/right)
- Trim: Fine adjustments for balanced flight
Assessment Test - Grade 6-9 (11-14 Years)
Week 1-2 Assessment: Drone Basics and Safety
Format: Written Test + Practical Safety Demonstration (45 minutes)
Part A: Multiple Choice (20 points)
-
What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle
-
Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight
-
What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera
-
The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet
-
What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors
Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)
- Explain three commercial applications of drones: (9 points)
- Why is it important to maintain visual contact with your drone during flight? (6 points)
Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures
Week 3-5 Assessment: Regulations and Flight Principles
Format: Written Test + Flight Theory Application (50 minutes)
Part A: Regulations Knowledge (20 points)
- True/False (10 points)
- Drones under 0.55 lbs need to be registered: ___
- You can fly your drone anywhere as long as it’s daytime: ___
- Commercial drone operations require a Remote Pilot Certificate: ___
- Drones must always yield to manned aircraft: ___
- Flying over groups of people is allowed with permission: ___
- What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:
Part B: Drone Components (15 points) 3. Match the component to its function:
-
Flight Controller: _____ a) Provides power to motors
-
ESC: _____ b) Stabilizes camera
-
Gimbal: _____ c) Main structural support
-
Frame: _____ d) Controls drone flight
-
Battery: _____ e) Controls motor speed
- Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)
Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)
- Explain how a drone moves in each direction: (13 points)
- Forward: ________________________________
- Backward: ________________________________
- Left: ________________________________
- Right: ________________________________
- Up: ________________________________
- Rotate left: ________________________________
Assessment Rubric:
- Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
- Proficient (80-89%): Shows solid grasp of concepts with minor gaps
- Developing (70-79%): Understands basic concepts but lacks detail in complex areas
- Novice (Below 70%): Limited understanding, needs additional instruction
Grade 10-12 (14-16 Years)
Term 1: Introduction to Python Basics
Week 1: Writing Structured Python Code
Learning Objectives:
- Understand Python syntax and structure
- Learn proper code formatting and indentation
- Write clean, readable code following best practices
- Understand variables, data types, and basic operations
Key Concepts:
- Python: High-level programming language
- Syntax: Rules for writing Python code
- Indentation: Using spaces to organize code structure
- Variables: Named storage for data values
- Data Types: int, float, string, boolean
- Comments: Documentation within code using #
- Print Statement: Displaying output to screen
Code Structure Best Practices:
# Header comment explaining the program
# Author: Your Name
# Date: Today's Date
# Import statements
import module_name
# Constants (UPPERCASE naming)
MAX_VALUE = 100
# Main program logic
def main():
# Variable declarations
user_name = "Student"
age = 16
# Program logic with proper indentation
print(f"Hello, {user_name}!")
print(f"You are {age} years old.")
# Run the program
if __name__ == "__main__":
main()
Week 2: Functions and Loops
Learning Objectives:
- Create and use custom functions
- Understand function parameters and return values
- Implement for loops and while loops
- Apply loops to solve repetitive tasks
Key Concepts:
- Function: Reusable block of code that performs a specific task
- Parameters: Input values passed to functions
- Return Value: Output value from a function
- For Loop: Repeats code a specific number of times
- While Loop: Repeats code while a condition is true
- Range Function: Generates sequences of numbers
- Iteration: Each repetition of a loop
- Loop Control: Managing when loops start and stop
Function Examples:
# Simple function with no parameters
def greet():
print("Hello, World!")
# Function with parameters
def greet_person(name, age):
print(f"Hello, {name}! You are {age} years old.")
# Function with return value
def calculate_area(length, width):
area = length * width
return area
# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")
Loop Examples:
# For loop with range
for i in range(5):
print(f"Count: {i}")
# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(f"I like {fruit}")
# While loop
count = 0
while count < 3:
print(f"While loop count: {count}")
count += 1
Week 3: Using Python Libraries
Learning Objectives:
- Understand what Python libraries are and why they’re useful
- Learn to import and use common libraries
- Work with GPIOZero and time libraries
- Explore library documentation and help systems
Key Concepts:
- Library/Module: Pre-written code that adds functionality
- Import Statement: Bringing library functions into your program
- GPIOZero: Library for controlling Raspberry Pi GPIO pins
- Time Library: Functions for working with time and delays
- Documentation: Instructions for using library functions
- API: Application Programming Interface - how to use library functions
Library Usage Examples:
# Importing entire modules
import time
import math
# Importing specific functions
from gpiozero import LED, Button
from time import sleep
# Using time library
print("Starting program...")
time.sleep(2) # Wait 2 seconds
print("2 seconds have passed!")
# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")
# Using GPIOZero (for Raspberry Pi)
led = LED(18) # LED connected to GPIO pin 18
button = Button(2) # Button connected to GPIO pin 2
# Turn LED on and off
led.on()
sleep(1)
led.off()
Week 4: Controlling Motors with Python
Learning Objectives:
- Understand how to interface with motors using Python
- Learn about PWM (Pulse Width Modulation) for motor control
- Control motor speed and direction
- Implement safety features in motor control code
Key Concepts:
- Motor Control: Using code to make motors move
- PWM (Pulse Width Modulation): Method to control motor speed
- Duty Cycle: Percentage of time signal is “on” vs “off”
- Direction Control: Making motors spin clockwise/counterclockwise
- Motor Driver: Electronics that interface between Python and motors
- Safety Features: Code to prevent motor damage
Motor Control Examples:
from gpiozero import Motor, PWMOutputDevice
from time import sleep
# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)
# Basic motor control
def basic_motor_test():
print("Motor forward at full speed")
motor.forward(1.0) # Full speed forward
sleep(2)
print("Motor forward at half speed")
motor.forward(0.5) # Half speed forward
sleep(2)
print("Motor stopped")
motor.stop()
sleep(1)
print("Motor backward at full speed")
motor.backward(1.0) # Full speed backward
sleep(2)
motor.stop()
print("Motor test complete")
# PWM speed control example
def speed_ramp_test():
print("Ramping motor speed up...")
for speed in range(0, 101, 10): # 0 to 100% in 10% steps
motor_speed = speed / 100.0
motor.forward(motor_speed)
print(f"Speed: {speed}%")
sleep(0.5)
motor.stop()
print("Speed ramp complete")
# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()
Week 5: Controlling Sensors with Python
Learning Objectives:
- Interface with various sensors using Python
- Read and process sensor data
- Implement sensor-based decision making
- Create responsive programs based on sensor input
Key Concepts:
- Sensor: Device that detects and measures physical properties
- Analog vs Digital: Different types of sensor signals
- ADC (Analog-to-Digital Converter): Converts analog signals to digital
- Sensor Calibration: Adjusting sensor readings for accuracy
- Data Processing: Converting raw sensor data to useful information
- Polling vs Interrupts: Different ways to read sensor data
Common Sensors:
- Temperature sensors: Measure environmental temperature
- Light sensors (LDR): Detect light intensity
- Ultrasonic sensors: Measure distance using sound waves
- Motion sensors (PIR): Detect movement
- Pressure sensors: Measure force or pressure
Sensor Control Examples:
from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics
# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)
def read_temperature():
# Convert voltage to temperature (example conversion)
voltage = temp_sensor.voltage
temperature_c = (voltage - 0.5) * 100 # Example conversion formula
temperature_f = (temperature_c * 9/5) + 32
return temperature_c, temperature_f
# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)
def monitor_distance():
print("Distance monitoring (press Ctrl+C to stop)")
try:
while True:
distance = distance_sensor.distance * 100 # Convert to cm
print(f"Distance: {distance:.1f} cm")
if distance < 10:
print("WARNING: Object too close!")
sleep(0.5)
except KeyboardInterrupt:
print("Distance monitoring stopped")
# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)
def motion_detector():
print("Motion detector active...")
def motion_detected():
print("Motion detected!")
alert_led.on()
sleep(2)
alert_led.off()
def no_motion():
print("No motion")
alert_led.off()
# Set up motion sensor callbacks
motion.when_motion = motion_detected
motion.when_no_motion = no_motion
# Keep program running
try:
while True:
sleep(0.1)
except KeyboardInterrupt:
print("Motion detector stopped")
# Data logging example
def log_sensor_data():
readings = []
print("Collecting sensor data for 30 seconds...")
start_time = time.time()
while time.time() - start_time < 30:
temp_c, temp_f = read_temperature()
distance = distance_sensor.distance * 100
readings.append({
'timestamp': time.time(),
'temperature_c': temp_c,
'temperature_f': temp_f,
'distance_cm': distance
})
print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
sleep(1)
# Calculate statistics
temps = [r['temperature_c'] for r in readings]
distances = [r['distance_cm'] for r in readings]
print(f"\nData Summary:")
print(f"Average temperature: {statistics.mean(temps):.1f}°C")
print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
print(f"Average distance: {statistics.mean(distances):.1f}cm")
print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")
# Example usage
if __name__ == "__main__":
# Run different examples
monitor_distance() # Uncomment to run distance monitoring
# motion_detector() # Uncomment to run motion detection
# log_sensor_data() # Uncomment to run data logging
Assessment Test - Grade 10-12 (14-16 Years)
Week 1-2 Assessment: Python Fundamentals
Format: Coding Assignment + Written Questions (60 minutes)
Part A: Code Structure and Syntax (25 points)
- Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average
calculate average(10, 20, 30)
Your corrected code:
# Write corrected version here
Explanation of errors: ________________________________
- Write a well-structured Python program (15 points): Create a program that:
- Has proper header comments
- Uses appropriate variable names
- Calculates the area of different shapes (circle, rectangle, triangle)
- Uses functions with parameters and return values
- Follows proper indentation and formatting
Part B: Functions and Loops (30 points)
- Write a function called
print_multiplication_table(15 points):
- Takes one parameter:
number - Prints multiplication table for that number (1-10)
- Uses a for loop
- Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
- Password Checker Program (15 points): Write a program using while loop that:
- Asks user to enter a password
- Keeps asking until they enter “python123”
- Counts number of attempts
- Prints “Access granted” when correct
- Prints number of attempts it took
Week 3-5 Assessment: Libraries and Hardware Control
Format: Practical Coding Project (75 minutes)
Part A: Library Usage (20 points)
- Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______ # What library do you need for calculating average?
# Create sensor object
light_sensor = MCP3008(channel=0)
def read_light_levels():
readings = []
# Collect 10 readings
for i in range(______): # Fill in the range
reading = light_sensor.______ # What property gives the reading?
readings.append(reading)
print(f"Reading {i+1}: {reading:.3f}")
sleep(0.5)
# Calculate and print statistics
average = ______.mean(readings) # Which function calculates mean?
maximum = ______(readings) # Built-in function for maximum
minimum = ______(readings) # Built-in function for minimum
print(f"Average: {average:.3f}")
print(f"Maximum: {maximum:.3f}")
print(f"Minimum: {minimum:.3f}")
# Call the function
read_light_levels()
Part B: Motor Control Project (25 points)
- Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
- Use a temperature sensor to read room temperature
- Control a motor (fan) based on temperature:
- Below 20°C: Fan off
- 20-25°C: Fan at 30% speed
- 25-30°C: Fan at 60% speed
- Above 30°C: Fan at 100% speed
- Print current temperature and fan speed every 2 seconds
- Include safety features (motor stop function)
Part C: Sensor Integration Challenge (30 points)
- Security System Prototype (30 points): Create a basic security system that:
- Uses a motion sensor to detect movement
- Uses a distance sensor to detect objects too close
- Controls LEDs to indicate system status:
- Green LED: System normal
- Yellow LED: Motion detected
- Red LED: Intrusion alert (object < 20cm)
- Logs events with timestamps
- Runs continuously until user presses Ctrl+C
Requirements:
- Use at least 3 different libraries
- Include proper error handling
- Use functions to organize code
- Add meaningful comments
- Follow Python coding best practices
Sample code structure:
from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time
# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)
def log_event(message):
# Write function to log events with timestamp
pass
def check_security():
# Write function to check all sensors and control LEDs
pass
def main():
# Write main program loop
pass
if __name__ == "__main__":
main()
Assessment Rubric:
- Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
- Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
- Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
- Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
- Incomplete (Below 65%): Code doesn’t run or major portions missing
Additional Resources and Extensions
For All Grade Levels:
Vocabulary Glossary:
- Algorithm: Step-by-step instructions to solve a problem
- Bug: Error in code that prevents it from working correctly
- Debug: Process of finding and fixing errors in code
- Hardware: Physical components of computer systems
- Software: Programs and applications that run on hardware
- Interface: Way users interact with programs or devices
- Sensor: Device that detects changes in environment
- Actuator: Device that causes movement or action
Project Portfolio Suggestions:
- Weekly Reflection Journal: Students document learning and challenges
- Photo Documentation: Pictures of projects and experiments
- Video Demonstrations: Students explain their projects
- Peer Teaching: Advanced students help beginners
- Innovation Challenges: Open-ended problems to solve creatively
Cross-Curricular Connections:
- Math: Geometry in robotics, statistics in data analysis
- Science: Physics of flight, electronics principles
- Art: Creative programming projects, design thinking
- Social Studies: Impact of technology on society
- Language Arts: Technical writing, documentation skills
Safety Reminders:
- Always supervise young children with electronic components
- Check battery connections before powering devices
- Keep work area clean and organized
- Wash hands after handling electronic components
- Report any damaged equipment immediately
- Follow proper shutdown procedures for all devices
Assessment Portfolio Checklist:
- Completed weekly assessments
- Project documentation with photos
- Reflection essays on learning progress
- Peer evaluation forms
- Self-assessment rubrics
- Evidence of problem-solving process
- Creative extensions or improvements to basic projects
Continuation - Weeks 6-8 for All Grade Levels
Preschoolers (4-6 Years) - Weeks 6-8
Advanced STEM Exploration & Technology Awareness
Week 6: Technology Parts Awareness
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically be able to follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Technology Components: Basic parts that make devices work
- Circuits: Paths that electricity follows
- Assembly/Disassembly: Taking apart and putting together
- Electronics Safety: Safe handling of batteries and components
- Problem-Solving: Trying different solutions when something doesn’t work
Activities:
- Technology Exploration: Examine old keyboards, phones, calculators
- Simple Circuits: Connect bulbs to batteries with safe materials
- Assembly Practice: Take apart and reassemble simple toys
- Tech Parts Sorting: Group similar technology components
Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors
Week 7: Sequencing & Floor Grid Coding
Learning Objectives:
- Develop understanding of sequencing by arranging steps in correct order
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence through trial-and-error learning
Key Concepts:
- Sequencing: Putting steps in the right order
- Algorithm Cards: Visual instructions to follow
- Floor Grid Coding: Moving through spaces following directions
- Left/Right/Forward/Back: Basic directional concepts
- Trial and Error: Learning by trying and improving
Activities:
- Obstacle Course Coding: Navigate through simple obstacles using arrow cards
- Sequencing Games: Put daily routine cards in correct order
- Paper Maze Coding: Use arrows to show path through printed mazes
- Robot Friend: One child gives directions, another follows like a robot
Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets
Week 8: Advanced Unplugged Coding & Storytelling
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
- Debugging: Finding and fixing mistakes in directions
- Block Building: Using physical blocks to represent code
- Story Algorithms: Step-by-step instructions for telling stories
Activities:
- Debug the Path: Present incorrect direction sequences for children to fix
- IF/THEN Games: “If you see a triangle, then clap your hands”
- Story Coding: Use picture cards to create step-by-step stories
- Block Code Building: Stack blocks to represent programming sequences
Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling
Preschoolers Assessment - Weeks 6-8
Week 6 Assessment: Technology Awareness
Format: Hands-on Exploration + Observation (20 minutes)
- Technology Parts Recognition (10 points)
- Point to and name 3 technology items from the collection
- Show how a simple circuit works (bulb + battery)
- Safely handle electronic components
- Explain one thing each item helps us do
- Assembly Skills (10 points)
- Take apart a simple toy or device
- Put it back together correctly
- Identify which parts go where
- Ask for help when needed
Assessment Criteria:
- Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
- Developing (2): Safe handling, completes most tasks with minimal help
- Emerging (1): Needs guidance but participates actively
- Beginning (0): Requires extensive support
Week 7-8 Assessment: Advanced Unplugged Coding
Format: Physical Coding Challenges (25 minutes)
- Sequencing Challenge (12 points)
- Arrange 6 direction cards to navigate through obstacle course
- Explain why each step comes in that order
- Successfully complete the physical navigation
- Fix mistakes when path doesn’t work
- IF/THEN Logic (8 points)
- Follow conditional instructions: “IF you see blue, THEN hop”
- Create own IF/THEN rule for a friend to follow
- Demonstrate understanding with actions
- Story Algorithm (10 points)
- Use 5 picture cards to create logical story sequence
- Tell story following the card order
- Explain what happens if cards are mixed up
- Help fix a mixed-up story sequence
Practical Skills Rubric:
- Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
- Proficient (20-24 points): Completes all challenges correctly with minor guidance
- Developing (15-19 points): Understands concepts but needs support for complex tasks
- Beginning (Below 15 points): Requires significant help to participate
Grade 2-5 (7-11 Years) - Weeks 6-8
Advanced Scratch Programming & Game Development
Week 6: Game Structure and Design
Learning Objectives:
- Understand basic game structure (start, play, end)
- Use Scratch blocks to move characters and detect collisions
- Make characters move between different scenes
- Create scoring or win conditions
Key Concepts:
- Game Design Elements: Characters, backgrounds, objectives, rules
- Game Loop: Continuous cycle of input, processing, output
- Collision Detection: Knowing when sprites touch each other
- Scene Transitions: Moving between different game screens
- Win/Lose Conditions: Rules that determine game outcomes
- User Interface: Buttons, scores, and information displays
Advanced Scratch Concepts:
- Sensing Blocks: “touching color”, “distance to”, “key pressed”
- Variables: Storing score, lives, or time
- Broadcast Messages: Communication between sprites
- Clone Sprites: Creating multiple copies of objects
- Custom Blocks: Making your own programming blocks
Game Development Process:
- Planning Phase: Sketch game idea, list needed sprites and backgrounds
- Prototype: Create basic movement and interaction
- Enhancement: Add sounds, effects, and polish
- Testing: Play game and fix bugs
- Sharing: Present to classmates
Example Game Structure:
When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
If key space pressed:
Move player sprite
If touching enemy:
Change lives by -1
If lives = 0:
Say "Game Over!"
Stop all
Week 7: Transition to Text-Based Concepts
Learning Objectives:
- Prepare learners for text-based coding
- Understand basic programming concepts using blocks
- Use logic and loops to control sprite or robot actions
- Begin transition to robotics or advanced coding platforms
Key Concepts:
- Programming Fundamentals: Sequence, selection, iteration
- Logic Blocks: IF/ELSE statements in visual form
- Loop Types: Forever, repeat until, repeat X times
- Variables and Operations: Math in programming
- Event-Driven Programming: Responding to user input
- Modular Programming: Breaking code into smaller parts
Bridging Visual to Text:
- Block-to-Code Thinking: Understanding what blocks represent
- Pseudocode: Writing steps in plain English before coding
- Debugging Strategies: Systematic problem-solving approaches
- Code Organization: Keeping projects neat and logical
Advanced Programming Patterns:
// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
If game state = "menu":
Show menu options
If game state = "playing":
Run game logic
If game state = "game over":
Show final score
// Pattern 2: Object Behavior
When I start as a clone:
Go to random position
Forever:
Move 2 steps
If on edge, bounce
If touching player:
Change score by 10
Delete this clone
Week 8: Blockly Integration and Logic Puzzles
Learning Objectives:
- Solve logic puzzles using visual programming concepts
- Create games using Blockly platform
- Demonstrate understanding of programming fundamentals
- Apply creative problem-solving skills
Key Concepts:
- Blockly Platform: Google’s visual programming language
- Logic Puzzles: Problems requiring systematic thinking
- Algorithm Efficiency: Finding the best solution method
- Pattern Recognition: Identifying repeated solutions
- Creative Programming: Using code for artistic expression
Blockly vs. Scratch Comparison:
| Feature | Scratch | Blockly |
|---|---|---|
| Focus | Storytelling & Games | Logic & Algorithms |
| Interface | Stage-based | Puzzle-based |
| Output | Animated Projects | Problem Solutions |
| Progression | Creative Expression | Mathematical Thinking |
Logic Puzzle Types:
- Maze Solving: Navigate through obstacles
- Pattern Completion: Fill in missing sequences
- Conditional Logic: IF/THEN decision making
- Loop Optimization: Repeat actions efficiently
Grade 2-5 Assessment - Weeks 6-8
Week 6 Assessment: Game Development Project
Format: Scratch Game Creation + Presentation (45 minutes)
Part A: Game Planning (10 points)
- Game Design Document - Create a simple plan including:
- Game objective (what’s the goal?)
- Main character description
- Basic rules (how do you win/lose?)
- Required sprites and backgrounds
- Storyboard - Draw 3 screens showing:
- Game start screen
- Main gameplay
- Win/lose screen
Part B: Game Implementation (25 points) 3. Core Functionality (15 points):
-
Character moves with arrow keys or WASD
-
At least one interactive element (enemy, collectible, obstacle)
-
Basic collision detection (touching = something happens)
-
Clear win or lose condition
- Polish and Enhancement (10 points):
- Sound effects or music
- Visual feedback (score, lives, timer)
- Smooth sprite movement
- Creative backgrounds or costumes
Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):
-
Explain game rules clearly
-
Demonstrate gameplay for 2 minutes
-
Show different game scenarios
-
Handle questions from classmates
- Technical Reflection (5 points):
- Explain one challenging problem you solved
- Describe one improvement you would make
- Share one new Scratch skill you learned
Week 7-8 Assessment: Programming Concepts Mastery
Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)
Part A: Blockly Logic Challenges (20 points)
- Maze Navigation (8 points):
- Complete 3 increasingly difficult maze puzzles
- Use efficient solutions (minimal blocks)
- Demonstrate understanding of loops and conditionals
- Pattern Recognition (6 points):
- Solve sequence completion puzzles
- Identify and extend number/color patterns
- Create original pattern for others to solve
- Logic Puzzles (6 points):
- Complete IF/THEN decision trees
- Solve multi-step conditional problems
- Optimize solutions for clarity
Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:
[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]
Write in pseudocode (plain English): “When the program starts, ________________”
- Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”
Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________
Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:
Option A - Scratch: Create a “digital pet” that:
- Follows mouse cursor
- Changes expression when clicked
- Makes sound when hungry (timer-based)
- Has at least 3 different costumes
Option B - Blockly: Design a solution for:
- Robot that sorts colored objects
- Path that avoids all obstacles
- Pattern that creates art using loops
Assessment Rubric:
- Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
- Proficient (80-89%): Meets all requirements with good understanding demonstrated
- Developing (70-79%): Meets most requirements but may have gaps in complex concepts
- Novice (60-69%): Shows basic understanding but struggles with application
- Beginning (Below 60%): Needs significant support to demonstrate concepts
Grade 6-9 (11-14 Years) - Weeks 6-8
Drone Laws, Emergency Procedures & Practical Flying
Week 6: Drone Laws and Regulations (Kenya Focus)
Learning Objectives:
- Learn basic drone laws in Kenya (KCAA regulations)
- Understand where and how children can fly drones legally
- Develop awareness of responsible drone operation
- Understand the importance of aviation safety
Key Concepts:
- Kenya Civil Aviation Authority (KCAA): National aviation regulator
- Drone Registration: Required identification and documentation
- No-Fly Zones: Airports, government buildings, restricted areas
- Altitude Restrictions: Maximum height limitations
- Visual Line of Sight (VLOS): Maintaining visual contact
- Privacy Laws: Respecting others’ rights and property
Kenya Drone Regulations Summary:
- Registration Requirements:
- All drones over 250g must be registered with KCAA
- Operator license required for commercial operations
- Age restrictions for different categories of operation
- Operational Limits:
- Maximum altitude: 400 feet (120 meters) AGL
- Minimum distance from airports: 8km for major airports
- No flying over crowds or public events
- Daylight operations only (without special permits)
- Prohibited Areas:
- Within 5km of any airport
- Over government buildings and installations
- National parks without permits
- Private property without permission
Safety and Legal Guidelines for Young Pilots:
- Always have adult supervision
- Start with toy drones under 250g
- Practice in open, safe areas
- Respect others’ privacy and property
- Learn emergency procedures
- Keep drone in sight at all times
Week 7: Emergency Procedures and Responsible Flying
Learning Objectives:
- Review key safety and legal concepts from previous weeks
- Understand emergency basics for beginner flyers
- Develop decision-making skills for unexpected situations
- Practice responsible pilot behavior
Key Concepts:
- Emergency Procedures: Systematic responses to problems
- Risk Assessment: Evaluating dangers before flying
- Decision Making: Choosing appropriate actions under pressure
- Communication: Alerting others during emergencies
- Equipment Failure: What to do when drone malfunctions
- Weather Awareness: Recognizing dangerous conditions
Emergency Scenarios and Responses:
- Lost Communication with Drone:
- Stay calm and observe drone behavior
- Activate Return-to-Home (RTH) function if available
- Move to higher ground for better signal
- Prepare for manual landing if signal returns
- Never chase after a flyaway drone
- Low Battery Warning:
- Immediately begin landing sequence
- Choose nearest safe landing spot
- Avoid flying over people or property
- Land even if not at original takeoff point
- Safety is more important than convenience
- Unexpected Weather Changes:
- Monitor weather conditions constantly
- Land immediately if wind increases
- Avoid flying in rain or snow
- Watch for sudden temperature changes
- When in doubt, don’t fly
- Equipment Malfunction:
- Attempt controlled landing immediately
- Don’t try to fix problems while airborne
- Inform other people in the area
- Document the problem for later analysis
- Never continue flying with known issues
Mission Planning Process:
- Pre-flight Planning: Weather check, equipment inspection, route planning
- Risk Assessment: Identify potential hazards and mitigation strategies
- Communication Plan: Inform others of flight activities
- Emergency Procedures: Know what to do if things go wrong
- Post-flight Review: Analyze what went well and areas for improvement
Week 8: Practical Flying Skills and Team Challenges
Learning Objectives:
- Demonstrate ability to control a mini drone (takeoff, hover, land)
- Apply basic flight skills in problem-solving mission scenarios
- Work as a team to complete drone-based challenges
- Evaluate personal progress and set goals for improvement
Key Concepts:
- Flight Control Mastery: Smooth, precise drone movements
- Situational Awareness: Understanding surroundings during flight
- Mission Planning: Preparing for specific flight objectives
- Teamwork: Collaborative problem-solving with drones
- Performance Evaluation: Self-assessment and peer feedback
- Safety Leadership: Taking responsibility for safe operations
Basic Flight Skills Progression:
- Fundamental Controls:
- Smooth takeoff to hover
- Maintaining steady hover
- Controlled landing
- Forward/backward movement
- Left/right movement
- Rotation control
- Intermediate Maneuvers:
- Figure-8 patterns
- Precision landing on target
- Obstacle avoidance
- Following predetermined paths
- Coordinated movements
- Advanced Challenges:
- Team relay races
- Rescue simulations
- Precision delivery tasks
- Group choreography
- Time-based challenges
Mission Scenarios:
Mission 1: Search and Rescue
- Objective: Locate “missing person” (target) in designated area
- Skills: Systematic search patterns, communication, observation
- Time limit: 5 minutes
- Success criteria: Target identified and location communicated
Mission 2: Delivery Challenge
- Objective: Transport small payload from Point A to Point B
- Skills: Precision flying, cargo management, safe landing
- Obstacles: Wind conditions, landing accuracy requirements
- Success criteria: Payload delivered undamaged within time limit
Mission 3: Team Coordination
- Objective: Multiple drones work together to complete complex task
- Skills: Communication, timing, spatial awareness
- Challenge: Choreographed flight pattern or group problem-solving
- Success criteria: All drones complete task without collisions
Safety Protocols for Practical Flying:
- Always maintain 10-foot safety zone around flying area
- Designate specific roles: pilot, observer, safety officer
- Use hand signals for communication during loud operations
- Practice emergency landing procedures before each session
- Rotate roles so everyone experiences different responsibilities
Grade 6-9 Assessment - Weeks 6-8
Week 6 Assessment: Drone Laws and Regulations
Format: Written Test + Legal Scenario Analysis (40 minutes)
Part A: Kenya Aviation Law Knowledge (25 points)
- KCAA Regulations (10 points) Fill in the blanks:
- Drones over ______ grams must be registered with KCAA
- Maximum altitude for recreational flying is ______ feet
- Minimum distance from major airports is ______ kilometers
- Commercial drone operations require a ______ license
- Drones must remain within ______ line of sight
- No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
- Your school playground during lunch break: ______
- Open field 2km from Wilson Airport: ______
- Your backyard with adult supervision: ______
- Uhuru Park during a public event: ______
- Private farm with owner’s permission: ______
- Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:
Part B: Scenario-Based Decision Making (20 points)
- Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:
Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________
Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________
Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________
Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________
Part C: Responsible Pilot Planning (15 points)
-
Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:
-
-
-
[Continue through 10]
Week 7-8 Assessment: Emergency Procedures and Practical Skills
Format: Practical Flight Test + Emergency Response Simulation (60 minutes)
Part A: Emergency Response Knowledge (20 points)
- Emergency Procedures (15 points) Describe the correct response for each emergency:
Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
- Risk Assessment (5 points) Identify 3 risks for flying in each environment:
- School playground: ____________, ____________, ____________
- Open field: ____________, ____________, ____________
Part B: Practical Flight Skills Assessment (30 points)
- Basic Flight Controls (15 points) Demonstrate competency in:
- Smooth takeoff and landing (3 points)
- Stable hovering for 30 seconds (3 points)
- Forward/backward precision movement (3 points)
- Left/right precision movement (3 points)
- Controlled rotation (3 points)
- Mission Challenge (15 points) Complete ONE of the following missions:
Option A - Navigation Course:
- Fly through 5 waypoints in sequence
- Land within 1-meter target circle
- Complete within 3 minutes
Option B - Team Coordination:
- Work with partner to complete relay challenge
- Communicate effectively during handoff
- Maintain safety throughout mission
Part C: Leadership and Safety Evaluation (15 points)
- Safety Leadership (8 points) While others are flying, demonstrate:
- Proper safety zone maintenance
- Clear communication with pilot
- Appropriate responses to unsafe situations
- Helpful coaching and encouragement
- Self-Assessment and Goal Setting (7 points) Written reflection:
- What flight skill are you most confident with? Why?
- What area needs the most improvement?
- Set one specific goal for future drone flying
- Describe one way you can help others fly safely
Practical Skills Rubric:
- Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
- Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
- Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
- Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
- Beginning Pilot (Below 60%): Requires significant instruction and supervision
Grade 10-12 (14-16 Years) - Weeks 6-8
Advanced Python Projects & Integration
Week 6-7: Integrated Systems Project (Combined Weeks)
Learning Objectives:
- Combine motors and sensors in complex systems
- Debug integrated hardware/software systems
- Apply creative problem-solving to real-world challenges
- Document projects professionally
Key Concepts:
- Systems Integration: Combining multiple components into unified solutions
- Hardware-Software Interface: Code that bridges digital and physical worlds
- System Architecture: Planning complex projects with multiple subsystems
- Error Handling: Managing failures gracefully in complex systems
- Performance Optimization: Making systems run efficiently
- Documentation Standards: Professional project recording
Advanced Integration Concepts:
1. Multi-Sensor Fusion
import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json
class SensorFusion:
def __init__(self):
self.distance_sensor = DistanceSensor(echo=24, trigger=23)
self.motion_sensor = MotionSensor(4)
self.light_sensor = MCP3008(channel=0)
self.temp_sensor = MCP3008(channel=1)
# Data queues for thread communication
self.sensor_data = queue.Queue()
self.running = False
def read_sensors(self):
"""Continuous sensor reading in separate thread"""
while self.running:
try:
data = {
'timestamp': time.time(),
'distance': self.distance_sensor.distance * 100,
'motion': self.motion_sensor.motion_detected,
'light_level': self.light_sensor.voltage,
'temperature': self.convert_temp(self.temp_sensor.voltage)
}
self.sensor_data.put(data)
sleep(0.1) # 10Hz sampling rate
except Exception as e:
print(f"Sensor reading error: {e}")
def convert_temp(self, voltage):
"""Convert sensor voltage to temperature"""
return (voltage - 0.5) * 100 # Example conversion
def start_monitoring(self):
"""Start sensor monitoring thread"""
self.running = True
self.sensor_thread = threading.Thread(target=self.read_sensors)
self.sensor_thread.start()
def stop_monitoring(self):
"""Stop sensor monitoring"""
self.running = False
if hasattr(self, 'sensor_thread'):
self.sensor_thread.join()
2. Intelligent Control Systems
class SmartEnvironmentController:
def __init__(self):
self.sensors = SensorFusion()
self.fan_motor = Motor(forward=2, backward=3)
self.heater_relay = OutputDevice(18)
self.lights = PWMOutputDevice(19)
# Control parameters
self.target_temp = 22.0 # Target temperature in Celsius
self.temp_tolerance = 1.0
self.light_threshold = 0.3
# Control state
self.auto_mode = True
self.manual_override = False
def analyze_environment(self, sensor_data):
"""Intelligent decision making based on sensor data"""
decisions = {
'fan_speed': 0.0,
'heater_on': False,
'light_level': 0.0,
'alert_status': 'normal'
}
# Temperature control logic
temp_diff = sensor_data['temperature'] - self.target_temp
if temp_diff > self.temp_tolerance: # Too hot
decisions['fan_speed'] = min(1.0, temp_diff / 5.0) # Scale fan speed
decisions['heater_on'] = False
elif temp_diff < -self.temp_tolerance: # Too cold
decisions['fan_speed'] = 0.0
decisions['heater_on'] = True
# Light control logic
if sensor_data['light_level'] < self.light_threshold:
decisions['light_level'] = 1.0 - sensor_data['light_level'] # Complement lighting
# Security monitoring
if sensor_data['motion'] and sensor_data['distance'] < 20: # Close motion
decisions['alert_status'] = 'intrusion_detected'
elif sensor_data['distance'] < 5: # Very close object
decisions['alert_status'] = 'obstacle_warning'
return decisions
def execute_controls(self, decisions):
"""Execute control decisions"""
if not self.manual_override:
# Motor control
if decisions['fan_speed'] > 0:
self.fan_motor.forward(decisions['fan_speed'])
else:
self.fan_motor.stop()
# Heater control
if decisions['heater_on']:
self.heater_relay.on()
else:
self.heater_relay.off()
# Light control
self.lights.value = decisions['light_level']
def run_control_loop(self):
"""Main control loop"""
self.sensors.start_monitoring()
try:
while True:
if not self.sensors.sensor_data.empty():
current_data = self.sensors.sensor_data.get()
decisions = self.analyze_environment(current_data)
self.execute_controls(decisions)
# Log system status
self.log_system_status(current_data, decisions)
sleep(0.5) # Control loop frequency
except KeyboardInterrupt:
print("Shutting down control system...")
finally:
self.sensors.stop_monitoring()
self.fan_motor.stop()
self.heater_relay.off()
self.lights.off()
def log_system_status(self, sensor_data, decisions):
"""Log system performance data"""
log_entry = {
'timestamp': sensor_data['timestamp'],
'sensors': sensor_data,
'controls': decisions,
'mode': 'auto' if self.auto_mode else 'manual'
}
# In a real system, this would write to a file or database
print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
f"Fan={decisions['fan_speed']:.1f}, "
f"Alert={decisions['alert_status']}")
3. Project Documentation Standards
"""
Smart Environment Control System
================================
Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0
Description:
An intelligent system that monitors environmental conditions and automatically
adjusts heating, cooling, and lighting based on sensor feedback.
Hardware Requirements:
- Raspberry Pi 4 or similar
- Temperature sensor (DS18B20 or similar)
- Light sensor (LDR with MCP3008 ADC)
- Motion sensor (PIR)
- Distance sensor (HC-SR04)
- DC Motor (for fan simulation)
- Relay module (for heater control)
- PWM-controlled LED (for lighting)
Software Dependencies:
- Python 3.7+
- gpiozero library
- threading module (standard library)
- queue module (standard library)
- json module (standard library)
Installation:
pip install gpiozero
Usage:
python smart_environment.py
Configuration:
Modify target_temp and light_threshold variables in SmartEnvironmentController
class to adjust system behavior.
Testing:
Run included test functions to verify sensor readings and control outputs
before deploying the full system.
Known Issues:
- Temperature sensor calibration may need adjustment for local conditions
- Motion sensor has 2-second reset time that affects rapid detection
Future Enhancements:
- Web interface for remote monitoring
- Data logging to CSV files
- Machine learning for predictive control
- Mobile app integration
"""
Project Examples for Students:
Project 1: Smart Garden Monitor
- Monitors soil moisture, light, and temperature
- Controls watering pump and grow lights
- Logs plant growth data
- Sends alerts when intervention needed
Project 2: Home Security System
- Multiple sensor integration (motion, door, window)
- Camera trigger on detection
- SMS/email notifications
- Mobile app control interface
Project 3: Weather Station
- Measures temperature, humidity, pressure, wind
- Data logging with timestamps
- Weather prediction algorithms
- Web dashboard for data visualization
Project 4: Automated Greenhouse
- Climate control (temperature, humidity)
- Automated watering system
- Light cycle management
- Growth optimization algorithms
Week 8: Project Presentations and Assessment
Learning Objectives:
- Present technical projects professionally
- Give and receive constructive feedback
- Self-evaluate learning progress and achievements
- Plan next steps for continued learning
Key Concepts:
- Technical Communication: Explaining complex systems clearly
- Presentation Skills: Engaging audiences with technical content
- Peer Review: Constructive feedback and collaboration
- Self-Assessment: Honest evaluation of own work
- Professional Development: Planning continued learning paths
- Portfolio Building: Documenting achievements for future opportunities
Presentation Structure:
- Project Overview (2 minutes)
- Problem statement and objectives
- Target audience and use cases
- Key features and functionality
- Technical Demonstration (2 minutes)
- Live system operation
- Key components and how they work
- Code walkthrough of critical sections
- Challenges and Solutions (1 minute)
- Major obstacles encountered
- Creative solutions implemented
- Lessons learned from failures
Evaluation Criteria:
Technical Merit (40%):
- System functionality and reliability
- Code quality and organization
- Creative problem-solving approach
- Integration of multiple technologies
Communication (30%):
- Clear explanation of technical concepts
- Engaging presentation delivery
- Appropriate use of visual aids
- Effective response to questions
Documentation (20%):
- Complete project documentation
- Code comments and structure
- User instructions and setup guides
- Reflection on learning process
Collaboration (10%):
- Constructive feedback to peers
- Professional interaction during Q&A
- Willingness to share knowledge
- Respectful critique and discussion
Python Programming Trivia Challenge: End the term with fun technical questions:
- What does “PEP 8” refer to in Python?
- What’s the difference between
==andisin Python? - How do you handle exceptions in Python?
- What is a Python decorator?
- What’s the difference between a list and a tuple?
Grade 10-12 Final Assessment - Weeks 6-8
Integrated Systems Project Assessment
Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)
Project Requirements: Students must create an integrated system that combines:
- At least 3 different sensors
- At least 2 actuators (motors, lights, relays, etc.)
- Data logging and analysis
- User interface (command line or simple GUI)
- Error handling and safety features
Part A: Technical Implementation (40 points)
System Design (10 points)
- Clear problem definition and solution approach
- System architecture diagram showing component relationships
- Hardware schematic or connection diagram
- Software flowchart or algorithm description
Code Quality (15 points)
- Well-structured, modular code with functions/classes
- Appropriate variable names and code organization
- Comprehensive comments explaining complex sections
- Error handling for hardware failures
- Efficient algorithms and resource usage
Hardware Integration (15 points)
- Stable sensor readings with appropriate filtering
- Reliable actuator control with safety limits
- Proper electrical connections and component usage
- System operates reliably for extended periods
- Professional cable management and mounting
Part B: Documentation and Communication (25 points)
Project Documentation (15 points) Create a complete project report including:
- Executive summary of project goals and achievements
- Detailed technical specifications and requirements
- Installation and setup instructions
- User manual with clear operating procedures
- Troubleshooting guide for common problems
- Code documentation with API reference
Technical Presentation (10 points)
- Clear 5-minute presentation explaining project
- Live demonstration of working system
- Professional slides with technical diagrams
- Confident handling of technical questions
- Appropriate use of technical vocabulary
Part C: Innovation and Problem Solving (20 points)
Creative Solutions (10 points)
- Original approach to solving chosen problem
- Creative use of available hardware and software
- Evidence of iterative design and improvement
- Solutions show depth of understanding beyond basic requirements
Advanced Features (10 points) Choose and implement at least TWO:
- Machine learning or AI decision making
- Network communication (IoT connectivity)
- Mobile app or web interface
- Data visualization and analytics
- Predictive algorithms or optimization
- Integration with external APIs or services
Part D: Professional Skills (15 points)
Peer Collaboration (8 points)
- Constructive feedback provided to classmates
- Professional behavior during presentations
- Willingness to help others debug problems
- Respectful and insightful questions during Q&A
Self-Assessment (7 points) Written reflection addressing:
- Most significant technical challenge and how you overcame it
- What you would do differently if starting over
- How this project connects to potential career interests
- Specific skills you want to develop further
- Your confidence level with different aspects of the project
Sample Project Evaluation Rubric:
Exceptional (90-100%)
- System exceeds all requirements with innovative features
- Code is publication-quality with comprehensive documentation
- Presentation is engaging and demonstrates deep understanding
- Shows leadership in helping others and contributing to class learning
- Self-reflection shows sophisticated understanding of learning process
Proficient (80-89%)
- System meets all requirements reliably
- Code is well-structured with good documentation
- Presentation is clear and technically accurate
- Actively participates in peer learning and feedback
- Self-reflection shows good awareness of strengths and growth areas
Developing (70-79%)
- System meets most requirements with minor issues
- Code works but may have organizational or documentation gaps
- Presentation covers required topics but may lack depth
- Participates adequately in class activities
- Self-reflection shows basic understanding of learning process
Beginning (60-69%)
- System meets basic requirements but has significant limitations
- Code works for demonstration but has structural or reliability issues
- Presentation covers basics but shows limited understanding
- Minimal participation in peer activities
- Self-reflection is superficial or lacks insight
Incomplete (Below 60%)
- System fails to meet basic requirements or doesn’t function reliably
- Code has major issues that prevent proper operation
- Presentation is unclear or shows misunderstanding of concepts
- Little to no participation in collaborative learning
- Self-reflection missing or shows no evidence of learning
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Notes
I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:
What’s Included:
For Each Grade Level:
- Detailed weekly lesson notes covering weeks 1-8 content
- Key concepts and learning objectives for each topic
- Practical examples and code samples (for programming grades)
- Age-appropriate assessment tests with multiple formats
Assessment Formats:
- Preschoolers (4-6): Practical/observational assessments with hands-on activities
- Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
- Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
- Grade 10-12 (14-16): Coding assignments + hardware integration projects
Key Features:
- ✅ Covers all 8 weeks of Term 1 content
- ✅ Aligned with curriculum from the IoT & Robotics document
- ✅ Progressive difficulty appropriate for each age group
- ✅ Practical assessments that test real understanding
- ✅ Detailed rubrics for fair evaluation
- ✅ Extension activities for advanced learners
- ✅ Safety guidelines and best practices
Topics Covered:
- Preschoolers: STEM basics, simple machines, unplugged coding
- Grade 2-5: Scratch programming, Blockly games, interface navigation
- Grade 6-9: Drone basics, aviation principles, safety regulations
- Grade 10-12: Python programming, hardware control, sensor integration
Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.
Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included:
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
Assessment Test
IoT & Robotics Term 1 - Complete Notes & Assessment Tests
Table of Contents
- Preschoolers (4-6 Years) - STEM Storytelling & Coding Toys
- Grade 2-5 (7-11 Years) - Scratch & Blockly Programming
- Grade 6-9 (11-14 Years) - Drone Aviation Introduction
- Grade 10-12 (14-16 Years) - Python Basics
Preschoolers (4-6 Years)
Term 1: STEM Storytelling & Coding Toys
Week 1: Introduction to STEM
Learning Objectives:
- Understand basic concepts of STEM (Science, Technology, Engineering, Math)
- Spark excitement and curiosity about STEM through hands-on activities
- Foster teamwork through group experiments
- Develop early thinking through guided play and experimentation
Key Concepts:
- Science: Learning about the world around us through observation
- Technology: Simple tools and devices that help us
- Engineering: Building and creating solutions
- Mathematics: Numbers, shapes, and patterns in everyday life
Activities:
- Floating vs. Sinking experiments with various objects
- Basic robot interaction and exploration
- STEM vocabulary building games
- Classification activities
Materials: Water, buckets, floating items (paper, feathers), sinking items (stones, coins), toy robot, tablet
Week 2: STEM Play Corners
Learning Objectives:
- Explore different STEM areas through play stations
- Develop fine motor skills through hands-on manipulation
- Practice problem-solving through guided discovery
- Build confidence in exploring new concepts
Key Concepts:
- Play-based learning: Learning through exploration and fun
- Spatial awareness: Understanding shapes, sizes, and positions
- Cause and effect: Understanding that actions have results
- Collaboration: Working together to solve problems
Week 3: Simple Machines & Environmental Science
Learning Objectives:
- Identify simple machines in everyday life
- Understand basic environmental concepts
- Develop observation skills
- Connect STEM to the natural world
Key Concepts:
- Simple Machines: Lever, pulley, wheel, ramp
- Environment: Plants, animals, weather, seasons
- Observation: Using our senses to learn
- Nature patterns: Recognizing patterns in nature
Week 4: Unplugged Coding
Learning Objectives:
- Introduction to coding concepts without computers
- Understand sequence and order
- Develop logical thinking
- Practice following and giving instructions
Key Concepts:
- Sequence: Steps in order
- Instructions: Clear directions to follow
- Algorithms: Step-by-step solutions
- Patterns: Recognizing and creating patterns
Assessment Test - Preschoolers (4-6 Years)
Week 1-2 Assessment: STEM Basics
Format: Practical/Observational Assessment
- Floating or Sinking? (Show child various objects)
- Point to objects that will float: feather, cork, plastic toy
- Point to objects that will sink: stone, coin, marble
- Explain why you think so (in simple words)
- STEM Matching (Picture cards)
- Match the scientist to the magnifying glass
- Match the engineer to the building blocks
- Match the mathematician to the numbers
- Match the technologist to the computer
- Following Instructions
- Can follow 2-step instructions: “Pick up the red block and put it in the box”
- Can give simple instructions to a friend
- Can arrange objects in order (biggest to smallest)
Assessment Rubric:
- Exceeding (3): Completes all tasks independently with explanation
- Meeting (2): Completes most tasks with minimal guidance
- Approaching (1): Attempts tasks with significant support
- Beginning (0): Needs extensive help to participate
Week 3-4 Assessment: Simple Machines & Coding
Format: Hands-on Demonstration
- Simple Machines Hunt
- Find the lever (seesaw, scissors)
- Find the wheel (bicycle, toy car)
- Find the ramp (slide, wedge)
- Explain what each machine helps us do
- Nature Observation
- Draw or point to living things vs. non-living things
- Identify basic shapes in nature (circles in flowers, triangles in mountains)
- Name things that grow vs. things that are made
- Unplugged Coding Challenge
- Arrange sequence cards to show morning routine
- Give directions to help friend reach the treasure
- Complete a simple pattern with blocks or shapes
Grade 2-5 (7-11 Years)
Term 1: Scratch & Blockly Programming
Week 1: Introduction to Programming
Learning Objectives:
- Understand what programming is
- Learn about Scratch programming environment
- Install and explore Scratch interface
- Grasp the concept of sequencing
Key Concepts:
- Programming: Giving instructions to computers
- Scratch: Visual programming language using blocks
- Interface: The screen where we work with Scratch
- Sequencing: Putting commands in the right order
- Sprites: Characters in Scratch programs
- Stage: Where Scratch programs run
Core Activities:
- Explore Scratch interface and tools
- Identify different areas (sprite area, blocks palette, stage)
- Learn about different block categories (Motion, Looks, Sound, etc.)
- Create first simple animation
Week 2: Understanding Scratch Interface
Learning Objectives:
- Navigate Scratch interface confidently
- Understand different block categories
- Create basic sprite movements
- Save and load projects
Key Concepts:
- Blocks Palette: Where programming blocks are stored
- Scripts Area: Where we build our programs
- Motion Blocks: Make sprites move
- Looks Blocks: Change sprite appearance
- Events: What starts our programs running
Week 3: Setting Up Scratch Projects
Learning Objectives:
- Plan and organize Scratch projects
- Understand project structure
- Use backgrounds and sprites effectively
- Practice debugging simple problems
Key Concepts:
- Project Planning: Thinking before coding
- Backgrounds: Scenes for our programs
- Sprite Library: Ready-made characters
- Debugging: Finding and fixing problems
Week 4: Introduction to Blockly
Learning Objectives:
- Understand Blockly visual programming
- Compare Blockly with Scratch
- Complete basic Blockly puzzles
- Transfer concepts between platforms
Key Concepts:
- Blockly: Another visual programming language
- Puzzle-based Learning: Learning through solving challenges
- Logic Blocks: Making decisions in programs
- Loops: Repeating actions
Week 5: Blockly Games for Scratch Programmers
Learning Objectives:
- Apply Scratch knowledge to Blockly games
- Solve increasingly complex puzzles
- Understand programming logic and flow
- Build problem-solving confidence
Key Concepts:
- Game Logic: Rules that make games work
- Progressive Difficulty: Challenges that get harder
- Pattern Recognition: Seeing repeated solutions
- Persistence: Keep trying when challenges are difficult
Assessment Test - Grade 2-5 (7-11 Years)
Week 1-3 Assessment: Scratch Fundamentals
Format: Practical Computer Assessment (30 minutes)
Part A: Interface Knowledge (10 points)
- Label the parts of Scratch interface:
- Blocks Palette
- Scripts Area
- Stage
- Sprite Area
- Match the block colors to their functions:
- Motion blocks: _____ (Blue)
- Looks blocks: _____ (Purple)
- Sound blocks: _____ (Pink)
- Events blocks: _____ (Yellow)
Part B: Basic Programming (15 points) 3. Create a program that makes a sprite:
-
Move 10 steps forward
-
Turn 90 degrees right
-
Say “Hello” for 2 seconds
-
Change color
- Fix this broken sequence (drag blocks in correct order):
[Say "Goodbye"][When green flag clicked][Move 100 steps][Say "Hello"]
Part C: Problem Solving (10 points) 5. Your sprite isn’t moving when you click the green flag. What might be wrong?
-
Missing “when green flag clicked” block
-
Sprite is already at the edge
-
Motion blocks aren’t connected
-
All of the above
- Create a simple animation showing a cat walking across the stage.
Week 4-5 Assessment: Blockly & Problem Solving
Format: Computer-based Blockly Challenges (25 minutes)
Part A: Blockly Basics (8 points)
- Complete the “Move Forward” puzzle in Blockly
- Complete the “Turn Left/Right” puzzle
- Complete the “Repeat Loop” puzzle
- Complete the “If/Else” puzzle
Part B: Logic Understanding (12 points) 5. Explain what this Blockly code does:
Repeat 4 times:
Move forward
Turn right 90 degrees
Answer: _________________
- Write Blockly code to make a character:
- Move forward 3 steps
- Turn left if path is blocked
- Repeat until reaching goal
Part C: Transfer Learning (10 points) 7. How is Blockly similar to Scratch? List 3 similarities:
- Create a Scratch program that does the same thing as this Blockly code:
When started: Repeat 5 times: Move forward 20 steps Wait 1 second
Assessment Rubric:
- Advanced (90-100%): Completes all tasks efficiently with creative additions
- Proficient (80-89%): Completes most tasks correctly with minor errors
- Developing (70-79%): Completes basic tasks but struggles with complex problems
- Beginning (Below 70%): Needs significant support to complete tasks
Grade 6-9 (11-14 Years)
Term 1: Drone Aviation Introduction
Week 1: Introduction to Drones and Aviation Basics
Learning Objectives:
- Understand what drones are and their applications
- Learn basic aviation principles
- Identify different types of aircraft
- Understand the evolution of flight
Key Concepts:
- Unmanned Aerial Vehicle (UAV): Aircraft without a human pilot aboard
- Remote Pilot: Person controlling the drone from the ground
- Autonomous Flight: Drones flying with minimal human control
- Commercial vs. Recreational Use: Different purposes for drones
- Four Forces of Flight: Lift, Weight, Thrust, Drag
- Aerodynamics: How air moves around objects in flight
Applications of Drones:
- Photography and videography
- Search and rescue operations
- Agriculture monitoring
- Package delivery
- Scientific research
- Military operations
Week 2: Drone Safety Rules and Best Practices
Learning Objectives:
- Learn essential drone safety protocols
- Understand pre-flight checklist procedures
- Identify potential hazards and risks
- Develop responsible drone operation habits
Key Concepts:
- Pre-flight Inspection: Checking drone condition before flying
- Weather Conditions: How weather affects drone flight
- Battery Safety: Proper battery handling and storage
- Emergency Procedures: What to do when things go wrong
- Situational Awareness: Being aware of surroundings while flying
Safety Rules:
- Always maintain visual contact with drone
- Check weather conditions before flying
- Inspect drone and equipment before each flight
- Fly in open areas away from people and property
- Never fly above 400 feet
- Respect others’ privacy
- Land immediately if drone malfunctions
Week 3: FAA/UAS Regulations (Basic Overview)
Learning Objectives:
- Understand basic aviation regulations
- Learn about no-fly zones and restricted airspace
- Understand registration requirements
- Learn about pilot certification basics
Key Concepts:
- Federal Aviation Administration (FAA): Government agency regulating aviation
- Unmanned Aircraft Systems (UAS): Official term for drones and related equipment
- No-Fly Zones: Areas where drone flight is prohibited
- Remote Pilot Certificate: License required for commercial drone operations
- Registration: Required identification for drones over 0.55 pounds
Basic Regulations:
- Drones must be registered if over 0.55 lbs (250 grams)
- Maximum altitude: 400 feet above ground level
- Must yield right-of-way to manned aircraft
- No flying over groups of people
- No flying at night without special certification
- Respect airport operational areas (usually 5-mile radius)
Week 4: Key Drone Types & Components
Learning Objectives:
- Identify different drone configurations
- Understand key drone components and their functions
- Compare advantages and disadvantages of different designs
- Learn basic maintenance requirements
Key Concepts:
- Multirotor: Drones with multiple rotating propellers
- Fixed-wing: Airplane-like drones with wings
- Hybrid VTOL: Vertical takeoff and landing with forward flight capability
- Frame: Main structure holding all components
- Flight Controller: Computer controlling drone flight
- ESC (Electronic Speed Controller): Controls motor speed
- Gimbal: Stabilizes camera during flight
Drone Types:
- Quadcopter: 4 rotors, most common configuration
- Hexacopter: 6 rotors, more redundancy and payload capacity
- Octocopter: 8 rotors, highest redundancy and capacity
- Fixed-wing: Longer flight times, faster speeds
- Racing drones: Small, fast, agile for competitive flying
Week 5: Basic Principles of Flight
Learning Objectives:
- Understand the four forces of flight in detail
- Learn how drones achieve controlled flight
- Understand stability and control concepts
- Explore flight dynamics and physics
Key Concepts:
- Lift: Upward force generated by rotors or wings
- Weight (Gravity): Downward force pulling drone toward earth
- Thrust: Forward force propelling drone through air
- Drag: Resistance force opposing motion through air
- Center of Gravity: Balance point of drone
- Pitch, Roll, Yaw: Three axes of rotation
- Gyroscopic Effect: How spinning rotors affect stability
Flight Control:
- Throttle: Controls altitude (up/down)
- Pitch: Controls forward/backward movement
- Roll: Controls left/right movement
- Yaw: Controls rotation (turning left/right)
- Trim: Fine adjustments for balanced flight
Assessment Test - Grade 6-9 (11-14 Years)
Week 1-2 Assessment: Drone Basics and Safety
Format: Written Test + Practical Safety Demonstration (45 minutes)
Part A: Multiple Choice (20 points)
-
What does UAV stand for? a) Universal Aviation Vehicle b) Unmanned Aerial Vehicle c) Ultra Aerodynamic Vehicle d) United Aviation Vehicle
-
Which of the four forces of flight works against gravity? a) Thrust b) Drag c) Lift d) Weight
-
What should you do FIRST before flying a drone? a) Start the motors b) Check weather conditions c) Take off immediately d) Turn on the camera
-
The maximum altitude for recreational drone flight is: a) 200 feet b) 300 feet c) 400 feet d) 500 feet
-
What is the main difference between commercial and recreational drone use? a) Size of drone b) Purpose and regulations c) Color of drone d) Number of rotors
Part B: Short Answer (25 points) 6. List 5 safety rules that must be followed when operating a drone: (10 points)
- Explain three commercial applications of drones: (9 points)
- Why is it important to maintain visual contact with your drone during flight? (6 points)
Part C: Practical Safety Assessment (15 points) 9. Demonstrate proper pre-flight inspection checklist 10. Identify suitable vs. unsuitable flying locations from photos 11. Explain emergency landing procedures
Week 3-5 Assessment: Regulations and Flight Principles
Format: Written Test + Flight Theory Application (50 minutes)
Part A: Regulations Knowledge (20 points)
- True/False (10 points)
- Drones under 0.55 lbs need to be registered: ___
- You can fly your drone anywhere as long as it’s daytime: ___
- Commercial drone operations require a Remote Pilot Certificate: ___
- Drones must always yield to manned aircraft: ___
- Flying over groups of people is allowed with permission: ___
- What is a no-fly zone and give 3 examples: (10 points) Definition: ________________________________ Examples:
Part B: Drone Components (15 points) 3. Match the component to its function:
-
Flight Controller: _____ a) Provides power to motors
-
ESC: _____ b) Stabilizes camera
-
Gimbal: _____ c) Main structural support
-
Frame: _____ d) Controls drone flight
-
Battery: _____ e) Controls motor speed
- Compare quadcopter vs. fixed-wing drones (advantages/disadvantages): (10 points)
Part C: Flight Principles (25 points) 5. Draw and label the four forces of flight on a drone diagram: (12 points)
- Explain how a drone moves in each direction: (13 points)
- Forward: ________________________________
- Backward: ________________________________
- Left: ________________________________
- Right: ________________________________
- Up: ________________________________
- Rotate left: ________________________________
Assessment Rubric:
- Expert (90-100%): Demonstrates comprehensive understanding with detailed explanations
- Proficient (80-89%): Shows solid grasp of concepts with minor gaps
- Developing (70-79%): Understands basic concepts but lacks detail in complex areas
- Novice (Below 70%): Limited understanding, needs additional instruction
Grade 10-12 (14-16 Years)
Term 1: Introduction to Python Basics
Week 1: Writing Structured Python Code
Learning Objectives:
- Understand Python syntax and structure
- Learn proper code formatting and indentation
- Write clean, readable code following best practices
- Understand variables, data types, and basic operations
Key Concepts:
- Python: High-level programming language
- Syntax: Rules for writing Python code
- Indentation: Using spaces to organize code structure
- Variables: Named storage for data values
- Data Types: int, float, string, boolean
- Comments: Documentation within code using #
- Print Statement: Displaying output to screen
Code Structure Best Practices:
# Header comment explaining the program
# Author: Your Name
# Date: Today's Date
# Import statements
import module_name
# Constants (UPPERCASE naming)
MAX_VALUE = 100
# Main program logic
def main():
# Variable declarations
user_name = "Student"
age = 16
# Program logic with proper indentation
print(f"Hello, {user_name}!")
print(f"You are {age} years old.")
# Run the program
if __name__ == "__main__":
main()
Week 2: Functions and Loops
Learning Objectives:
- Create and use custom functions
- Understand function parameters and return values
- Implement for loops and while loops
- Apply loops to solve repetitive tasks
Key Concepts:
- Function: Reusable block of code that performs a specific task
- Parameters: Input values passed to functions
- Return Value: Output value from a function
- For Loop: Repeats code a specific number of times
- While Loop: Repeats code while a condition is true
- Range Function: Generates sequences of numbers
- Iteration: Each repetition of a loop
- Loop Control: Managing when loops start and stop
Function Examples:
# Simple function with no parameters
def greet():
print("Hello, World!")
# Function with parameters
def greet_person(name, age):
print(f"Hello, {name}! You are {age} years old.")
# Function with return value
def calculate_area(length, width):
area = length * width
return area
# Using functions
greet()
greet_person("Alice", 16)
room_area = calculate_area(10, 12)
print(f"Room area: {room_area} square meters")
Loop Examples:
# For loop with range
for i in range(5):
print(f"Count: {i}")
# For loop with list
fruits = ["apple", "banana", "orange"]
for fruit in fruits:
print(f"I like {fruit}")
# While loop
count = 0
while count < 3:
print(f"While loop count: {count}")
count += 1
Week 3: Using Python Libraries
Learning Objectives:
- Understand what Python libraries are and why they’re useful
- Learn to import and use common libraries
- Work with GPIOZero and time libraries
- Explore library documentation and help systems
Key Concepts:
- Library/Module: Pre-written code that adds functionality
- Import Statement: Bringing library functions into your program
- GPIOZero: Library for controlling Raspberry Pi GPIO pins
- Time Library: Functions for working with time and delays
- Documentation: Instructions for using library functions
- API: Application Programming Interface - how to use library functions
Library Usage Examples:
# Importing entire modules
import time
import math
# Importing specific functions
from gpiozero import LED, Button
from time import sleep
# Using time library
print("Starting program...")
time.sleep(2) # Wait 2 seconds
print("2 seconds have passed!")
# Using math library
import math
radius = 5
area = math.pi * radius ** 2
print(f"Circle area: {area:.2f}")
# Using GPIOZero (for Raspberry Pi)
led = LED(18) # LED connected to GPIO pin 18
button = Button(2) # Button connected to GPIO pin 2
# Turn LED on and off
led.on()
sleep(1)
led.off()
Week 4: Controlling Motors with Python
Learning Objectives:
- Understand how to interface with motors using Python
- Learn about PWM (Pulse Width Modulation) for motor control
- Control motor speed and direction
- Implement safety features in motor control code
Key Concepts:
- Motor Control: Using code to make motors move
- PWM (Pulse Width Modulation): Method to control motor speed
- Duty Cycle: Percentage of time signal is “on” vs “off”
- Direction Control: Making motors spin clockwise/counterclockwise
- Motor Driver: Electronics that interface between Python and motors
- Safety Features: Code to prevent motor damage
Motor Control Examples:
from gpiozero import Motor, PWMOutputDevice
from time import sleep
# Create motor object (assuming H-bridge motor driver)
motor = Motor(forward=2, backward=3, enable=18)
# Basic motor control
def basic_motor_test():
print("Motor forward at full speed")
motor.forward(1.0) # Full speed forward
sleep(2)
print("Motor forward at half speed")
motor.forward(0.5) # Half speed forward
sleep(2)
print("Motor stopped")
motor.stop()
sleep(1)
print("Motor backward at full speed")
motor.backward(1.0) # Full speed backward
sleep(2)
motor.stop()
print("Motor test complete")
# PWM speed control example
def speed_ramp_test():
print("Ramping motor speed up...")
for speed in range(0, 101, 10): # 0 to 100% in 10% steps
motor_speed = speed / 100.0
motor.forward(motor_speed)
print(f"Speed: {speed}%")
sleep(0.5)
motor.stop()
print("Speed ramp complete")
# Run the tests
basic_motor_test()
sleep(2)
speed_ramp_test()
Week 5: Controlling Sensors with Python
Learning Objectives:
- Interface with various sensors using Python
- Read and process sensor data
- Implement sensor-based decision making
- Create responsive programs based on sensor input
Key Concepts:
- Sensor: Device that detects and measures physical properties
- Analog vs Digital: Different types of sensor signals
- ADC (Analog-to-Digital Converter): Converts analog signals to digital
- Sensor Calibration: Adjusting sensor readings for accuracy
- Data Processing: Converting raw sensor data to useful information
- Polling vs Interrupts: Different ways to read sensor data
Common Sensors:
- Temperature sensors: Measure environmental temperature
- Light sensors (LDR): Detect light intensity
- Ultrasonic sensors: Measure distance using sound waves
- Motion sensors (PIR): Detect movement
- Pressure sensors: Measure force or pressure
Sensor Control Examples:
from gpiozero import MCP3008, DistanceSensor, MotionSensor, LED
from time import sleep
import statistics
# Temperature sensor (using analog input)
temp_sensor = MCP3008(channel=0)
def read_temperature():
# Convert voltage to temperature (example conversion)
voltage = temp_sensor.voltage
temperature_c = (voltage - 0.5) * 100 # Example conversion formula
temperature_f = (temperature_c * 9/5) + 32
return temperature_c, temperature_f
# Distance sensor (ultrasonic)
distance_sensor = DistanceSensor(echo=24, trigger=23)
def monitor_distance():
print("Distance monitoring (press Ctrl+C to stop)")
try:
while True:
distance = distance_sensor.distance * 100 # Convert to cm
print(f"Distance: {distance:.1f} cm")
if distance < 10:
print("WARNING: Object too close!")
sleep(0.5)
except KeyboardInterrupt:
print("Distance monitoring stopped")
# Motion sensor with LED indicator
motion = MotionSensor(4)
alert_led = LED(18)
def motion_detector():
print("Motion detector active...")
def motion_detected():
print("Motion detected!")
alert_led.on()
sleep(2)
alert_led.off()
def no_motion():
print("No motion")
alert_led.off()
# Set up motion sensor callbacks
motion.when_motion = motion_detected
motion.when_no_motion = no_motion
# Keep program running
try:
while True:
sleep(0.1)
except KeyboardInterrupt:
print("Motion detector stopped")
# Data logging example
def log_sensor_data():
readings = []
print("Collecting sensor data for 30 seconds...")
start_time = time.time()
while time.time() - start_time < 30:
temp_c, temp_f = read_temperature()
distance = distance_sensor.distance * 100
readings.append({
'timestamp': time.time(),
'temperature_c': temp_c,
'temperature_f': temp_f,
'distance_cm': distance
})
print(f"Temp: {temp_c:.1f}°C, Distance: {distance:.1f}cm")
sleep(1)
# Calculate statistics
temps = [r['temperature_c'] for r in readings]
distances = [r['distance_cm'] for r in readings]
print(f"\nData Summary:")
print(f"Average temperature: {statistics.mean(temps):.1f}°C")
print(f"Min/Max temperature: {min(temps):.1f}°C / {max(temps):.1f}°C")
print(f"Average distance: {statistics.mean(distances):.1f}cm")
print(f"Min/Max distance: {min(distances):.1f}cm / {max(distances):.1f}cm")
# Example usage
if __name__ == "__main__":
# Run different examples
monitor_distance() # Uncomment to run distance monitoring
# motion_detector() # Uncomment to run motion detection
# log_sensor_data() # Uncomment to run data logging
Assessment Test - Grade 10-12 (14-16 Years)
Week 1-2 Assessment: Python Fundamentals
Format: Coding Assignment + Written Questions (60 minutes)
Part A: Code Structure and Syntax (25 points)
- Fix the following code and explain what was wrong (10 points):
# Broken code:
def calculate average(num1, num2, num3)
average = num1 + num2 + num3 / 3
print("The average is" + average)
return average
calculate average(10, 20, 30)
Your corrected code:
# Write corrected version here
Explanation of errors: ________________________________
- Write a well-structured Python program (15 points): Create a program that:
- Has proper header comments
- Uses appropriate variable names
- Calculates the area of different shapes (circle, rectangle, triangle)
- Uses functions with parameters and return values
- Follows proper indentation and formatting
Part B: Functions and Loops (30 points)
- Write a function called
print_multiplication_table(15 points):
- Takes one parameter:
number - Prints multiplication table for that number (1-10)
- Uses a for loop
- Example output for print_multiplication_table(3):
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
... etc
- Password Checker Program (15 points): Write a program using while loop that:
- Asks user to enter a password
- Keeps asking until they enter “python123”
- Counts number of attempts
- Prints “Access granted” when correct
- Prints number of attempts it took
Week 3-5 Assessment: Libraries and Hardware Control
Format: Practical Coding Project (75 minutes)
Part A: Library Usage (20 points)
- Complete this sensor reading program (20 points):
from gpiozero import MCP3008
from time import sleep
import ______ # What library do you need for calculating average?
# Create sensor object
light_sensor = MCP3008(channel=0)
def read_light_levels():
readings = []
# Collect 10 readings
for i in range(______): # Fill in the range
reading = light_sensor.______ # What property gives the reading?
readings.append(reading)
print(f"Reading {i+1}: {reading:.3f}")
sleep(0.5)
# Calculate and print statistics
average = ______.mean(readings) # Which function calculates mean?
maximum = ______(readings) # Built-in function for maximum
minimum = ______(readings) # Built-in function for minimum
print(f"Average: {average:.3f}")
print(f"Maximum: {maximum:.3f}")
print(f"Minimum: {minimum:.3f}")
# Call the function
read_light_levels()
Part B: Motor Control Project (25 points)
- Smart Fan Controller (25 points): Write a program that simulates a smart fan controller:
- Use a temperature sensor to read room temperature
- Control a motor (fan) based on temperature:
- Below 20°C: Fan off
- 20-25°C: Fan at 30% speed
- 25-30°C: Fan at 60% speed
- Above 30°C: Fan at 100% speed
- Print current temperature and fan speed every 2 seconds
- Include safety features (motor stop function)
Part C: Sensor Integration Challenge (30 points)
- Security System Prototype (30 points): Create a basic security system that:
- Uses a motion sensor to detect movement
- Uses a distance sensor to detect objects too close
- Controls LEDs to indicate system status:
- Green LED: System normal
- Yellow LED: Motion detected
- Red LED: Intrusion alert (object < 20cm)
- Logs events with timestamps
- Runs continuously until user presses Ctrl+C
Requirements:
- Use at least 3 different libraries
- Include proper error handling
- Use functions to organize code
- Add meaningful comments
- Follow Python coding best practices
Sample code structure:
from gpiozero import MotionSensor, DistanceSensor, LED
from time import sleep
import time
# Hardware setup
motion = MotionSensor(4)
distance = DistanceSensor(echo=24, trigger=23)
green_led = LED(18)
yellow_led = LED(19)
red_led = LED(20)
def log_event(message):
# Write function to log events with timestamp
pass
def check_security():
# Write function to check all sensors and control LEDs
pass
def main():
# Write main program loop
pass
if __name__ == "__main__":
main()
Assessment Rubric:
- Exceptional (95-100%): Code runs flawlessly, excellent structure, creative additions, comprehensive error handling
- Proficient (85-94%): Code works correctly, good structure, meets all requirements, minor improvements possible
- Developing (75-84%): Code mostly works, basic structure present, meets most requirements, some bugs or missing features
- Beginning (65-74%): Code has significant issues, poor structure, missing major requirements
- Incomplete (Below 65%): Code doesn’t run or major portions missing
Additional Resources and Extensions
For All Grade Levels:
Vocabulary Glossary:
- Algorithm: Step-by-step instructions to solve a problem
- Bug: Error in code that prevents it from working correctly
- Debug: Process of finding and fixing errors in code
- Hardware: Physical components of computer systems
- Software: Programs and applications that run on hardware
- Interface: Way users interact with programs or devices
- Sensor: Device that detects changes in environment
- Actuator: Device that causes movement or action
Project Portfolio Suggestions:
- Weekly Reflection Journal: Students document learning and challenges
- Photo Documentation: Pictures of projects and experiments
- Video Demonstrations: Students explain their projects
- Peer Teaching: Advanced students help beginners
- Innovation Challenges: Open-ended problems to solve creatively
Cross-Curricular Connections:
- Math: Geometry in robotics, statistics in data analysis
- Science: Physics of flight, electronics principles
- Art: Creative programming projects, design thinking
- Social Studies: Impact of technology on society
- Language Arts: Technical writing, documentation skills
Safety Reminders:
- Always supervise young children with electronic components
- Check battery connections before powering devices
- Keep work area clean and organized
- Wash hands after handling electronic components
- Report any damaged equipment immediately
- Follow proper shutdown procedures for all devices
Assessment Portfolio Checklist:
- Completed weekly assessments
- Project documentation with photos
- Reflection essays on learning progress
- Peer evaluation forms
- Self-assessment rubrics
- Evidence of problem-solving process
- Creative extensions or improvements to basic projects
Continuation - Weeks 6-8 for All Grade Levels
Preschoolers (4-6 Years) - Weeks 6-8
Advanced STEM Exploration & Technology Awareness
Week 6: Technology Parts Awareness
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically be able to follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Technology Components: Basic parts that make devices work
- Circuits: Paths that electricity follows
- Assembly/Disassembly: Taking apart and putting together
- Electronics Safety: Safe handling of batteries and components
- Problem-Solving: Trying different solutions when something doesn’t work
Activities:
- Technology Exploration: Examine old keyboards, phones, calculators
- Simple Circuits: Connect bulbs to batteries with safe materials
- Assembly Practice: Take apart and reassemble simple toys
- Tech Parts Sorting: Group similar technology components
Materials: Old keyboards, phones, calculators, batteries, bulbs for circuits, safe connectors
Week 7: Sequencing & Floor Grid Coding
Learning Objectives:
- Develop understanding of sequencing by arranging steps in correct order
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence through trial-and-error learning
Key Concepts:
- Sequencing: Putting steps in the right order
- Algorithm Cards: Visual instructions to follow
- Floor Grid Coding: Moving through spaces following directions
- Left/Right/Forward/Back: Basic directional concepts
- Trial and Error: Learning by trying and improving
Activities:
- Obstacle Course Coding: Navigate through simple obstacles using arrow cards
- Sequencing Games: Put daily routine cards in correct order
- Paper Maze Coding: Use arrows to show path through printed mazes
- Robot Friend: One child gives directions, another follows like a robot
Materials: Coding arrows/direction cards, floor grid mats, toys for navigation, printed maze worksheets
Week 8: Advanced Unplugged Coding & Storytelling
Learning Objectives:
- Use coding to tell stories, solve challenges, or navigate mazes
- Recognize and follow simple algorithms using direction or action cards
- Physically follow code on floor grids
- Build confidence and persistence through trial-and-error learning
Key Concepts:
- Conditional Logic: IF/THEN thinking (“If you see red, then stop”)
- Debugging: Finding and fixing mistakes in directions
- Block Building: Using physical blocks to represent code
- Story Algorithms: Step-by-step instructions for telling stories
Activities:
- Debug the Path: Present incorrect direction sequences for children to fix
- IF/THEN Games: “If you see a triangle, then clap your hands”
- Story Coding: Use picture cards to create step-by-step stories
- Block Code Building: Stack blocks to represent programming sequences
Materials: Building blocks, floor grid mats, toys, printed materials, picture cards for storytelling
Preschoolers Assessment - Weeks 6-8
Week 6 Assessment: Technology Awareness
Format: Hands-on Exploration + Observation (20 minutes)
- Technology Parts Recognition (10 points)
- Point to and name 3 technology items from the collection
- Show how a simple circuit works (bulb + battery)
- Safely handle electronic components
- Explain one thing each item helps us do
- Assembly Skills (10 points)
- Take apart a simple toy or device
- Put it back together correctly
- Identify which parts go where
- Ask for help when needed
Assessment Criteria:
- Mastery (3): Handles all materials safely, explains purposes, completes tasks independently
- Developing (2): Safe handling, completes most tasks with minimal help
- Emerging (1): Needs guidance but participates actively
- Beginning (0): Requires extensive support
Week 7-8 Assessment: Advanced Unplugged Coding
Format: Physical Coding Challenges (25 minutes)
- Sequencing Challenge (12 points)
- Arrange 6 direction cards to navigate through obstacle course
- Explain why each step comes in that order
- Successfully complete the physical navigation
- Fix mistakes when path doesn’t work
- IF/THEN Logic (8 points)
- Follow conditional instructions: “IF you see blue, THEN hop”
- Create own IF/THEN rule for a friend to follow
- Demonstrate understanding with actions
- Story Algorithm (10 points)
- Use 5 picture cards to create logical story sequence
- Tell story following the card order
- Explain what happens if cards are mixed up
- Help fix a mixed-up story sequence
Practical Skills Rubric:
- Advanced (25-30 points): Creates original sequences, helps others, shows deep understanding
- Proficient (20-24 points): Completes all challenges correctly with minor guidance
- Developing (15-19 points): Understands concepts but needs support for complex tasks
- Beginning (Below 15 points): Requires significant help to participate
Grade 2-5 (7-11 Years) - Weeks 6-8
Advanced Scratch Programming & Game Development
Week 6: Game Structure and Design
Learning Objectives:
- Understand basic game structure (start, play, end)
- Use Scratch blocks to move characters and detect collisions
- Make characters move between different scenes
- Create scoring or win conditions
Key Concepts:
- Game Design Elements: Characters, backgrounds, objectives, rules
- Game Loop: Continuous cycle of input, processing, output
- Collision Detection: Knowing when sprites touch each other
- Scene Transitions: Moving between different game screens
- Win/Lose Conditions: Rules that determine game outcomes
- User Interface: Buttons, scores, and information displays
Advanced Scratch Concepts:
- Sensing Blocks: “touching color”, “distance to”, “key pressed”
- Variables: Storing score, lives, or time
- Broadcast Messages: Communication between sprites
- Clone Sprites: Creating multiple copies of objects
- Custom Blocks: Making your own programming blocks
Game Development Process:
- Planning Phase: Sketch game idea, list needed sprites and backgrounds
- Prototype: Create basic movement and interaction
- Enhancement: Add sounds, effects, and polish
- Testing: Play game and fix bugs
- Sharing: Present to classmates
Example Game Structure:
When green flag clicked
Set score to 0
Set lives to 3
Say "Game Starting!" for 2 seconds
Show sprite
Forever:
If key space pressed:
Move player sprite
If touching enemy:
Change lives by -1
If lives = 0:
Say "Game Over!"
Stop all
Week 7: Transition to Text-Based Concepts
Learning Objectives:
- Prepare learners for text-based coding
- Understand basic programming concepts using blocks
- Use logic and loops to control sprite or robot actions
- Begin transition to robotics or advanced coding platforms
Key Concepts:
- Programming Fundamentals: Sequence, selection, iteration
- Logic Blocks: IF/ELSE statements in visual form
- Loop Types: Forever, repeat until, repeat X times
- Variables and Operations: Math in programming
- Event-Driven Programming: Responding to user input
- Modular Programming: Breaking code into smaller parts
Bridging Visual to Text:
- Block-to-Code Thinking: Understanding what blocks represent
- Pseudocode: Writing steps in plain English before coding
- Debugging Strategies: Systematic problem-solving approaches
- Code Organization: Keeping projects neat and logical
Advanced Programming Patterns:
// Pattern 1: State Machine
When green flag clicked
Set game state to "menu"
Forever:
If game state = "menu":
Show menu options
If game state = "playing":
Run game logic
If game state = "game over":
Show final score
// Pattern 2: Object Behavior
When I start as a clone:
Go to random position
Forever:
Move 2 steps
If on edge, bounce
If touching player:
Change score by 10
Delete this clone
Week 8: Blockly Integration and Logic Puzzles
Learning Objectives:
- Solve logic puzzles using visual programming concepts
- Create games using Blockly platform
- Demonstrate understanding of programming fundamentals
- Apply creative problem-solving skills
Key Concepts:
- Blockly Platform: Google’s visual programming language
- Logic Puzzles: Problems requiring systematic thinking
- Algorithm Efficiency: Finding the best solution method
- Pattern Recognition: Identifying repeated solutions
- Creative Programming: Using code for artistic expression
Blockly vs. Scratch Comparison:
| Feature | Scratch | Blockly |
|---|---|---|
| Focus | Storytelling & Games | Logic & Algorithms |
| Interface | Stage-based | Puzzle-based |
| Output | Animated Projects | Problem Solutions |
| Progression | Creative Expression | Mathematical Thinking |
Logic Puzzle Types:
- Maze Solving: Navigate through obstacles
- Pattern Completion: Fill in missing sequences
- Conditional Logic: IF/THEN decision making
- Loop Optimization: Repeat actions efficiently
Grade 2-5 Assessment - Weeks 6-8
Week 6 Assessment: Game Development Project
Format: Scratch Game Creation + Presentation (45 minutes)
Part A: Game Planning (10 points)
- Game Design Document - Create a simple plan including:
- Game objective (what’s the goal?)
- Main character description
- Basic rules (how do you win/lose?)
- Required sprites and backgrounds
- Storyboard - Draw 3 screens showing:
- Game start screen
- Main gameplay
- Win/lose screen
Part B: Game Implementation (25 points) 3. Core Functionality (15 points):
-
Character moves with arrow keys or WASD
-
At least one interactive element (enemy, collectible, obstacle)
-
Basic collision detection (touching = something happens)
-
Clear win or lose condition
- Polish and Enhancement (10 points):
- Sound effects or music
- Visual feedback (score, lives, timer)
- Smooth sprite movement
- Creative backgrounds or costumes
Part C: Presentation and Reflection (15 points) 5. Game Demo (10 points):
-
Explain game rules clearly
-
Demonstrate gameplay for 2 minutes
-
Show different game scenarios
-
Handle questions from classmates
- Technical Reflection (5 points):
- Explain one challenging problem you solved
- Describe one improvement you would make
- Share one new Scratch skill you learned
Week 7-8 Assessment: Programming Concepts Mastery
Format: Mixed Assessment - Blockly Challenges + Scratch Review (50 minutes)
Part A: Blockly Logic Challenges (20 points)
- Maze Navigation (8 points):
- Complete 3 increasingly difficult maze puzzles
- Use efficient solutions (minimal blocks)
- Demonstrate understanding of loops and conditionals
- Pattern Recognition (6 points):
- Solve sequence completion puzzles
- Identify and extend number/color patterns
- Create original pattern for others to solve
- Logic Puzzles (6 points):
- Complete IF/THEN decision trees
- Solve multi-step conditional problems
- Optimize solutions for clarity
Part B: Concept Transfer (15 points) 4. Visual to Text Translation (10 points): Given this Scratch code block arrangement:
[When flag clicked] → [Forever] → [If touching mouse] → [Move 10 steps]
Write in pseudocode (plain English): “When the program starts, ________________”
- Problem Decomposition (5 points): Break down this challenge into steps: “Create a sprite that follows the mouse but stops when it touches the edge”
Step 1: _______________ Step 2: _______________ Step 3: _______________ Step 4: _______________
Part C: Creative Application (15 points) 6. Original Algorithm (15 points): Choose ONE to complete:
Option A - Scratch: Create a “digital pet” that:
- Follows mouse cursor
- Changes expression when clicked
- Makes sound when hungry (timer-based)
- Has at least 3 different costumes
Option B - Blockly: Design a solution for:
- Robot that sorts colored objects
- Path that avoids all obstacles
- Pattern that creates art using loops
Assessment Rubric:
- Expert (90-100%): Exceeds requirements with creative solutions and clear explanations
- Proficient (80-89%): Meets all requirements with good understanding demonstrated
- Developing (70-79%): Meets most requirements but may have gaps in complex concepts
- Novice (60-69%): Shows basic understanding but struggles with application
- Beginning (Below 60%): Needs significant support to demonstrate concepts
Grade 6-9 (11-14 Years) - Weeks 6-8
Drone Laws, Emergency Procedures & Practical Flying
Week 6: Drone Laws and Regulations (Kenya Focus)
Learning Objectives:
- Learn basic drone laws in Kenya (KCAA regulations)
- Understand where and how children can fly drones legally
- Develop awareness of responsible drone operation
- Understand the importance of aviation safety
Key Concepts:
- Kenya Civil Aviation Authority (KCAA): National aviation regulator
- Drone Registration: Required identification and documentation
- No-Fly Zones: Airports, government buildings, restricted areas
- Altitude Restrictions: Maximum height limitations
- Visual Line of Sight (VLOS): Maintaining visual contact
- Privacy Laws: Respecting others’ rights and property
Kenya Drone Regulations Summary:
- Registration Requirements:
- All drones over 250g must be registered with KCAA
- Operator license required for commercial operations
- Age restrictions for different categories of operation
- Operational Limits:
- Maximum altitude: 400 feet (120 meters) AGL
- Minimum distance from airports: 8km for major airports
- No flying over crowds or public events
- Daylight operations only (without special permits)
- Prohibited Areas:
- Within 5km of any airport
- Over government buildings and installations
- National parks without permits
- Private property without permission
Safety and Legal Guidelines for Young Pilots:
- Always have adult supervision
- Start with toy drones under 250g
- Practice in open, safe areas
- Respect others’ privacy and property
- Learn emergency procedures
- Keep drone in sight at all times
Week 7: Emergency Procedures and Responsible Flying
Learning Objectives:
- Review key safety and legal concepts from previous weeks
- Understand emergency basics for beginner flyers
- Develop decision-making skills for unexpected situations
- Practice responsible pilot behavior
Key Concepts:
- Emergency Procedures: Systematic responses to problems
- Risk Assessment: Evaluating dangers before flying
- Decision Making: Choosing appropriate actions under pressure
- Communication: Alerting others during emergencies
- Equipment Failure: What to do when drone malfunctions
- Weather Awareness: Recognizing dangerous conditions
Emergency Scenarios and Responses:
- Lost Communication with Drone:
- Stay calm and observe drone behavior
- Activate Return-to-Home (RTH) function if available
- Move to higher ground for better signal
- Prepare for manual landing if signal returns
- Never chase after a flyaway drone
- Low Battery Warning:
- Immediately begin landing sequence
- Choose nearest safe landing spot
- Avoid flying over people or property
- Land even if not at original takeoff point
- Safety is more important than convenience
- Unexpected Weather Changes:
- Monitor weather conditions constantly
- Land immediately if wind increases
- Avoid flying in rain or snow
- Watch for sudden temperature changes
- When in doubt, don’t fly
- Equipment Malfunction:
- Attempt controlled landing immediately
- Don’t try to fix problems while airborne
- Inform other people in the area
- Document the problem for later analysis
- Never continue flying with known issues
Mission Planning Process:
- Pre-flight Planning: Weather check, equipment inspection, route planning
- Risk Assessment: Identify potential hazards and mitigation strategies
- Communication Plan: Inform others of flight activities
- Emergency Procedures: Know what to do if things go wrong
- Post-flight Review: Analyze what went well and areas for improvement
Week 8: Practical Flying Skills and Team Challenges
Learning Objectives:
- Demonstrate ability to control a mini drone (takeoff, hover, land)
- Apply basic flight skills in problem-solving mission scenarios
- Work as a team to complete drone-based challenges
- Evaluate personal progress and set goals for improvement
Key Concepts:
- Flight Control Mastery: Smooth, precise drone movements
- Situational Awareness: Understanding surroundings during flight
- Mission Planning: Preparing for specific flight objectives
- Teamwork: Collaborative problem-solving with drones
- Performance Evaluation: Self-assessment and peer feedback
- Safety Leadership: Taking responsibility for safe operations
Basic Flight Skills Progression:
- Fundamental Controls:
- Smooth takeoff to hover
- Maintaining steady hover
- Controlled landing
- Forward/backward movement
- Left/right movement
- Rotation control
- Intermediate Maneuvers:
- Figure-8 patterns
- Precision landing on target
- Obstacle avoidance
- Following predetermined paths
- Coordinated movements
- Advanced Challenges:
- Team relay races
- Rescue simulations
- Precision delivery tasks
- Group choreography
- Time-based challenges
Mission Scenarios:
Mission 1: Search and Rescue
- Objective: Locate “missing person” (target) in designated area
- Skills: Systematic search patterns, communication, observation
- Time limit: 5 minutes
- Success criteria: Target identified and location communicated
Mission 2: Delivery Challenge
- Objective: Transport small payload from Point A to Point B
- Skills: Precision flying, cargo management, safe landing
- Obstacles: Wind conditions, landing accuracy requirements
- Success criteria: Payload delivered undamaged within time limit
Mission 3: Team Coordination
- Objective: Multiple drones work together to complete complex task
- Skills: Communication, timing, spatial awareness
- Challenge: Choreographed flight pattern or group problem-solving
- Success criteria: All drones complete task without collisions
Safety Protocols for Practical Flying:
- Always maintain 10-foot safety zone around flying area
- Designate specific roles: pilot, observer, safety officer
- Use hand signals for communication during loud operations
- Practice emergency landing procedures before each session
- Rotate roles so everyone experiences different responsibilities
Grade 6-9 Assessment - Weeks 6-8
Week 6 Assessment: Drone Laws and Regulations
Format: Written Test + Legal Scenario Analysis (40 minutes)
Part A: Kenya Aviation Law Knowledge (25 points)
- KCAA Regulations (10 points) Fill in the blanks:
- Drones over ______ grams must be registered with KCAA
- Maximum altitude for recreational flying is ______ feet
- Minimum distance from major airports is ______ kilometers
- Commercial drone operations require a ______ license
- Drones must remain within ______ line of sight
- No-Fly Zone Identification (10 points) Mark TRUE or FALSE for each flying location:
- Your school playground during lunch break: ______
- Open field 2km from Wilson Airport: ______
- Your backyard with adult supervision: ______
- Uhuru Park during a public event: ______
- Private farm with owner’s permission: ______
- Legal Compliance (5 points) List 3 requirements for legally flying a drone in Kenya:
Part B: Scenario-Based Decision Making (20 points)
- Legal Scenarios (20 points) For each scenario, explain if the action is legal and why:
Scenario A: Sarah wants to fly her 300g drone over her neighbor’s house to take photos of her own backyard. Legal? _____ Why? _______________________________
Scenario B: James plans to fly his registered drone at 200 feet altitude in an open field 10km from any airport during daylight hours. Legal? _____ Why? _______________________________
Scenario C: A group of students want to use their drone for a school project, filming the school building from 100 feet up. Legal? _____ Why? _______________________________
Scenario D: Ahmed wants to fly his 150g toy drone in his compound for 10 minutes. Legal? _____ Why? _______________________________
Part C: Responsible Pilot Planning (15 points)
-
Pre-flight Checklist (15 points) Create a 10-item pre-flight checklist that includes legal, safety, and equipment considerations:
-
-
-
[Continue through 10]
Week 7-8 Assessment: Emergency Procedures and Practical Skills
Format: Practical Flight Test + Emergency Response Simulation (60 minutes)
Part A: Emergency Response Knowledge (20 points)
- Emergency Procedures (15 points) Describe the correct response for each emergency:
Low Battery Warning: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Lost Radio Contact: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
Sudden Weather Change: Step 1: _______________________________ Step 2: _______________________________ Step 3: _______________________________
- Risk Assessment (5 points) Identify 3 risks for flying in each environment:
- School playground: ____________, ____________, ____________
- Open field: ____________, ____________, ____________
Part B: Practical Flight Skills Assessment (30 points)
- Basic Flight Controls (15 points) Demonstrate competency in:
- Smooth takeoff and landing (3 points)
- Stable hovering for 30 seconds (3 points)
- Forward/backward precision movement (3 points)
- Left/right precision movement (3 points)
- Controlled rotation (3 points)
- Mission Challenge (15 points) Complete ONE of the following missions:
Option A - Navigation Course:
- Fly through 5 waypoints in sequence
- Land within 1-meter target circle
- Complete within 3 minutes
Option B - Team Coordination:
- Work with partner to complete relay challenge
- Communicate effectively during handoff
- Maintain safety throughout mission
Part C: Leadership and Safety Evaluation (15 points)
- Safety Leadership (8 points) While others are flying, demonstrate:
- Proper safety zone maintenance
- Clear communication with pilot
- Appropriate responses to unsafe situations
- Helpful coaching and encouragement
- Self-Assessment and Goal Setting (7 points) Written reflection:
- What flight skill are you most confident with? Why?
- What area needs the most improvement?
- Set one specific goal for future drone flying
- Describe one way you can help others fly safely
Practical Skills Rubric:
- Expert Pilot (90-100%): Demonstrates advanced skills, teaches others, shows exceptional safety awareness
- Competent Pilot (80-89%): Performs all basic skills reliably, follows safety protocols consistently
- Developing Pilot (70-79%): Shows improvement in most areas, occasional guidance needed
- Novice Pilot (60-69%): Basic skills present but inconsistent, needs continued practice
- Beginning Pilot (Below 60%): Requires significant instruction and supervision
Grade 10-12 (14-16 Years) - Weeks 6-8
Advanced Python Projects & Integration
Week 6-7: Integrated Systems Project (Combined Weeks)
Learning Objectives:
- Combine motors and sensors in complex systems
- Debug integrated hardware/software systems
- Apply creative problem-solving to real-world challenges
- Document projects professionally
Key Concepts:
- Systems Integration: Combining multiple components into unified solutions
- Hardware-Software Interface: Code that bridges digital and physical worlds
- System Architecture: Planning complex projects with multiple subsystems
- Error Handling: Managing failures gracefully in complex systems
- Performance Optimization: Making systems run efficiently
- Documentation Standards: Professional project recording
Advanced Integration Concepts:
1. Multi-Sensor Fusion
import threading
import queue
from gpiozero import DistanceSensor, MotionSensor, MCP3008
from time import sleep
import json
class SensorFusion:
def __init__(self):
self.distance_sensor = DistanceSensor(echo=24, trigger=23)
self.motion_sensor = MotionSensor(4)
self.light_sensor = MCP3008(channel=0)
self.temp_sensor = MCP3008(channel=1)
# Data queues for thread communication
self.sensor_data = queue.Queue()
self.running = False
def read_sensors(self):
"""Continuous sensor reading in separate thread"""
while self.running:
try:
data = {
'timestamp': time.time(),
'distance': self.distance_sensor.distance * 100,
'motion': self.motion_sensor.motion_detected,
'light_level': self.light_sensor.voltage,
'temperature': self.convert_temp(self.temp_sensor.voltage)
}
self.sensor_data.put(data)
sleep(0.1) # 10Hz sampling rate
except Exception as e:
print(f"Sensor reading error: {e}")
def convert_temp(self, voltage):
"""Convert sensor voltage to temperature"""
return (voltage - 0.5) * 100 # Example conversion
def start_monitoring(self):
"""Start sensor monitoring thread"""
self.running = True
self.sensor_thread = threading.Thread(target=self.read_sensors)
self.sensor_thread.start()
def stop_monitoring(self):
"""Stop sensor monitoring"""
self.running = False
if hasattr(self, 'sensor_thread'):
self.sensor_thread.join()
2. Intelligent Control Systems
class SmartEnvironmentController:
def __init__(self):
self.sensors = SensorFusion()
self.fan_motor = Motor(forward=2, backward=3)
self.heater_relay = OutputDevice(18)
self.lights = PWMOutputDevice(19)
# Control parameters
self.target_temp = 22.0 # Target temperature in Celsius
self.temp_tolerance = 1.0
self.light_threshold = 0.3
# Control state
self.auto_mode = True
self.manual_override = False
def analyze_environment(self, sensor_data):
"""Intelligent decision making based on sensor data"""
decisions = {
'fan_speed': 0.0,
'heater_on': False,
'light_level': 0.0,
'alert_status': 'normal'
}
# Temperature control logic
temp_diff = sensor_data['temperature'] - self.target_temp
if temp_diff > self.temp_tolerance: # Too hot
decisions['fan_speed'] = min(1.0, temp_diff / 5.0) # Scale fan speed
decisions['heater_on'] = False
elif temp_diff < -self.temp_tolerance: # Too cold
decisions['fan_speed'] = 0.0
decisions['heater_on'] = True
# Light control logic
if sensor_data['light_level'] < self.light_threshold:
decisions['light_level'] = 1.0 - sensor_data['light_level'] # Complement lighting
# Security monitoring
if sensor_data['motion'] and sensor_data['distance'] < 20: # Close motion
decisions['alert_status'] = 'intrusion_detected'
elif sensor_data['distance'] < 5: # Very close object
decisions['alert_status'] = 'obstacle_warning'
return decisions
def execute_controls(self, decisions):
"""Execute control decisions"""
if not self.manual_override:
# Motor control
if decisions['fan_speed'] > 0:
self.fan_motor.forward(decisions['fan_speed'])
else:
self.fan_motor.stop()
# Heater control
if decisions['heater_on']:
self.heater_relay.on()
else:
self.heater_relay.off()
# Light control
self.lights.value = decisions['light_level']
def run_control_loop(self):
"""Main control loop"""
self.sensors.start_monitoring()
try:
while True:
if not self.sensors.sensor_data.empty():
current_data = self.sensors.sensor_data.get()
decisions = self.analyze_environment(current_data)
self.execute_controls(decisions)
# Log system status
self.log_system_status(current_data, decisions)
sleep(0.5) # Control loop frequency
except KeyboardInterrupt:
print("Shutting down control system...")
finally:
self.sensors.stop_monitoring()
self.fan_motor.stop()
self.heater_relay.off()
self.lights.off()
def log_system_status(self, sensor_data, decisions):
"""Log system performance data"""
log_entry = {
'timestamp': sensor_data['timestamp'],
'sensors': sensor_data,
'controls': decisions,
'mode': 'auto' if self.auto_mode else 'manual'
}
# In a real system, this would write to a file or database
print(f"System Status: Temp={sensor_data['temperature']:.1f}°C, "
f"Fan={decisions['fan_speed']:.1f}, "
f"Alert={decisions['alert_status']}")
3. Project Documentation Standards
"""
Smart Environment Control System
================================
Project: IoT Environmental Controller
Author: Student Name
Date: Current Date
Version: 1.0
Description:
An intelligent system that monitors environmental conditions and automatically
adjusts heating, cooling, and lighting based on sensor feedback.
Hardware Requirements:
- Raspberry Pi 4 or similar
- Temperature sensor (DS18B20 or similar)
- Light sensor (LDR with MCP3008 ADC)
- Motion sensor (PIR)
- Distance sensor (HC-SR04)
- DC Motor (for fan simulation)
- Relay module (for heater control)
- PWM-controlled LED (for lighting)
Software Dependencies:
- Python 3.7+
- gpiozero library
- threading module (standard library)
- queue module (standard library)
- json module (standard library)
Installation:
pip install gpiozero
Usage:
python smart_environment.py
Configuration:
Modify target_temp and light_threshold variables in SmartEnvironmentController
class to adjust system behavior.
Testing:
Run included test functions to verify sensor readings and control outputs
before deploying the full system.
Known Issues:
- Temperature sensor calibration may need adjustment for local conditions
- Motion sensor has 2-second reset time that affects rapid detection
Future Enhancements:
- Web interface for remote monitoring
- Data logging to CSV files
- Machine learning for predictive control
- Mobile app integration
"""
Project Examples for Students:
Project 1: Smart Garden Monitor
- Monitors soil moisture, light, and temperature
- Controls watering pump and grow lights
- Logs plant growth data
- Sends alerts when intervention needed
Project 2: Home Security System
- Multiple sensor integration (motion, door, window)
- Camera trigger on detection
- SMS/email notifications
- Mobile app control interface
Project 3: Weather Station
- Measures temperature, humidity, pressure, wind
- Data logging with timestamps
- Weather prediction algorithms
- Web dashboard for data visualization
Project 4: Automated Greenhouse
- Climate control (temperature, humidity)
- Automated watering system
- Light cycle management
- Growth optimization algorithms
Week 8: Project Presentations and Assessment
Learning Objectives:
- Present technical projects professionally
- Give and receive constructive feedback
- Self-evaluate learning progress and achievements
- Plan next steps for continued learning
Key Concepts:
- Technical Communication: Explaining complex systems clearly
- Presentation Skills: Engaging audiences with technical content
- Peer Review: Constructive feedback and collaboration
- Self-Assessment: Honest evaluation of own work
- Professional Development: Planning continued learning paths
- Portfolio Building: Documenting achievements for future opportunities
Presentation Structure:
- Project Overview (2 minutes)
- Problem statement and objectives
- Target audience and use cases
- Key features and functionality
- Technical Demonstration (2 minutes)
- Live system operation
- Key components and how they work
- Code walkthrough of critical sections
- Challenges and Solutions (1 minute)
- Major obstacles encountered
- Creative solutions implemented
- Lessons learned from failures
Evaluation Criteria:
Technical Merit (40%):
- System functionality and reliability
- Code quality and organization
- Creative problem-solving approach
- Integration of multiple technologies
Communication (30%):
- Clear explanation of technical concepts
- Engaging presentation delivery
- Appropriate use of visual aids
- Effective response to questions
Documentation (20%):
- Complete project documentation
- Code comments and structure
- User instructions and setup guides
- Reflection on learning process
Collaboration (10%):
- Constructive feedback to peers
- Professional interaction during Q&A
- Willingness to share knowledge
- Respectful critique and discussion
Python Programming Trivia Challenge: End the term with fun technical questions:
- What does “PEP 8” refer to in Python?
- What’s the difference between
==andisin Python? - How do you handle exceptions in Python?
- What is a Python decorator?
- What’s the difference between a list and a tuple?
Grade 10-12 Final Assessment - Weeks 6-8
Integrated Systems Project Assessment
Format: Major Project + Technical Presentation + Peer Review (2 weeks + presentation day)
Project Requirements: Students must create an integrated system that combines:
- At least 3 different sensors
- At least 2 actuators (motors, lights, relays, etc.)
- Data logging and analysis
- User interface (command line or simple GUI)
- Error handling and safety features
Part A: Technical Implementation (40 points)
System Design (10 points)
- Clear problem definition and solution approach
- System architecture diagram showing component relationships
- Hardware schematic or connection diagram
- Software flowchart or algorithm description
Code Quality (15 points)
- Well-structured, modular code with functions/classes
- Appropriate variable names and code organization
- Comprehensive comments explaining complex sections
- Error handling for hardware failures
- Efficient algorithms and resource usage
Hardware Integration (15 points)
- Stable sensor readings with appropriate filtering
- Reliable actuator control with safety limits
- Proper electrical connections and component usage
- System operates reliably for extended periods
- Professional cable management and mounting
Part B: Documentation and Communication (25 points)
Project Documentation (15 points) Create a complete project report including:
- Executive summary of project goals and achievements
- Detailed technical specifications and requirements
- Installation and setup instructions
- User manual with clear operating procedures
- Troubleshooting guide for common problems
- Code documentation with API reference
Technical Presentation (10 points)
- Clear 5-minute presentation explaining project
- Live demonstration of working system
- Professional slides with technical diagrams
- Confident handling of technical questions
- Appropriate use of technical vocabulary
Part C: Innovation and Problem Solving (20 points)
Creative Solutions (10 points)
- Original approach to solving chosen problem
- Creative use of available hardware and software
- Evidence of iterative design and improvement
- Solutions show depth of understanding beyond basic requirements
Advanced Features (10 points) Choose and implement at least TWO:
- Machine learning or AI decision making
- Network communication (IoT connectivity)
- Mobile app or web interface
- Data visualization and analytics
- Predictive algorithms or optimization
- Integration with external APIs or services
Part D: Professional Skills (15 points)
Peer Collaboration (8 points)
- Constructive feedback provided to classmates
- Professional behavior during presentations
- Willingness to help others debug problems
- Respectful and insightful questions during Q&A
Self-Assessment (7 points) Written reflection addressing:
- Most significant technical challenge and how you overcame it
- What you would do differently if starting over
- How this project connects to potential career interests
- Specific skills you want to develop further
- Your confidence level with different aspects of the project
Sample Project Evaluation Rubric:
Exceptional (90-100%)
- System exceeds all requirements with innovative features
- Code is publication-quality with comprehensive documentation
- Presentation is engaging and demonstrates deep understanding
- Shows leadership in helping others and contributing to class learning
- Self-reflection shows sophisticated understanding of learning process
Proficient (80-89%)
- System meets all requirements reliably
- Code is well-structured with good documentation
- Presentation is clear and technically accurate
- Actively participates in peer learning and feedback
- Self-reflection shows good awareness of strengths and growth areas
Developing (70-79%)
- System meets most requirements with minor issues
- Code works but may have organizational or documentation gaps
- Presentation covers required topics but may lack depth
- Participates adequately in class activities
- Self-reflection shows basic understanding of learning process
Beginning (60-69%)
- System meets basic requirements but has significant limitations
- Code works for demonstration but has structural or reliability issues
- Presentation covers basics but shows limited understanding
- Minimal participation in peer activities
- Self-reflection is superficial or lacks insight
Incomplete (Below 60%)
- System fails to meet basic requirements or doesn’t function reliably
- Code has major issues that prevent proper operation
- Presentation is unclear or shows misunderstanding of concepts
- Little to no participation in collaborative learning
- Self-reflection missing or shows no evidence of learning
Term 1 Final Portfolio Assessment - All Grade Levels
Portfolio Components Checklist
For All Students:
- Weekly reflection journals documenting learning progress
- Photo documentation of all projects and experiments
- Completed weekly assessments with corrections
- Evidence of peer collaboration and teaching
- Self-assessment of growth in each major topic area
Grade-Specific Additions:
Preschoolers (4-6 years):
- Drawings of favorite STEM activities
- Parent/teacher observation notes on engagement and skills
- Examples of unplugged coding sequences created
- Photos of technology exploration activities
Grade 2-5 (7-11 years):
- Screenshots of completed Scratch projects
- Blockly puzzle solutions and explanations
- Game design documents and storyboards
- Video explanations of programming concepts
Grade 6-9 (11-14 years):
- Drone safety checklist created and used
- Mission planning worksheets with risk assessments
- Photos/videos of practical flying sessions
- Research report on drone applications in chosen field
Grade 10-12 (14-16 years):
- Complete code repositories with documentation
- Hardware connection diagrams and schematics
- Data analysis reports from sensor projects
- Technical presentation slides and demonstration videos
Cross-Grade Learning Objectives Mastery
By the end of Term 1, students should demonstrate:
Preschoolers:
- Basic understanding of STEM concepts through play
- Ability to follow simple sequences and patterns
- Safe interaction with age-appropriate technology
- Curiosity and engagement with hands-on exploration
Grade 2-5:
- Fundamental programming concepts using visual languages
- Ability to create simple games and interactive stories
- Understanding of sequence, loops, and basic logic
- Confidence in debugging and problem-solving
Grade 6-9:
- Comprehensive understanding of drone safety and regulations
- Practical flying skills with safety awareness
- Knowledge of aviation principles and laws
- Teamwork and communication skills in technical contexts
Grade 10-12:
- Proficiency in Python programming for hardware control
- Ability to integrate multiple sensors and actuators
- Professional documentation and presentation skills
- Independent problem-solving and creative innovation
Preparation for Term 2
Preschoolers → Scratch Junior Programming:
- Continue building sequencing skills
- Introduction to tablet-based programming
- Creative storytelling with technology
Grade 2-5 → IoT Integration with Sensors:
- Bridge from visual programming to physical computing
- Introduction to sensors and real-world data
- Beginning electronics and circuit concepts
Grade 6-9 → Smart Home Security:
- Apply drone safety concepts to IoT systems
- Introduction to sensors and automation
- Home automation and security principles
Grade 10-12 → Smart Cities:
- Scale up from individual projects to community solutions
- Advanced IoT networking and data analysis
- Social impact of technology solutions
Additional Resources and Extensions
Online Learning Platforms:
- Preschoolers: PBS Kids programming games, Kodable app
- Grade 2-5: Scratch Jr., Code.org courses, Blockly games
- Grade 6-9: DroneBlocks, FAA educational materials, aviation simulation games
- Grade 10-12: Python.org tutorials, Raspberry Pi Foundation projects, GitHub learning labs
STEM Career Connections:
- Robotics Engineer: Designs and builds robots for various applications
- Software Developer: Creates programs and applications for computers and devices
- Drone Pilot: Professional UAV operations for photography, surveying, delivery
- IoT Developer: Connects everyday objects to the internet for smart automation
- Data Scientist: Analyzes sensor data to find patterns and make predictions
Community Extension Activities:
- Science Fair Projects: Using skills learned to create original investigations
- STEM Club Leadership: Teaching younger students basic concepts
- Community Problem Solving: Identifying local problems that technology could help solve
- Maker Space Participation: Continuing projects in community workshop environments
Assessment Data Tracking: Teachers should maintain records of:
- Individual student progress through learning objectives
- Common areas of difficulty requiring additional support
- Exceptional student work that could be showcased
- Parent/guardian feedback on home engagement with STEM concepts
- Equipment and resource needs for optimal program delivery
This completes the comprehensive Term 1 curriculum with detailed notes, assessments, and support materials for all grade levels in the IoT & Robotics program. Each grade level has age-appropriate challenges that build foundational skills while maintaining engagement and fostering creativity in STEM learning.
Notes
I’ve created a comprehensive set of notes and assessment tests for Term 1 across all grade levels (Preschoolers through Grade 10-12). The document includes:
What’s Included:
For Each Grade Level:
- Detailed weekly lesson notes covering weeks 1-8 content
- Key concepts and learning objectives for each topic
- Practical examples and code samples (for programming grades)
- Age-appropriate assessment tests with multiple formats
Assessment Formats:
- Preschoolers (4-6): Practical/observational assessments with hands-on activities
- Grade 2-5 (7-11): Computer-based Scratch/Blockly challenges
- Grade 6-9 (11-14): Written tests + practical drone safety demonstrations
- Grade 10-12 (14-16): Coding assignments + hardware integration projects
Key Features:
- ✅ Covers all 8 weeks of Term 1 content
- ✅ Aligned with curriculum from the IoT & Robotics document
- ✅ Progressive difficulty appropriate for each age group
- ✅ Practical assessments that test real understanding
- ✅ Detailed rubrics for fair evaluation
- ✅ Extension activities for advanced learners
- ✅ Safety guidelines and best practices
Topics Covered:
- Preschoolers: STEM basics, simple machines, unplugged coding
- Grade 2-5: Scratch programming, Blockly games, interface navigation
- Grade 6-9: Drone basics, aviation principles, safety regulations
- Grade 10-12: Python programming, hardware control, sensor integration
Each assessment is designed to be practical and engaging, testing both theoretical knowledge and hands-on application skills. The rubrics provide clear criteria for evaluation at different skill levels.
Perfect! I’ve now completed the comprehensive Term 1 notes and assessment materials covering all 8 weeks for all grade levels. Here’s what’s now included: