Projects:

Current Projects:
Pinball Project
CNC Router
PIC Computer
LED Sign 2003

Past Projects:
Digital Dancer
PGSI
ACM Scrolling Sign
Cambot
Reconfigurable Computing
SigArch Gaming Console
MPEG-MAN
ACM Scrolling Sign, Version 2
PIC Breakout
Talking PIC
Wireless Sensors

Solar Wireless Sensors

Wireless sensor networks have generated much research interest in recent years as advances in electronics technology have made them feasible. In general, such a network consists of many nodes scattered over an area to provide distributed sensing and data processing. These networks can enable unattended monitoring of physical quantities over large areas on a scale that would be prohibitively expensive to accomplish with humans.

Our wireless sensor nodes, designed for Professor Campbell of the CS department, were designed to test the feasibility of self-powered sensor nodes. Also, they were designed as a test platform for the stochastic sensor nodes being studied by the research group of Professor Doug Jones of the ECE department. Joel Jordan wrote his M.S. thesis about the design of these nodes. The nodes are pictured below.

Sensor node front
Sensor node front side.

Sensor node rear
Sensor node rear side.

Software

The microcontroller used was a PIC18F4320, chosen mostly for its low power consumption features. A few programs have been written to test the sensor nodes in a small network, and these are provided below:

soundbasestation.asm - a sensor network base station. This uses the sensor node debugging board to communicate with a host PC over an RS-232 serial port.
soundsensor.asm - a simple sensor node with a microphone sound-level sensor. When it has adequate power, it transmits a sound-level reading once per second or so. The ID number in the file should be changed and the program reassembled for each node to ensure that each has a unique ID.
relay.asm - a relay node which assumes it is constantly powered and relays all incoming messages. It does not sense anything on its own, but this file could easily be modified to allow this.
debug.asm - firmware for the debugging board, which essentially just converts messages from the sensor node I2C bus into normal RS-232 signals for a PC.
serial_bootload.asm - Serial bootloader for debugging board. This must be loaded onto the PIC18F252 on the debugging board, then the above firmware can be programmed using Microchip's PIC18Fxxx serial bootloader.

Programming the Sensor Nodes

Here's a document describing how to use a microEngineering Labs EPIC Plus PIC Programmer to program the sensor nodes. It also goes through an example program section by section.

Programming the SSN

Base Stations

The document below describes how to use the sensor node debugging board to build base stations. It explains the receiver code in detail.

Using an SSN as a Base Station

Other Files

Design and Implementation of a Stochastic Wireless Sensor Network - Joel Jordan's M.S. thesis about building a solar-powered sensor node (not so much about building a network).
PCB Source Files - Eagle 4.11 printed circuit board source files and bill of materials (tab delimited) for the sensor nodes and debugging boards. These require EAGLE, a free limited-edition circuit board CAD tool.
Tips for Building Sensor Nodes - A short document which explains how to build more sensor nodes.
Known Problems - Problems encountered with the first production run of sensor nodes for Professor Campbell.

9/11/04 by Joel Jordan