บทที่ 10 เริ่มต้นกับเซ็นเซอร์ วัดสภาพอากาศด้วย DHT11 |
|
[วิดีโอประจำบท] | |
เริ่มต้นกับเซ็นเซอร์ ผู้เขียนขอเริ่มด้วยอะไรที่ใกล้ตัวเรามาก สัมผัสตัวเราตลอดเวลาเลยหล่ะ มันคืออากาศ สภาพอากาศที่โดนตัวเราอยู่นี่ สามารถใช้ arduino วัดได้โดยต่อกับเซ็นเซอร์วัดสภาพอากาศที่มีหลายแบบให้เลือก ในคอร์สนี้ผู้เขียนเลือกใช้โมดูล DHT11 ที่มีราคาถูก สามารถใช้งานได้ง่าย โดยคุณสมบัติของมันคือสามารถวัดอุณหภูมิได้ในช่วง 0-50 องศาเซลเซียส ความคลาดเคลื่อน 2 องศาเซลเซียส และสามารถวัดความชื้นในอากาศได้ในช่วง 20-80% ความคลาดเคลื่อน 5% สามารถทำงานได้สูงสุดที่ 1 Hz (วัดได้ 1 ครั้งใน 1 วินาที) |
|
![]() |
|
สำหรับการต่อโมดูลกับบอร์ดนั้นให้ระวังขาด้วยนะครับ เพราะโมดูลแต่ละรุ่นมีขาต่างกัน โดยขา 5V ให้ต่อกับ 5V ของบอร์ด arduino ขา GND ให้ต่อกับขา GND บนบอร์ด และขา DATA หรือ S ต่อกับขา 2 ของบอร์ด(หรือขาใดก็ได้ เรากำหนดตอนเขียนโปรแกรมได้ครับ) **โมดูลที่จัดในชุดคิตจะมีขาต่างกับในรูปนะครับ ให้ดูขาตามที่บอกไว้เป็นหลัก อันนี้เซ็นเซอร์ทุกอันจะเขียนบอกหมดนะครับ ควรดูทุกครั้งเพื่อให้แน่ใจก่อนต่อกับบอร์ด*** หลังจากนั้นเราต้องลง library กันก่อน [ดาวน์โหลดไลบรารี่] เพื่อให้เราเขียนโค้ดได้สั้นลง(มากๆ) และยังง่ายขึ้นอีกเยอะด้วย หลังจากนั้นเราจึงมาเขียนโค้ดกันตามนี้ |
|
|
|
เปิด serial monitor ขึ้นมา บอร์ดจะแสดงอุณหภูมิและความชื้นทุกๆวินาที ส่วนตัวเลข 1 ที่อยู่ในคำสั่งแสดงค่าอุณหภูมิและความชื้นนั้นคือจำนวนหลักทศนิยมครับ 1 คือมีทศนิยม 1 ตำแหน่ง ใครอยากได้ทศนิยม 5 ตำแหน่งก็ใส่เลข 5 แต่ตัว DHT11 นั้นมีความละเอียดแค่ 1 องศาครับ ฉะนั้นไม่ว่าทศนิยมกี่หลักมันก็จุดศูนย์อยู่ดี ในเซ็นเซอร์ตัวอื่นอย่างเช่น DHT22 จะมีความละเอียดในระดับทศนิยม ผู้เขียนจึงบอกไว้ตรงนี้เลยเผื่อจะขยับขยายไปเล่นเซ็นเซอร์ตัวอื่น |
|
ค่าที่อ่านได้จาก DHT11 นั้นจะได้ค่าอุณหภูมิเป็นองศาเซลเซียส และค่าความชื้นเป็นเปอร์เซ็น สำหรับท่านใดที่อยากได้อุณหภูมิเป็นองศาฟาเรนไฮต์ก็ให้ใช้สูตรแปลงเซลเซียสเป็นฟาเรนไฮต์ดังนี้ F=(C*1.8)+32 ก็กำหนดตัวแปรขึ้นมา ลองพิมพ์โค้ดเป็นสูตรให้มันคิดแล้วแสดงผลออกมา หรือจะเขียนโปรแกรมย่อยขึ้นมาแล้วเรียกใช้โปรแกรมย่อย อันนี้แล้วแต่บุคคลครับ ผู้เขียนจะไม่เฉลย อยากให้ทุกท่านได้ทดลองเก็บประสบการณ์ในการเขียนโค้ด ขอให้สนุกทุกท่านนะครับ |
|
[ดาวน์โหลด] [กลับหน้าหลักของคอร์ส] |