Плата на базе Arduino для атмосферного датчика BME280 Lorawan Node. Узел LORA измеряет барометрическое давление, влажность и температуру каждые 5 мин. После измерений Attiny85 переходит в спящий режим и пробуждается таймером наблюдения. Модуль RFM посылает значения в бэкэнд TTN с активацией с помощью персонализации (ABP) фиксированный фактор распространения и один из четырех случайных каналов. Этот проект основан на проекте Tinylora-BME280 [1].
| Рефери | Ценить | Описание |
|---|---|---|
| Bt1 | 3034 | Держатель батареи |
| Bt1 | CR2032 | Батарея CR2032 (210 - 230 мАч) |
| U1 | BME280 | Sparkfun BME280 |
| U2 | Attiny85-20SU | 8-битный микроконтроллер Atmel Amel |
| U3 | RFM95W-868S2 | Низкий мощный модуль приемопередатчика |
| - | Проволока | Проволока для антенны, 8,6 см |
Микропроцессору Atmega нужен загрузчик Arduino. Чтобы сжечь загрузчик в чип, см. [2]
| Attiny85 | RFM95 | BME280 |
|---|---|---|
| PB3 | CS (SLAVE SELECT) | |
| PB4 | NSS (Slab Select) | |
| PB2 | SCK | SCK |
| PB1 (DO) | Моси | SDI |
| PB0 (DI) | Мисо | SDO |
Arduino IDE должен быть должным образом установлен.
Добавьте в вас библиотеки, ide:
Установите Manager Attiny Baord Manager
Несколько менеджеров могут быть разделены с запятой.
Установите Tinylora-Bme280 v1.1
Открытые примеры> Tinylora-Bme280_v1.1.1-Master> attiny_lora_bme280
Сжечь эскиз в чип, используя arduino uno [2]
Полезная нагрузка кодируется как байт -массив.
| байт | содержание |
|---|---|
| 0..1 | температура (*100) |
| 2..3 | влажность (*100) |
| 4..8 | барометрическое давление |
Чтобы расшифровать значения, добавьте этот код в консоли TTM в качестве декодера в форматах paload.
function Decoder(bytes, port) {
temp = ((bytes[0]) << 8)
+ ((bytes[1]));
hum = ((bytes[2]) << 8)
+ ((bytes[3]));
pres = ((bytes[4]) << 24)
+ ((bytes[5]) << 16)
+ ((bytes[6]) << 8)
+ ((bytes[7]));
return {
pressure: ( pres / 100 ),
temperature: ( temp / 100 ),
humidity: ( hum / 100 )
};
}
Лицензия CC на 4.0 - Атрибуция 4.0 International