В настоящее время большое распространение получили домашние метеостанции. Это не удивительно: люди всегда хотят знать, что одеть на прогулку или при какой температуре им комфортно работать.
Но зачем покупать то, что можно сконструировать и запрограммировать самостоятельно? Наверно, подобные размышления посещали и Xander Soldaat, одного из активистов Lego сообщества. Он использовал датчик освещенности, датчик звука, барометр компании HiTechnic, и модуль NXT2WIFI. Теперь Xander смог измерять температуру, атмосферное давление, освещенность, уровень шума и передавать эти данные по wi-fi.
Но зачем покупать то, что можно сконструировать и запрограммировать самостоятельно? Наверно, подобные размышления посещали и Xander Soldaat, одного из активистов Lego сообщества. Он использовал датчик освещенности, датчик звука, барометр компании HiTechnic, и модуль NXT2WIFI. Теперь Xander смог измерять температуру, атмосферное давление, освещенность, уровень шума и передавать эти данные по wi-fi.
Для получения данных было решено использовать протокол SNMP. Данный протокол позволяет управлять устройствами по сети или запрашивать у них необходимые данные. Каждый тип данных имеет свой идентификатор, который называется OID. Xander определил следующие OID идентификаторы для получения значений сенсоров:
- iso.3, 6, 1, 2, 1, 1, 5, 0: имя блока
- iso.3, 6, 1, 3.1: температура в С
- iso.3, 6, 1, 3.2: давление в миллиметрах ртутного столба
- iso.3, 6, 1, 3.3: уровень шума в дБ
- iso.3, 6, 1, 3.4: уровень освещения
#!/bin/sh
IP=192.168.0.102 DATE=`date` TEMP=`snmpget -r 0 -c public -v 1 $IP iso.3.6.1.3.1 | sed 's/[^:]\+: //'` TEMP=`echo "scale=2; $TEMP/100" | bc` sleep 1 PRESS=`snmpget -r 0 -c public -v 1 $IP iso.3.6.1.3.2 | sed 's/[^:]\+: //'` sleep 1 SOUND=`snmpget -r 0 -c public -v 1 $IP iso.3.6.1.3.3 | sed 's/[^:]\+: //'` sleep 1 LIGHT=`snmpget -r 0 -c public -v 1 $IP iso.3.6.1.3.4 | sed 's/[^:]\+: //'` echo $DATE,$TEMP,$PRESS,$SOUND,$LIGHT
Этот скрипт автоматически запускался каждую минуту и результатом его работы была строка с данными метеостанции, которую легко обработать: Mon Jun 11 20:46:19 CEST 2012,23.5,30761,34,60.
После сбора статистики, получились такие графики:
Считаете, что это перебор? Возможно, но согласитесь, что так приятно иметь собственную NXT метеостанцию дома, которая подскажет погоду в доме, даже когда вы далеко.
После сбора статистики, получились такие графики:
Считаете, что это перебор? Возможно, но согласитесь, что так приятно иметь собственную NXT метеостанцию дома, которая подскажет погоду в доме, даже когда вы далеко.
Комментариев нет:
Отправить комментарий