โดยปกติแล้วผู้เขียนเองไม่ได้ร่ำเรียน ไมโครฯ ตระกูล 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 °C //เมื่อต้องการหยุด กด 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))
รูปที่ 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℃
รูปที่ 7 คุณสมบัติของ Module AM2301