sht-11 module manual (thai)

5
The Prototype Electronics 47 Proto Knowledge Sensor ปกรณ ลิ้มพรจิตรวิไล SHT11 โมดูลวัดความชื้นและอุณหภูมิ ตัวตรวจจับสมัยใหมที่ชวยลดภาระในการวัด ความชื้นสัมพัทธ มารูจักกันมากขึ้นอีกนิด เพื่อจะไดใชงานไดอยางเต็มประสิทธิภาพ คุณสมบัติทางเทคนิคของ ZX-SHT11 � ติดตั้งโมดูล SHT11 บนแผ่นวงจร พร้อมใช้งาน � สามารถวัดความชื้นสัมพัทธ์และอุณหภูมิได�ก�าหนดความละเอียดของการวัดได้ โดยมาตรฐาน ก�าหนดให้วัดความชื้นด้วยความละเอียด 12 บิต และ วัดอุณหภูมิ 14 บิต หรือปรับลดเป็นวัดความชื้น 8 บิต วัดอุณหภูมิ 12 บิต มีเสถียรภาพสูง � ค่าความผิดพลาดในการวัดอุณหภูมิ 0.4% ส่วน การวัดค่าความชื้นสัมพัทธ์มีความผิดพลาด 4% � มีขนาดเล็กและกินพลังงานต่า ท�างานย่านแรงดัน ไฟเลี้ยง +2.4 ถึง +5.5V � มีจุดต่อแบบ JST และแบบ IDC เพื่อรองรับการ เชื่อมต่อกับบอร์ดไมโครคอนโทรลเลอร์ได้หลากหลาย

Upload: innovative-experiment-coltd

Post on 09-Mar-2016

228 views

Category:

Documents


0 download

DESCRIPTION

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

TRANSCRIPT

Page 1: SHT-11 Module Manual (Thai)

The Prototype Electronics 47

Prot

o Kn

owled

ge

Sensor

ปกรณ ลิ้มพรจิตรวิไล

SHT11 โมดูลวัดความชื้นและอุณหภูมิ

ตัวตรวจจับสมัยใหมที่ชวยลดภาระในการวัด

ความชื้นสัมพัทธ มารูจักกันมากขึ้นอีกนิด

เพื่อจะได ใชงานไดอยางเต็มประสิทธิภาพ

คุณสมบัติทางเทคนิคของZX-SHT11

�ติดตั้งโมดูลSHT11บนแผ่นวงจรพร้อมใช้งาน

�สามารถวัดความชื้นสัมพัทธ์และอุณหภูมิได้

�ก�าหนดความละเอียดของการวัดได้โดยมาตรฐานก�าหนดให้วัดความชื้นด้วยความละเอียด12บิตและวัดอุณหภูมิ14บิตหรือปรับลดเป็นวัดความชื้น8บิตวัดอุณหภูมิ12บิตมีเสถียรภาพสูง

� ค่าความผิดพลาดในการวัดอุณหภูมิ 0.4% ส่วนการวัดค่าความชื้นสัมพัทธ์มีความผิดพลาด4%

� มีขนาดเล็กและกินพลังงานต�่า ท�างานย่านแรงดันไฟเลี้ยง+2.4ถึง+5.5V

� มีจุดต่อแบบ JST และแบบ IDC เพื่อรองรับการเชื่อมต่อกับบอร์ดไมโครคอนโทรลเลอร์ได้หลากหลาย

Page 2: SHT-11 Module Manual (Thai)

48 The Prototype Electronics48 The Prototype Electronics

SENSOR : Humidity Sensor

รูปที่ 2 แสดงวงจรสมบูรณ์ของบอร์ด ZX-SHT11

รูปที่ 1 การจัดขาและไดอะแกรมการทํางานของ SHT11

ความชื้นสัมพัทธ์เป็นอีกหนึ่งปริมาณทางฟิสิกส์ที่มีบทบาทอย่างยิ่งต่อการพัฒนาระบบควบคุมอัตโนมัติในอุตสาหกรรมโดยเฉพาะอย่างยิ่งในอุตสาหกรรมการเกษตร การตรวจวัดจึงเป็นเรื่องที่น่าสนใจและน่ารู ้ต่อไปอีกว่าตัวตรวจจับความชื้นมีหลักการท�างานอย่างไร

