Это пример хорошего приложения Lora. Метеоспособная станция содержит датчик температуры, датчик давления воздуха и датчик влажности. Данные читаются и отправляются в Cayenne Mydevices и погоды под землей, используя Lora и The Things Network.
Проводка основана на схеме этой истории: https://www.thethingsnetwork.org/labs/story/build-the-cheapest-possible wonde-yourself
Следуйте инструментам построить самый дешевый узел самостоятельно, чтобы добавить RFM95W в Arduino Pro Mini. Если успешно, добавьте датчики, как показано в приведенной выше схеме.
Наконец, припаяйте 86 -миллиметровый провод к антенному штифту RFM95W, чтобы увеличить диапазон.
Чтобы разместить метеостанцию где -нибудь, я нарисовал корпус и напечатал его с 3D -принтером.
Модели можно найти на Thingiverse. Конечно, вы, конечно, можете сделать свой собственный вариант.
https://www.thingiverse.com/thing:2594618
Код, который я использовал, можно найти на GitHub: https://github.com/henri98/lorawanweatherstation
Я использовал Atom с Platformio, чтобы реализовать этот проект, так что это проект Platformio.
Я использовал Folowing Libarys:
Чтобы отправить данные в погоду под землей, создайте интеграцию HTTP в консоли сети вещей. Данные будут отправлены на URL с сообщением или Get. Следующий сценарий захватывает данные и отправляет их в погоду под землей. Зарегистрируйте свою личную метеорологическую станцию на https://www.wunderground.com/personal-weather-station/signup
<? Php
Echo Time ();
file_put_contents('json/post'.time().'.json', file_get_contents('php://input'));
$json = file_get_contents('php://input');
$data = json_decode($json);
// take the data out of the json
$temperature_1 = $data->payload_fields->temperature_1;
$barometric_pressure_2 = $data->payload_fields->barometric_pressure_2;
$relative_humidity_3 = $data->payload_fields->relative_humidity_3;
// tempc to tempf
$tempf = ($temperature_1 * 9/5) + 32;
// pressure
$pressure = $barometric_pressure_2/33.863886666667;<br>
if( isset($pressure) && !empty($pressure) && isset($tempf) && !empty($tempf) && isset($relative_humidity_3) && !empty($relative_humidity_3)){ <br> file_get_contents("<a href="https://rtupdate.wunderground.com/weatherstation/updateweatherstation.php?ID=XXXXXXX&PASSWORD=XXXXXXXX&dateutc=now&tempf=" rel="nofollow" target="_blank">https://rtupdate.wunderground.com/weatherstation/updateweatherstation.php?ID=XXXXXXX&PASSWORD=XXXXXXXX&dateutc=now&tempf=</a>" . $tempf . "&humidity=" . $relative_humidity_3 . "&baromin=" . $pressure);
}