Portal:Lego Mindstorms/Guidelines

From TeamFrednetWiki

Jump to: navigation, search

Contents

Introduction

We are attempting to leverage the 'now-announced' partnership between the X-Prize foundation, Google, Lego, and the First Robotics League. In this, Lego is asking student teams to design a Lego rover that can perform the GLXP roving requirements (albeit with some limitation). What we hope to do is to use our open source, distributed team environment to provide remote operations infrastucture that interested teams can use to put their Lego creations and simulated lunar environment on-line for remote use and operations.

We expect to have a demo set-up similar to that required of the competition available for remote operations with one of several possible vehicles. In some sense, programming team can participate in the program with only a knowledge of the Lego rover programming environment.

We want our development to demonstrate the Team FREDNET philosophy:

  • the power of open source technology
  • the integration of global team for technology development
  • our ability to get something operational on a short time scale
  • increased Team FREDNET brand awareness

Overall Approach

Our architecture consists of:

  1. A simulated lunar terrain for a Lego rover
  2. A Lego rover
  3. A number of web cams to view the setting internal/external to the rover
  4. Data servers to interface the rover to the internet
  5. Software to integrate rover operations and camera data
  6. 24/7 power and operations

As our concept develops, the software should be able to integrate the operation of several rovers operating at different locations. Could we race remote rovers?

Our entire design will be available for people to down load under the open source model. We should also expect people to improve upon the code beyond what we initially provide. Our open source model will include the 'how-tos' on setting up the remote operations and instructions on bringing one's rover 'on-line'.

Server structure


Code Repository

The code for this project and the designs should be stored at our Google Code teamfrednet-lego repository. This is where TFN-lego is storing all their design documents.

Room Guidelines

  1. The initial room size should accommodate competition areas of:
    1. 4 x 4 ft^2
    2. 4 x 8 ft^2
    3. 8 x 8 ft^
  2. The Course shall be re-sizeable as a function of the competition size.
  3. The challenge of the actual course can vary and is subject to the designer
  4. The room shall accommodate a server of dimensions TBD x TBD ft^2
  5. The room shall accommodate a 2 ft perimeter surrounding the competition area
  6. The room shall accommodate over head cabling for:
    1. Rover AC power
    2. The rover camera
  7. The room shall accommodate at least two fixed camera for viewing of the competition area
  8. The room shall provide AC power at TBD kWatts (kVAC-hours)
  9. Nominal operating temperatures are encouraged (i.e. safe shirt-sleeve working environment)
  10. The course shall have uniform and steady lighting conditions with a minimum of shadows


Note on Room Requirements

  • The Red Rover project recommends a circular format to avoid corners where vehicles can become stuck and require manual intervention.

Webcam Guidelines

  1. The facility shall support at least one external web cams and one internal (vehicle) web cam.
    1. External webcam(s) should be fixed (pan/tilt not required. Two or more cams in 2.0 version)
    2. Internal webcam(s) should be fixed (pan/tilt not required. To be supported in 2.0 version)
  2. These cameras will have a recommended 320 x 240 resolution and 15 frame rates inside a 256 kps bandwidth (same as GLXP minimum requirements)
    1. A maximum of 256 kbps bandwith is allowed. Different resolutions or frame rates could be selected depending on compression but limited to the maximum bandwith.
    2. In any case, we recommend a higher resolution of 160 x 120 and 5 frame rates in order to allow the remote command.


Rover Guidelines

  1. The initial vehicle is a three wheel design Tribot
  2. The rover shall have AC power
    1. Power shall be provided by an overhead fixture
  3. The rover shall have an on-board imager
    1. The imager data will be sent via an over-head cable
  4. The rover shall communicate with the server via a blue-tooth connection
    1. The blue-tooth connection can be replace with an over-head data cable
  5. The rover shall execute
    1. Individual commands sent to the rover
    2. Programs of commands down loaded to the rover and executed under program control
  6. The rover shall respond to a stop interrupt


Safing

  1. The Lego Rover shall respond automatically to the environment in order to avoid dangerous collisions.
    • More description required...
    • Isn't this a software and server command?
      • Send basic autonomous commands he can be set to stop when something is close. See Rover Program list


Server Guidelines

Minimum Server Hardware Requirements

  1. A computer operational 24/7
    • Accessible to install required software
  2. Windows XP or higher
  3. Ports suitable for a web camera
    • USB or firewire
  4. Bluetooth enabled
  5. Computational power:
    • 1GHz + 0.5 GHz per (web)camera
    • 256 Mb RAM + 64 Mb per (web)camera
  6. Internet Connectivity:
    • Connection of at least 300 kbit/s upload plus 10 kbit/s/user

Recommended Server Hardware Requirements

  1. Minimum server requirements
  2. Computational power:
    • 1 GHz + 1 GHz per (web)camera
    • 512 Mb RAM + 128 Mb per (web)camera
  3. Internet Connectivity:
    • Connection of at least 500 kbit/s upload plus 20 kbit/s/user

Server Software Requirements

Moon Simulation Environment – Server Requirements: To test and operate robots remotely from the web the server must provide three services:

Server Software version 1.0 Requirements

  1. Support of rover operational modes:
    1. Send individual commands
      1. Rover control buttons (left, right, up, down)
    2. Send individual programs (i.e. load mode)
    3. Start and stop remote rover code (i.e. run mode)
  2. Receive video data and show it to the user(s).
    1. External webcam
    2. Vehicle Cam
  3. A fair access user nickname to manage access to the rover
  4. Simple scoring system

Server Software GUI version 1.0 Requirements

  1. Links to the following pages(please edit pages to provide content):
    1. Site help button
    2. FAQ
    3. Help Contact
    4. Press Inquiries
    5. Who is Frednet
    6. Moon
    7. Main page
  1. A link to a general FAQ page

Server Software version 2.0 Requirements

  1. Receive and process rover sensor data.
    1. Which sensors are applicable?
  2. A scoring measurement system and metric to record robot performance
  3. Support of two (or three) external webcams
    1. Selection of webcam views from the user interface
  4. Add list of NXT server for centralization
    1. server list

Clarification - what does this mean?:

  1. Ability to accept robotics program code and load it onto the robot
  2. An environment manipulator interface to control optional simulation conditions

Server Software version 3.0 Requirements

  1. A version for mobile phone interface
Personal tools