Techxellent Training Solutions

INCURSIONS & P.D. FOR SCIENCE, MATH'S & I.C.T.

IN ROBOTICS, CLAYMATION, GAME MAKING & SYSTEMS

Your in-school specialist without the long-term expenses!

General Teachers PD Student Incursions Bookings Equipment Web Links Curriculum The Robots Robot Gallery Resources Downloads Teachers Group Free Sessions Conference Notes First LEGO League For ChildrenYour Trainer Site Map Non EducationalContact Me

RESOURCES & LINKS FOR

FIRST® LEGO® League 2011

AND GENERAL ROBOTICS

Overview

To date, all the FIRST® LEGO® League challenges have required that the robot gets to a specific position / item on the mat, lifts / pushes / pulls / carries a particular item, places the item in a specific position / returns to home base, ability to avoid specific items / positions on the mat, traverse unusual surfaces such as hills or rollers (this part is also a building challenge). Without accuracy it's impossible to complete a mission.

If teams prepare these skills in advance of the new year's mat being available they will be well placed to launch their team into the new challenges. Many of the tools and links on this page deal with these skills



FLL 2011 FOOD FACTOR RESOURCES

The 2011 Project and Challenge details will be released world-wide in September yearly, until then there's plenty you can prepare

Melbourne Forms

Competition Day Information

Interview Planning Form

Announcers Form

Melbourne Grammar, Grimwade House Map

FLL media release form (must be signed)


2011 Rules and Documents

General Link for mentors : manual from firstlegoleague.org

Core Values - Make sure you read this

General Rules

Food Factor Score Sheet .xls

2011 Details and Tools

FLL media release form (must be signed)

Rules updates

The Complete Challenge, links to rule updates

YouTube Video explaining the challenges

Home Base Robot Register Tool

Food factor Building Guide for elements, includes update

Programming sequence planning sheet


Planning and Programming Hints

Programming NXTg

Programming NXT for FLL - Accuracy on the Mat

firstlegoleague.org's programming hints

Though the official FIRST® LEGO® League web sites offer excellent information and resources some teachers who are new to robotics and/or FIRST® LEGO® League may feel more reassured if they have access to more structured material. Please use your discretion as to how much/little you actually provide your students with.

These associated worksheets and teachers notes are provided as information and guidance for teachers and mentors to give you a starting point and the confidence that these tasks are achievable; they also provide some clues if the students come to a stale-mate. They are not intended as “how-to” instructions for students, please use this information sparingly and with consideration for the FIRST® LEGO® League rules and ethics, it should be the students work. Your students will probably come up with many better and different solutions. Please read the teachers notes in conjunction with the field set-up and rules as they work together synergistically.

The robotics missions on the FIRST® LEGO® League mat all rely heavil y on the ability to get the robot accurately to a place on the mat where it can carry out the designated action.It's important that you are able to program movement with accuracy. The best method of doing this is by using motor degrees. Strangely, even though you are using degrees, the NXTg software sensor blocks often require that you select the ROTATION sensor and then configure it to monitor DEGREES.


Download the .pdf that explains using the 5 program samples below and programming degrees for robot accuracy.


Automatic degrees:distance reader NXT programs

Distance to Degrees - programming Tools The following links to 5 NXTg sample programs that provide a method of getting the robot to measure the distances it needs to travel for specific distances on the FLL mat. Each program will move the robot until you press the touch sensor. It will then display the distance travelled as a degrees reading on the NXT LCD screen, so be ready to write down the readings.


Measure and show degrees for straight lines forwards

Measure and show degrees for a spin ( turn)left

Measure and show degrees for a spin ( turn)right

Measure and show degrees for straight lines backwards

Measure and show degrees for a wiggle line (edge) follower


I've also included 2 My Blocks that you can use to reset the degrees sensor for motors B and C and a My Block that stops B and C and then shows the degrees readings for motor B and then motor C. To use these My Blocks in your programs you will need to paste them into the NXT software following this path -->LEGO Creations-->MINDSTORMS Projects-->Profiles-->Default-->Blocks-->My Blocks. Once copied into this folder these My Blocks can be accessed from your NXT software by clicking the My Blocks tab

