Zero to Hero in Vex Robotics
What you'll learn
- Assemble a test rig with a motor and several sensors
- Understand and apply motor control commands
- Use a variable which stores distance to an obstacle
- Control motor output using sensor input (i.e. keep constant distance from moving obstacle)
- Write functions which move the robot forward a precise number of centimetres
- Write functions to control the movement of the robot arm and claw
- Program the robot to lift and throw objects
- Program the robot with a zig zag line following algorithm
- Perform advanced proportional control line following
- Use feedback to keep distance from objects, this means the robot slows down gradually avoiding braking and falling over
- Use booleans and touch sensor to activate every program with a push of a button once robot is disconnected from the computer
- Combine line following and distance control to follow the line up to an object
- Integrate arm functions with line following to pick up rubbish along a road
- Write a function that scans space
- Program the robot to locate, drive up to and pick up objects which are placed at random locations
- Students need to have a Windows computer or a virtual Windows app running on a Mac
- Students need to install Robot C Available from VEX.com
- Students need to purchase one VEX programming kit or a VEX Virtual Worlds subscriptions
Why Vex Robotics?
VEX Robotics is the ultimate robotics platform: powerful micro-controller (ARM® Cortex®) together with high power high torque motors, precise sensors and a metal frame. Best of all it is programmed in a very user friendly interface (CodeBlocks) using Robot C which is essentially the C programming language with a host of new robotics related functions.
What is special about this course?
In the first module students complete several quite advanced examples of INPUT / OUTPUT programming whereby they control the speed and the direction of a motor by bringing their hand closer to and further from a distance sensor. This task is broken down into the simplest possible steps; in each step students add two to three lines of code, experiment with changing variables and observing the output of the robot. This ensures that they understand not only what each line of code does, but how it does it and what will happen when it changes.
In the second module students create functions that move the robot forward and backward a precise number of degrees. They also learn to control the robot arm, performing both grabbing and lifting. The module contains key concepts like booleans, while loops and various varieties of functions.
In the third module student learn how to follow lines both using a basic Zig Zag algorithm and a much more advanced proportional algorithm which uses a sensor feedback loop. They also use fedback to create a program which gets the robot to keep constant distance between itself and the nearest object.
In the fourth module students apply everything they learned into two advanced tasks, the first of which is to follow a line and pick up cans along the way taking them to the bin at the end of the line. The second is an environment scanner which looks for rubbish (cans) , picks them up and drops them off at the bin.
Who this course is for:
- Anyone familiar with programming and looking to get into robotics
- Anyone who just acquired a VEX robotics kit and is keen to get started
- Robotics enthusiasts looking into the VEX platform
- Robotics Enthusiasts looking to program Robot C
Sanjin is a teacher and a robotics engineer with a passion for teaching Coding and Robotics to school aged children. He has spent more than 5 years teaching various age groups in platforms like Scratch, Arduino, Python, Raspberry Pi and Lego Mindstorms.
He is presently working with over 20 schools in Melbourne to help them implement the Digital Technologies Curriculum in a meaningful manner. This means developing learning sequences that help students easily grasp the core concepts of coding and then setting them up with problems that involve higher level computational thinking and integration with various mathematical concepts.