หน้าแรก ดูโปรเจกต์ทั้งหมด
Hard

โปรเจกต์ IOT Cloud กับการเชื่อมต่อ LoRa

คุณจะทำให้ LoRa Nodes สื่อสารกับ Arduino IOT Cloud ได้อย่างไร? มาดูโปรเจกต์ของฉันได้เลย :-)

โปรเจกต์ IOT Cloud กับการเชื่อมต่อ LoRa

รายการอุปกรณ์และเครื่องมือ

1x Soldering iron (generic)
-
2x Espressif ESP32 Development Board - Developer Edition
🛒 สั่งซื้อ
1x Solder Wire, Lead Free
-
1x DHT22 Temperature Sensor
🛒 สั่งซื้อ
1x Monochrome 0.91”128x32 I2C OLED Display with Chip Pad
🛒 สั่งซื้อ
1x Arduino Pro Mini 328 - 5V/16MHz
🛒 สั่งซื้อ
1x Pushbutton Switch, Momentary
🛒 สั่งซื้อ
}

รายละเอียดและวิธีทำ

Introduction

โปรเจกต์นี้เกิดขึ้นเพราะผมมีความจำเป็นต้องสื่อสารข้อมูลและข้อความจากพื้นที่ที่ไม่มีสัญญาณ WiFi

ดังนั้น ผมจึงตั้งค่า Gateway ที่สามารถเชื่อมต่อกับ WiFi และมีเสาอากาศ LoRa เพื่อให้สามารถติดต่อกับ LoRa nodes ได้ในระยะไกลถึง 600 เมตร ความสะดวกของระบบนี้คือผมสามารถวาง LoRa nodes ไว้ในบริเวณที่ WiFi เข้าไม่ถึง แต่ยังคงมีการสื่อสารข้อมูลแบบสองทิศทางระหว่าง LoRa nodes และ Arduino IOT Cloud ได้

Diagram

ภาพแผนผังนี้อธิบายถึงวิธีการที่ผมประกอบส่วนต่างๆ เข้าด้วยกัน

LoRa Arduino IOT Cloud Diagram

Arduino IOT Cloud สื่อสารกับ Gateway โดยใช้การเชื่อมต่อ WiFi สำหรับส่วนประกอบนี้ ผมใช้ Board พัฒนา ESP32 แต่ Board อื่นๆ ที่รองรับ Arduino IOT ก็สามารถใช้งานได้เช่นกัน

Gateway

บน ESP32 Gateway ผมได้เชื่อมต่อ Module RFM95W พร้อมเสาอากาศเพื่อให้ ESP32 สามารถเชื่อมต่อกับ Nodes ได้ โดย Library ที่ใช้สำหรับฝั่ง LoRa ของ Gateway คือ Library LoRa Sandeep Mistry

Gateway

แผนผัง Hardware ของ ESP32 LoRa Arduino IOT Cloud Gateway

Software ของ Gateway ถูกเขียน Code ให้ส่งข้อความไปยังทุก Nodes (ALL nodes) ซึ่งสามารถปรับเปลี่ยนให้ส่งไปยัง Node เฉพาะเจาะจงได้หากต้องการ โดยคุณต้องเปลี่ยน Variable "destination" จากค่า "FF" (ทุก nodes) เป็น Address ของ Node ที่คุณต้องการส่งถึง ตัวอย่างเช่น "BA"

ESP Nodes

Nodes ที่ผมใช้งานเป็น ESP LoRa nodes แบบพกพาที่มี Display, Push button และ Buzzer โดยใช้ Buzzer เพื่อแจ้งเตือนเมื่อมีข้อความใหม่เข้ามา แผนผัง Hardware มีดังนี้

Messaging LoRa Node

ESP32 LoRa node พร้อม Display, Push button และ Buzzer

Node นี้ถูกโปรแกรมให้ส่งข้อความที่กำหนดไว้ล่วงหน้าไปยังทุก Nodes รวมถึง Arduino IOT Cloud หากคุณต้องการส่งถึงเฉพาะ IOT Cloud คุณต้องเปลี่ยน Variable "destination" จาก "FF" เป็น "01"

Arduino Pro Mini 328 Node

Arduino Pro Mini node ทำหน้าที่เก็บข้อมูล Humidity, Temperature และ Air Quality

Air Quality LoRa Node

วงจร (Schematics) มีดังนี้:

Arduino Pro Mini LoRa Node

อุปกรณ์ที่ใช้สำหรับการตรวจวัดอากาศคือ DHT22 และ MQ135 ส่วน LoRa นั้นใช้ Module RFM95W ตามปกติ

Arduino IOT Message Dashboard

Dashboard ที่ใช้สำหรับการส่งข้อความนั้นเรียบง่ายมาก แต่สามารถปรับแต่งเพิ่มเติมให้สมบูรณ์ยิ่งขึ้นได้

Dashboard ข้อความ LoRa Arduino IOT

Dashboard นี้ดูดีมากเมื่อใช้งานบนมือถือเพราะมีลักษณะคล้ายกับแอปส่งข้อความ

ระบบนี้ช่วยให้สามารถรับและส่งข้อความได้ทั้งบน LoRa node และ Arduino IOT Cloud

Arduino IOT Air Quality Dashboard

Dashboard ที่ใช้สำหรับคุณภาพอากาศนั้นเรียบง่ายมาก แต่สามารถปรับแต่งเพิ่มเติมให้สมบูรณ์ยิ่งขึ้นได้

Dashboard คุณภาพอากาศ LoRa Arduino IOT

Code

🔒 ปลดล็อก Code

สนับสนุนเพื่อรับ Source Code หรือแอปพลิเคชันสำหรับโปรเจกต์นี้

รหัสอ้างอิงโปรเจกต์: iot-cloud-with-lora-integration-298a65
2450 บาท
PromptPay QR Code