Presentation is loading. Please wait.

Presentation is loading. Please wait.

Steven Bell Team 1519 Mechanical Mayhem www.team1519.org Atlanta FIRST Conference 2005 Teaching To Students.

Similar presentations


Presentation on theme: "Steven Bell Team 1519 Mechanical Mayhem www.team1519.org Atlanta FIRST Conference 2005 Teaching To Students."— Presentation transcript:

1 Steven Bell Team 1519 Mechanical Mayhem www.team1519.org Atlanta FIRST Conference 2005 Teaching To Students

2 Welcome ● Who Am I? – Four years experience with Robolab in FLL – Taught Advanced Robolab workshop in NH – Mentor of four NH FLL teams in 2004 – Programmer for FRC Team #1519, Mechanical Mayhem

3 Overview ● Introduction ● What do students need to know? ● A pattern for teaching ● Student pitfalls

4 Why teach Robolab? ● One of two approved languages for FLL – More powerful than RIS (Robotics Invention System) ● Easier to learn than a text language ● Helps expand thinking skills ● Good for exploring and learning ● Fun and interesting!

5 Robolab vs. RIS Robolab ● More control of variables ● Allows lower-level functions ● Can be extended to other real-world projects – Additional sensors – Data logging – G code – Complex image processing RIS ● Slightly easier to learn ● Comes free with commercial Mindstorms kits ● Puzzle piece syntax reduces errors

6 The Goal ● The goal is not to get students to understand a bunch of commands. ● The goal is to help students learn and discover! ● Robolab is very flexible. Help this to be an opportunity, not a fear factor! Teaching students to use Robolab

7 Background of Robolab ● Created by Tufts University School of Engineering ● Based on National Instruments' LABView – It is a graphical programming language – Facilitates hierarchal design – Includes data logging and analysis functions – Widely used in industry ● Designed for use in the classroom – Pilot and Inventor – Level system

8 What do students need to know? ● How to operate Robolab – Create a program – Save it – Download it ● The syntax of programming with Robolab ● How to use sensors ● Good programming practices ● Debugging ● How to learn more

9 How to operate Robolab ● Starting Robolab – Administrator – Programmer – Investigator ● Using the program vault – Levels – Starting a new program – Files and Folders ● Downloading programs – Hazards

10 Where do I start? ● Don't start with Pilot! – Pilot is even more limited than RIS and has little connection to Inventor ● Inventor 1 and 2 are very limited as well ● Inventor 4 is the best place to start for middle and high school students ● Inventor 1 or 2 can be a better place to start for younger students until they learn the syntax and operation of Robolab.

11 The syntax of Robolab ● Begin and End ● Commands and VI's ● Wiring – Finding the right port – How the wires connect ● Modifiers ● SubVI's and looking inside commands

12 Sensors ● Why sensors are important ● How to use sensors with the RCX ● When to use sensors ● The syntax of sensor wait fors and structures

13 Good Programming Practices ● Keeping the program straight ● Using lots of comments ● Using SubVI's ● Save early, save often!

14 Debugging ● Error list ● Beeps ● Set display ● Interrogate RCX

15 How to learn more ● Context help ● 'More help' ● Double-clicking on commands ● Looking inside commands

16 Good Teaching Practices ● Don't tell students the answers, let them discover it on their own ● Encourage using “help” ● Introduce just a little at a time ● Practice new techniques and commands with an exercise

17 When students get stuck ● Don't tell the answers! ● Ask questions – How can you find out? – What does this command do? – What does this code do? – What do you want it to do? – What is it doing? ● Have the student explain the code to someone else ● Play computer – Pretend to be the robot – Student gives the “robot” commands – “Robot” follows commands exactly: no more, no less

18 A pattern for teaching ● Intro to Robolab – Using the RCX – Operating Robolab ● Basic command palette – Motor commands – Wait for time – Basic Modifiers – Go-Stop exercise ● Sensors – Use of sensors – Sensor wait fors – Variations on the Go-Stop exercise

19 A pattern for teaching (cont.) ● Structures – Jumps ● Shape driving exercise – Forks ● Line following exercise – Loops ● Terminating shape driving and line following exercises ● Subroutines and SubVIs – Subroutines ● Shape driving – SubVIs ● Taking parameters ● Making various subVIs ● Looking inside commands

20 A pattern for teaching (cont.) ● Containers – Line counting – Calculator ● Multitasking ● Advanced features – Direct Functions – RCX communication – Investigator

21 Student pitfalls ● Initial fear of menus, large command palettes, etc. ● Miswiring ● Confusion about commands

22 Getting past the initial fear ● Look at groups of commands ● Explain the organization of the commands ● Start with a tutorial exercise – Start up Robolab – Start a new program – Make a Go-Stop program – Download it Output A Output B Output C Generic output Forward Reverse Lamp Stop

23 Getting past the initial fear (cont.) Explain the organization of the commands Functions Wait forStructuresModifiersMusicResetContainers LoopsJumpsForks Equal Forks Event Modifiers

24 Miswiring ● Common mistakes – Type mismatch – Connecting in and out together ● Proper technique – Move the string cursor over the command – Note the type of wire coming out of it ● Command ● Modifier ● Integer ● Floating-point number ● Container – Connect it to a modifier or command with the same type of wire as an output – If all else fails, right-click and select: create > constant

25 Data types in Robolab Pink: Command Orange: Floating-Point Blue: Integer Green: Sensor Port Maroon: Container

26 Common miswirings Missing a command Mixing up inputs and outputs Connecting one output to two inputs (without a fork or task split) An innocent looking piece of code which could any of the following bugs lurking Multitasking Incorrect Correct

27 Confusion about commands ● Common mistakes – 'Wait for dark' and 'Wait for darker' – 'X' and 'Value of X' modifier ● How to avoid confusion – Look in context help! – Look inside the command and see what it does

28 What if I don't know Robolab? First: ● Learn the basics so you can teach them or ● Find someone who can teach the basics Then: ● Learn advanced features with the students! ● Encourage students to learn and explore on their own

29 Technical resources Online: ● www.lego.com/dacta ● www.ceeo.tufts.edu ● www.firstlegoleague.org ● www.fll-freak.com ● www.team1519.org Books: ● Teachers guides

30 Questions?


Download ppt "Steven Bell Team 1519 Mechanical Mayhem www.team1519.org Atlanta FIRST Conference 2005 Teaching To Students."

Similar presentations


Ads by Google