Как тут всё устроено


Система состоит из трех модулей: измерителя, промежуточного сервера и сервера публикации данных. Данные с датчиков уровней пыли, дождя, температуры и влажности считываются измерителем на основе arduino. Для того, чтобы водяная пыль не влияла на результаты измерений, прогоняемый вентилятором воздух при необходимости подогревается керамическим нагревателем. Данные в пересылаются через Xbee-линк на домашний сервер. Там они логируются и пересылаются для публикации на cosm.com и сюда, на vozduh.

блок-схема измерителя пыли
Рис. 1.
Воздух, прогоняемый вентилятором (8) с улицы через трубу (2) проходит через нагревательный элемент (3). Ход воздуха показан стрелочками. Схема управления (5) на базе платформы arduino uno, используя данные датчика влажности (6), управляет нагревателем (3) с помощью силового реле (7)


измеритель внутри
Рис. 2.
Реальное устройство измерителя: сверху вниз -- керамический нагреватель, блок питания с силовым реле управления нагревателем, вентилятор притока наружного воздуха. Справа - arduino с шилдами RS232 и Xbee.


Графики рисуются с помощью библиотеки dygraphs и выводятся сглаженными на 10-минутных интервалах; те, кому любопытны «сырые» данные, могут их увидеть на соответствующей страничке. Статистика вычисляется с помощью небольшого скрипта на языке R, напрямую читающего и пишущие данные из базы данных (SQLite). Вычисляются квантили для измерений пыли и тренды в соответствии с линейной моделью. Полный исходный код для всех частей проекта можно посмотреть на гитхабе.


внешний вид измерителя
Рис. 3.
Внешний вид устройства. На фотографии не показана труба, по которой внутрь измерителя подается воздух с улицы. На уличной трубе установлена крупная сетка, препятствующая попаданию внутрь мотыльков и тополиного пуха


Несколько больше подробностей можно найти в нашей статье на хабре