Using these programs to work out distances - degrees has a number of benefits over other more manual methods and is faster and easier to modify. Read the explanation here.

OR - The following .pdf worksheet provides a clear programming guide to using degrees to accomplish accurate positioning using mathematical methods.

WORKSHEET - Exact Control - programming using degrees using NXTg software and the NXT robot

Exact Control - programming using degrees using RoboLab 2.9.4c and NXT robot

Also : Both these documents contain more advanced programming hints for line following and using the Ultrasonic sensor

Once you have calculated a 'key' for your robot you can use this key to calculate exact turns, being able to turn accurately is essential for FLL. This worksheet will explain how

Circle, arc , degreess.pdf

Here's another tool that contains a number of Excel worksheets with all the formulas and explanations to assist you with programming distance to degrees

Calculate Degrees.xls

What about this for FLL? Odin is a robot that estimates its own position while it moves using odometry. In order to do that it measures as precisely as possible distances traveled and orientation of displacement. Its mechanical structure is well suited for that: when traveling it rolls on four parallel wheel so it is able to go very straight. For turning, it raises itself on a central pivot, turns around it and goes down, ready for the next move


Registering your Robot's Start Position Inside 'Base'.

Programming accurately is only part of the story, logical , creative thinking is also required to physically position the robot in the same position inside "Base" so that your accurate measurements have the chance to work consistently. Students often don't get this concept so you will need to explain carefully and enforce this discipline.

 

Base

Some students use LEGO® elements to create a 'jig' to measure placement of their robot, others use the markings conveniently provided on the mat to accurately "register" where the robot's starting position is for each task

To assist with this process you can download sheets and tools that the students can use to record where they are taking measurements from and where they are placing the robot inside base

Another tool that you can either download and use or ask your students to make their own,it's a "Mat Map" where students can mark in their robot's paths, measurements and turns. Please note that it's not to scale so students will need to make the measurements on the mat itself.

Use this link for some great program samples

From Techxellent Training - Many of these programs are explained in the Exact Control , Let the Robot Tell You and Line Following Lab documents

Note these samples were written using NXTg Version 2. Users of earlier versions of this software will be able to open these samples but they will not download into the NXT brick, you will have to copy the program using your version of the software and then download it.

Line Following Lab

Download the instructions

NXT Programs

Wiggle line follower - Note, if you use a line follower you will still need to control how long the robot follows the line for ( duration). As a wiggle line follower runs the drive motors alternating you can't use standard degrees-distance calculations.

Automatic line follower - data hubs and variables

These programs removes the human element from taking light readings for the line, the robot does it by itself.

Line Follower - 1 light sensor, automatic calibration

Line Follower - 2 light sensors, automatic calibration

Line Follower - 2 light sensors, auto calibration and auto degrees read

Line Follower- 2 light sensors controlled using a loop for degrees block

One of the strange behaviors of NXT G programming is that you need to add sounds after the wait for press blocks. If you don't then the auto calibration doesn't appear to work



Count and Compare

Wall hugger with ultrasonic sensor follow the wall

Automatic wall hugger get the robot to calibrate the ultrasonic sensor and then follow the wall



Automatic Distance to Degrees Program Tools

These programs gives you a way to easily plot and measure distances that you want your robot to navigate using Move and Motor blocks that use degrees as their duration

Automatic distance - degrees - straight lines

Automatic distance - degrees - backwards

Automatic distance- degrees - Right spin turns

Automatic distance - degrees - left spin turns

Automatic distance - degrees -for line following

My Block - Reset degrees sensor on motors B and C

My Block - Show the degrees reading for motor B then motor C on the NXT screen


Getting the NXT robot to travel straight

Travel Straight: In an ideal world all the NXT motors should be the same and have the same performance; however, in practice this is rarely the case. For whatever reasons, programming both NXT motors in a vehicle to travel for 1000 degrees will not always result in the same distance of travel for both motors; hence your robot may pull left or right depending on the severity of this variation.

