Data-logger with REST Service
Ep.1 System Overview
สำหรับบทความนี้จะเป็นเรื่องเกี่ยวกับการสร้างอุปกรณ์บันทึกข้อมูลหรือ Data-Logger ที่มี REST Service ในตัว ทำให้สามารถนำข้อมูลออกมาจากระบบได้ง่าย เนื่องจากว่าเนื้อหาค่อนข้างยาว ดังนั้นจึงมีการแบ่งเป็นบท ย่อยๆ ดังต่อไปนี้
- System Overview
- การติดตั้ง NGIX Web Server และ postgresql database
- การใช้ Flask เพื่อสร้าง REST API ด้วย Python
- การตั้งค่าให้ RPi ทำงานแบบ Access Point
- บทสรุปการทำงานของระบบ
System Overview
การทำงานของระบบนี้เริ่มจากมี Raspberry Pi ทำหน้าที่เป็น Server กลาง คอยจัดการการสื่อสารกับ Sensors ชนิดต่างๆ
เนื่องจาก Sensors ในปัจจุบันมีมากมายหลายแบบ แต่ละแบบก็ใช้ Protocol ไม่เหมือนกัน การติดต่อระหว่าง RPi และ Sensor แต่ละชนิดจึงควรแยกเป็น Process ที่เป็นอิสระต่อกัน โดยแต่ละ process จะดูแลการทำงานและบันทึกค่าที่อ่านได้จาก sensors ลงใน database กลาง การออกแบบเช่นนี้ทำให้ระบบมีความยืดหยุ่นเมื่อมีความจำเป็นต้องเพิ่มหรือลด sensor ในอนาคต
นอกจากนี้ RPi ยังทำหน้าที่เป็น Web Service โดยเมื่อผู้ใช้ต้องการค้นหาข้อมูลใน database ก็สามารถทำได้โดยง่ายด้วยการเชื่อมต่อมายัง RPi ด้วย Wifi ซึ่งเปิดเป็น Access Point Mode เอาไว้ เมื่อเชื่อมต่อได้แล้วก็จะเข้าถึงข้อมูลผ่าน REST API ที่ระบบเตรียมเอาไว้ให้
Software Packets ที่จำเป็นต้องใช้
ก่อนที่จะไปตอนต่อไป ให้ทำการติดตั้ง packets ต่างๆ ที่จำเป็นต้องใช้ในอนาคตดังต่อไปนี้
EP2. การติดตั้ง NGIX Web Server และ postgresql database