ระบบเช็กระดับน้ำแทงค์ไร้สายระยะไกล ด้วย REYAX LoRa และ Arduino

Long Range Wireless Water Tank Monitor
โปรเจกต์ระบบตรวจสอบระดับน้ำในแทงค์ไร้สายระยะไกล พร้อมหน้าจอ OLED แสดงผล

สวัสดีชาว Maker ทุกคนครับ! 🛠️ การเช็กระดับน้ำในแทงค์ที่อยู่สูงหรืออยู่ไกลบ้านมักจะเป็นเรื่องลำบากและไม่สะดวกเอาซะเลยใช่ไหมครับ?[cite: 1] วันนี้เราจะพามาทำ "ระบบตรวจสอบระดับน้ำไร้สายระยะไกล (Long Range Wireless Water Tank Monitoring System)" โดยใช้โมดูล REYAX LoRa และบอร์ด Arduino Pro Mini กันครับ[cite: 1]

ระบบนี้แบ่งการทำงานออกเป็น 2 ส่วนหลักๆ คือ ตัวส่งสัญญาณ (Transmitter) ที่ใช้พลังงานแสงอาทิตย์ติดตั้งไว้ที่แทงค์น้ำ และ ตัวรับสัญญาณ (Receiver) แบบพกพาที่มีหน้าจอ OLED แสดงผล[cite: 1] หลักการคือใช้เซนเซอร์อัลตราโซนิกกันน้ำวัดระดับน้ำ แล้วส่งข้อมูลผ่านเทคโนโลยี LoRa ไปยังตัวรับเพื่อแสดงผลเป็นเปอร์เซ็นต์ พร้อมแจ้งเตือน (LOW / FULL) เมื่อน้ำใกล้หมดหรือเต็มแทงค์ครับ[cite: 1]

จุดเด่นของโปรเจกต์นี้คือ "การใช้สัญญาณ LoRa" ทำให้เราส่งข้อมูลไร้สายได้ไกลมากๆ โดยไม่ต้องง้อสัญญาณ Wi-Fi หรืออินเทอร์เน็ตเลยครับ! เหมาะกับบ้าน สวน หรือฟาร์มที่มีพื้นที่กว้างขวางสุดๆ[cite: 1]

อุปกรณ์ที่ต้องใช้ (Supplies) 🧰

  • บอร์ด Arduino Pro Mini (5V/16MHz) × 2 ชิ้น[cite: 1]
  • โมดูล LoRa: REYAX RYLR993-Lite × 2 ชิ้น[cite: 1]
  • หน้าจอแสดงผล SH1106 OLED Display (I2C) × 1 ชิ้น[cite: 1]
  • เซนเซอร์วัดระยะ: AJ-SR04M Waterproof Ultrasonic Sensor × 1 ชิ้น[cite: 1]
  • ลำโพงแจ้งเตือน: Active Buzzer × 1 ชิ้น[cite: 1]
  • แผงโซลาร์เซลล์ (Solar Panel) × 1 ชิ้น[cite: 1]
  • แบตเตอรี่ 18650 Li-ion × 1 ก้อน พร้อมโมดูลชาร์จ TP4056 × 1 ชิ้น[cite: 1]
  • โมดูลเพิ่มแรงดัน (Mini Boost Converter 5v) × 2 ชิ้น[cite: 1]
  • สวิตช์ ON/OFF, เสาอากาศ (Antennas) สำหรับ LoRa และกล่องใส่โปรเจกต์ (Project Enclosure)[cite: 1]

💡 Maker's Tip: โปรเจกต์นี้เป็นการผสานพลังระหว่าง Arduino Pro Mini ที่กินไฟน้อย และ โมดูล LoRa ที่ส่งสัญญาณได้ไกลทะลุทะลวง!

หากเพื่อนๆ กำลังมองหา บอร์ด Arduino, เซนเซอร์อัลตราโซนิกกันน้ำ, โมดูลชาร์จแบตเตอรี่ หรือจอ OLED แวะมาช้อปปิ้งของแท้คุณภาพดีได้ที่ Globalbyte Shop เลยครับ! ของครบพร้อมส่ง ลุยโปรเจกต์ IoT ได้ทันที

ขั้นตอนการสร้าง (Step-by-Step) ⚙️

Step 1: ออกแบบวงจรและสั่งทำ PCB

เริ่มต้นด้วยการออกแบบวงจรผ่านซอฟต์แวร์ EasyEDA โดยจัดวาง Layout และเดินลายวงจรให้เรียบร้อย จากนั้นนำไฟล์ Gerber ไปสั่งผลิต PCB (ในโปรเจกต์นี้ผู้สร้างสั่งจาก JLCPCB พร้อมบริการ SMT Assembly)[cite: 1] การออกแบบนี้เป็นแบบ 2-in-1 คือรวมทั้งวงจรฝั่งรับ (RX) และฝั่งส่ง (TX) ไว้ในแผ่นเดียว เมื่อได้รับบอร์ดมาแล้วค่อยตัดแบ่งครึ่งใช้งานครับ[cite: 1]

Step 2: ประกอบอุปกรณ์ลง PCB

ทำการบัดกรีอุปกรณ์ทั้งหมดลงบน PCB ให้เรียบร้อย และทำความสะอาดคราบฟลักซ์ด้วยแอลกอฮอล์[cite: 1] สำหรับโมดูล Mini Boost Converter ค่าเริ่มต้นจากโรงงานจะตั้งไว้ที่ 12V แต่โปรเจกต์เราใช้ 5V ต้องทำการถอดตะกั่วเชื่อม (Desolder) ออกจากจุด "A" และ "B" บนโมดูล เพื่อปรับให้เป็น 5V สำหรับเลี้ยงบอร์ด Arduino ครับ[cite: 1]