If your robot's motors are not a perfect pair, despite having programmed them using degrees to travel straight for the same number of degrees, the robot may be crooked. Worse still the further your robot travels the more crooked it will become. i.e. If a robot programmed to travel 45 cm (900 degrees on a perfect robot) straight actually veers a little crooked, this crookedness will be magnified if the robot needs to travel 90cm (2 times worse!).

One solution to this problem is to travel long distances in a sequence of small distances and re set your degrees sensor between each segment. Have a test of this program and compare the robot's straightness against a long straight distance that isn't segmented.

You can further improve your chances of actually going straight by pairing your drive motors so that their performances are equal. To do this most effectively you need to reduce all the variables that can influence motor performance such as weight, wheel size, NXT brick, battery strength e.t.c.

Devise a simple vehicle that is powered by one motor only and charge the NXT battery. Program this vehicle to travel 900 degrees and accurately measure the exact distance down to the mm that the vehicle travels. Repeat this at least 4 times and record your measurements. Change the motor and repeat the experiment until you find two motors that have the exact same distance for 900 degrees. These are the two motors you will use in your competition robot as they have the exact same performance. Download the following program and .pdf for more information on traveling straight.

NXT program - travel straight

Pdf. Techniques for traveling straight

 


RoboLab 2.9.4c Programming Software

From Techxellent Training For NXT Robots

Many of these programs are explained in the Exact Control RL 2.9 worksheet

NXT turns

NXT turn types

Synchronise Motors

Go straight over a longer distance program and read the explanation for this program, the logic is the same as for the NXTg programming

Synchronise Motors, de synchronise and turn

Wiggle line follower

Automatic line follower 2

Automatic wall follower - containers and event

Wall hugger with ultrasonic sensor

Loop while

Automatic wall hugger2

Automatic wall hugger with loop while

Count and Compare ( Containers)- Use the intersecting black lines on the main line to the grey loop to help position your robot to push the lever on the crash test truck

Have a look at the behaviors sub menu on the palette, you will find the line follow and distance behaviors extremely useful as they have been "tweaked" to speed up the NXT motors responses. Even though there's an RCX brick icon there it still works for the NXT but you will need to change the sensors to NXT sensors


RoboLab - RCX Users Tools

Using Robolab with the RCX bricks is an option for students competing in FIRST® LEGO® League. However, as all the challenges are initially positional, i.e. getting the robot to the correct spot on the mat to execute the required action; RCX users will require 2 rotation sensors attached to both driving motors.

 

By attaching a rotation sensor to each motor you will be able to more accurately direct the robot to a given position on the mat. Download the following information to assist you with programming the RCX using the rotation sensor

rotation sensor

 

The angle sensor is a digital sensor. Using the RCX brick and ROBOLAB software it can measure direction of rotation, number of rotations, angular velocity, and angles. The angle sensor has 16 positions per revolution and can rotate 360° at maximum 500 rpm. The accuracy of this sensor is somewhat less than the NXT rotation sensor that has 360° positions per rotation. The Melbourne competitions will make allowances for schools using this older equipment

Exact Control - RCX using the rotation sensor

Rotation & Turns- Robolab programming sample in Inventor 4

Open the program above in RoboLab Inventor 4, If the black background screen appears click on WINDOW --> Show Block Diagram, to see the program



More Advanced NXT g Programming

Using Data Hubs .pdf

Creating and Using Variables .pdf

Creating a My Block .pdf

Automatic distance - degrees readings

Subscribe to this live feed for a super assortment of NXT programs

 


OTHER USEFUL LINKS

My web site contains plenty of links to other web site's that have useful programming and building ideas for NXT.

Download the NXT v1.28 firmware created on 12/8/09 from LEGO® Engineering

Click here for programming links



FLL Building

Click here for more building links

Build a NXT Fork Lift

Video, another Fork Lift

Another Fork Lift, note the gear rack elements

