UV Meter เป็นแอปพลิเคชันบน Flipper Zero ที่ออกแบบมาเพื่อวัดรังสีอัลตราไวโอเลต (UV) โดยใช้เซ็นเซอร์สเปกตรัม AS7331 ซึ่งสามารถตรวจจับคลื่นความถี่ UV-A, UV-B และ UV-C ได้ แอปนี้เหมาะสำหรับการตรวจสอบรังสี UV ส่วนบุคคลและสิ่งแวดล้อม โดยสามารถวัดระดับการได้รับรังสี UV ในสถานการณ์ประจำวัน เช่น การอยู่หลังหน้าต่าง ใต้เมฆ หรือขณะสวมแว่นกันแดด
แอปนี้ให้ค่าการแผ่รังสีแบบเรียลไทม์ในหน่วย µW/cm², W/m² หรือ mW/m² พร้อมทั้งคำนวณระยะเวลาการรับรังสี UV สูงสุดต่อวันอย่างปลอดภัยตามค่าเกณฑ์ปี 2024 (TLVs และ BEIs) ของ ACGIH โดยสามารถปรับปัจจัยต่างๆ ได้ เช่น สถานะการป้องกันดวงตา, ค่าขยายสัญญาณ (gain), และระยะเวลาในการรับรังสี หน้าจอจะแสดงมาตรวัดพร้อมสัญลักษณ์เตือนเมื่อมีการรับรังสีน้อยเกินไปหรือมากเกินไป อีกทั้งยังแสดงสัดส่วนของรังสี UV แต่ละประเภทที่มีผลต่อความเสี่ยงโดยรวมด้วย แผงวงจรอะแดปเตอร์ขนาดเล็กช่วยให้สามารถเชื่อมต่อ Flipper Zero เข้ากับบอร์ด AS7331 ผ่าน I²C ได้อย่างสะดวก
สเปคของ UV Meter สำหรับ Flipper Zero:
- แพลตฟอร์มที่รองรับ – Flipper Zero
- โมดูลเซ็นเซอร์ – Sparkfun AS7331 Spectral Sensor สำหรับการวัดรังสี UV-A, UV-B และ UV-C อย่างเป็นอิสระ
- อินเทอร์เฟซ – I2C
- SCL → C0 (Pin 16)
- SDA → C1 (Pin 15)
- การแสดงผลข้อมูล
- อ่านค่าความเข้มของรังสี UV แบบเรียลไทม์
- หน่วยที่ใช้: µW/cm², mW/m², W/m²
- แถบกราฟแสดงค่าดิบจากเซ็นเซอร์ พร้อมสัญลักษณ์เตือนเมื่อได้รับรังสีมากหรือน้อยเกินไป
- การวัดการรับรังสี
- คำนวณระยะเวลาการรับรังสีสูงสุดต่อวันโดยอิงจาก:
- TLVs และ BEIs ปี 2024 ของ ACGIH
- การทำงานในรอบกะ 8 ชั่วโมงเป็นเกณฑ์อ้างอิง
- สถานะการป้องกันดวงตา (สามารถเปิด/ปิดได้ในเมนูการตั้งค่า)
- แสดงเปอร์เซ็นต์การมีส่วนร่วมของแต่ละช่วงคลื่น UV ต่อความเสี่ยงโดยรวม
- เตือนเมื่อเกินค่าระดับความปลอดภัย
- คำนวณระยะเวลาการรับรังสีสูงสุดต่อวันโดยอิงจาก:
- การตั้งค่าผู้ใช้
- เลือกที่อยู่ I²C ได้ด้วยตนเอง
- ปรับค่าขยายสัญญาณ (Gain) และเวลาเปิดรับแสง (Exposure time) ได้ คล้ายกับ ISO/shutter speed
- สลับโหมดป้องกันดวงตาเพื่อการคำนวณความปลอดภัยที่แม่นยำยิ่งขึ้น
- แผงวงจร PCB อะแดปเตอร์ – ออกแบบด้วย KiCad โดยเฉพาะ
- ขนาดแผงวงจร PCB อะแดปเตอร์ – 25.8 มม. x 20.3 มม.
ด้านซอฟต์แวร์ Baisch กล่าวว่าซอฟต์แวร์สำหรับแอป UV Meter ถูกพัฒนาขึ้นมาใหม่ทั้งหมด โดยก้าวข้ามขั้นกว่าบทเรียนพื้นฐานและไลบรารีที่มีอยู่จาก SparkFun อย่างมาก สุดท้ายเขาจึงสร้างไลบรารี AS7331 ของตัวเองขึ้นมา เพื่อจัดการการตั้งค่าการวัดของเซ็นเซอร์ (เช่น Gain, Integration Time และ Divider) รวมถึงแปลงข้อมูลดิบให้เป็นค่าที่มีความหมายในหน่วย µW/cm²

