Project \* ((Sun SPOT) + Blackbox) = Good Vibrations
By pmonday on Feb 22, 2007
Bad pun and terrible math to start the day off, my apologies. Sensors are an integral part of Project Blackbox. During the Project Blackbox tour, we are working with the Project Sun SPOT team to monitor a variety of information. With the Sun SPOTs installed around the container, we can track a variety of information that occurs in transit as well as when the container is parked. Within the container itself, in addition to the Sun SPOTs, we also have
- The GPS unit (that was discussed earlier)
- A variety of wired sensors and wired controls that are active in the container is "turned on" (I will blog about these another day)
The Sun SPOTs are useful on the tour because they have a battery on board and 512K RAM with 4MB of flash memory. Two of the Sun SPOTs on board have an additional 2MB of flash memory for logging data (data is logged in a mirrored/RAID 1 fashion). The RAM and flash memory are used to record data throughout the tour. This data is then downloaded at various stops and the flash is cleared for the next segment of the tour. Depending on the "polling interval" of passive sensors as well as the number of jostles and bumps and state changes that the Sun SPOTs go through, the flash can hold enough information for weeks or days.
I view the Sun SPOTs as both a hardware platform as well as a software platform. A Sun SPOT has two boards on it, a processor board and a sensor board. The processor board is made up of
- 180 MHz 32 bit ARM920T core - 512K RAM/4M Flash
- 2.4 GHz IEEE 802.15.4 radio with integrated antenna
- USB interface
- 3.7V rechargeable 750 mAh lithium-ion battery
- 32 uA deep sleep mode
The sensor board is made up of
- 2G/6G 3-axis accelerometer
- Temperature sensor
- Light sensor
- 8 tri-color LEDs
- 6 analog inputs
- 2 momentary switches
- 5 general purpose I/O pins and 4 high current output pins
With the various I/O capabilities on the sensor board, the Sun SPOTs can have additional sensors added. For Project Blackbox, we have 4 Sun SPOT variants
- The basic Sun SPOT that provides the accelerometer (letting us see when the container is jostled hard)
- A GPS that can relay information via the cell network
- A Sun SPOT that can record temperature humidity and light conditions
- Sun SPOTs that function primarily as data loggers
With this type of dynamic hardware platform, you also need a dynamic software platform. The Project Sun SPOT team chose the Squawk Virtual Machine for the programmable runtime on the Sun SPOTs. The Squawk VM is a fully capable Java 2 Platform Micro Edition [tm] (J2ME) Connected Limited Device Configuration 1.1 (CLDC) specification compliant programming platform with Operating System functionality. This platform runs out of the flash memory on board the Sun SPOT and has automatic battery management built in. Because the software platform is standard, you can use NetBeans to build and test your code for the Sun SPOTs.
Now that you understand that the Sun SPOT is a hardware and a software platform, hopefully you can see how the Sun SPOTs located throughout the container can have different functions. The image below (created by Nancy Snyder of Sun Labs) shows how the Sun SPOTs are located throughout the container and their particular function.
Keep in mind that the Sun SPOTs have a wireless radio on board (this uses the 802.15.4 specification for communication, not the typical wireless network protocol) so that the Sun SPOTs can communicate between themselves to form a swarm or simply remain passive until someone brings a laptop in that use the wireless radio protocol to download information. The wireless radio can also be turned off (as some of our customers at various tour sites have requested) and we can use wires to get to the information on the Sun SPOTs.
Once we download the data from the sites, we can analyze the information for trends and understanding what occurred to the container during transit. For example, we are running all of the accelerometers on a 6G scale, but the vibration is measured at all of the points in between (for example, we can see vibration up and down the scale but throw away values under 1/10th of a G). This way, we can see how bumpy of a ride the container is having and adjust our diagnostics and inspections accordingly. Temperature and humidity during transit is also important since the internal environmental network is not running while we are on the road. We don't want to find out the container had 100% humidity and 35 degree temperature and flip the power on.
Many of the sensor capabilities overlap other sensors that are within the container. We have not decided yet if we will keep Sun SPOTs as part of the container configuration but if we do, they can be used to compliment the wired sensor network for a variety of scenarios (powered vs. unpowered, add light sensors and correlate to the wired data, etc...).
Stay tuned for a blog article about the data we've collected! I also have a complete backlog of pictures to post from the tour!