CS
G250:Wireless Networks Fall 2007 Sensor Network Project |
Due Date:
Friday, November 30 |
In this project, you will
program a network of wireless sensor nodes. The code will be
developed over the TinyOS operating system and will run on a number of Tmote Sky sensors
that we have acquired recently. The assignment can be entirely
developed and simulated on your home machine using the simulator
TOSSIM, that is available with the TinyOS distribution. You can
work on this assignment in groups of 3. Each group will get 2
sensor motes to play around. These will not be enough for testing your
code properly, but it is enough to learn basic programming steps and be
able to see simple programs in action. For the project, you can
simulate your code on your home machine using TOSSIM. Once your
code works well on the simulator, we can test it in the lab with a
larger collection of motes (10-12). Here is some warm-up work to help you prepare for your sensor programming project. |
I. Installation You can get Moteiv toolkit installation CD from Tao Jin (@WVH208) The installation guide comes with the installation CD or you could be download it from here. Please note that we have limited number of motes and they are expensive, so please take good care of your motes and make sure you return the mote in working condition at the end of the semester. When you plug the mote to usb interface, the mote doesn't need battary, since the power could be provided through the usb. |
II. Getting started We strongly recommend you to test your installation after you complete step 1. You could try installing Blink application to your motes. Blink is a very simple nesC application provided by TinyOS. You could install it by going through the following steps. connect 1 mote to the usb interface on your machine. (As to how to install the driver, please refer the quick start guide of moteiv) $cd /opt/tinyos-1.x/apps/Blink $make tmote $make tmote reinstall,1 The LED blinking very quickly indicates that program is being written to the mote. After the program is completely installed on the mote, the Blink application will be automatically executed. The LED on the mote will bink every 1 second. Another application named Delta, is mentioned in the "Tmote Sky Quick Start Guide". |
III. Go through the
TinyOS tutorial |
IV. Toy project using
two motes You have the first mote do light sensing. You could use the TSR interface provided by HamamatsuC component.(For detail about how to use the components, please check the tutorial or reference) If the light level is above a certain threshold, this mote will notify the second mote via radio, so that the second mote will turn on its LED. If the light sensed by the first mote is below some threshold, it will send the notification to the second mote, and that mote will turn off the LED. This project is NOT required, thus won't be graded. However, this would definitely help you prepare for the final project, since you would know better about nesC, radio communication, multihop, sensing data collection, etc. after you are done with this toy project. |
V. Sensor Programming
Project The goal of the sensor project is to set up a shortest-path spanning tree over the nodes reachable from a central node. After the whole network converges to the static topology, the network should support the following features: |