![สถานีตรวจอากาศในห้องโดยใช้ Arduino & BME280: 4 ขั้นตอน สถานีตรวจอากาศในห้องโดยใช้ Arduino & BME280: 4 ขั้นตอน](https://i.howwhatproduce.com/images/005/image-13440-j.webp)
สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12
![สถานีตรวจอากาศในห้องโดยใช้ Arduino & BME280 สถานีตรวจอากาศในห้องโดยใช้ Arduino & BME280](https://i.howwhatproduce.com/images/005/image-13440-1-j.webp)
ก่อนหน้านี้ฉันแชร์สถานีตรวจอากาศอย่างง่ายซึ่งแสดงอุณหภูมิและความชื้นของพื้นที่ ปัญหาคือต้องใช้เวลาในการอัปเดตและข้อมูลไม่ถูกต้อง ในบทช่วยสอนนี้ เราจะสร้างระบบตรวจสอบสภาพอากาศในร่มซึ่งมีประโยชน์ในการเก็บบันทึกอุณหภูมิ ความชื้น และความดันภายในห้อง
เพื่อไม่ให้เสียเวลา เรามาเริ่มกันเลยดีกว่า
ขั้นตอนที่ 1: ข้อกำหนด:
![ความต้องการ ความต้องการ](https://i.howwhatproduce.com/images/005/image-13440-2-j.webp)
![ความต้องการ ความต้องการ](https://i.howwhatproduce.com/images/005/image-13440-3-j.webp)
![ความต้องการ ความต้องการ](https://i.howwhatproduce.com/images/005/image-13440-4-j.webp)
![ความต้องการ ความต้องการ](https://i.howwhatproduce.com/images/005/image-13440-5-j.webp)
นี่คือรายการชิ้นส่วนที่เราจะใช้สำหรับงานสร้าง
- เซนเซอร์ GY-BME280 …………… (Amazon US / Amazon EU)
- Arduino UNO……………………..(Amazon US / Amazon EU)
- Arduino Pro Mini …………………… (Amazon US / Amazon EU)
- จอแสดงผล OLED 128*64………….(Amazon US/ Amazon EU)
- เขียงหั่นขนมพร้อมจัมเปอร์…….(Amazon US / Amazon EU)
นอกจากส่วนประกอบข้างต้นแล้ว เรายังต้องการไลบรารี่ด้วยเช่นกัน:
- Arduino IDE
- Adafruit_BME280.h ห้องสมุด
- Adafruit_SH1106.h ห้องสมุด
- Adafruit_GFX.h Library
ขั้นตอนที่ 2: การเชื่อมต่อ:
![การเชื่อมต่อ การเชื่อมต่อ](https://i.howwhatproduce.com/images/005/image-13440-6-j.webp)
![การเชื่อมต่อ การเชื่อมต่อ](https://i.howwhatproduce.com/images/005/image-13440-7-j.webp)
![การเชื่อมต่อ การเชื่อมต่อ](https://i.howwhatproduce.com/images/005/image-13440-8-j.webp)
เราจะใช้การเชื่อมต่อ I2C เพื่อการสื่อสารระหว่างอุปกรณ์ I2C ใช้ 2 พิน Serial Data (SDA) และ Serial Clock (SCL) ในการสื่อสาร ดังนั้นในการเชื่อมต่อฉันได้เชื่อมต่อพินในรูปแบบต่อไปนี้:
- SDA = A5
- SCL = A4
- GND = GND
- VCC = 3.3v
การเชื่อมต่อเหมือนกันสำหรับ Arduino UNO และ Pro Mini
ขั้นตอนที่ 3: การเข้ารหัส:
![การเข้ารหัส การเข้ารหัส](https://i.howwhatproduce.com/images/005/image-13440-9-j.webp)
![การเข้ารหัส การเข้ารหัส](https://i.howwhatproduce.com/images/005/image-13440-10-j.webp)
ก่อนอัปโหลดโค้ดใด ๆ เราจำเป็นต้องติดตั้งไลบรารีที่จำเป็น เพื่อติดตั้งไลบรารี ไปที่ >> เครื่องมือ >> จัดการไลบรารี
ในช่องค้นหา ให้ป้อนชื่อไลบรารีและติดตั้งทั้งหมดทีละรายการ
หลังจากติดตั้งไลบรารี่ให้รีสตาร์ท IDE
หมายเหตุ: ไลบรารีและโค้ดมีไว้สำหรับเซนเซอร์และโมดูล OLED ที่ฉันใช้ (ลิงก์ที่ให้ไว้ในขั้นตอนก่อนหน้า) หากคุณกำลังใช้โมดูลอื่น ให้อ้างอิงแผ่นข้อมูลเพื่อทราบว่ามีการใช้ไลบรารีใดบ้าง
เขียนโค้ดด้านล่างในไฟล์ใหม่ใน Arduino IDE:
#รวม
#include #include #include #define OLED_RESET 4 จอแสดงผล Adafruit_SH1106 (OLED_RESET); Adafruit_BME280 bme; การตั้งค่าเป็นโมฆะ () { Serial.begin (9600); display.begin(SH1106_SWITCHCAPVCC, 0x3C); display.setFont(&FreeSerif9pt7b); display.display(); ล่าช้า (2000); display.clearDisplay(); if (!bme.begin(0x76)) { Serial.println("ไม่พบเซ็นเซอร์ BME280 ที่ถูกต้อง ให้ตรวจสอบการเดินสาย!"); ในขณะที่ (1); } } วงเป็นโมฆะ () { display.clearDisplay (); Serial.print ("อุณหภูมิ = "); Serial.print(bme.readTemperature()); //พิมพ์ใน *C //Serial.print(bme.readTemperature() * 9 / 5 + 32); //พิมพ์ใน *F Serial.println("*C"); display.setTextSize(1); display.setTextColor(สีขาว); display.setCursor(0, 15); display.print("อุณหภูมิ:"); display.print((int)bme.readTemperature()); //พิมพ์ใน *C //display.print(bme.readTemperature() * 9 / 5 + 32); //พิมพ์ใน *F display.println("*C"); display.display(); Serial.print("ความดัน = "); Serial.print(bme.readPressure()/100.0F); Serial.println("hPa"); display.setTextSize(1); display.setTextColor(สีขาว); display.print("กด:"); display.print(bme.readPressure()/100.0F); display.println("Pa"); display.display(); Serial.print("ความชื้น = "); Serial.print(bme.readHumidity()); Serial.println("%"); display.setTextSize(1); display.setTextColor(สีขาว); display.print("ฮัม:"); display.print((int)bme.readHumidity()); display.println("%"); display.display(); Serial.println(); ล่าช้า (1000); }
เชื่อมต่อ Arduino กับคอมพิวเตอร์ของคุณ เลือกพอร์ตที่ถูกต้องแล้วกดอัพโหลด หลังจากนั้นไม่กี่วินาที คุณจะเห็นหน้าจอเปิดขึ้น
ขั้นตอนที่ 4: หมายเหตุสุดท้าย:
![หมายเหตุสุดท้าย หมายเหตุสุดท้าย](https://i.howwhatproduce.com/images/005/image-13440-11-j.webp)
หน้าจอจะแสดงอุณหภูมิ ความชื้น และความกดอากาศ คุณยังสามารถดูข้อมูลใน Serial Monitor ได้อีกด้วย คุณสามารถเปลี่ยนแปลงโค้ดหรือการออกแบบได้ตามต้องการ ในบทช่วยสอนถัดไป ฉันจะสร้างวงจรนี้บน PCB และสร้างกล่องหุ้มสำหรับมัน อย่าลืมติดตามการอัปเดตเพิ่มเติม
หากคุณมีความสนใจในวิทยาการหุ่นยนต์และต้องการสร้างหุ่นยนต์แบบง่ายๆ ชำระเงิน ebook ของฉัน "Mini WiFi Robot" มีคำแนะนำทีละขั้นตอนในการสร้างหุ่นยนต์ง่ายๆ ที่สามารถควบคุมผ่านเครือข่าย WiFi
หวังว่าคำแนะนำนี้เป็นข้อมูล หากคุณมีข้อสงสัยโปรดถามในความคิดเห็น
แนะนำ:
การคำนวณความชื้น ความดัน และอุณหภูมิโดยใช้การเชื่อมต่อ BME280 และโฟตอน: 6 ขั้นตอน
![การคำนวณความชื้น ความดัน และอุณหภูมิโดยใช้การเชื่อมต่อ BME280 และโฟตอน: 6 ขั้นตอน การคำนวณความชื้น ความดัน และอุณหภูมิโดยใช้การเชื่อมต่อ BME280 และโฟตอน: 6 ขั้นตอน](https://i.howwhatproduce.com/images/003/image-6140-j.webp)
การคำนวณความชื้น ความดัน และอุณหภูมิโดยใช้ BME280 และการเชื่อมต่อโฟตอน: เราพบโครงการต่างๆ ที่ต้องการการตรวจสอบอุณหภูมิ ความดัน และความชื้น ดังนั้นเราจึงตระหนักดีว่าพารามิเตอร์เหล่านี้มีบทบาทสำคัญในการประมาณประสิทธิภาพการทำงานของระบบที่สภาวะบรรยากาศที่แตกต่างกัน
สถานีตรวจอากาศส่วนบุคคลโดยใช้ Raspberry Pi กับ BME280 ใน Java: 6 ขั้นตอน
![สถานีตรวจอากาศส่วนบุคคลโดยใช้ Raspberry Pi กับ BME280 ใน Java: 6 ขั้นตอน สถานีตรวจอากาศส่วนบุคคลโดยใช้ Raspberry Pi กับ BME280 ใน Java: 6 ขั้นตอน](https://i.howwhatproduce.com/images/004/image-10443-j.webp)
สถานีตรวจอากาศส่วนบุคคลที่ใช้ Raspberry Pi กับ BME280 ใน Java: สภาพอากาศเลวร้ายมักจะดูแย่เมื่อมองผ่านหน้าต่าง เราสนใจที่จะตรวจสอบสภาพอากาศในท้องถิ่นของเราและสิ่งที่เราเห็นนอกหน้าต่างมาโดยตลอด นอกจากนี้เรายังต้องการควบคุมระบบทำความร้อนและปรับอากาศของเราให้ดียิ่งขึ้นด้วย การสร้างสถานีตรวจอากาศส่วนบุคคลเป็นสิ่งที่ดี
สถานีตรวจอากาศด้วย Arduino, BME280 & จอแสดงผลเพื่อดูแนวโน้มภายใน 1-2 วันที่ผ่านมา: 3 ขั้นตอน (พร้อมรูปภาพ)
![สถานีตรวจอากาศด้วย Arduino, BME280 & จอแสดงผลเพื่อดูแนวโน้มภายใน 1-2 วันที่ผ่านมา: 3 ขั้นตอน (พร้อมรูปภาพ) สถานีตรวจอากาศด้วย Arduino, BME280 & จอแสดงผลเพื่อดูแนวโน้มภายใน 1-2 วันที่ผ่านมา: 3 ขั้นตอน (พร้อมรูปภาพ)](https://i.howwhatproduce.com/images/003/image-8042-13-j.webp)
สถานีตรวจอากาศด้วย Arduino, BME280 & จอแสดงผลเพื่อดูแนวโน้มภายใน 1-2 วันที่ผ่านมา: สวัสดี! ที่นี่เกี่ยวกับสถานีตรวจอากาศที่สอนได้ได้รับการแนะนำแล้ว โดยจะแสดงความกดอากาศ อุณหภูมิ และความชื้นในปัจจุบัน สิ่งที่พวกเขาขาดจนถึงตอนนี้คือการนำเสนอหลักสูตรภายใน 1-2 วันที่ผ่านมา กระบวนการนี้จะมีก
สร้าง Apple HomeKit Temperature Sensor (BME280) โดยใช้ RaspberryPI และ BME280: 5 ขั้นตอน
![สร้าง Apple HomeKit Temperature Sensor (BME280) โดยใช้ RaspberryPI และ BME280: 5 ขั้นตอน สร้าง Apple HomeKit Temperature Sensor (BME280) โดยใช้ RaspberryPI และ BME280: 5 ขั้นตอน](https://i.howwhatproduce.com/images/002/image-4763-30-j.webp)
สร้าง Apple HomeKit Temperature Sensor (BME280) โดยใช้ RaspberryPI และ BME280: ฉันได้ลองใช้งานอุปกรณ์ IOT ในช่วงไม่กี่เดือนที่ผ่านมา และได้ปรับใช้เซ็นเซอร์ต่างๆ ประมาณ 10 ตัวเพื่อตรวจสอบสภาพรอบๆ บ้านและกระท่อมของฉัน และเดิมทีฉันเริ่มใช้เซ็นเซอร์วัดความชื้นสัมพัทธ์ AOSONG DHT22
อีกหนึ่งสถานีตรวจอากาศ Arduino (ESP-01 & BMP280 & DHT11 & OneWire): 4 ขั้นตอน
![อีกหนึ่งสถานีตรวจอากาศ Arduino (ESP-01 & BMP280 & DHT11 & OneWire): 4 ขั้นตอน อีกหนึ่งสถานีตรวจอากาศ Arduino (ESP-01 & BMP280 & DHT11 & OneWire): 4 ขั้นตอน](https://i.howwhatproduce.com/images/002/image-5479-42-j.webp)
สถานีตรวจอากาศ Arduino อีกหนึ่งสถานี (ESP-01 & BMP280 & DHT11 & OneWire): ที่นี่คุณสามารถค้นหาการวนซ้ำของการใช้ OneWire ด้วยหมุด ESP-01 เพียงไม่กี่ตัว อุปกรณ์ที่สร้างขึ้นในคำสั่งนี้เชื่อมต่อกับเครือข่าย Wifi ของคุณ ตัวเลือก (คุณต้องมีข้อมูลประจำตัว…) รวบรวมข้อมูลทางประสาทสัมผัสจาก BMP280 และ DHT11