Continuity of Service
ความเสียหายของระบบส่วนหนึ่งต้องไม่ทำให้ข้อมูลทั้งหมดหายหรือทำให้ชุมชนใช้งานไม่ได้ทันที
แนวทางออกแบบ MaeMoo Monitor ให้ยังคงตรวจวัด เก็บข้อมูล สื่อสาร และให้ชุมชนใช้ข้อมูลสำคัญได้ แม้เกิดความเสียหายต่อไฟฟ้า โทรศัพท์มือถือ โครงข่ายอินเทอร์เน็ต หรือบริการสาธารณะพร้อมกันหลายส่วน
MaeMoo Monitor ต้องไม่ถูกออกแบบให้ “ใช้งานได้เมื่ออินเทอร์เน็ตดีเท่านั้น” แต่ต้องค่อย ๆ ลดระดับบริการอย่างมีแบบแผนเมื่อโครงสร้างพื้นฐานเสียหาย โดยรักษาข้อมูลที่สำคัญที่สุดต่อการตัดสินใจของชุมชนไว้ให้นานที่สุด
ความเสียหายของระบบส่วนหนึ่งต้องไม่ทำให้ข้อมูลทั้งหมดหายหรือทำให้ชุมชนใช้งานไม่ได้ทันที
เมื่อระบบใหญ่ใช้ไม่ได้ ให้ลดลงสู่ระบบเล็กกว่า เช่น Cloud → WG → Local → Radio แทนการล่มทั้งระบบ
1. Public Cloud / CDN / Internet
↓
2. Fixed Internet / Fiber
↓
3. Cellular Carrier A
↓
4. Cellular Carrier B / C
↓
5. WireGuard Emergency Private Network
↓
6. LoRa + Community Gateway + Local DB + Local Wi-Fi
↓
7. Local Display + Local Storage + Manual Observation
↓
8. VHF/UHF Voice Communication
ทุกชั้นมีหน้าที่ต่างกัน ไม่มีเทคโนโลยีใดเป็นคำตอบทั้งหมด สิ่งสำคัญคือแต่ละชั้นต้องเชื่อมต่อและรับช่วงต่อกันได้เมื่อชั้นก่อนหน้าเสียหาย
| โหมด | Public | ความถี่ข้อมูล | แนวทาง |
|---|---|---|---|
| Normal | เปิด | ประมาณ 5 นาที | ใช้งานทั่วไป เน้นประหยัดทรัพยากร |
| Watch | เปิด | ประมาณ 2 นาที | เพิ่มความถี่และ cache ให้มากขึ้น |
| Crisis | เปิด / Rate limit | ประมาณ 1 นาที | ข้อมูลวิกฤตมีความสำคัญสูงสุด |
| Emergency Private | จำกัดหรือเหลือหน้า Status | เร็วตามความจำเป็น | สงวนระบบเต็มรูปแบบให้เครือข่ายผ่าน WG |
WireGuard เป็นเส้นทางสื่อสารสำรองสำหรับชุมชน เจ้าหน้าที่ จุดเฝ้าระวัง และผู้ได้รับอนุญาต เมื่อ Public service ถูกจำกัดหรือมี traffic สูงจนไม่เหมาะกับการใช้งานเชิงปฏิบัติการ
MaeMoo Cloud
│
WireGuard HUB
│
┌───────────────┼───────────────┐
│ │ │
Community Gateway Operators External Partners
│
Sensors / Local LAN / Wi-Fi
Community Gateway ไม่ควรพึ่งผู้ให้บริการรายเดียว ควรมี fixed internet ถ้ามี และซิมอย่างน้อยสองผู้ให้บริการที่โครงข่ายต่างกัน
Community Gateway
│
├── WAN1 Fiber / Fixed Internet
├── WAN2 Cellular Carrier A
├── WAN3 Cellular Carrier B
└── WAN4 Cellular Carrier C (optional)
Health Check
↓
Automatic Failover
หาก Internet ขาด Sensor และ Community Gateway ต้องยังเก็บข้อมูลต่อได้ แล้วค่อยส่งข้อมูลย้อนหลังเมื่อเครือข่ายกลับมา
12:04 Internet ✕
12:04 WL = 1.65 m → local storage
12:05 WL = 1.71 m → local storage
12:06 WL = 1.78 m → local storage
...
15:31 Internet ✓
↓
Sync backlog
↓
MaeMoo Central Database
ข้อมูลต้องรักษา observed_at จากเวลาที่วัดจริง
ไม่ใช้เวลาที่ระบบกลางได้รับข้อมูลมาแทน
Community Gateway ควรให้คนในพื้นที่เปิดผ่าน LAN/Wi-Fi ได้ แม้ไม่มีอินเทอร์เน็ต เช่น http://maemoo.local
LoRa ใช้เป็น Radio Fallback สำหรับข้อมูลปริมาณน้อยจาก Sensor เช่น ฝน ระดับน้ำ อุณหภูมิ แบตเตอรี่ และสถานะ Alarm เหมาะกับระยะไกลและพลังงานต่ำ แต่ไม่เหมาะกับภาพ วิดีโอ หรือไฟล์ขนาดใหญ่
Rain Sensor ─┐
Water Level ─┼── LoRa ──> Community Gateway
Weather ─────┘ │
├── Local DB
├── Local Display
└── WireGuard / Internet เมื่อใช้ได้
Sensor สามารถส่งข้อความฉุกเฉินทันทีเมื่อพบเกณฑ์อันตราย เช่น ระดับน้ำสูงเกินเกณฑ์หรือเพิ่มเร็วผิดปกติ
ALERT STATION: YANG-WL03 WL: 2.17 m RATE: +23 cm / 10 min TIME: 14:37
ระยะ LoRa ต้องออกแบบจากภูมิประเทศจริง โดยใช้ Basin Map / DEM วิเคราะห์ line-of-sight และตำแหน่ง gateway/relay ไม่ควรกำหนดระยะจากค่าบนกล่องอุปกรณ์เพียงอย่างเดียว
VHF/UHF เป็น “ไพ่ตาย” สำหรับการสื่อสารของมนุษย์ เมื่อระบบข้อมูลดิจิทัลไม่สามารถส่งต่อได้ตามปกติ โดยการใช้งานต้องเป็นไปตามกฎและใบอนุญาตของ กสทช.
เครื่องคุยกับเครื่อง
Sensor → Gateway
คนคุยกับคน
ผู้เฝ้าระวัง → ศูนย์ประสานงาน
เมื่อสถานีมี Local Display คนหน้างานสามารถอ่านค่าจริง แล้วรายงานด้วยวิทยุได้แม้ทุกเครือข่ายล่ม
“สถานี YANG-WL03 เวลา 14:37 ระดับน้ำ 2.17 เมตร เพิ่มขึ้น 23 เซนติเมตรใน 10 นาที”
Sensor node สำคัญต้องไม่เป็น “กล่องดำ” ต้องมีหน้าจอและ input ขั้นพื้นฐานเพื่อให้คนอ่านข้อมูลได้โดยไม่ต้องใช้มือถือหรือเว็บ
เหมาะกับ E-paper / low-power LCD / OLED
เหมาะกับ TFT/LCD ขนาดใหญ่ขึ้น แสดงหลายสถานี
ใช้ Monitor / Dashboard เต็มรูปแบบเมื่อพลังงานเอื้ออำนวย
YANG-WL03 14:32 WL 1.82 m +10m +18 cm RAIN1H 43.2 mm BAT 12.4 V LORA OK
MANUAL OBSERVATION WL = 2.35 m [ UP ] [ DOWN ] [ SAVE ] source = manual time = 14:42
การมีเครือข่ายสำรองไม่มีประโยชน์หากไฟดับแล้ว Gateway ดับตามทันที ระบบพลังงานจึงเป็นส่วนหนึ่งของ communication architecture
Remote Sensor
Solar
↓
Battery
↓
ESP32 + LoRa
↓
Rain / Water Level / Weather
Community Gateway
Grid / Solar
↓
Battery / UPS
↓
Orange Pi
LoRa Gateway
Multi-WAN Router
Local Wi-Fi / LAN
PUBLIC INTERNET
│
Cloudflare / CDN
│
Public Status / API
│
┌────────────┴────────────┐
│ │
App-01 App-02
│ │
└────────────┬────────────┘
│
PostgreSQL/PostGIS
│
Redis
│
════════════════════ PRIVATE / RESILIENT NETWORK ════════════════════
│
WireGuard HUB
│
Community Gateway
┌─────────────┼─────────────┐
│ │ │
Fiber Carrier A Carrier B
│ │ │
└────── Automatic Failover ┘
│
Local DB / Local Wi-Fi
│
LoRa Gateway
│
┌────────────────┼────────────────┐
│ │ │
Rain Sensor Water Level Weather
│ │ │
└──── Local Display / Input ─────┘
│
Human Observer
│
VHF / UHF
│
Community / Command
| ระยะ | สิ่งที่ควรทำ |
|---|---|
| Phase A | กำหนดมาตรฐาน Station ID, observed_at, local storage และ health status |
| Phase B | WireGuard network และสิทธิ์การเข้าถึงแบบแยกส่วน |
| Phase C | Community Gateway + Multi-WAN + automatic failover |
| Phase D | Offline local dashboard + store-and-forward |
| Phase E | LoRa sensor network + gateway หลายจุด + radio planning จาก DEM |
| Phase F | Local display/input + manual observation ทุกจุดสำคัญ |
| Phase G | Battery/solar resilience และการทดสอบ blackout จริง |
| Phase H | VHF/UHF SOP, call sign/รูปแบบรายงาน และการซ้อมเครือข่าย |