SHT11เป็นตัวตรวจจับความชื้นสัมพัทธ์แบบให้ผลการท�างานเป็นข้อมูลดิจิตอล จึงช่วยให้ลดภาระในการปรับแต่งลงไปได้ยากมากส่งผลให้ขนาดโดยรวมของระบบเล็กลง การออกแบบสร้างระบบตรวจสอบและสภาพแวดล้อมจึงท�าได้ง่ายขึ้น

SHT11 เป็นโมดูลวัดความชื้นสัมพัทธ์และอุณหภูมิจาก Sensirion (www.sensirion.com)มีการจัดขาและไดอะแกรมการท�างานภายในแสดงในรูปที่ 1 ปกติแล้ว SHT11 มีตัวถังเป็นแบบSMDซึ่งท�าให้การติดต่อกับบอร์ดไมโครคอนโทรลเลอร์จ�าเป็นต้องพึ่งพาแผงวงจรเชื่อมต่อ ดังนั้นจึงได้ท�าการติดตั้ง SHT11 ลงบนแผ่นวงจรพิมพ์ และต่อวงจรกับอุปกรณ์ที่จ�าเป็นเพื่อให้สามารถใช้งานSHT11ได้อย่างสะดวกขึ้นจึงได้เป็นโมดูล ZX-SHT11 ออกมาให้ใช้งานในที่สุดในรูปที่2แสดงวงจรสมบูรณ์ของบอร์ดZX-SHT11

หลักการท� างานและการอ านค าจาก

SHT11

การติดต่อกับSHT11ใช้สายสัญญาณสองเส้นคือ CLK (หรือ SCK) และ DATA โดยสายCLK เป็นสัญญาณนาฬิกาก�าหนดจังหวะในการสื่อสารข้อมูล ส่วนสายDATAเป็นสายข้อมูล2ทิศทาง

1. เริ่มตนดวยการรีเซตการเชื่อมตอ (Connection reset sequence)

เมื่อต้องการเริ่มต้นการเชื่อมต่อระหว่างไมโครคอนโทรลเลอร์กับโมดูล SHT11 ต้องสร้างสัญญาณรีเซตขึ้นก่อน โดยท�าให้ขา DATAมีสถานะลอจิก “1” นานเท่ากับช่วงเวลาที่ปอนสัญญาณนาฬิกาที่ขา SCK 9 ลูกติดต่อกัน แล้วตามด้วยการสร้างสถานะเริ่มต้นการส่งสัญญาณ

2. สรางสถานะเริ่มตนการสงสัญญาณ

ก่อนจะท�าการส่งข้อมูลค�าสั่งจากไมโครคอนโทรลเลอร์ไปยังSHT11จ�าเป็นจะต้องสร้างรูปแบบสัญญาณกระตุ้นผ่านขาสัญญาณCLK และ DATA เพื่อให้ตรงกับเงื่อนไขที่เรียกว่า Transmission start หรือสถานะเริ่มต้นการส่งสัญญาณ นั่นคือขา DATA ต้องถูกท�าให้เป็นลอจิก“0”นานอย่างน้อย1ไซเกิลของสัญญาณนาฬิกา หลังจากนี้ SHT11 จะทราบได้ทันทีว่าข้อมูลต่อจากนี้คือค�าสั่ง

รูปที่ 3 ไดอะแกรมเวลาแสดงการทํางานของ SHT11 ตัวตรวจจับความชื้นสัมพัทธ์และอุณหภูมิ

Page 3: SHT-11 Module Manual (Thai)

The Prototype Electronics 49

3. การอานอุณหภูมิและความชื้นสัมพัทธ์

การอ่านข้อมูลดิบของอุณหภูมิหรือความชื้นสัมพัทธ์นั้นท�าได้ภายหลังจากสร้างสภาวะเริ่มต้นที่เรียกว่าTransmissionstartแล้วตามด้วยการส่งข้อมูลค�าสั่งอ่านอุณหภูมิหรือความชื้นสมัพทัธ์อย่างใดอย่างหนึง่ไปยงั SHT11 ในตารางที่ 1 แสดงข้อมลูค�าสัง่ของโมดลูSHT11