https://sites.google.com/a/mcpsweb.org/bms-technology-ed/pictures-video/josh-nxt-forklift

http://us.mindstorms.lego.com/en-us/Community/NXTLog/DisplayProject.aspx?id=17920eac-b065-47c3-983b-41ba593da9c5">This clever fork lift uses a LRGO caterpillar tread

Try this link at LEGO® Engineering for some building inspiration

This multi bot design provides heaps of flexibility for FLL

5 Minute Bot

Stable Robot ( Techxellent Training)

Here's a great selection of building projects

More NXT building projects

A simple robot from Australia's Damien Kees

More building options

http://www.legoengineering.com/library/cat_view/30-building-instructions/38-nxt-based-creations.html

The 2011 Food Factor Challenge has been designed in such a way that students will be forced to consider a wider range of building options.

I'm including some details on some additional NXT elements that should increase students building options. It should be noted that if you use the caterpillar treads, each hub requires 2 x 24 tooth gear wheels to mesh inside the hub

These parts are available in a single element type ( 2/4/5 or 10 pieces) from MOORE EDUCATIONAL and navigate to the customer service items from the menue on the left

Caterpillar tread 717 & Belt 716

Grey Double Snap 746

Grey Technic Double Cross block 735

Grey Angular beam 90 degrees with 4 pegs 782

From my perspective I feel that this particular element is the most valuable addition to your sets for FIRST® LEGO® League, it makes changing the plane of your construction extremely simple, great for adding robotic claws etc. please phone to place your order as this item is not listed on the web site phone (03)9372 8728 (Victoria) 2009 price is $5.00 for 10 exc. delivery and g.s.t.

Black Module bush 731

The 9648 NXT resource set contains the above elements as well as the following elements that I find particularly useful. The large white spoked wheel with tyre is available in a limited quantity from Moore Educational, please phone to place your order as this item is not listed on the web site phone (03)9372 8728 (Victoria) :

 

Moore Educational For Spare parts

Consider using some of the more un-usual pieces from other educational LEGO sets such as these sails and flat pieces

Sails

Have a look at some of the building ideas that the boys at Melbourne's 2008 eTrain came up with

PHOTOS - FIRST® LEGO® League 2008 at eTRAIN


Technical Help


Help! My NXT Brick Is Out Of Memory

As FIRST® LEGO® League competition requires students to have several NXT programs loaded onto their NXT brick at any one time I have had some questions regarding the NXT bricks memory and the download message "NXT Brick is out of Memory" Follow the link below to download the "Writing Efficient NXTG Code" from LEGO® Engineering, this should assist you with this issue as for FLL students will have several programs stored on their NXT bricks. (If you are using the RCX or RoboLab with a NXT brick, memory will not be a problem)


LEGO® Engineering has produced a handy document that gives you hints on how to manage the NXT memory, click here for this link

The US FIRST® LEGO® League site also has a very informative document on this subject, downloadable from their site

NXT Firmware & NXT Software versions

Download the NXT v1.28 firmware created on 12/8/09 from LEGO® Engineering

Note that if you are changing from the computer that you originally wrote your FLL programs on to a different laptop for the competition that NXT programs written in versions later than version 1 may not be down-loadable from an earlier version of the software and vice versa. To make sure that everything works on the day use the same version of the software that you wrote your programs on.

LEGO has updated the NXT education software 3 times since it's original release. Each new version has improved functionality so you are best served using the latest version of the software. Older software can be updated a little by installing the latest FIRMWARE. ( see above) but remember to install the firmware on the computers you will use at the competition.

Buy NXT version 2.1 software

Help! My NXT brick isn't working.

Your brick probably has NXT clicking syndrome. Don't worry, it's fixable. Download this document to show you how to re set your brick


Other Technical Tips

Tech Bricks has a page of very useful information, especially regarding the motors.



 

Page updated October 2011

 

Please note that these worksheets are not endorsed or sanctioned by LEGO® , FIRST® or FIRST® LEGO® League