Step 3: ตั้งค่าบอร์ด Arduino และโมดูล LoRa

ก่อนใช้งาน ต้องตั้งค่าโมดูล REYAX ผ่าน USB-to-TTL โดยใช้โปรแกรม Serial Monitor เพื่อส่งคำสั่ง AT Commands ครับ (สามารถกดดูโค้ดคำสั่งได้ในปุ่ม View More ด้านล่าง)[cite: 1] สำหรับฝั่งตัวส่ง (TX) ก่อนอัปโหลดโค้ดลง Arduino อย่าลืมวัดความสูงรวมของแทงค์น้ำ และนำค่าไปแก้ในโค้ดด้วยนะครับ (ข้อควรระวัง: เซนเซอร์กันน้ำมีจุดบอด หรือ Blind spot อยู่ที่ประมาณ 20 ซม. ต้องติดตั้งให้มีระยะห่างจากระดับน้ำสูงสุดด้วยครับ)[cite: 1]

Step 4: ประกอบฮาร์ดแวร์ขั้นสุดท้าย

บัดกรี Arduino Pro Mini และโมดูล LoRa ลงบน PCB โดยระวังอย่าสลับขา RX และ TX เด็ดขาด![cite: 1] จากนั้นติดตั้งรางถ่าน 18650 และนำบอร์ดทั้งหมดใส่ลงในเคสอะคริลิกที่เตรียมไว้ พร้อมเดินสายเสาอากาศ (Antenna) ออกมาด้านนอกกล่องเพื่อให้รับส่งสัญญาณได้ดีที่สุดครับ[cite: 1]

Step 5: ติดตั้งตัวส่งสัญญาณ (Transmitter Unit) ที่แทงค์น้ำ

เจาะรูตรงกลางฝาปิดแทงค์น้ำ แล้วยึดเซนเซอร์อัลตราโซนิกให้คว่ำหน้าลงหากผิวน้ำ (การติดตรงกลางจะช่วยให้อ่านค่าได้แม่นยำที่สุด)[cite: 1] จากนั้นต่อสายเซนเซอร์เข้ากับบอร์ด นำแผงโซลาร์เซลล์มาต่อเข้ากับโมดูล TP4056 เพื่อชาร์จแบตเตอรี่ 18650 แบบสแตนด์อะโลน และยึดแผงโซลาร์เซลล์ไว้ด้านบนให้รับแดดได้เต็มที่ครับ[cite: 1]

Step 6: เปิดเครื่องและทดสอบระบบ

เมื่อเปิดเครื่องฝั่งตัวรับสัญญาณ (Receiver) ภายในไม่กี่วินาที หน้าจอ OLED จะแสดงผลระดับน้ำแบบเปอร์เซ็นต์ พร้อมกราฟิกแอนิเมชันสวยงาม[cite: 1] สัญญาณ LoRa จะทำหน้าที่ส่งข้อมูลระยะไกลทะลุสิ่งกีดขวางมาถึงในบ้านได้อย่างเสถียร หากน้ำใกล้หมดหรือเต็มแทงค์ ลำโพง Buzzer ก็จะส่งเสียงเตือนทันทีครับ เป็นอันเสร็จสิ้นพร้อมใช้งานจริง![cite: 1]

คำสั่งตั้งค่าโมดูล LoRa (AT Commands) 💻

เชื่อมต่อ REYAX module ผ่าน USB-to-TTL แล้วส่งคำสั่งเหล่านี้ผ่าน Serial Monitor:

// การตั้งค่าสำหรับตัวรับ (Receiver - RX):
AT
AT+OPMODE=1
AT+BAND=865000000
AT+ADDRESS=1

// การตั้งค่าสำหรับตัวส่ง (Transmitter - TX):
AT
AT+OPMODE=1
AT+BAND=865000000
AT+ADDRESS=2
      
*หมายเหตุ: คลื่นความถี่ (BAND) อาจต้องปรับเปลี่ยนตามกฎหมายโทรคมนาคม (กสทช.) ของแต่ละประเทศนะครับ[cite: 1]

ดาวน์โหลด Source Code สำหรับ Arduino 📥

แกลเลอรีภาพประกอบการประกอบวงจรและติดตั้ง 📸

Circuit Schematic PCB Design in EasyEDA PCB ordered from JLCPCB Cutting the 2-in-1 PCB Assembling components Desoldering Boost Converter jumpers Configuring LoRa Modules Final hardware assembly Acrylic Enclosure Installing on water tank Ultrasonic sensor placement Solar panel charging setup Receiver OLED Display System in action

วิดีโอสาธิตการทำโปรเจกต์ฉบับเต็ม 🎬

*คำเตือนและข้อแนะนำ: เนื้อหาบทความนี้สรุปและแปลมาจากบทความภาษาอังกฤษ (Instructables) การทำงานกับคลื่นความถี่วิทยุ (LoRa) ควรตรวจสอบข้อบังคับของ กสทช. ในประเทศไทยเกี่ยวกับการใช้คลื่นความถี่สาธารณะ การดัดแปลงบอร์ดวงจรและการตั้งค่าโค้ดต่างๆ ควรศึกษาจาก ต้นฉบับ โดยละเอียดก่อนลงมือปฏิบัติจริงครับ[cite: 1]

 

แท็ก


Blog posts

เข้าสู่ระบบ

ลืมรหัสผ่านใช่ไหม?

ยังไม่มีบัญชีใช่ไหม?
สร้างบัญชี