หลังจากได้รับค�าสั่ง SHT11 ต้องใช้เวลาในการประมวลผลเพื่อให้ได้ผลลัพธ์ที่ต้องการซึ่งจะใช้เวลามากหรือน้อยขึ้นอยู่กับความละเอียดของข้อมูลที่ต้องการดังแสดงในตารางที่2

ในรูปที่3แสดงไดอะแกรมเวลาของการอ่านข้อมูลจากโมดูลSHT11 โดยข้อมูลที่ส่งออกมาจากโมดูล SHT11 ประกอบด้วยข้อมูล2ไบต์และไบต์ส�าหรับตรวจสอบข้อผิดพลาดอีก1ไบต์หรือCRCCheckโดยไมโครคอนโทรลเลอร์เมื่อรับข้อมูล1ไบต์จะต้องส่งสัญญาณรับรู้หรือAcknowledgeออกมา1ลูก(ก�าหนดให้ขาDATAมีลอจิก “0”)บิตนัยส�าคัญสูงสุดของข้อมูลจะถูกส่งออกมาก่อนกรณีอ่านค่าแบบ8บิตไบต์แรกจะไม่ถูกใช้งาน

การยกเลิกการสื่อสารข้อมูลเกิดขึ้นเมื่อไมโครคอนโทรลเลอร์ส่งสัญญาณรับรู้ หลังจากได้รับข้อมูลบิตสุดท้ายของ CRC แล้วส�าหรับกรณีที่ไม่ต้องการตรวจสอบ CRC การยกเลิกการเชื่อมต่อท�าได้โดยการไม่ส่ง Acknowledge หลังจากรับข้อมูลในไบต์ที่ 2แล้ว หลังจากนั้นเพื่อเป็นการประหยัดพลังงาน SHT11 จะเข้าสู่โหมดสลีปโดยอัตโนมัติ

ข้อมลูที่SHT11ส่งกลบัมาเป็นข้อมลู2ไบต์ตามด้วยไบต์ตรวจสอบความผดิพลาดแบบCRCอกี1ไบต์เมือ่ไมโครคอนโทรลเลอร์รบัข้อมลู1ไบต์แล้วจะต้องส่งสญัญาณรบัรู้(Acknowledge:ACK)ออกมา1ลกู(ก�าหนดให้ขาDATAมลีอจกิเป็นLOW)การส่งข้อมลูจะส่งบติส�าคญัสงูสดุก่อน(MSB)กรณทีีใ่ช้ข้อมลูขนาด8บติข้อมลูไบต์แรกจะไม่ใช้งาน

เมื่อSHT11ได้รับสัญญาณรับรู้หลังจากส่งข้อมูลบิตสุดท้ายของ CRC check เรียบร้อยแล้วจะเข้าสู่โหมดสลีปอัตโนมัติเพื่อประหยัดพลังงาน

การค�านวณค่าอุณหภูมิและความชื้นสัมพัทธ ์จาก

ข้อมูลดิบที่อ่านได้จาก SHT11

หลังจากที่สั่งให้อ่านค่าจาก SHT11 มันจะส่งข้อมูลดิบมาให้ จะต้องน�ามาค�านวณเพื่อหาค่าอุณหภูมิและความชื้นสัมพัทธ์ที่แท้จริง โดยอุณหภูมิที่ค�านวณได้จะขึ้นกับแรงดันไฟเลี้ยงที่ป้อนให้SHT11และความละเอียดของการวัด โดยมีสมการค�านวณค่าอุณหภูมิดังนี้

Temperature=d1+(d2xSOT)

โดยที่ d1 คือค่าคงที่ ขึ้นอยู่กับไฟเลี้ยงที่ป้อนให้ขา VDD ของSHT11มีค่าตามตารางที่3

d2คือค่าคงที่ขึ้นกับความละเอียดของการวัดมีค่าตามตารางที่3

SOTคือค่าอุณหภูมิดิบที่อ่านได้จากSHT11

ตารางที่ 1 ข้อมูลคําสั่งของโมดูล SHT11

ตารางที่ 2 แสดงข้อมูลของเวลาที่ SHT11 ใช้ในการประมวลผลที่ความละเอียดของผลลัพธ์ตางๆ กัน

ตารางที่ 3 แสดงคาคงที่ d1 และ d2 ที่ใช้ในการคํานวณคาอุณหภูมิของ SHT11

