Aspirations in Computing Award (for women, genderqueer, or non-binary students with strong interests in computer technology)
V5Code Download Page V5Code Online Compiler (Chromebook)
VEX V5 Education Resources (From VEX)
Coding and Computational Thinking w/ VEX V5 (Carnegie Mellon)
VEX Pacing Guide (Suggested Sequence)
STEM Labs (Large Projects)
STEM Activities (Short Projects)
VEX Leaderboard - page that lets us post scores for in-class competitions.
For a select set of students, I'll be offering college credit opportunities.
Course has to be taken/complete during the fall semester (in order to line up with the Chemeketa grading timeframe)
Course will involve:
All VEX VR content
Advanced Engineering designs - only able to achieve if on an after-school Robotics Team
Teamwork
Engineering Notebook
Advanced Mechanisms
Sensors
Autonomous Driving
Skills Challenges
Grading is based on the content described in the course syllabus
What is a robotic and how is it different from a machine? What is the line between robotics and mechanical engineering?
Youtube - How it's Made - Ice Cream Sandwiches - (Additional How It's Made videos: Playlist)
The following videos are meant to inspire and show the potential of robotics.
Youtube - DimSum Serving Robot (short)
Youtube - 10 Robots make life a lot easier
Youtube - Tesla Bot Update
Youtube - Atlas Gets a Grip
Youtube - Unbelievable Robot Dance
A robot may not injure a human being or, through inaction, allow a human being to come to harm.
A robot must obey orders given it by human beings except where such orders would conflict with the First Law.
A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.
What's easy for robots is hard for humans
and
What's easy for humans is hard for robots
Science ABC - What is Moravec's paradox
British science fiction writer Arthur C. Clarke formulated three adages that are known as Clarke's three laws, of which the third law is the best known and most widely cited. They are part of his ideas in his extensive writings about the future.
The laws are:
When a distinguished but elderly scientist states that something is possible, he is almost certainly right. When he states that something is impossible, he is very probably wrong.
The only way of discovering the limits of the possible is to venture a little way past them into the impossible.
Any sufficiently advanced technology is indistinguishable from magic.
Think about Robotics and especially the advancement of AI since November 30, 2022. How do the advancements of technology really validate Clarke's 3rd law?
What technologies do you use regularly that you use purely off of faith that they'll work, knowing none of the actual science behind the technology?
Artificial Intelligence is a hot topic today. Sometimes it's viewed as good, and sometimes bad.
TED Talk (16 min) - Why AI Is Incredibly Smart and Shockingly Stupid - Yejin Choi
TED Talk (13 min) - How AI will step off the screen and into the real world
Video - MadeVision - How Skittles are Made
For fun - using only basic movement commands, play around with the Castle Crasher & Coral Reef Cleanup playgrounds
The goal of this unit is to familiarize yourself with the parts of the robot before you start building anything.
Using the V5 System Bundle Checklist, make sure you have all the parts necessary for this unit.
The instructions for this unit can be found in "Getting Started" Unit Overview
The goal of this unit is to familiarize yourself with the process of communicating with and programming the robot brain.
The instructions for this unit can be found in "The Robot Brain" Unit Overview
Challenge activity - See if you can get the robot brain to do something interesting...
VEX VR - Distance Drive
VEX VR - Basketball Drills
VEX VR - Find Your Age
VEX Brain - Smiley Face
VEX Brain - Draw Me Something
Simple Challenges for engineering & Sensors:
Add sensors that display their data to the screen
Rotation Sensor - Measure axle rotation (Shaft angle, Shaft Position, Speed of rotation)
Inertial Sensor - Measure angle of rotation (compass - heading & rotation, pitch/yaw/roll, x/y/z)
Distance Sensor - Measure the distance of objects, Determine relative size of object (small, medium, large), Calculate robot speed as it approaches an object.
Sonar Sensor - distances
Optical Sensor - Detect an object, Detect a color, Measure ambient light, Measure hue
Vision Sensor - Video Broadcast, Identify objects, identify colors
Explore the parts in the V5 Starter Kit and the V5 Super Kit (Examine the differences between the kits as well)
Construct the V5 Speedbot
Complete the Driving Configuration Activity
VEX Library - Understanding V5 Smart Motor (11W) Performance
Motor Functions
Additionally, if you're using a typical drivetrain, you can specify it in the device setup and use drivetrain commands that make moving a little easier - especially when adding a controller.
Practice:
Using VEX V5 Code, figure out how to add motors to a blank-slate robot.
Add Motor --> Port 1 --> Name it leftMotor
Add Motor --> Port 10 --> Name it rightMotor --> Reverse its direction
Add code to make the robot
Move forward a certain distance using both motors
Notice, the distance you move forward. How far do you move forward if your motors move 360 degrees? --> roughly 12"
The reason: The diameter of the wheels is 4". Equation for circumference = 2*Pi*r. 2r = diameter. 4"*PI = 12.56" (just over the 12")
Turn using the Swing turn technique (1 motor spins forward, the other motor doesn't move)
Turn using the Point turn technique (both motors spin in opposite directions)
Assignment:
Speedbot - Build
Speedbot - Driving Configuration
Table of times
Individual Reflection (per student)
Group Reflection
Speedbot - BBall Drills
Speedbot - Distance Drive
Speedbot - Hokey Pokey
Robot Soccer
Hungry Hippos
Maze/Obstacle Course speed runs (How fast can you run through a course)
Sumo Bots
Hokey Pokey - Dancebot
Autonomous laps (how many times can a robot circle around a block without hitting the block or going off the path)
This unit will focus solely on learning how to program a robot.
You'll be provided the option to learn how to code using VEX Coding Blocks or VEX Python.
Go to the VEX VR website - VR in this case stands for Virtual Robot
As you go through the challenges below, you'll need to know what the virtual robot is capable of. Use the CS Level 1 - VEX VR Blocks or the CS Level 1 - Vex VR Python lessons to help you learn what the robot can do and how to code it. Add notes to your engineering journal along the way.
Create a program that creates a similarly framed plaid pattern in the "Grid Map" playground. You're welcome to play with the pen's color, thickness, and opacity to make the final image unique to you, but the general layout/flow should match. The robot should draw a final solid border around the perimeter of the drawing to finish the drawing off.
Points:
5 pts - Use at least 2 control statements (repeat, wait, if, while)
5 pts - No more than 50 blocks of code (This was done with 25)
5 pts - Uses the vision sensors to prevent it from moving into walls.
5 pts - Uses at least 1 function that contains more than 1 command in it AND does something useful.
To submit: Copy & Paste your code into the Canvas Assignment.
The engineering journal (which I'll occasionally refer to as your "digital notebook", "engineering notebook", or "digital journal") is a vital part of the Robotics Course - A way to document what you're doing throughout the semester.
*** Consider adding a touch-screen button challenge - when the touch screen is touched in a specific area, change background color to _____ for 10 seconds, then go back to showing button. (https://youtu.be/L4ODKuWHq-A?si=BtqvpUkiqYfV3r6u)
*** Consider replacing the following items with the Software Foundations with VEX curriculum and use the material/labs below for supplemental.
DO NOT FOLLOW THESE INSTRUCTIONS FOR END OF YEAR GAME
We're playing Hungry Hungry Hippos - Robot Style (Robot soccer with 4 goal zones)
Read and take notes in your engineering notebook: Passive Manipulators (Just the part on plows)
What makes a manipulator "passive"?
What is an advantage of a passive manipulator?
Give a real-world example of a passive manipulator.
Sketch in your engineering notebook (sketch on paper then take a picture and upload) a passive
Starting Rules
You must start with an unmodified speedbot (no claw, no motor changes, no special anything). Point deduction if you did not follow the speedbot instructions properly.
You may add 1 passive manipulator (plow, scoop, or other device that allows you to direct the game elements), but no motors can control the passive manipulator (opening/closing, raising/lowering, etc) - otherwise it's not passive.
Your manipulator must be documented in your engineering notebook prior to installation - what is it you're trying to add?
You may not bend or cut anything without first receiving permission from Mr. Birkel.
Any team that violates this gets a point penalty or has to pay for the damaged part.
Many parts exist that are already cut and bent. Lets check to see if something exists prior to potentially ruining existing material.
Hungry Hippos Gameplay
The field has 4 goals, 1 in each corner.
Teams should not enter these goal zones (as much as possible).
Opposing teams are not allowed to remove scored balls from scored zones. If an opposing team removes a team's scored balls, they will be returned.
Teams that remove their own scored balls from the goal (intentionally or not) lose those balls and they're now available for anyone to try to score.
Teams have 60 seconds to score as may balls into their goal zone as possible.
Balls remaining on the field, unscored do not count towards anyone's points.
Your first VEX Lab!
Complete the entire Robo Rally Lab.
All Notes & answers to questions from the lab should be answered in your engineering journal.
Activities (Engineering Journal or Worksheet):
VexCode VR Activities - Can you do them with the Physical Robot?
Freeze Tag Writeup: In your engineering journal
Have a page called "Freeze Tag Observation - [Your Name]
What made this game fun?
What made this game frustrating?
What would have made hitting the buttons easier?
If you were allowed freedom to design the robot to your liking, what would you have done to try to give yourself an advantage while making the button still accessible by another robot on the field?
What addition to the game could make this more fun (obstacles, timers that reenable your robot, not freezing but instead counting every hit and the winner has the least # of hits at the end of the game, etc.)
Copy the slides from the Medbot Engineering Notebook Guide to your Engineering Notebook.
Complete the entire Medbot Lab.
The "Play" and "Rethink" sections cover the material using 3 different programming languages. You don't need to cover all 3 languages. Pick the programming language your group wants to use (Blocks, C++, or Python) and cover the material for that language.
*** Updating the journal should be a balanced effort for all students. If 1 person is doing the majority of the updating, the other students will lose points.
VEX Library - Overview of the VEX V5 Sensors
Assignment: Sensor & Device Exploration
See the "Motors" section in the Speedbot unit. It's important to remember that V5 smart motors are sensors as well due to the fact that they not only put out information (speed, rotation), but they also sense information (See the "Sensing" column in the "Motors" section).
Students will learn the purpose of an inertial sensor and its practical application.
Allows you to track headings (Degrees of rotation) using a built-in gyro - tracks the robot's rotations around an x, y, and z axis.
VEX Library - Using the V5 Inertial Sensor
Heading: a +value between 0 and 359.99.
If a robot is @ 350 degrees and they rotate right 10 degrees, they're at 0, not 360.
Rotation: A value representing the heading as a + or - degree not limited to the same 0-359.99 values.
If a robot is @ 350 degrees and they rotate right 10 degrees, they're at 360, not 0.
The % operator is used like division (/), but instead of calculating the division answer, it calculates what's left when you divide.
Example:
19 / 2 = 9.5 = 9 + 1/2 = 9R1 (9 remainder of 1)
19 % 2 = 1 (because there was 1 leftover)
19 / 4 = 4.75 = 4 + 3/4 = 4R3 (4 remainder of 3)
19 % 4 = 3 (because there was 3 leftover)
When dealing with 360 degrees of rotation, the % operator can be used to show that 365 Degree rotation is the same as 5 Degree heading
365 / 360 = 1.013888... = 1+5/360 = 1R5
365 (rotation) % 360 (degrees) = 5 (heading)
calibrate_drivetrain() - set's the robot's x, y, z rotation to match the current position of the robot and position of the sensor.
set_heading(#, DEGREES) - reset's the robot's orientation - advised to set initial position to 0 degrees most of the time. Angles are limited to 0-359.99
set_rotation(#, DEGREES) - reset's the robot's orientation - advised to set initial position to 0 degrees most of the time. Angles are not limited to 0-359.99
turn_to_heading(#, DEGREES, [wait]) - turn to a specific heading between 0 & 359.99
turn_to_rotation(#, DEGREES, [wait]) - Similar to turn_to_heading, but allows values less than 0 and greater than 359.99
drivetrain.heading(DEGREES) - tells you the current heading of the robot.
drivetrain.rotation(DEGREES) - tells you the current rotation of the robot.
Vex Library - Using the V5 Distance Sensor
VEX Library - Coding the V5 Distance Sensor using Math Inequalities
This sensor replaces the previous VEX UltraSonic sensor.
The ultrasonic sensor would send out a high pitch sound (higher than human ears can detect) which would bounce off of objects, return to the sensor, and the time interval would determine how far away an object was. This was useful, but because sound is a wave, the further the sound traveled from the robot, the wider an area it would travel and detected objects might not be directly in front of the robot. The closer an object is, the more likely it is to be directly in front of the robot.
The V5 Distance Sensor uses a lazer instead of a sound. Because the lazer is a focused light beam, it doesn't spread out like sound does and more accurately determines if objects are directly in front of the robot.
VEX Library - Using the V5 Optical Sensor
Under Construction
Under Construction
Different from Optical sensor - this one's an actual camera
VEX Library:
VEX Library - Using the V5 Rotation Sensor
VEX Library - Using the V5 GPS Sensor
***I don't believe we have any of these parts.
VEX Library - Using the V5 3-Wire LED Indicator
Complete the entire It's a Draw
Continue updating the Engineering Journal as we've done in the past:
Take notes on readings
Answer questions
Take pictures and show the design process/finished products
Post code
Mine Defusal - Setup balls on PVC Pipes, robots need to remove the balls without knocking over the pipes or dropping the ball. Balls need to be transfered to special boxes (that safely diffuse the mine)
Bottle Collect - Collect as many bottles on the field as you can in 2 minutes. Bottles turned into space are worth 1 point knocked over, 5 points standing up.
Obstacle Course bomb locator/defusal
We're playing Hungry Hungry Hippos - Robot Style (Robot soccer with 4 goal zones)
Read and take notes in your engineering notebook: Passive Manipulators (Just the part on plows)
What makes a manipulator "passive"?
What is an advantage of a passive manipulator?
Give a real-world example of a passive manipulator.
Sketch in your engineering notebook (sketch on paper then take a picture and upload) a passive
Starting Rules
If you modify your speedbot, you must keep the materials you started with safe so when we're all done we can get the Clawbot parts back together!
Any modifications to your speedbot must be documented in your engineering notebook - If you haven't added it yet, document it prior to installation. If it's already added, document what you've done now.
You may not bend or cut anything without first receiving permission from Mr. Birkel.
Any team that violates this gets a point penalty or has to pay for the damaged part.
Many parts exist that are already cut and bent. Lets check to see if something exists prior to potentially ruining existing material.
Hungry Hippos Gameplay
The field has 4 goals, 1 in each corner.
Teams should not enter these goal zones (as much as possible).
Opposing teams are not allowed to remove scored balls from scored zones. If an opposing team removes a team's scored balls, they will be returned.
Teams that remove their own scored balls from the goal (intentionally or not) lose those balls and they're now available for anyone to try to score.
Teams have 60 seconds to score as may balls into their goal zone as possible.
Balls remaining on the field, unscored do not count towards anyone's points.
You are responsible for helping clean up the robotics lab and disassembling your robot.
Key points:
The robot claw + robot arm must remain assembled together. DO NOT Disassemble any part of the claw.
All Clawbot parts must be repackaged and any missing components must be identified. Put parts in robot box. Put screws in zipper bags.
Some parts need to be given directly to Birkel
Robotics Lab must be cleaned
Sweep & Separate (with magnet or by hand)
All parts must be put in appropriate places - if unsure where something belongs, ask.
Youtube Channel - Mark Johnston - Lots of Videos on VEX