One of the objectives of the “Every Aware” project is monitoring some environmental variables of the surrounding environment, such as temperature, relative humidity and some air pollutants: carbon monoxide (CO), nitrogen dioxide (NO2), volatile organic compounds (VOC) and ozone (O3).
For this purpose we developed a dedicated “sensor box” based on an Arduino chipset, that, through a set of sensors, can measure the environment variables. The sensor box alto contains a GPS module needed to track the user’s current position and a SD Memory Card to save data locally.
The measurements collected by sensor box are sent via Bluetooth to an Android smartphone on which the application “Feel the environment” (FTE) is running.
FTE can do the following features:
- allow real-time display of data collected by the sensor box, in a simple and intuitive user interface, suitable for most users
- ask the user to make some guess regarding the surrounding environment, these evaluations are of two types:
- objective: the user is prompted to provide an assessment of temperature, humidity and pollution level
- subjective: the user is prompted to express his own feelings, related to the surrounding environment
- send the data received from the sensor box to the server, enriched with the objective and subjective evaluations expressed by the user.
Feel The Environment App
The application offers a high degree of interactivity. The initial evaluations asked to the user are “objective” and he is required to try to “guess” the values of temperature, humidity and pollution level of the surrounding environment. This is done via the sliders that let you specify the guessed values in a fast and efficient way.
Next, the user can express his subjective assessments, again via sliders. In this phase the user is asked to specifying the intensity of a given feeling or emotion caused by the environment in which he is located during the experiment.
After that, the app shows the comparison between the temperature and humidity guessed by the user, and the actual values measured by the sensor box.
Finally, the application shows the real time graph that represents the pollutants. There are currently four types of them, CO, NO2, O3 and VOC (Volatile Organic Compounds), which correspond to 8 different sensors. Through the control panel, the application lets you toggle the display of data relative to each of the 8 sensors with immediate effects on the graph, which is updated every second.
The application, still under development, requires a smartphone based on Android 2.2 or higher operating system.
The technologies involved are related to Bluetooth data communication, sending data to the server using HTTP POST methods, GPS tagging (in addition to GPS data received from the sensor box), multithreading implemented by Android Service.
In terms of graphical user interface a lot of effort has been put both at design and development stage, to create a pleasant user experience and an easy to use interface: animations to show some data, sliding bars to help the user to insert data, dedicated third party libraries (AChartEngine) to show real-time graph of pollutants.
Although the major features are defined, the application is still under active development, so both the look and feel and the data displayed can vary. At this stage, user can connect to the sensor box via Bluetooth, receive the sampled data in real time (latitude, longitude, temperature, humidity and pollutants), display in real time, submit them to a test server.
To debug both the application and the sensor box, we have also developed a simple web site which query the server and show the received data in real time on Google Earth.
This web site could be improved in the future and be released to the public to share these information to everyone.