As noted by our Engineer-in-Chief Charlie Dibsdale, Smart Sensors or compute enabled local sensors can be enhanced by providing them the opportunity to communicate with their peers.
To that end, we need an experiment to take the ideas that Charlie has discussed and craft them into an experimentally viable real world form. If you have read the previous posts about our embedded hardware experiments you can probably see where this going.
Thats right, we are going to take the Arduino platform into the domain of mesh networks and smart sensors. The experiment can be formalized as the creation of a distributed set of devices that each has a different compute resource, different sensors and additional resources that are different from device to device.
Although Arduino devices have been used as wireless sensor nodes in the past, we are seeking to explore how they can work together and be applied to almost any monitoring problem using a common set of libraries. An example of some of the applications for this technology stack are listed below:
- Asset Management via real-time data analytics
- Control systems
There is already much discussion and implementation around this area of wireless sensor networks. For example NHR offer a suite of wireless sensors for industrial applications, the image below shows some of the intent behind this.
The main differentiator for our approach is the openness. We want to create an open source community to Equipment Health Management to allow its propagation to all levels of equipment. So if our goal is to make the humanity an inherently predictive operator of machinery, then our first problem to solve is how to enable useful analytics and resource sharing at the sensor level.
This experiment requires a set of nodes that each have different resources and are able to communicate wirelessly with each other With this in mind, we have created the following Smart Sensor modules:
We are using ZigBee for the primary wireless protocol. Where this is not easily supported i.e. smart phones, then we bridge the gap using Bluetooth Low Energy. This allows the mesh to access the internet via an iOS app.
We are using a mix of different Arduino boards for this experiment since each comes with its own set of capabilities.
None of the Mensors will be physically connected to each other, all data transfer will take place wirelessly.
Configuration of the analytics will done live either from a laptop or iOS app connected to the sensor network.
Hardware built for this experiment is shown below with parts listed for reference
The Arduino Uno board is being used in conjunction with a Wireless SD Shield. Onto the shield prototyping area I have soldered a DHT22 temperature/humidity sensor and also a photocell. The LED is there to remind me that it is working. Data from the sensors is recorded to the SD Card using our Data Historian library.
Mega, the Arduino Mega board is seen here with another wireless SD shield, this one is waiting for a header to be soldered. The header will allow the 10DOF breakout board from Adafruit to be connected. This will also use the data historian to log data to SD Card.
XBee USB Board
Xbee module mounted in a USB board. This board is used to do initial configuration of the XBee module. It will also be used allow my MacBook Pro to communicate with the mesh.
Micro & Bluetooth Low Energy
This combination of components will allow a BLE device to join in the fun. Specifically I will write an iOS app to set some analysis configuration values and to visualize data from user selected Smart Sensor’s
The objectives that this experiment is designed to meet are:
- Automatic creation/maintenance of mesh network using ZigBee protocol
- Development of a set of libraries to handle common analytical processes:
- Data Historian
- Data Smoothing
- Trend Extraction
- Pattern Matching
- Sharing of information around the mesh
- Resource sharing between nodes in the mesh
- Successful demonstration of functionality
Experiment Mesh seeks to establish the basis for a context aware sensor network built from commodity hardware. Through our experience in the Equipment Health Management (EHM) domain we will bring advanced analysis algorithms to the sensor network at the sensor level.