Baisch ยังได้สร้างอินเทอร์เฟซสำหรับหน้าจอขนาด 128×64 พิกเซลของ Flipper Zero เพื่อแสดงค่ารังสี UV-A, UV-B และ UV-C พร้อมทั้งแสดงระยะเวลาการรับรังสีสูงสุดต่อวันที่คำนวณตามแนวทางของ ACGIH โดยเขาได้ย้ายจากการใช้ ViewPort แบบง่าย ๆ ไปเป็นโครงสร้างแบบ SceneManager/ViewDispatcher เพื่อจัดการหน้าจอที่หลากหลาย เช่น settings menu, About และ Help รวมถึงคู่มือการเชื่อมต่อเซ็นเซอร์แบบมีภาพประกอบ
UV Meter นี้เป็นส่วนเสริมหนึ่งในหลาย ๆ ส่วนขยายที่มีอยู่สำหรับ Flipper Zero เช่น Flipper Blackhat dual-band Wi-Fi card running Linux and designed for penetration testing, FlipMods Combo ของ Sacred Labs โมดูลเสริมแบบ 3-in-1 ที่รวมชิป ESP32, CC1101 ไมโครคอนโทรลเลอร์แบบไร้สาย รองรับ Sub-GHz และโมดูล GPS, และบอร์ดเสริม CAN Bus
Baisch ยังออกแบบแผงวงจร (PCB) แบบกำหนดเองเพื่อเชื่อมต่อโมดูลเซ็นเซอร์เข้ากับ Flipper Zero โดยไม่ต้องใช้สายไฟ หลังจากที่สร้างตัวอุปกรณ์และออกแบบส่วนติดต่อผู้ใช้ (UI) เสร็จแล้ว เขาก็ทำการทดสอบ และผลลัพธ์ที่ได้ก็เรียกได้ว่าน่าประหลาดใจ เพราะปรากฏว่าเรามักได้รับการปกป้องจากรังสี UV น้อยกว่าที่คิดไว้ หากเป็นช่วงหน้าร้อนนี้ ก็ควรพิจารณามาตรการป้องกันแสงแดดให้ดีกว่าเดิม หรือไม่ก็ลองสร้าง UV Meter สำหรับ Flipper Zero ด้วยตัวเอง สามารถดูข้อมูลเพิ่มเติมเกี่ยวกับโปรเจกต์นี้ได้จากเว็บไซต์ของ Michael Baisch หรือใน GitHub repository ของ Baisch ซึ่งเป็น open-sourced ทั้งหมด ทำให้คุณสามารถสร้างโปรเจกต์นี้เองได้อย่างง่ายดาย
แปลจากบทความภาษาอังกฤษ : UV Meter for Flipper Zero measures ultraviolet radiation with AS7331 sensor

บรรณาธิการข่าวและบทความภาษาไทย CNX Software ได้มีความสนใจในด้านเทคโนโลยี โดยเฉพาะ Smart Home และ IoT