การตรวจจับระดับความสูง: บารอมิเตอร์ดิจิทัล
การพยากรณ์รูปแบบสภาพอากาศหรือการวัดระดับความสูงปัจจุบันต้องใช้ข้อมูลบรรยากาศที่แม่นยำ Arduino Barometer นี้ให้การวัดระดับมืออาชีพโดยใช้ BMP180 sensor โปรเจกต์นี้หลีกเลี่ยงการใช้ OLED displays ขนาดเล็กที่อ่านยากซึ่งพบได้บ่อยในบทช่วยสอนหลายแห่ง และหันมาใช้ Nokia 5110 LCD อันเป็นเอกลักษณ์ ซึ่งมีอินเทอร์เฟซทางกายภาพที่ใหญ่ขึ้นและทนทานกว่า เหมาะสำหรับอุปกรณ์กลางแจ้งหรือเครื่องติดตามสภาพอากาศแบบพกพา
ข้อมูลบรรยากาศที่แม่นยำ: The BMP180
BMP180 เป็น barometric pressure sensor ประสิทธิภาพสูงที่ทำงานบน I2C Protocol:
- Absolute Pressure: มันวัดน้ำหนักของอากาศที่อยู่เหนือมันด้วยความละเอียดสูง (0.03 hPa) ข้อมูลนี้สามารถใช้เพื่อพยากรณ์พายุที่กำลังจะมาถึง (ระบุโดยความดันที่ลดลง)
- Altitude Calculation: โดยการเปรียบเทียบความดันปัจจุบันกับความดันระดับน้ำทะเลมาตรฐาน (1013.25 hPa) Arduino สามารถคำนวณ Elevation ปัจจุบันของคุณได้อย่างแม่นยำน่าทึ่ง ทำให้มีประโยชน์สำหรับ drone flight controllers หรือบันทึกการเดินป่า
- Integrated Temperature: sensor ยังมี temperature probe ซึ่งใช้ในการปรับเทียบข้อมูลความดันเทียบกับการขยายตัวทางความร้อน ทำให้มั่นใจว่าค่าที่อ่านได้มีความสอดคล้องกันไม่ว่าสภาพอากาศจะเป็นอย่างไร
การเลือกจอแสดงผล: Nokia 5110 ที่ใช้งานได้หลากหลาย
จุดเด่นของโปรเจกต์คือการดัดแปลง Nokia 5110 display ได้สำเร็จ ซึ่งเป็น graphic LCD วินเทจที่ขึ้นชื่อเรื่องความทนทานและความสามารถในการอ่านภายใต้แสงแดด:
- U8glib Library: ผู้พัฒนาได้ใช้ U8glib library อันทรงพลัง เดิมทีออกแบบมาสำหรับ OLEDs ผู้สร้างได้ปรับเปลี่ยนลำดับการเริ่มต้นเพื่อรองรับ PCD8544 controller ของหน้าจอ Nokia สิ่งนี้ช่วยให้สามารถใช้ fonts คุณภาพสูงและสัญลักษณ์ที่กำหนดเองได้ (เช่น ไอคอนเมฆหรือดวงอาทิตย์) ซึ่งไม่สามารถทำได้บน character LCDs มาตรฐาน
- SPI Communication: แตกต่างจาก I2C sensors จอแสดงผลนี้ใช้ SPI bus ความเร็วสูง โปรเจกต์นี้จัดการ communication protocols สองแบบที่แตกต่างกัน (I2C สำหรับการตรวจจับ, SPI สำหรับจอแสดงผล) บน Arduino Mega เพียงเครื่องเดียว ซึ่งแสดงให้เห็นถึงการจัดการ bus ขั้นสูง
- Low Power Design: จอแสดงผล Nokia มีประสิทธิภาพการใช้พลังงานสูงมาก โดยกินกระแสไฟเพียงไม่กี่ milliamps เมื่อปิดไฟแบ็คไลท์ ซึ่งเสริมกับ low-power modes ของ BMP180 สำหรับอุปกรณ์ที่ใช้แบตเตอรี่
barometer นี้เป็นตัวอย่างที่ยอดเยี่ยมของ Sensor Fusion และการปรับเปลี่ยน library ซึ่งพิสูจน์ให้เห็นว่าด้วยความอดทนเล็กน้อยและ code ที่ถูกต้อง คุณสามารถสร้างอุปกรณ์ที่ทัดเทียมกับเครื่องมือบรรยากาศระดับอุตสาหกรรมได้
สวัสดี!
เอาล่ะ ผมยังเป็นมือใหม่กับ **Arduino** และผมไม่มีเวลาว่างมากพอที่จะเรียนรู้การเขียนโปรแกรมอย่างเหมาะสม
ผมพบ **sample codes** บางส่วนพร้อม **u8glib library** สำหรับ **sensors** บางตัว
เดิมทีโค้ดเหล่านี้มีไว้สำหรับ **I2C OLED SSD1306 displays** แต่ผมไม่ชอบ **OLED displays** ขนาดเล็กเหล่านี้ ขออภัยด้วย!
ผมรู้ว่า **u8glib library** สามารถเชื่อมต่อกับ **Nokia 5110 displays** ได้ง่ายมาก ดังนั้นผมจึงแก้ไข **sample codes** บางส่วนเพื่อให้ทำงานร่วมกับมันได้
ผมทำมันกับ **DHT11**, **BMP180**, และ **DS18B20** ถ้าผมมีเวลา ผมจะเผยแพร่มัน