เครื่องควบคุมอุณหภูมิและความชื้น (ทำเอง)

     ในโครงงานนี้ จะขอยกเรื่อง ของการนำไมโครคอนโทรลเลอร์ ตระกูล AVR (Arduino) มาสร้างชิ้นงานเพื่อใช้งานจริง  ซึ่งชิ้นงานที่ว่า คือ "เครื่องวัดอุณหภฺมิและความชื้น" เพื่อควบคุมอุณหภูมิและความชื้น ห้องเก็บชิ้นงาน ของเรานั้นเอง

     โดยปกติแล้วผู้เขียนเองไม่ได้ร่ำเรียน ไมโครฯ ตระกูล AVR มาเลย แต่ก็เคยเรียน MCS-51 มาบ้าง จึงพอจะศึกษาเพิ่มเติมได้บ้าง เอาละ มาเข้าเรื่องงานกันดีกว่า

          เริ่มจากผู้เขียนเอง อยากจะได้ เครื่องควบคุมอุณหภฺมิและความชื้น สักเครื่อง ก็ลองเช็คราคาและฟังก์ชั่นดู ปรากฏว่า เครื่องที่มีฟังก์ชั่นตามที่เราต้องการ ก็แพงเอาการเหมือนกัน ก็เลยคิดว่า "เราก็พอจะรู้เรื่องอิเล็กทรอนิกส์มาบ้างก็น่าจะทำเองได้นี่น้า!!!!" จากนั้นก็เลยลองหาข้อมูลดู ผลคือ "มันมีทางเป็นไปได้ที่จะสำเร็จอยู่นะเนี่ย....(ในที่นี้ผู้เขียนได้ทำการหาข้อมูลในการทำชิ้นงานนี้ จากเว็บไซต่างๆ และ อาจได้นำเอาข้อมูลจากเว็บของท่านมาใช้ในการอ้างอิง ในการเขียนบทความนี้..ผู้เขียนต้องขออนุญาตท่านมานะที่นี้ด้วย...)


          จากนั้นจึงได้มีการเขียนฟังก์ชั่น และลักษณะการทำงาน แบบคร่าวๆ ตามนี้ครับ


รูปที่ 1 ออกแบบลักษณะการทำงานของเครื่องวัดอุณหภฺมิและความชื้น

          หลังจากที่เราได้กำหนด และ ออกแบบลักษณะฟังก์ชั่นการทำงานของ เครื่องควบคุมอุณหภฺมิและความชื้นแล้ว ทีนี้เราจะมาว่ากันถึงรายละเอียดของการทำงานในแต่ละส่วน ว่ามีส่วนประกอบอะไรบ้าง และมีชิ้นส่วนใดบ้าง ที่เราจะต้องจัดหามาประกอบกัน เพื่อให้เป็นชิ้นงานและใช้งานได้ตามต้องการ


ตัวอย่างต้นแบบ  เครื่องควบคุม อุณหภูมิและความชื้นที่ทำเสร็จแล้ว



รูปที่ 2 ตัวอย่างเครื่องวัดอุณหภฺมิและความชื้นที่ทำเสร็จแล้ว




รูปที่ 4 จุดใช้งานต่างๆของเครื่องวัดอุณหภฺมิและความชื้น


การใช้งานเบื้องต้น
            1. เสียบไฟเข้า 7- 12 โวลท์ แหล่งจ่ายไฟ
            2. หน้าจอจะแสดงค่า อุณหภูมิ (บรรทัดบน) และ ความชื้น (บรรทัดล่าง)
            3. ค่าที่ถูกตั้งมาจากโปรแกรม คือ อุณหภูมิ 30 °C และ ความชื้น = 80 %RH

การตั้งค่าอุณหภูมิ และ ความชื้น

ตัวอย่าง ต้องการตั้ง ควบคุมอุณหภูมิ ที่ 32 °C และ ความชื้น 75 %RH

