Files
micromelon-website/content/resources/roaming-rover.mdx
Tim Hadwen 99534e779a Consistent hero layouts, activity page redesign, new content, and YouTube embeds
- Product pages (Code Editor, Robot Simulator): text-left/image-right hero layout
- Related resources capped at 3 items on all product pages
- Making Music activities renamed to I, II, III
- New Maze I/II/III and Sumo I/II/III difficulty-graded activities
- YouTube demo videos restored on 12 activity pages from old site
- Activity pages: two-column hero with coding skills & rover concepts tags
- Blog/news pages: same two-column hero layout with date
- Resource type extended with codingSkills, roverConcepts, tags fields
- Removed raw "Relevant Coding Skills/Rover Concepts" text from activity MDX

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-01 23:56:05 +10:00

40 lines
1.6 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: Roaming Rover"
date: "2021-06-03"
categories: ["Activities", "All"]
tags: ["Iteration", "Ultrasonic", "Motors", "Beginner"]
codingSkills: ["Iteration"]
roverConcepts: ["Ultrasonic", "Motors"]
excerpt: "Learn to avoid obstacles with the ultrasonic sensor."
featuredImage: "/images/resources/roaming-rover.png"
---
Program the rover to move around the room using the ultrasonic sensor to avoid running into obstacles. If the rover detects an object, turn away from the object and keep moving forward.
### Activity Demonstration
<iframe width="560" height="315" src="https://www.youtube.com/embed/aX4v0hLU4zc" title="Roaming Rover Activity Demonstration" frameBorder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen></iframe>
### Setup
When running the exercise, it can often work well to have a small obstacle course setup with flat surfaces like boxes and books for the rover to detect. The ultrasonic sensor works best against flat hard surfaces as it is detecting reflected sound waves. Angled or soft surfaces are harder to detect.
### Heres Our Approach
#### **Stage 1**
Use an IF statement block with a logic comparison block to check if the ultrasonic sensor detects an obstacle in front of the rover.
**Stage 2**
Use the IF ELSE block to turn when an obstacle is detected and drive forward when it is not detected using motor blocks.
#### **Stage 3**
Repeat this behaviour by wrapping everything in a while loop. While true will repeat forever.
![](/images/content/6bfaf0-screenshot-2023-10-31-083156.png)
Example Code