Papan Berbasis Arduino untuk Sensor Atmosfer BME280 Lorawan Node. Lora Node mengukur tekanan barometrik, kelembaban, dan suhu setiap 5 menit. Setelah pengukuran, attiny85 masuk ke mode tidur dan dibangunkan oleh timer pengawas. Modul RFM mengirimkan nilai ke backend TTN dengan aktivasi berdasarkan personalisasi (ABP) faktor penyebaran tetap dan salah satu dari empat saluran acak. Proyek ini didasarkan pada proyek Tinylora-BME280 [1].
| Ref | Nilai | Keterangan |
|---|---|---|
| BT1 | 3034 | Pemegang sel baterai |
| BT1 | CR2032 | Sel baterai CR2032 (210 - 230 mAh) |
| U1 | BME280 | Sparkfun BME280 |
| U2 | Attiny85-20su | Atmel 8-bit AVR Microcontroller |
| U3 | RFM95W-868S2 | Modul transceiver jarak jauh daya rendah |
| - | Kabel | Kawat untuk antena, 8,6 cm |
Mikroprosesor ATmega membutuhkan bootloader Arduino. Untuk membakar bootloader ke chip kosong, lihat [2]
| Attiny85 | RFM95 | BME280 |
|---|---|---|
| PB3 | CS (Slave Select) | |
| PB4 | NSS (Slave Select) | |
| PB2 | Sck | Sck |
| PB1 (lakukan) | Mosi | SDI |
| PB0 (DI) | Miso | Sdo |
IDE Arduino harus dipasang dengan benar.
Tambahkan perpustakaan ke IDE Anda:
Instal The Attiny Baord Manager
Beberapa manajer dapat dipisahkan dengan koma.
Pasang Tinylora-BME280 V1.1
Buka Contoh> Tinylora-BME280_V1.1-master> attiny_lora_bme280
Bakar sketsa ke chip menggunakan Arduino UNO [2]
Payload dikodekan sebagai array byte.
| byte | isi |
|---|---|
| 0..1 | suhu (*100) |
| 2..3 | kelembaban (*100) |
| 4..8 | Tekanan barometrik |
Untuk memecahkan kode nilai, tambahkan kode ini di konsol TTM sebagai decoder di bawah format 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 )
};
}
Lisensi CC oleh 4.0 - Atribusi 4.0 International