13 ม.ค. เวลา 02:23 • วิทยาศาสตร์ & เทคโนโลยี

มาสร้างสถานีตรวจวัดสภาพอากาศ ส่วนตัวด้วยตนเอง โดยใช้คอมพิวเตอร์ขนาดเล็กอย่าง Raspberry Pi

สำหรับการสร้างสถานีตรวจอากาศอัจฉริยะ (Smart Weather Station) โดยใช้ Raspberry Pi 5 ร่วมกับชุด Lark Weather Station ตามข้อมูลจากแหล่งอ้างอิง มีขั้นตอนสำคัญในการติดตั้งและเชื่อมต่อฮาร์ดแวร์ดังนี้ครับ
1. การเตรียมอุปกรณ์ฮาร์ดแวร์ที่จำเป็น ก่อนเริ่มดำเนินการ คุณต้องเตรียมอุปกรณ์หลักให้ครบถ้วน ได้แก่ บอร์ด Raspberry Pi 5, ชุดตรวจวัดอากาศ Lark Weather Station, สาย Jumper wires สำหรับเชื่อมต่อวงจร และแหล่งจ่ายไฟ (Power Supply) สำหรับ Raspberry Pi
2. การเตรียมระบบปฏิบัติการบน microSD Card แม้จะเป็นขั้นตอนซอฟต์แวร์ แต่ถือเป็นจุดเริ่มต้นที่จำเป็นสำหรับการจัดการฮาร์ดแวร์
• ดาวน์โหลดและติดตั้งโปรแกรม Raspberry Pi Imager บนคอมพิวเตอร์
• เสียบ microSD card เข้ากับคอมพิวเตอร์ เลือกอุปกรณ์เป็น “Raspberry Pi 5” และเลือกระบบปฏิบัติการเป็น “Raspberry Pi OS” ในโปรแกรม Imager
• กด “Flash” เพื่อเขียนระบบปฏิบัติการลงใน microSD card จากนั้นนำการ์ดไปเสียบที่ช่องใส่ของ Raspberry Pi 5
3. การเริ่มระบบและการเชื่อมต่ออุปกรณ์ต่อพ่วง
ในการเริ่มต้นใช้งานครั้งแรก (Boot up) ให้เชื่อมต่อ Raspberry Pi 5 เข้ากับจอภาพ (Monitor), คีย์บอร์ด, เมาส์ และแหล่งจ่ายไฟ เพื่อทำการตั้งค่าเบื้องต้นและตรวจสอบหน้าจอ Desktop
ขั้นตอนสำคัญในการเตรียม Raspberry Pi 5 และการเชื่อมต่อกับเซ็นเซอร์สำหรับสถานีตรวจอากาศอัจฉริยะ แบ่งออกเป็น 2 ส่วนหลัก คือการเตรียมระบบปฏิบัติการและการเชื่อมต่อฮาร์ดแวร์ ดังนี้ครับ
1. การเตรียมระบบปฏิบัติการ Raspberry Pi OS ก่อนที่จะเชื่อมต่ออุปกรณ์ใดๆ จำเป็นต้องติดตั้ง “สมอง” ให้กับบอร์ด Raspberry Pi 5 ก่อน:
• การติดตั้ง OS: ให้ดาวน์โหลดและติดตั้งโปรแกรม Raspberry Pi Imager ลงในคอมพิวเตอร์ของคุณ จากนั้นนำ microSD card เสียบเข้ากับคอมพิวเตอร์
• การเลือกตั้งค่า: ในโปรแกรม Imager ให้เลือกอุปกรณ์เป็น “Raspberry Pi 5” และเลือกระบบปฏิบัติการเป็น “Raspberry Pi OS”
• การเขียนข้อมูล (Flashing): กดปุ่ม “Flash” เพื่อเขียนระบบปฏิบัติการลงในการ์ด เมื่อเสร็จสิ้นให้นำการ์ดไปเสียบที่ Raspberry Pi 5
• การเริ่มต้นระบบ: เชื่อมต่อ Raspberry Pi เข้ากับจอมอนิเตอร์ คีย์บอร์ด เมาส์ และแหล่งจ่ายไฟ เพื่อเปิดเครื่องและตรวจสอบความพร้อมของหน้าจอ Desktop หากต้องการ คุณสามารถอัปเดตซอฟต์แวร์ให้เป็นปัจจุบันได้ผ่านคำสั่ง sudo apt update และ sudo apt upgrade
2. การเชื่อมต่อและตั้งค่าเซ็นเซอร์ Lark Weather Station เมื่อ Raspberry Pi พร้อมทำงานแล้ว ขั้นตอนต่อไปคือการเชื่อมต่อ “ประสาทสัมผัส” เพื่อรับข้อมูลสภาพอากาศ:
• การเชื่อมต่อสายสัญญาณ: ชุดตรวจวัด Lark Weather Station จะสื่อสารผ่านระบบ I2C ดังนั้นคุณต้องเชื่อมต่อสายจากเซ็นเซอร์เข้ากับพอร์ต GPIO หมายเลข 2 และ 3 บนบอร์ด Raspberry Pi 5 โดยใช้สาย Jumper wires,
• การเปิดใช้งาน I2C: แม้จะเสียบสายแล้ว แต่ระบบจะยังไม่รับรู้ข้อมูล คุณต้องเปิดการทำงานของ I2C ก่อน โดยพิมพ์คำสั่ง sudo raspi-config ใน Terminal เลือกไปที่ Interface Setting และทำการ Enable I2C แล้วรีสตาร์ทเครื่อง
• การติดตั้งไลบรารี: เพื่อให้ Raspberry Pi อ่านค่าจากเซ็นเซอร์ได้ ต้องดาวน์โหลดชุดคำสั่งภาษา Python ของ DFRobot โดยใช้คำสั่ง git clone https://github.com/DFRobot/DFRobot_LarkWeatherStation
• การทดสอบ: สุดท้าย ให้รันไฟล์ทดสอบ python get_data.py เพื่อตรวจสอบว่าค่าอุณหภูมิ ความชื้น และความกดอากาศ ปรากฏขึ้นบนหน้าจอหรือไม่
เปรียบเทียบให้เห็นภาพ: กระบวนการนี้เหมือนกับ “การติดตั้งเบอร์โทรศัพท์บ้าน” ครับ
• การลง OS คือการสร้างตัวบ้านและเดินระบบไฟให้พร้อมอยู่อาศัย
• การเสียบสายเข้า GPIO คือการลากสายโทรศัพท์จากชุมสายเข้ามาเสียบที่ตัวเครื่องโทรศัพท์ในบ้าน
การ Enable I2C และลงไลบรารี คือการโทรไปแจ้งศูนย์บริการให้ “เปิดสัญญาณ” ครับ ถ้าเสียบสายแต่ไม่เปิดสัญญาณ โทรศัพท์ (หรือเซ็นเซอร์) ก็ใช้งานไม่ได้ครับ
หลังจากที่คุณได้เตรียม Raspberry Pi และเชื่อมต่อเซ็นเซอร์ Lark เรียบร้อยแล้ว ขั้นตอนต่อไปคือการเชื่อมต่อข้อมูลเหล่านั้นขึ้นสู่ระบบคลาวด์ของ Qubitro เพื่อให้สามารถดูข้อมูลผ่านหน้าจอ Dashboard ได้อย่างสวยงาม โดยมีขั้นตอนสำคัญดังนี้ครับ
What is Qubitro?
Qubitro is an IoT (Internet of Things) platform that provides tools and services for connecting, managing, and analyzing IoT devices and data. It provides a cloud-based platform where users can securely connect their IoT devices and collect data from sensors and actuators.
1. การตั้งค่าบัญชีและอุปกรณ์บน Qubitro (Cloud Setup) ก่อนที่ Raspberry Pi จะส่งข้อมูลได้ ต้องมี “ที่อยู่” ปลายทางก่อน:
• สร้างบัญชี: เข้าไปที่เว็บไซต์ของ Qubitro แล้วลงทะเบียนสมัครใช้งาน
• สร้าง Project และ Device: ในหน้าพอร์ทัล ให้สร้างโปรเจกต์ใหม่ และสร้างอุปกรณ์ (Device) สำหรับสถานีตรวจอากาศของคุณ
• จดบันทึกรหัส: สิ่งที่สำคัญที่สุดคือคุณต้องจดบันทึก Device ID และ Access Token (Device Token) เอาไว้ เพราะสิ่งนี้เปรียบเสมือนกุญแจที่จะอนุญาตให้ Raspberry Pi ส่งข้อมูลเข้าสู่ระบบได้
2. การเตรียมซอฟต์แวร์บน Raspberry Pi (Client Setup) คุณต้องติดตั้งเครื่องมือสื่อสารที่เรียกว่า MQTT เพื่อใช้ส่งข้อมูล:
• เปิด Terminal บน Raspberry Pi แล้วพิมพ์คำสั่งเพื่อติดตั้งไลบรารี Paho MQTT: pip install paho-mqtt
3. การเขียนและรันโปรแกรม Python (Integration Code) ขั้นตอนนี้นำข้อมูลจากเซ็นเซอร์มารวมกับกุญแจจากข้อ 1 เพื่อส่งออกไป:
• ใช้โค้ด Python (ตามตัวอย่างในแหล่งข้อมูล) ซึ่งจะทำหน้าที่อ่านค่าจาก Lark Weather Station และแปลงเป็นรูปแบบ JSON เพื่อส่งไปยัง Qubitro
• การตั้งค่าในโค้ด: ในไฟล์ Python คุณต้องนำข้อมูลที่จดไว้มาใส่ในตัวแปร:
◦ broker_host = "broker.qubitro.com" (ที่อยู่เซิร์ฟเวอร์)
◦ device_id = "ใส่ Device ID ของคุณ"
◦ device_token = "ใส่ Token ของคุณ"
การทำงาน: สคริปต์จะอ่านค่า Speed, Temp, Humidity, Pressure, และ Altitude แล้วส่งผ่านโปรโตคอล MQTT แบบมีความปลอดภัย (SSL/TLS) ไปยัง Qubitro
4. การสร้างหน้าจอแสดงผล (Visualization) เมื่อรันสคริปต์และข้อมูลถูกส่งขึ้นไปแล้ว:
• กลับไปที่หน้าเว็บไซต์ Qubitro เข้าไปที่เมนู Dashboard
• สร้าง Widget ใหม่ เลือกประเภทข้อมูลที่ต้องการแสดง (เช่น กราฟเส้นสำหรับอุณหภูมิ, มาตรวัดสำหรับความชื้น)
• คุณจะเห็นข้อมูลอัปเดตแบบ Real-Time ซึ่งสามารถดูผ่านมือถือหรือคอมพิวเตอร์ได้จากทุกที่
เปรียบเทียบให้เห็นภาพ: กระบวนการนี้เหมือนกับ “การส่งพัสดุไปรษณีย์” ครับ
• ข้อมูลอากาศ คือ “สิ่งของ” ที่คุณต้องการส่ง
• ไฟล์ Python และ MQTT คือ “บริการขนส่ง” ที่ทำหน้าที่แพ็คของลงกล่อง
• Device ID และ Token คือ “จ่าหน้าซองและแสตมป์” ที่ระบุว่าของชิ้นนี้มาจากใครและจะส่งไปที่บ้านเลขที่เท่าไหร่
และ Qubitro Dashboard ก็คือ “ผู้รับปลายทาง” ที่แกะกล่องออกมาแล้วนำของไปวางโชว์บนชั้นวางของให้สวยงามครับ
เมื่อฮาร์ดแวร์และเซ็นเซอร์พร้อมแล้ว ขั้นตอนต่อไปคือการเชื่อมต่อสถานีตรวจอากาศของคุณเข้ากับ Qubitro ซึ่งเป็นแพลตฟอร์ม Cloud IoT เพื่อแสดงผลข้อมูล โดยมีขั้นตอนสำคัญดังนี้ครับ
1. การตั้งค่าบนแพลตฟอร์ม Qubitro (เตรียมปลายทาง) ก่อนจะส่งข้อมูลได้ คุณต้องสร้าง “ที่อยู่” เพื่อรับข้อมูลบนคลาวด์ก่อน:
• สร้างบัญชีและอุปกรณ์: เข้าไปที่เว็บไซต์ Qubitro สมัครสมาชิกและสร้าง “Project” ใหม่ จากนั้นให้สร้าง “Device” สำหรับสถานีตรวจอากาศของคุณ
• เก็บรหัสผ่าน: สิ่งที่สำคัญที่สุดคือคุณต้องจดบันทึก Device ID และ Access Token ที่ได้จากการสร้างอุปกรณ์ รหัสเหล่านี้เปรียบเสมือนกุญแจที่อนุญาตให้ Raspberry Pi ส่งข้อมูลเข้าสู่ระบบได้
2. การเตรียมซอฟต์แวร์บน Raspberry Pi (เตรียมผู้ส่ง) ติดตั้งไลบรารีที่จำเป็นสำหรับการสื่อสารผ่านโปรโตคอล MQTT ซึ่งเป็นมาตรฐานในการส่งข้อมูล IoT:
• เปิด Terminal บน Raspberry Pi แล้วพิมพ์คำสั่งเพื่อติดตั้งไลบรารี Paho MQTT: pip install paho-mqtt
3. การเขียนและรันโปรแกรม Python (รวมข้อมูลและส่งออก) ขั้นตอนนี้คือการนำข้อมูลจากเซ็นเซอร์ Lark มารวมกับรหัสผ่าน Qubitro แล้วส่งออกไป โดยอ้างอิงจากโค้ดตัวอย่างในแหล่งข้อมูล:
• การตั้งค่าโค้ด (Configuration): ในสคริปต์ Python คุณต้องระบุค่าตัวแปรให้ถูกต้อง:
◦ broker_host: ใช้ค่า "broker.qubitro.com"
◦ device_id: ใส่ Device ID ที่คุณจดไว้
◦ device_token: ใส่ Token ที่คุณจดไว้
• กระบวนการทำงานของโค้ด:
◦ สคริปต์จะอ่านค่าจากเซ็นเซอร์ (ความเร็วลม, อุณหภูมิ, ความชื้น, ความกดอากาศ, ระดับความสูง)
◦ แปลงข้อมูลเป็นรูปแบบ JSON (เช่น payload = {"Speed": tmp, "Temp": tmp1...})
◦ เชื่อมต่อกับ Qubitro ผ่านพอร์ต 8883 โดยใช้การเข้ารหัสความปลอดภัยแบบ SSL/TLS
◦ ส่งข้อมูล (Publish) ไปยัง Cloud
4. การสร้างหน้าจอแสดงผล (Visualization) เมื่อรันโปรแกรมและข้อมูลถูกส่งขึ้นไปสำเร็จ:
• กลับไปที่หน้าพอร์ทัลของ Qubitro แล้วไปที่เมนู Dashboard
• สร้าง Widget ใหม่ เลือกข้อมูลที่ต้องการแสดง เช่น กราฟเส้นสำหรับอุณหภูมิ หรือเกจวัดความชื้น
• คุณจะเห็นข้อมูลอัปเดตแบบ Real-Time ซึ่งสามารถดูผ่านเว็บหรือมือถือได้จากทุกที่
เปรียบเทียบให้เห็นภาพ: กระบวนการนี้เหมือนกับ “การส่งพัสดุไปรษณีย์” ครับ
• ข้อมูลอากาศ คือ “สิ่งของ” ที่คุณต้องการส่ง
• Python และ MQTT คือ “บริการขนส่ง” (เช่น Kerry หรือ ไปรษณีย์ไทย) ที่ทำหน้าที่แพ็คของและนำส่ง
• Device ID และ Token คือ “จ่าหน้าซองที่ระบุที่อยู่ผู้รับ” อย่างชัดเจน เพื่อให้ของไม่สูญหาย
และ Qubitro Dashboard ก็คือ “ตู้โชว์สินค้าที่ปลายทาง” ที่เมื่อของส่งไปถึงแล้ว จะถูกนำมาแกะวางเรียงให้ดูสวยงามและเข้าใจง่ายทันทีครับ
จากข้อมูลในแหล่งอ้างอิง คุณสามารถใช้งานวิดเจ็ต (Widgets) บนหน้าแดชบอร์ดของ Qubitro เพื่อแสดงผลข้อมูลสำคัญจากสถานีตรวจอากาศได้ดังนี้ครับ
1. วิดเจ็ตแสดงข้อมูลสภาพอากาศ (Environmental Data Widgets) ตามคู่มือการใช้งาน คุณสามารถสร้างวิดเจ็ตเพื่อแสดงผลข้อมูลหลัก 3 ประเภท ได้แก่ อุณหภูมิ (Temperature), ความชื้น (Humidity), และความกดอากาศ (Pressure)
2. วิดเจ็ตสำหรับข้อมูลเพิ่มเติมจากเซ็นเซอร์ แม้วิดเจ็ตพื้นฐานจะเน้นที่ 3 ค่าข้างต้น แต่จากชุดโค้ด Python ที่ใช้ในการส่งข้อมูล (Integration Code) พบว่าระบบมีการส่งค่า ความเร็วลม (Speed) และ ระดับความสูง (Altitude) ขึ้นไปด้วย ซึ่งหมายความว่าคุณสามารถนำค่าเหล่านี้มาแสดงผลบนแดชบอร์ดได้เช่นกัน
3. คุณสมบัติของวิดเจ็ต
• การแสดงผลแบบเรียลไทม์ (Real-Time Updates): วิดเจ็ตบน Qubitro จะแสดงข้อมูลที่อัปเดตทันที ทำให้คุณสามารถติดตามสถานะสภาพอากาศได้จากทุกที่ทั้งผ่านหน้าจอคอมพิวเตอร์และมือถือ
• การปรับแต่งได้ (Customizable): คุณสามารถปรับเปลี่ยนเลย์เอาต์ (Layout) ของวิดเจ็ตบนแดชบอร์ดได้ตามความชอบเพื่อให้เหมาะสมกับการใช้งานของคุณ
สรุปโดยย่อ: วิดเจ็ตบน Qubitro ในโปรเจกต์นี้ทำหน้าที่เป็น “มาตรวัดดิจิทัล” ที่คุณสามารถเลือกหยิบค่าต่างๆ (เช่น อุณหภูมิ หรือ ความชื้น) มาวางเรียงบนหน้าจอเพื่อเฝ้าดูการเปลี่ยนแปลงของสภาพอากาศได้ตลอดเวลาครับ
ขอบคุณค่ะ
โฆษณา