The Mars Rover: Surface Operations Unit will familiarize you and your students with building VEXcode GO projects to solve a problem. The actions of the Perseverance rover and the Mars 2020 Mission are used as inspiration for the challenges the students will work through using VEXcode GO and the Code Base. The projects they create will need to be correctly sequenced to collect samples and 'bury' them.
NASA’s Mars 2020 Mission
NASA’s Mars 2020 Mission addresses high-priority science goals for Mars exploration: life, climate, geology, and humans. The Perseverance rover will be completing surface operations to gather data to help inform the research on the Red Planet.
What is a rover?
A rover is a device designed to move across the solid surface of a planet or other celestial body (like the Moon). Some rovers are designed to transport members of a space crew, while others are partially or fully autonomous robots. These robots are generally tasked with collecting information about the terrain and collecting samples of rocks, dirt, soil, or even liquids.
What are surface operations?
Surface operations are the scientific studies that the rover will be completing on Mars. These are all focused on finding, collecting, and caching geological samples. To begin, Perseverance will look for compelling rocks. A rock could be considered compelling if it has the possibility to have preserved chemical traces of ancient life or to have been altered by an environment that supported microbial life.
After identifying the compelling rocks, Perseverance will drill out a sample, place it in a sealed tube, and cache them on the surface. Depot caching, used during this mission, is where multiple samples are left or buried at the same location. A future mission will then be able to retrieve these samples and return them all together to the scientists on Earth.
What is a sequence?
A sequence is the specific order in which behaviors are performed. An action or event leads to the next ordered action in a sequence. Sequencing is important for the Code Base, because the robot will only move exactly as the commands tell it to.
In this animation, you can see how the project starts with the {When started} block at the top of the project, then each block is executed in order from top to bottom. The Code Base drives forward for 325 millimeters (mm) on a GO Field, waits 2 seconds, then glows a color on the LED Bumper. The green Highlight Feature around the blocks indicates which individual block is running at that moment. This can provide students with immediate feedback to connect the behaviors of the Code Base with specific VEXcode GO blocks.
Steps to Sequence a Project
- First, identify the goal —what needs to be done? For example, drive from the start to the first sample.
- Then, break down the steps needed to accomplish the goal, and identify the blocks needed to accomplish these steps. Here you will need to move forward 325millimeters (mm) to reach the sample, then set the LED Bumper Sensor to glow red to show that it is collecting a sample, wait 3 seconds to collect the sample, then have the LED Bumper Sensor glow stop or turn off to indicate the sample was collected. This can be accomplished with the [Drive for], [Wait], and [Set bumper color] blocks.
- Next, plan the sequence of the project by dragging the matching blocks into the workspace and attaching them to the {When started} block from top to bottom. As each block is added, change the parameters to match the steps broken down previously.
- Select “Start” to test the project and see if the Code Base accomplishes the goal identified in the first step.
If you want to change your project, simply change parameters, or add and remove blocks from the project before testing again.
What is VEXcode GO?
VEXcode GO is a coding environment that is used to communicate with VEX GO robots. Students use the drag and drop interface to create VEXcode GO projects that control their robots actions. Each block's purpose can be identified using visual cues such as its shape, color, and label. For more information on how to work with VEXcode GO, see the VEXcode GO Section of the VEX Library.
The following VEXcode GO blocks will be used in this Unit:
VEXcode GO blocks | Behaviors |
---|---|
The {When start} block begins running the attached stack of blocks when the project is started. | |
The [Drive for] block moves the Drivetrain forward or in reverse a given distance. Set how far the Drivetrain will move by entering a value into the oval. | |
The [Turn for] block turns the Drivetrain for a given distance. Set how far the Drivetrain will turn by entering a value into the oval. | |
The [Wait] block waits for a specific amount of time before moving to the next block in a project. | |
The [Set bumper color] block sets the color of the LED Bumper. |