EE202A
Embedded and Real-Time Systems, Fall 2003
Distributed
Light Control Using a Sensor-Actuated Network
Final Report [doc]
Link to our code.
Initial Proposal [doc, pdf]
Detailed Proposal [doc]
Weekly Reports (in reverse order)
Report for 11/21 [pdf]
Our complete progress report is given in the PDF document linked above.
Below are some highlights of where we are in the project:

This is an
example run where the desired light level was set to be 200. At the
start of the experiment, all the lamps go from off to on. This graph
demonstrates the extent to which the light sensor readings are
correlated in our particular configuration. Adjusting lamp 0 affects
Mote 0 almost exclusively, though Mote 3 is slightly affected. Lamp 1
affects all the Motes almost equally. Lamp 3 affects Mote 3 with little
impact on the other sensors.
Report for 11/14 [pdf]
Our complete progress report is given in the PDF document linked above.
Below are some highlights of where we are in the project:

Above is our current set up for testing one sensor. We have three
different kinds of lamps surrounding a single Mica2 with a light sensor
attached. The sensor data is collected wirelessly by a nearby work
station. The lamps are controlled wirelessly via X10 from the same
workstation.

This graph shows one run of our centralized algorithm. The Y-axis is
the raw light reading from the sensor, which can range between 0 and
1023. Each line along the X-axis represents about 2.5 seconds of real
time. The desired light setting was set to be 200. The lowest reading
possible with the set up was about 275, due to the ceiling lights. So
this shows the system eventually turning off all three lamps in an
attempt to reach a reading of 200.
Before time X=750, the lamps were all turned off.
At time X= 1750, the system was turned on. At start up, all three lamps
are immediately turned on.
Between X=1750 and X=1950, Lamp 2 was dimmed to its lowest level.
During the first six seconds, the lamp was dimmed all the way down.
However, since our system is not able to directly query the brightness
of the lamp, it tries to continue dimming until it gives up about
another six seconds later.
Between X=1950 and X=2150, Lamp 3 was dimmed to its lowest level.
Again, for the first half, it went from full bright to full dim, and the
second half of the time the system tried to dim further, but could not.
From X=2150, Lamp 1 was dimmed to its lowest level. Since this was the
smallest lamp, it had only a small affect on the light sensor.
NOTE: The ordering of the lamps that the system uses is hand
configured. If we have time, we are interested in implementing a
discovery phase where the system learns the degree to which specific
lamps affect specific sensors. This will allow the system to choose on
its own the right order to adjust the lamps.
Report for 11/07 [doc]
Report for 10/31 [doc]
Useful References
[1] Markus P. J. Fromherz and Warren B. Jackson, "Force allocation in a
large scale distributed active surface", IEEE Trans. on Control Systems
> Technology, vol. 11, no. 5, Sept. 2003, pp. 641-655.
[2] Sinopoli, B.; Sharp, C.; Schenato, L.; Schaffert, S.; Sastry, S.S.,
"Distributed Control Applications within Sensor Networks", Proceedings
of IEEE, August 2003.
[3] Bottle Rocket X10 Utility, <http://mlug.missouri.edu/~tymm/>.
[4] L. Kleinrock, "Distributed systems", Commun. ACM, vol. 28,
no. 11, 1985, pp. 1200-1213.
[5] Xerox PARC Large Scale Distributed Control Project <http://www2.parc.com/spl/projects/ldc>
[6] Feng Zhao, Chris Bailey-Kellogg and Markus Fromherz, "Physics based
encapsulation in embedded software for distributed sensing and control
applications", Proceedings of IEEE Special issue on Modeling and Design
of Embedded Software, vol. 91, no. 1, Jan 2003.
[7] K. Lerman, A. Galstyan, "Agent memory and adaptation in multi-agent
systems", Proceedings of the second international joint conference on
Autonomous agents and multiagent systems, July 2003, pp. 797-803.