บอร์ดที่ใช้ Arduino สำหรับเซ็นเซอร์บรรยากาศ BME280 Lorawan Node โหนด LORA วัดความดันบารอมิเตอร์ความชื้นและอุณหภูมิทุก ๆ 5 นาที หลังจากการวัด Attiny85 เข้าสู่โหมดสลีปและถูกปลุกให้ตื่นขึ้นโดยตัวจับเวลานาฬิกาจับเวลา โมดูล RFM จะส่งค่าไปยังแบ็กเอนด์ TTN พร้อมการเปิดใช้งานโดยการปรับเปลี่ยน (ABP) ปัจจัยการแพร่กระจายคงที่และหนึ่งในสี่ช่องสุ่ม โครงการนี้ขึ้นอยู่กับโครงการ Tinylora-BME280 [1]
| ผู้อ้างอิง | ค่า | คำอธิบาย |
|---|---|---|
| BT1 | 3034 | ที่ใส่เซลล์แบตเตอรี่ |
| BT1 | CR2032 | เซลล์แบตเตอรี่ CR2032 (210 - 230 mAh) |
| U1 | BME280 | SparkFun BME280 |
| U2 | Attiny85-20SU | ATMEL 8 บิต AVR ไมโครคอนโทรลเลอร์ |
| U3 | RFM95W-868S2 | โมดูลตัวรับส่งสัญญาณระยะยาวพลังงานต่ำ |
| - | ลวด | สายไฟสำหรับเสาอากาศ 8.6 ซม. |
ไมโครโปรเซสเซอร์ Atmega ต้องการ arduino bootloader หากต้องการเผา bootloader ไปยังชิปเปล่าโปรดดู [2]
| Attiny85 | RFM95 | BME280 |
|---|---|---|
| PB3 | CS (Slave Select) | |
| PB4 | NSS (Slave Select) | |
| PB2 | SCK | SCK |
| PB1 (ทำ) | Mosi | SDI |
| PB0 (DI) | มิโซะ | SDO |
Arduino IDE จะต้องติดตั้งอย่างถูกต้อง
เพิ่มไลบรารีให้คุณ IDE:
ติดตั้ง Attiny Baord Manager
ผู้จัดการหลายคนสามารถคั่นด้วยเครื่องหมายจุลภาค
ติดตั้ง Tinylora-BME280 v1.1
ตัวอย่างเปิด> tinylora-bme280_v1.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