Introduction to Programming

Introduction to Programming
Developed in collaboration with
ROBOTC Start Page
Displays the latest ROBOTC news, version of
ROBOTC, and ROBOTC Resources
Platform Type
Select Innovation First, then
Natural Language
Allows you to toggle ROBOTC’s programming mode
between the Natural Language (VEX Cortex), VEX Cortex,
and the VEX PIC; enables features and commands
specifically for the selected system
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
Sample Programs
• To generate the Natural Language
Function Library, go to File, Open Sample
Programs, PLTW, PLTWtemplate
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.
ROBOT Motion
• Commands that
cause the entire
robot to perform a
• Allows you to
specify what type of
robot configuration
you have from prespecified models
• Commands that
allow you to control
individual motors /
• Commands that
control the more
unique VEX
Hardware – LED’s
and Flashlights
• Commands that
allow you to create
behaviors where the
robot acts “until” a
certain event. For
– Button Press
– Potentiometer Value
• Commands that
wait for an elapsed
amount of time in
seconds or
Includes in-depth explanations about the ROBOTC
interface, commands, debugger, ect
Help Documentation
Additional detail about the Natural Language
commands can be found in the ROBOTC Help
under “Natural Language Functions”
Motors and Sensors Setup Menu
Allows you to configure and name all of the motors
and sensors connected to your Cortex.
Motors and Sensors Setup Menu
The information in ROBOTC Motors and Sensors Setup
should match the schematic on your project lab sheets.
• Comments are used to make notes for the
human programmers
• // Single line comment – everything after “//” is
ignored by the ROBOTC compiler
• /* Multi-line comment*/ - everything between the
“/*” and “*/” symbols is ignored by the ROBOTC
Let’s start a ROBOTC Program
ROBOTC Practice Program
• Open a Sample Program
Go to File > Open Sample Program >
ROBOTC Practice Program
1. Rename file and save to student directory
2. Complete heading information
3. Describe task
• 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,
• Your lines of Pseudocode should also be listed
in the same order as they will appear in the
ROBOTC Program
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
ROBOTC Practice Program
• Complete Motors and
Sensors Setup
• Notice the #pragma
statements that are
automatically generated
ROBOTC Practice Program
• Convert pseudocode to program code using the
Natural Language Function Library to drag and drop
Defines the “main task” of the robot.
Every program must contain a task
belonging to
task main
must be inbetween
these curly
ROBOTC Practice Program
1. Save Program
2.Connect the Cortex to the Computer (via
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.
ROBOTC Practice Program
Edit the
program to
start when a
switch is
pressed and
stop when a
limit switch is
ROBOTC Practice Program
You may notice warnings or
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
Don’t forget every open parenthesis needs
a closing parenthesis.
What is wrong with line 31?
ROBOTC Debugger
• The ROBOTC Debugger allows you to
view and manipulate all of the values of
your motors, sensors, timers, and
• Now that we’ve configured the motors
and sensors, let’s view their values using
the ROBOTC Debugger.
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
ROBOTC Debugger
• Open the Sensor Debug window by going
to Robot > Debug Windows > Sensors
Sensor Debug Window
• The Sensor Debug window will appear, and display all of
the values of the configured sensors.
0 = released, 1 = pressed
0 = on, 1 = off
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
• Compile and Download the
• Test
–The ROBOTC Forum:
• VEX Cortex Video Trainer
• The FIRE Project:
• Robotics Academy
Carnegie Mellon Robotics Academy (2011). VEX Cortex
Video Trainer. Retrieved from

similar documents