Developed in collaboration with Introduction to
Programming
Slide 2
ROBOTC Start Page Displays the latest ROBOTC news, version of
ROBOTC, and ROBOTC Resources
Slide 3
Platform Type Allows you to toggle ROBOTCs programming mode
between the Natural Language (VEX Cortex), VEX Cortex, and the VEX
PIC; enables features and commands specifically for the selected
system Select Innovation First, then Natural Language
Slide 4
VEX Cortex Download Method Allows you to specify: 1.How
programs are downloaded 2.Whether the Cortex looks for a VEXnet
connection when it starts up
Slide 5
Sample Programs To generate the Natural Language Function
Library, go to File, Open Sample Programs, PLTW, PLTWtemplate
Slide 6
Function Library The Function Library will be populated by all
of the Natural Language commands. These can be drag-and-dropped
into your program. Place you cursor over the commands for more
details about each one.
Slide 7
ROBOT Motion Commands that cause the entire robot to perform a
behavior
Slide 8
Setup Allows you to specify what type of robot configuration
you have from pre- specified models (RECBOT, Swervebot)
Slide 9
Movement Commands that allow you to control individual motors /
servos
Slide 10
Special Commands that control the more unique VEX Hardware LEDs
and Flashlights
Slide 11
Until Commands that allow you to create behaviors where the
robot acts until a certain event. For example, Button Press
Potentiometer Value
Slide 12
Wait Commands that wait for an elapsed amount of time in
seconds or milliseconds
Slide 13
ROBOTC Help Includes in-depth explanations about the ROBOTC
interface, commands, debugger, ect
Slide 14
Help Documentation Additional detail about the Natural Language
commands can be found in the ROBOTC Help under Natural Language
Functions
Slide 15
Motors and Sensors Setup Menu Allows you to configure and name
all of the motors and sensors connected to your Cortex.
Slide 16
Motors and Sensors Setup Menu The information in ROBOTC Motors
and Sensors Setup should match the schematic on your project lab
sheets.
Slide 17
Comments Comments are used to make notes for the human
programmers // Single line comment everything after // is ignored
by the ROBOTC compiler
Slide 18
Comments /* Multi-line comment*/ - everything between the /*
and */ symbols is ignored by the ROBOTC compiler
Slide 19
Lets start a ROBOTC Program
Slide 20
ROBOTC Practice Program Open a Sample Program Go to File >
Open Sample Program > PLTW>PLTWtemplate
Slide 21
ROBOTC Practice Program 1. Rename file and save to student
directory 2. Complete heading information 3. Describe task
Slide 22
Pseudocode Pseudocode is a shorthand notation for programming
which uses informal programming structures (if touch1 is pressed)
verbal descriptions of code (move forward, stop) Emphasis is placed
on expressing the behavior or outcome of each portion of code
rather than on correct syntax (it should be reasonable, though).
Your lines of Pseudocode should also be listed in the same order as
they will appear in the ROBOTC Program
Slide 23
ROBOTC Practice Program Write pseudocode turn the motor on for
3 seconds at full power, then off for 10 seconds. Then back on for
3 seconds at speed, off for 2 seconds and reverse at power for 3
seconds.
Slide 24
ROBOTC Practice Program Complete Motors and Sensors Setup
Notice the #pragma statements that are automatically generated
Slide 25
ROBOTC Practice Program Convert pseudocode to program code
using the Natural Language Function Library to drag and drop
commands. All commands belonging to task main must be in- between
these curly braces Defines the main task of the robot. Every
program must contain a task main
Slide 26
ROBOTC Practice Program 1. Save Program 2.Connect the Cortex to
the Computer (via USB) 3.Turn on the Cortex 4.Go to Robot >
Compile and Download Program (f5) 5.Run the program Observe the
motor turn on and off and reverse.
Slide 27
ROBOTC Practice Program Edit the program to start when a
pushbutton switch is pressed and stop when a limit switch is
pressed.
Slide 28
ROBOTC Practice Program You may notice warnings or errors. Make
sure you spell motor and sensor names exactly as defined in Motors
and Sensors setup. A ; is needed at the end of each line of code.
Dont forget every open parenthesis needs a closing parenthesis.
What is wrong with line 31?
Slide 29
ROBOTC Debugger The ROBOTC Debugger allows you to view and
manipulate all of the values of your motors, sensors, timers, and
variables. Now that weve configured the motors and sensors, lets
view their values using the ROBOTC Debugger.
Slide 30
ROBOTC Debugger Make sure your robot is connected to your
computer and turned on, and download the program. When the Program
Debug Window appears, press the Start button and make sure the
Refresh Rate is set to Continuous.
Slide 31
ROBOTC Debugger Open the Sensor Debug window by going to Robot
> Debug Windows > Sensors
Slide 32
Sensor Debug Window The Sensor Debug window will appear, and
display all of the values of the configured sensors. 0 = on, 1 =
off 0 = released, 1 = pressed
Slide 33
ROBOTC Practice Program Modify your program so that an LED
comes on when the motor is on, and goes off when the motor is off.
Where in the function library are the LED commands? What do you
type into the (digitalPort)? Compile and Download the program.
Test
Slide 34
Resources ROBOTC.net:
http://www.robotc.net/http://www.robotc.net/ The ROBOTC Forum:
http://www.robotc.net/forums/ http://www.robotc.net/forums/ VEX
Cortex Video Trainer http://www.education.rec.ri.cmu.edu/products/t
eaching_robotc_cortex/index.htmlhttp://www.education.rec.ri.cmu.edu/products/t
eaching_robotc_cortex/index.html The FIRE Project:
http://www.education.rec.ri.cmu.edu/fire/compe
titions/best/http://www.education.rec.ri.cmu.edu/fire/compe
titions/best/ Robotics Academy
http://www.education.rec.ri.cmu.edu/content/ve
x/index.htmhttp://www.education.rec.ri.cmu.edu/content/ve
x/index.htm
Slide 35
References Carnegie Mellon Robotics Academy (2011). VEX Cortex
Video Trainer. Retrieved from
http://www.education.rec.ri.cmu.edu/products/teaching_r
obotc_cortex/index.html
http://www.education.rec.ri.cmu.edu/products/teaching_r
obotc_cortex/index.html