วิธีทำ
            1. กดสวิทช์ SW_Mode ค้างไว้ 2 วินาที หน้าจอจะเปลี่ยนไปให้เลือก SW_Temp (บน) หรือ SW_Humid (ล่าง)

            2. ตั้งค่าอุณหภูมิ (temp) ให้กด SW_Temp (บน)
-  หน้าจอจะเปลี่ยนไปที่หน้า set อุณหภูมิ และ มีตัวเลขบอกค่าที่ Set ไว้ก่อนหน้านี้
-  ถ้าต้องการเพิ่ม ให้กด ++ (บน) ตัวเลขจะเพิ่มขึ้นเรื่อยๆ ถึง 32 ° //เมื่อต้องการหยุด กด SW_Mode(กลาง)
-  ถ้าต้องการลด ให้กด -- (ล่าง) ตัวเลขจะลดลงเรื่อยๆ // เมื่อต้องการหยุด กด SW_Mode(กลาง)
-  เสร็จ ต้องการออกให้กด SW_Mode(กลาง) ค้างไว้
           
            3. ตั้งค่าความชื้น (humid)  ให้กด SW_Humid (ล่าง)
-  หน้าจอจะเปลี่ยนไปที่หน้า set ความชื้น และ มีตัวเลขบอกค่าที่ Set ไว้ก่อนหน้านี้
-  ถ้าต้องการเพิ่ม ให้กด ++ (บน) ตัวเลขจะเพิ่มขึ้นเรื่อยๆ  // เมื่อต้องการหยุด กด SW_Mode(กลาง)
-  ถ้าต้องการลด ให้กด -- (ล่าง) ตัวเลขจะลดลงเรื่อยๆ ถึง 75 %RH  // เมื่อต้องการหยุด กด SW_Mode(กลาง)
-  เสร็จ ต้องการออกให้กด SW_Mode(กลาง) ค้างไว้

หมายเหตุ***  เมื่อตั้งค่าเสร็จ หน้าจอ LCD จะกลับมาหน้าหลัก และแสดงค่า อุณหภูมิ (บรรทัดบน) และ ความชื้น (บรรทัดล่าง) เหมือนเดิม



อุปกรณ์ที่ต้องมี

1. AVR Micro-controller   ATmega 328 (Arduino UNO R3)

          ในที่นี้เราจะใช้ IC # ATmega 328 เพราะสามารถใช้งานเป็น Arduino ได้ โดยเราจะทำ IC # ATmega 328 ตัวนี้ให้เป็น Arduino UNO R3 เพื่อให้ง่ายต่อการใช้งานยิ่งขึ้น

รูปที่ 5 รุปร่าง IC # ATmega 328 และตำแหน่งขาต่างๆ


2. เซนเซอร์วัดอุณหภูมิและความชื้น (Senser DHT21 (AM2301))

           DHT21/AM2301 capacitive digital temperature and humidity sensor เป็นโมดูลวัดอุณหภูมิและความชื้นที่มีความแม่นยำสูง  (สูงกว่า DHT11 แต่ต่ำกว่า DHT22) ทำงานในลักษณะเดียวกับ DHT ในตระกูลเดียวกัน
รูปที่ 6 Senser DHT21 (AM2301)


Product Description

  • DHT21 is the former name, new name is AM2301
  • 4-pin package
  • Ultra-low power
  • No additional components
  • Excellent long-term stability
  • All calibration, digital output
  • Completely interchangeable
  • Long distance signal transmission
  • Relative humidity and temperature measurement
  • Specifications:
    • Type: AM2301
    • Accuracy resolution: 0.1
    • Measurement range: 0-100%RH
    • Temperature measurement range: -40℃ ~ +80℃
    • Humidity measurement precision: ±3%RH
    • Temperature measurement precision: ±0.5℃
Data Sheet


รูปที่ 7 คุณสมบัติของ Module AM2301



7683282004