Presentation is loading. Please wait.

Presentation is loading. Please wait.

Introduction to Programming

Similar presentations


Presentation on theme: "Introduction to Programming"— Presentation transcript:

1 Introduction to Programming
Developed in collaboration with Automation and Robotics VEX © 2011 Project Lead The Way, Inc.

2 ROBOTC Start Page Displays the latest ROBOTC news, version of ROBOTC, and ROBOTC Resources

3 Platform Type We will use Natural Language PLTW for this class. Allows you to toggle ROBOTC’s programming modes. The selection will enable features and commands specifically for the selected system.

4 VEX® Cortex Download Method
Allows you to specify: How programs are downloaded. Whether the Cortex looks for a VEXnet connection when it starts up. “Download Using VEXnet or USB” is always the safe choice, but the Cortex will look for a VEXnet connection for up to10 seconds before running code. Unless you upgrade your GTT kit, you will always use the Download using USB only.

5 Sample Programs To generate the Natural Language Function Library, go to File, Open Sample Programs, PLTW, PLTWtemplate. Students must get used to using the PLTW template for all of their programs.

6 Text Function Library The Text 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.

7 ROBOT Motion Commands that cause the entire robot to perform a behavior. We won’t use this in GTT class.

8 Setup Allows you to specify what type of robot configuration you have from pre-specified models (RECBOT, Swervebot). Will not use in GTT curriculum.

9 Movement Commands that allow you to control individual motors / servos. GTT kits do not include Servo motors, so make sure that students do not use that option.

10 Special Commands that control the more unique VEX® Hardware – LEDs and Flashlights. Flashlights not in GTT kits.

11 Until Commands that allow you to create behaviors where the robot acts “until” a certain event. For example, Button Press Potentiometer Value

12 Wait Commands that wait for an elapsed amount of time in seconds or milliseconds.

13 ROBOTC Help Includes in-depth explanations about ROBOTC installation, commands, debugger, etc.

14 Help Documentation Additional detail about the Natural Language commands can be found in the ROBOTC Help under “Natural Language Function Library”.

15 Motors and Sensors Setup Menu
Presentation Name Course Name Unit # – Lesson #.# – Lesson Name Motors and Sensors Setup Menu See additional slides in Connecting VEX® to ROBOTC.ppt if necessary. Allows you to configure and name all of the motors and sensors connected to your Cortex.

16 Motors and Sensors Setup Menu
The information in ROBOTC Motors and Sensors Setup should match the schematic on your project lab sheets.

17 Comments Comments are used to make notes for the human programmers.
// Single line comment – everything after “//” is ignored by the ROBOTC compiler.

18 Comments /* Multi-line comment*/ - everything between the “/*” and “*/” symbols is ignored by the ROBOTC compiler. Single line and multi-line comments give important information to the programmer and others who read the program and need to understand the logic. The program, ROBOTC, totally ignores the comments as long as the symbols are present.

19 Let’s start a ROBOTC Program
Presentation Name Course Name Unit # – Lesson #.# – Lesson Name Let’s start a ROBOTC Program Teacher should create a VEX® test bed for demonstration purposes. Student teams may also have a VEX® test bed to work with.

20 ROBOTC Practice Program
Open a Sample Program. Go to File, Open Sample Program, PLTW, and then PLTWtemplate Teacher Notes: This slide is meant to be a class activity that allows students to actually get some guided experience with the ROBOTC interface, ROBOTC Commands, Cortex system, etc. The steps should be: Open ROBOTC Verify the Platform Type is set to Natural Language PLTW and the Download using USB option is on Open the Sample Program, PLTW Folder, PLTWtemplate Demonstrate, then have students connect a motor to the Cortex (you may want to add an axle, gear, , , , , and standoff to help students see what’s happening) Remind students if they have a 2 wire motor they can connect to Ports 1 and 10 only.

21 ROBOTC Practice Program
Presentation Name Course Name Unit # – Lesson #.# – Lesson Name ROBOTC Practice Program 1. Rename file and save to student directory 2. Complete heading information 3. Describe task Explain the different pieces of the template. Students need to get in the habit of completing the template in this order: Save As and Rename to their own directory immediately with the name of the project. If necessary save to each individual student’s directory within the group in case the primary computer engineer is absent from class. Complete heading information – Teachers may alter this to meet their specifications. Students should describe the task in their own words.

22 Introduction to ROBOTC
GTT - AR Unit 2 – Lesson 2.3 – Automated Systems 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. Additional Details: Pseudocode is used to outline a program before translating it into proper syntax. Helps in the initial planning of a program by creating the logical framework and sequence of the code. An additional benefit is that it can be translated into different programming languages and is therefore somewhat universal.

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 ½ speed for 3 seconds.

24 ROBOTC Practice Program
Presentation Name Course Name Unit # – Lesson #.# – Lesson Name ROBOTC Practice Program Complete Motors and Sensors Setup. Notice the #pragma statements that are automatically generated. For this demonstration: RightMotor – port2 LimitSwitch – dgtl1 BumpSwitch – dgtl2 LED – dgtl12

25 ROBOTC Practice Program
Presentation Name Course Name Unit # – Lesson #.# – Lesson Name ROBOTC Practice Program Convert pseudocode to program code using the Natural Language Function Library to drag and drop commands. Defines the “main task” of the robot. Every program must contain a task main All commands belonging to task main must be between these curly braces Connect the Cortex to the Computer (via USB) Turn on the Cortex Go to Robot > Compile and Download Program Run the program – Observe the motor turn on and off and reverse.

26 ROBOTC Practice Program
Save Program. Connect the Cortex to the Computer (via USB). Turn on the Cortex. Go to Robot then Compile and Download Program (f5). Run the program – Observe the motor turn on and off and reverse.

27 ROBOTC Practice Program
Introduction to ROBOTC GTT - AR Unit 2 – Lesson 2.3 – Automated Systems ROBOTC Practice Program Edit the program to start when a pushbutton switch is pressed and stop when a limit switch is pressed. Edit the program to start when a pushbutton switch is pressed and stop when a limit switch is pressed. Compile and Download the Program. Run the Program – observe the motor starting and stopping based on pressing the switches.

28 ROBOTC Practice Program
Presentation Name Course Name Unit # – Lesson #.# – Lesson Name 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. Don’t forget every open parenthesis needs a closing parenthesis. What is wrong with line 31? Encourage students to read the error descriptions for suggestions on how to fix their program. Once errors are fixed, Compile, download, and run the program again. Line 31 – closing parenthesis is in wrong place – goes after the -63)

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 we’ve configured the motors and sensors, let’s view their values using the ROBOTC Debugger.

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.

31 ROBOTC Debugger Open the Sensor Debug window by going to Robot, Debug Windows, Sensors.

32 Sensors Window The Sensors window will appear and will display all of the values of the configured sensors. 0 = released, 1 = pressed 0 = on, 1 = off

33 ROBOTC Practice Program
Presentation Name Course Name Unit # – Lesson #.# – Lesson Name 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. Have students try to solve this without showing the sample solution first.

34 Resources The ROBOTC Forum: http://www.robotc.net/forums/
ROBOTC.net: The ROBOTC Forum: VEX Cortex Video Trainer The FIRE Project: Robotics Academy Trainer Notes: It’s recommended that you visit the different pages and show trainees the materials that are there.

35 References Carnegie Mellon Robotics Academy (2011). VEX Cortex Video Trainer. Retrieved from


Download ppt "Introduction to Programming"

Similar presentations


Ads by Google