Multi-Robot Sending a Message

From FIRE Wiki
Revision as of 16:04, 28 November 2011 by Ipflot (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Project Description

This multi-robot project demonstrates how to send a message from one NXT robot to another. The A NXT robot will send a message to the B NXT robot, then the B robot will display that message to its LCD screen.


Hardware and Software Required

  • ROBOTC for Mindstorms 3.0 or later (ROBOTC.net)
  • NXT Microcontroller Kit (LEGO Education) – 2
  • NXTBee Adapter (Dexter Industries) – 2


Teacher Notes

The concepts outlined in this lesson are geared towards an intermediate user of ROBOTC and C Programming languages. Topics covered include:

  • Transmitting and Receiving Data from an RS-485 Device (NXTBee)
  • Using the NXT LCD screen
  • Using External Libraries
  • Students should be comfortable with all material covered in the Teaching ROBOTC for MINDSTORMS curriculum before jumping into any Multi-Robot communication lessons.


Photos

Lesson

  • Setup
    • An NXTBee radio should be connected to sensor port 4 of each robot. The radios on each robot should be paired so that there is communication.


  • Programming
    • The first robot, Robot A is programmed to send a message less to the second robot, Robot B. Robot A will do nothing else besides this and the program will end after sending the message. Robot B is programmed to receive the message sent by Robot A and display that message to its LCD screen.
    • The two robots have different tasks, so there are two different programs. Even though Robot A is transmitting the message remember that Robot B must be waiting to receive the message first.


Video


Robot A Source Code


Robot B Source Code


Follow-up Projects and Discussion Questions

  1. How could you use messages as a way to control your robots' actions?
  2. Try to send a different message depending on certain conditions. Have the A Robot send information about its current status