กลับไปหน้ารวมไฟล์
mobile-lora-short-message-transmitterreceiver-d24a80.md

ชื่อโปรเจกต์: เครื่องรับ-ส่งข้อความสั้น LoRa แบบพกพา (ตัวแรงเลยนะน้อง)

Introduction

พี่แม่งโคตรชอบเลยว่ะ เวลาที่เห็นเราส่งข้อมูลไปได้ไกลๆ ระหว่างอุปกรณ์สองตัวแบบไร้สายเนี่ย

แล้วที่เจ๋งที่สุดคืออะไรป่ะ? คือมันทำได้ฟรีเว้ย! ไม่ต้องง้อค่ายมือถือ ไม่ต้องจ่ายค่ารายเดือนให้เปลืองตังค์น้องเลยสักบาท

เจ้าเครื่องสองตัวนี้จะทำให้เราส่ง-รับข้อความสั้นๆ ได้ด้วยเทคโนโลยี LoRa สุดล้ำ จัดอุปกรณ์ตามนี้เลยวัยรุ่น:

  • #[ESP32](https://s.shopee.co.th/6pvZFdZdRf)
  • #RFM95
  • #Battery
  • #Antenna
  • #PCBWay

#pcbway #[arduino](https://s.shopee.co.th/7fUgFAWSki) #arduinoproject #esp32 #rfm95 #lora

Video

วิธีปรับแต่ง Config (แก้ให้ถูกนะน้อง เดี๋ยวบั๊กกิน)

- ถ้าอยากจะเพิ่มอุปกรณ์เข้าไปในวงอีก ก็แค่ไปแก้ Variable ที่ชื่อ "localAddress" ตั้งชื่อ ID ให้มันไม่ซ้ำกันล่ะ เดี๋ยวคุยกันไม่รู้เรื่อง

- ถ้าอยากจะส่งข้อความหาใครแบบเจาะจงตัว ก็ไปแก้ที่ Variable "destination" แล้วใส่เลข ID ของเครื่องที่น้องอยากจะทักไปหาลงไป

- แต่ถ้าอยากจะประกาศศักดาให้รู้กันหมด (Broadcast) ก็ใส่เลข 255 ลงใน Variable "destination" ได้เลย จัดไปแบบตะโกน!

- ส่วนใครอยากเพิ่มข้อความเท่ๆ เข้าไปอีก ก็ไปเปิดไฟล์ "messages.h" แล้วแก้ค่า NUMBER_OF_STRING ให้เท่ากับจำนวนข้อความที่อยากจะมี จากนั้นก็ไปเพิ่ม string ต่อท้ายใน Array "char arr" ซะ ง่ายๆ แค่นี้เอง

รายละเอียดทางเทคนิคแบบจัดเต็ม

ระบบส่งข้อความทางไกลแบบไม่ง้อเน็ต (Decentralized)

โปรเจกต์นี้เราจะสร้างเครื่องสื่อสารข้อความแบบพกพาที่ส่งได้ไกลหลายกิโลเมตร โดยไม่ต้องพึ่งสัญญาณมือถือหรือ Internet เลยแม้แต่นิดเดียว

  • Semtech LoRa Modulation: เราใช้ Module LoRa รุ่น SX1276/SX1278 (RFM95) โดยให้ Arduino คุมคลื่นวิทยุความถี่ 433MHz หรือ 915MHz แบบ Spread-spectrum บอกเลยว่าสัญญาณนิ่งและเสถียรมาก แม้จะอยู่ในที่ตึกหนาแน่นแค่ไหนก็ยังรอด
  • OLED UI Keyboard Matrix: เชื่อมต่อกับ Keyboard แบบ Matrix เล็กๆ และจอ OLED ขนาด 128x64 ตัว Firmware จะคอยจัดการเรื่องการพิมพ์ตัวอักษร, การทำ Message buffering และแสดงข้อความที่ได้รับมา ซึ่งมีการเช็คความถูกต้องด้วย CRC มาเรียบร้อยแล้ว หล่อเท่เลยงานนี้

ความเสถียรของระบบ (Reliability)

  • Automatic Retransmission (ARQ): มีระบบ Logic ยืนยันการรับข้อความด้วยนะน้อง ถ้าเครื่องปลายทางไม่ส่งสัญญาณตอบกลับ (Acknowledge) มาภายใน 2 วินาที เจ้า Arduino ของเราจะส่งแพ็กเกจนั้นซ้ำไปใหม่โดยอัตโนมัติ แถมยังอัดพลัง (Power level) ให้สูงขึ้นด้วย สู้งานจัดๆ เลยตัวนี้

ข้อมูล Frontmatter ดั้งเดิม

title: "Mobile LoRa short message transmitter/receiver"
description: "Need to send pre-defined short messages in uncovered wifi/4G/5G area? Check out my project!"
author: "cstram"
category: ""
tags:
  - "communication"
  - "internet of things"
views: 1424
likes: 1
price: 2450
difficulty: "Intermediate"
components:
  - "1x PCBWay Custom PCB"
  - "1x Pushbutton Switch, Momentary"
  - "1x Graphic OLED, 128 x 32 Pixels"
  - "1x Buzzer"
  - "1x FireBeetle ESP32 IOT Microcontroller (Supports Wi-Fi & Bluetooth)"
tools: []
apps:
  - "1x Arduino IDE"
downloadableFiles:
  - "https://projects.arduinocontent.cc/3fcb3534-c5f2-4240-8365-974e88dd3042.h"
  - "https://projects.arduinocontent.cc/a4bb9753-875d-4c28-8e53-1edf44da5a56.ino"
  - "https://projects.arduinocontent.cc/3fcb3534-c5f2-4240-8365-974e88dd3042.h"
  - "https://projects.arduinocontent.cc/a4bb9753-875d-4c28-8e53-1edf44da5a56.ino"
documentationLinks: []
passwordHash: "1e01e919cd8b7792c60137f747031ab61872a1efb4647c5c34962d4a8f8be6a5"
encryptedPayload: "U2FsdGVkX18xAzvj4BvbpE26NOKAEvUFntIsz2AF4lKNCTDtVU+jJn4bzUhAOBcdpcJM9rGfo+rmRklsflE09yVb1rmrr2CPCO+aISm34b0="
seoDescription: "Build a Mobile LoRa short message transmitter/receiver to send messages without wifi/4G/5G coverage. Arduino project guide."
videoLinks:
  - "https://www.youtube.com/embed/Y-WP-alxB9s"
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/mobile-lora-short-message-transmitterreceiver-d24a80_cover.jpg"
lang: "th"