Page 4: SHT-11 Module Manual (Thai)

50 The Prototype Electronics

SENSOR : Humidity Sensor

ตัวอยางการคํานวณ #1

อ่านข้อมูลดิบของค่าอุณหภูมิจากโมดูลSHT11ได้เท่ากับ7000ใช้ไฟเลี้ยง 5Vอ่านข้อมูลแบบ14บิตค่าอุณหภูมิในหน่วยองศาเซลเซียสที่อ่านได้มีค่าเท่ากับ

ค่าอุณหภูมิ=-40+(0.01x7000)=30องศา

ด้านค่าความชื้นสัมพัทธ์จะต้องน�าข้อมูลดิบมาค�านวณเป็นค่าความชื้นสัมพัทธ์จริงซึ่งท�าได้โดยใช้สมการ

RH25C=c1+(c2xSO

RH)+[c3x(SO

RH)2]

เมื่อ RH25Cคือค่าความชื้นสัมพัทธ์ที่อุณหภูมิ25๐C

c1,c2และc3คือค่าคงที่ขึ้นอยู่กับความละเอียดในการวัดความชื้นสัมพัทธ์ของSHT11มีค่าตามตารางที่4

SORHคือข้อมูลดิบของค่าความชื้นสัมพัทธ์ที่อ่านได้จาก

SHT11

ตัวอยางการคํานวณ #2

ถ้าอ่านค่าข้อมูลดิบของความชื้นสัมพัทธ์จากโมดูล SHT11 ออกมาได้เท่ากับ 2353 โดยการอ่านค่าข้อมูลเป็นการอ่านค่าแบบ12บิตดังนั้นเมื่อแทนค่าลงไปในสมการ

RHlinear=-4+(0.0405x2353)+(-0.0000028x23532)=75.79%17.4

กรณีที่อุณหภูมิขณะที่วัดมีค่าไม่เท่ากับ25๐Cจะมีค่าชดเชยซึ่งต้องน�ามารวมกับค่าความชื้นสัมพัทธ์ที่ค�านวณได้ก่อนหน้านี้ โดยเขียนเป็นสมการได้ดังนี้

RHtrue=RH25C+(T-25)x[t1+(t2xSO

RH)]

เมื่อRHtrueคือค่าความชื้นสัมพัทธ์ที่อุณหภูมิต่างๆ

t1และt2คือค่าคงที่ขึ้นอยู่กับความละเอียดในการวัดค่าความชื้นสัมพัทธ์ของSHT11มีค่าตามตารางที่4

SORHคอืข้อมลูดบิของค่าความชืน้สมัพทัธ์ทีอ่่านได้จากSHT11

รีจิสเตอร์แสดงสถานะ (STATUS)

ส�าหรับฟังก์ชันที่ต้องมีการปรับแต่พิเศษ จะต้องมีการก�าหนดผ่านรีจิสเตอร์ STATUS โดยรายละเอียดบิตต่างๆ ของรีจิสเตอร์ STATUSแสดงในตารางที่ 5 รูปแบบการเขียนข้อมูลและอ่านข้อมูลไปยังรีจิสเตอร์STATUSเป็นดังนี้

ตารางที่ 4 แสดงคาคงที่เพิ่มเติมที่ใช้ในการคํานวณหาคาความชื้นสัมพัทธ์ของ SHT11

โดยค่าที่ปรับแต่งได้ประกอบด้วย

1. ความ ละเอียด ใน การ วัด คา ความชื้น และ อุณหภูมิ ค่าตั้งต้นก่อนการตั้งค่าความละเอียดในการวัดความชื้นจะมีความละเอียด 12 บิตส่วนความละเอียดในการวัดอุณหภูมิจะเป็น 14 บิต ถ้ามีการก�าหนดบิต 0ของรีจิสเตอร์ STATUS เป็น “1” ค่าความละเอียดของการวัดค่าความชื้นจะเหลือเท่ากับ 8 บิต ส่วนการวัดค่าอุณหภูมิจะเหลือ 8 บิต ซึ่งเป็นผลให้ความเร็วในการอ่านค่ามีมากขึ้นและกินก�าลังงานต�่าลง

2. ตรวจสอบระดับไฟเลี้ยง เป็นฟังก์ชั่นตรวจสอบแรงดันไฟเลี้ยงว่าต�่ากว่า2.47Vหรือไม่โดยมีความแม่นย�า0.05V

