Files
micromelon-website/content/resources/turn-over-rover.mdx
Tim Hadwen 1f8c46597b Site audit: fix broken images, add activity metadata, clean up content
- Remove broken image references from 25 MDX files (deleted spacer/content images)
- Add codingSkills and roverConcepts frontmatter to 24 activity pages
- Fix "Activity Demonstration" headings in 15 activity files (plain text -> h3)
- Remove unused "All" category from 89 MDX files
- Decode HTML entities (> <  ) in 9 content files
- Escape bare < > characters in MDX to fix build errors
- Standardize contact email to contact@micromelon.com.au
- Add missing description to rover-repair-request metadata
- Include previous session work: about-us updates, difficulty filtering,
  LearningPathway component, expanded schools list, new product/resource images

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 21:49:15 +10:00

40 lines
2.1 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Activity: Turn Over Rover"
date: "2021-06-03"
categories: ["Activities"]
tags: ["Branching", "Iteration", "Accelerometer", "LEDs", "Beginner"]
codingSkills: ["Branching", "Iteration"]
roverConcepts: ["Accelerometer", "LEDs"]
excerpt: "Learn branching, iteration, and how to use the accelerometer and LEDs."
featuredImage: "/images/resources/turn-over-rover.png"
---
Program the rover to detect if it is upside down or not. When the rover is the right way up set it's LEDs to green. When the rover is upside down set the LEDs to red. The rover should change the LEDs as soon as it detects a change in orientation, you should not need to press the play button to trigger a change in colour.
### Activity Demonstration
<iframe width="560" height="315" src="https://www.youtube.com/embed/34mfI0SsaOs" title="Turn Over Rover Activity Demonstration" frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen></iframe>
### Setup
All you need is a flat, uniform surface to drive on. Different surfaces have different friction properties. This means the tracks will slip differently dependent on where the rover is driving. Some movement blocks such as turn by degrees are calibrated for an average friction. When driving on other surfaces you may need to turn more or less to get the desired angle.
### Heres Our Approach
#### **Stage 1**
Start with an IF Statement. Make the condition our sensor block that checks if the robot is the right way up.
#### **Stage 2**
If our condition is true (the robot is the right way up) we want to use a Set All LEDs block and make all the LEDs green. If our condition is not true (the robot is upside down), use the ELSE part of the IF statement to set all our LEDs to red.
#### **Stage 3**
If we run our code with just an IF statement it will check our sensor once and end the program. We want our robot to constantly check if it is upside down or not and change the LEDs accordingly so we put our entire IF statement in a repeat while true loop.
![](/images/content/900dde-turnoverrover-answer.png)
Example Code