ในบทความก่อนหน้านี้แล้ว เรานำเสนอ DHT11เซ็นเซอร์อุณหภูมิและความชื้นอีกตัวหนึ่งที่คุณมีให้เลือกใช้ แต่ในบทความใหม่นี้เราจะบอกคุณ ทุกสิ่งที่คุณต้องการรู้เกี่ยวกับ DHT22. โดยปกติเมื่อมองแวบแรกความแตกต่างเพียงอย่างเดียวระหว่าง DHT11 และ DHT22 คือรุ่นก่อนมาในปลอกสีน้ำเงินและด้านหลังเป็นสีขาว ความจริงแล้วทั้งสองเป็นพี่น้องตระกูลเดียวกันของเซนเซอร์
El DHT11 คือน้องชายคนเล็กกล่าวคือมีข้อบกพร่องหรือประโยชน์น้อยกว่าเมื่อเทียบกับ DHT22 ดังนั้นจึงมีราคาที่สูงกว่า DHT11 สามารถใช้สำหรับโครงการที่คุณไม่ต้องการความแม่นยำในการวัดสูงในขณะที่หากคุณต้องการสิ่งที่แม่นยำยิ่งขึ้นคุณควรเลือก DHT22 22 นั้นไม่ได้มีความแม่นยำสูง แต่ก็มีคุณสมบัติมากกว่าที่ยอมรับได้สำหรับโครงการผู้ผลิต DIY ส่วนใหญ่
DHT22 คืออะไร?
El DHT22 เป็นเซ็นเซอร์อุณหภูมิและความชื้นที่มีคุณสมบัติใกล้เคียงกับความแม่นยำสูง. คุณสามารถหาซื้อได้ง่ายในร้านค้าเฉพาะหรือห้างสรรพสินค้าที่ไหน ผลิตภัณฑ์ที่ไม่พบ. ซึ่งช่วยให้คุณไม่ต้องพึ่งพาเซ็นเซอร์อุณหภูมิและเซ็นเซอร์ความชื้นแยกกัน แต่จะรวมทุกอย่างไว้ในอุปกรณ์เดียวกัน
คุณสามารถพบว่ามันหลวมหรือ ในโมดูลที่ออกแบบมาเป็นพิเศษสำหรับ Arduinoเช่น DHT22 ที่ติดตั้งบนบอร์ด PCB ที่พร้อมใช้งานโดยไม่ต้องเพิ่มตัวต้านทานแบบดึงขึ้นเป็นต้น จนถึงตอนนี้ทุกอย่างดูเหมือน DHT11 มาก นอกจากนี้คุณยังมีความน่าเชื่อถือและความเสถียรสูงในการวัดเนื่องจากสัญญาณดิจิตอลที่ปรับเทียบแล้วที่ใช้
Pinout คุณสมบัติและแผ่นข้อมูล
ในภาพด้านบนคุณสามารถดูการเปรียบเทียบของไฟล์ DHT22 และ DHT11 pinoutและอย่างที่คุณเห็นว่ามันเหมือนกันในแง่ของจอน ดังนั้นการประกอบจะเหมือนกันทุกประการและสิ่งที่ดีที่สุดคือคุณสามารถแทนที่ DHT11 ด้วย DHT22 ได้ตลอดเวลาและในทางกลับกันในโครงการของคุณโดยไม่ต้องทำการเปลี่ยนแปลงมากเกินไป
โปรดจำไว้ว่ามีหมุด 3 ตัวที่คุณต้องใช้: GND, Vcc และข้อมูล. ไม่ได้ใช้พิน # 3 และในโมดูลจะถูกข้ามนั่นคือคุณจะเห็นเพียงสามพินเท่านั้น หากคุณต้องการดูรายละเอียดเพิ่มเติมเกี่ยวกับผลิตภัณฑ์ที่คุณซื้อคุณสามารถค้นหาเอกสารข้อมูลของรุ่นและผู้ผลิตเฉพาะเพื่อรับข้อมูลทั้งหมดได้ แม้ว่าค่าส่วนใหญ่อาจดูเหมือนกับคุณ แต่อาจมีการเปลี่ยนแปลงเล็กน้อยจากค่าหนึ่งไปอีกค่าหนึ่ง ลักษณะทางเทคนิคที่สำคัญที่สุดคือ:
- แหล่งจ่ายไฟ 3,3v ถึง 6v
- 2,5mA การบริโภคในปัจจุบัน
- สัญญาณเอาท์พุตดิจิตอล
- ช่วงอุณหภูมิตั้งแต่-40ºCถึง125ºC
- ความแม่นยำในการวัดอุณหภูมิที่25ºCที่รูปแบบ0.5ºC
- ความละเอียดในการวัดอุณหภูมิคือ 8 บิต0,1ºC
- ความชื้นสามารถวัดได้ตั้งแต่ 0% RH ถึง 100% RH
- ความชื้นที่ถูกต้อง 2-5% RH สำหรับอุณหภูมิระหว่าง0-50ºC
- ความละเอียด 0,1% RH ไม่สามารถเลือกรูปแบบที่ต่ำกว่านั้นได้
- อัตราการสุ่มตัวอย่าง 2 ตัวอย่างต่อวินาที: 2Hz
- แผ่นข้อมูล Sparkfun
หากคุณได้อ่านคู่มือของเราเกี่ยวกับ DHT11 คุณจะรู้ว่า ส่งข้อมูลในรูปแบบดิจิทัล สำหรับพินข้อมูลดังนั้นข้อดีอีกอย่างสำหรับเซ็นเซอร์เหล่านี้ ไม่จำเป็นต้องสร้างรหัสใน Arduino IDE เพื่อเปลี่ยนจากค่าอนาล็อกไปเป็นค่าที่มนุษย์เข้าใจได้ แต่สัญญาณดิจิทัลสามารถประมวลผลโดยตรงเพื่อส่งผ่านไปยังองศาหรือเปอร์เซ็นต์ของความชื้นสัมพัทธ์
ส่วนหนึ่งนี่คือเหตุผลว่าทำไมจึงมีความแม่นยำเนื่องจากมีไฟล์ เฟรม 40 บิต การส่งสัญญาณความแม่นยำจะสูงขึ้น มันยังมีพาริตีบิตบางส่วนเพื่อตรวจจับความล้มเหลวของสัญญาณ คุณไม่มีสัญญาณแอนะล็อกนอกเหนือจากข้อเท็จจริงที่ว่าอะนาล็อกมีความไวต่อการเปลี่ยนแปลงของแรงดันไฟฟ้ามาก ...
บูรณาการกับ Arduino
เช่นเดียวกับ DHT11 การติดตั้ง DHT22 กับ Arduino นั้นค่อนข้างง่าย. โปรดจำไว้ว่าหากคุณใช้งานเพียงอย่างเดียวโดยไม่ได้ติดตั้งบนโมดูลและเซ็นเซอร์อยู่ห่างไกล (หรือหากคุณใช้แรงดันไฟฟ้าที่ต่ำกว่าเพื่อจ่ายไฟ) คุณต้องใช้ตัวต้านทานแบบดึงขึ้นที่สร้างสะพานเชื่อมระหว่างพิน Vcc และพินข้อมูล แต่ถ้าคุณใช้โมดูลคุณสามารถบันทึกและเชื่อมต่อได้โดยตรงตามที่ปรากฏในภาพด้านบน…นอกจากนี้โปรดจำไว้ว่าในโมดูลจะไม่มีพิน NC ที่ไม่ได้ใช้งานดังนั้นมันจะง่ายยิ่งขึ้น เพื่อไม่ให้สับสน
คุณเพียงแค่ต้องเชื่อมต่อ GND และ Vcc กับ การเชื่อมต่อที่เหมาะสมของบอร์ด Arduino ของคุณนั่นคือสำหรับผู้ที่ทำเครื่องหมายเป็น GND และ 5v ในกรณีนี้ และสำหรับพินข้อมูลคุณสามารถเชื่อมต่อกับอินพุตดิจิทัลของ Arduino ได้ในกรณีของเราเราได้ทำไปแล้วใน 7 หากคุณใช้อันอื่นอย่าลืมแก้ไขโค้ดเพื่อให้ทำงานร่วมกับวิธีการเชื่อมต่อคอมโพเนนต์ของคุณ ( ดูเหมือนชัดเจน แต่เป็นข้อผิดพลาดทั่วไปเมื่อคัดลอกและวางรหัสใน Arduino IDE)
รหัสใน Arduino IDE
ตอนนี้คุณเชื่อมต่อแล้วมาดูกัน ตัวอย่างโค้ดง่ายๆสำหรับ Arduino IDE. . โปรดจำไว้ว่าเรามีคำแนะนำสำหรับผู้เริ่มต้นที่เริ่มต้นด้วย Arduino ในรูปแบบ PDF ที่คุณสามารถทำได้ ดาวน์โหลดฟรีจากที่นี่ และสามารถช่วยคุณได้ นอกจากนี้หากคุณได้อ่านบทความของเราเกี่ยวกับ DHT11 โปรดจำไว้ว่า มีห้องสมุดสำหรับใช้เซ็นเซอร์ DHTxxดังนั้นตัวเดียวกับที่ใช้สำหรับ DHT11 จึงสามารถใช้กับ DHT22 ได้
เมื่อคุณมี ติดตั้งไลบรารีและทุกอย่างพร้อมแล้วก็ถึงเวลาที่คุณต้องป้อนรหัส เพื่อตั้งโปรแกรมไมโครคอนโทรลเลอร์ Arduino เพื่อให้โครงการของคุณทำงานได้ ตัวอย่างพื้นฐานจะเป็น:
#include "DHT.h" // Ejemplo sencillo de uso para el DHT22 const int DHTPin = 7; DHT dht(DHTPin, DHTTYPE); void setup() { Serial.begin(9600); Serial.println("Test DHT22"); dht.begin(); } void loop() { // Tiempo de espera entre tomas de mediciones de 2 segundos. delay(2000); // Lee temperatura y humedad durante unos 250ms float h = dht.readHumidity(); float t = dht.readTemperature(); if (isnan(h) || isnan(t)) { Serial.println("Fallo en la lectura"); return; } Serial.print("Humedad relativa: "); Serial.print(h); Serial.print(" %\t"); Serial.print("Temperatura: "); Serial.print(t); Serial.print(" *C "); }
ฉันหวังว่า คำแนะนำของเราเกี่ยวกับ DHTxx เป็นแนวทางของคุณแม้ว่าโดยทั่วไปโครงการที่ทำมักจะค่อนข้างซับซ้อนกว่า แต่รหัสเหล่านี้เพื่อดูการทำงานของเซ็นเซอร์นั้นค่อนข้างบ่งบอกได้จากนั้นแก้ไขโค้ดและเพิ่มสิ่งที่คุณต้องการ ...
โพสต์ข้อมูลที่ดี มีเพียงรายละเอียดเดียวเท่านั้นที่สามารถรวมวันที่เผยแพร่ได้ บางครั้งเราจำเป็นต้องใช้เป็นข้อมูลอ้างอิงสำหรับงานที่เขียนด้วยมาตรฐาน ขอขอบคุณ.