3. ตัวทําความรอน ตัวท�าความร้อนภายในโมดูล SHT11 จะท�าให้อุณหภูมิของตัวตรวจจับเพิ่มขึ้นประมาณ 5 องศาเซลเซียส และโมดูลSHT11ใช้กระแสไฟฟ้าเพิ่มขึ้นประมาณ8mAที่ไฟเลี้ยง+5Vตัวท�าความร้อนจะถูกใช้งานเพื่อขจัดไอน�้าที่ติดอยู่ที่ตัวตรวจจับ เมื่อค่าความชื้นสูงกว่า95% ซึ่งท�าให้ความแม่นย�าในการอ่านค่าจากตัวตรวจจับมีมากขึ้น โดยตรวจสอบด้วยการเปรียบเทียบค่าอุณหภูมิและความชื้นก่อนและหลังการเปดตัวท�าความร้อน

ขอควรระวัง การเปดตัวท�าความร้อนท�าให้โมดูล SHT11 อ่านค่าอุณหภูมิได้สูงกว่าความเป็นจริงส่วนค่าความชื้นก็ได้น้อยกว่าค่าที่เป็นจริง

การติดต่อ ZX-SHT11 กับไมโครคอนโทรลเลอร์

ท�าได้ง่ายมากเพียงต่อสายสัญญาณนาฬกา CLK (หรือบางครั้งเรียก SCK) เข้าที่ขาพอร์ตของไมโครคอนโทรลเลอร์ที่ก�าหนดให้เป็นขาสัญญาณนาฬกา และต่อสายสัญญาณข้อมูล DATA เข้าที่ขาพอร์ตของไมโครคอนโทรลเลอร์ที่ก�าหนดให้เป็นขาข้อมูล จากนั้นจึงต่อสายไฟเลี้ยง+5V และกราวด์ .ในรูปที่ 4 แสดงวงจรตัวอย่างการเชื่อมต่อกับไมโครคอนโทรลเลอร์ATmega128เพื่ออ่านค่าจากSHT11มาแสดงที่โมดูลLCD16 ตัวอักษร 2 บรรทัด (โค้ดตัวอย่างพัฒนาด้วยโปรแกรมภาษา C/C++แบบโอเพ่นซอร์สโดยใช้ซอฟต์แวร์ Wiring สามารถดาวน์โหลดได้ที่ www.tpemagazine.com)

00 0 0 0 1 1 0

AC

K

A

CK

00 0 0 0 1 1 1

AC

K

A

CK

A

CK

Page 5: SHT-11 Module Manual (Thai)

The Prototype Electronics 51

จะเห็นได้ว่าการติดต่อกับZX-SHT11เป็นการติดต่อกับอุปกรณ์บัส2สายแบบหนึ่งแต่SHT11ไม่ได้มีรูปแบบการถ่ายทอดข้อมูลตรงตามมาตรฐานของบัส I2Cดังนั้นผู้ใช้งานจึงสามารถเลือกต่อขาพอร์ตใดๆของไมโครคอนโทรลเลอร์เข้ากับขาCLKและDATAของSHT11ก็ได้เพียงแต่ต้องก�าหนดให้ขาพอร์ตที่ใช้เชื่อมต่อกับขาCLKท�างานเป็นขาเอาต์พุตดิจิตอลและท�างานสลับเป็นได้ทั้งขาอินพุตและเอาต์พุตดิจิตอลส�าหรับขาพอร์ตที่ต่อกับขาDATAของSHT11

ใครที่กําลังมองหาตัวตรวจจับความชื้นที่ใชงานไมยากและมีความแมนยําในการทํางานสูง ไมควรมองขาม SHT11 ตัวนี้…..นี่เอง

ตารางที่ 5 แสดงรายละเอียดของบิตควบคุมตางๆ ในรีจิสเตอร์ STATUS ที่ใช้แสดงสถานะการทํางานของ SHT11

รูปที่ 4 วงจรเชื่อมตอโมดูล ZX-SHT11 กับไมโครคอนโทรลเลอร์ ATmega128 ผานทางฮาร์ดแวร์ของ Wiring I/O board (www.wiriing.org.co)

www.tpemagazine.com