YOUR SOFTWARE OPTIONS:
™LEGO RoboLab 2.9.4C SOFTWARE
The RoboLab 2.9.4C programming environment can be used to program both /either the RCX and/or the NXT bricks. At right you will see a graphic of the two bricks, both are microprocessors. The NXT brick is the most recent addition to the LEGO robotics range.
I offer an option of both software's. If you wish to use my NXT robots you may select from either NXTg Software or RoboLab 2.9.4Csoftware
ABOUT THE ™LEGO MINDSTORMS For Schools ROBOLAB PROGRAMMING ENVIRONMENT
Students click and drag icons from the icon palette onto the work surface. The icon palette has several layers of icons to select from. Icons representing inputs and outputs are connected in a logical progression that will cause the robot to execute the desired actions
There are a number of differences between ROBOLAB and the NXTg Software, these include
- Connecting icons ( wiring) requires more dexterity
- Usually several icons are required for a single function e.g. Move
- The icon selection is considerably larger.
- RoboLab offers a Datalogging capacity
- Inputting readings ( numbers) requires more dexterity
- Additional icons offer a wider programming flexibility ( Events, containers)
RoboLab visually resembles it's parent LabView more than NXT programming and is generally the choice of students wanting to program at high levels though initially the "mechanics" of manipulating the icons, joining them, finding them and understanding combinations is somewhat slower than NXT g programming
Some students have commented that NXTg is like working with RoboLab sub vi's. The basics of programming remain the same
The programmer must tell the robot:
- Identify what is plugged into the brick ( Input/output)
- For Sensors- Input the threshold reading / number
- Identify the Port the input/output is plugged into
- For Outputs - Direction of motion, speed/ power, for how long
- For Outputs - When to stop and start
Regardless of the number of icons or the programming language used these commands must be placed in a logical sequence that observes certain protocols
For example, if you are working with a sensor your selected icons must tell the program:
- The port the sensor is plugged into
- The threshold reading / number
- The type of sensor
In NXT g programming this takes ONE icon with configuration , whereas in RoboLab programming this can take up to 3 icons
To send the program from the computer to the NXT robot the student will plug the USB lead into the computer and robot and then click the DOWNLOAD button, illustrated at the top left of the screen. Downloading the program takes about 10 seconds. To run the program, remove the USB lead from the robot, press the orange SELECT button on the NXT brick, scroll to find your program and then press the ORANGE button to RUN your program. If you are using the RCX brick the DOWNLOAD process is similar except you will use an INFRA RED TOWER plugged into a USB port and directed to face the RCX's Infra Red Window ( receiver), this is not a physical connection but serves the same purpose. Click the DOWNLOAD arrow and the program will be sent to the RCX brick
Like NXT g programming, In most instances the RoboLab programming icon includes graphics that illustrate the function of the icon
ROBOLAB
The graphics below illustrate the NXT robots "physical sensor" and an example of a RoboLab icon for each sensor
NXTg
COMPARISON: The graphics below illustrate the NXT robots "physical sensor" and an example of a NXT g icon for each sensor
If you are using the RCX brick and RoboLab programming the programming icons will resemble the actual RCX hardware
MOVE - MOTOR CONTROL
RoboLab does not offer one single configurable MOVE icon, the programmer creates movement by selecting individual motor icons and then attaching additional icons to indicate power, direction and port. DURATION ( Do it for ...time) is a separate combination of icons:
By comparison a single NXTg MOVE icon an be configured to move in several ways without adding additional icons:
The following images illustrate a NXTg Program and a RoboLab 2.9.4C program and compare their method of programming. Both programs cause the robot to move forward straight at a power level of 75 for 7 seconds then stop. NXTg programming only requires 1 programming icon to do this, the icon is then configured at the bottom of the screen to adjust the "Move" attributes. Whereas, the RoboLab software requires one icon per command.This means you use a lot more icons but visually you can se at a glance exactly what the program causes the robot to do. It's a matter of person choice which programming environment you prefer, though I would recommend NXTg for beginners and RoboLab for more experienced programmers who want more functionality
Below: NXTg program with configuration showing attributes


Below: RoboLab program for the same action

Other outputs that can be programmed on the NXT brick are "show graphics ( on the LCD panel) and "play a sound", again the artwork on the icons indicates the function of the icon. The RCX brick has limited "play sound" ability and no "Show Graphics" ability as it is older hardware. The difference between the NXT and RCX Microprocessors could be compared to the difference between a 10 year old mobile phone and those of today!
Lower right shows RoboLab icons that program showing graphics and playing sounds on the NXT brick, their usage is similar to other computer applications that require a location address of files held on a computer
The NXT programming icons are considerably simpler to use:
Other groups of icons called "Structures" serve the purpose of programming commands like "Loop Forever", "Loop while" , IF one thing or another, do this AND this at the same time etc. However, unlike NXT g programming RoboLab structures icons are usually used in a minimum of 2 pairs or more.
Icons are connected together to make a program, similar to a flow-chart The icons are placed along a sequence bar.
Below is a simple program that should cause the basic robot to move forward straight on a power setting of 75 until the sound sensor plugged in on input port 2 hears a sound louder than 89 decibels. The robot will then spin for 7.9 seconds and then stop. This is a fairly basic program that doesn't include any structures such as loops ( repeat for #) , forks ( IF ) or task splits ( AND) .

Still not sure about using NXT / RoboLab 2.9.4c programming environments? Compare this program with a NXT g program that will execute the same actions





















