สารบัญ:
- ขั้นตอนที่ 1: รับ PCB สำหรับโครงการของคุณที่ผลิต
- ขั้นตอนที่ 2: การเปรียบเทียบระหว่างเซ็นเซอร์อุณหภูมิประเภทต่างๆ
- ขั้นตอนที่ 3: เชื่อมต่อ DS18B20 กับ Arduino
- ขั้นตอนที่ 4: การเข้ารหัส Arduino เพื่อแสดงอุณหภูมิ
- ขั้นตอนที่ 5: เชื่อมต่อ DS18B20 ด้วย ESP8266
- ขั้นตอนที่ 6: ตั้งค่า Arduino IDE
- ขั้นตอนที่ 7: การเข้ารหัส ESP8266 เพื่อแสดงอุณหภูมิ
- ขั้นตอนที่ 8: และเสร็จแล้ว
วีดีโอ: การเชื่อมต่อเซ็นเซอร์อุณหภูมิ DS18B20 กับ Arduino และ ESP8266: 8 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:03
เฮ้ ว่าไงพวก! Akarsh ที่นี่จาก CETech
วันนี้เราจะเพิ่มเซ็นเซอร์ใหม่ให้กับคลังแสงของเราที่รู้จักกันในชื่อ DS18B20 Temperature Sensor เป็นเซ็นเซอร์อุณหภูมิคล้ายกับ DHT11 แต่มีชุดการใช้งานที่แตกต่างกัน เราจะเปรียบเทียบกับเซ็นเซอร์อุณหภูมิประเภทต่างๆ ที่มีอยู่ และจะดูข้อกำหนดทางเทคนิคของเซ็นเซอร์เหล่านี้
ในตอนท้ายของบทช่วยสอนนี้ เราจะเชื่อมต่อ DS18B20 กับ Arduino และ ESP8266 เพื่อแสดงอุณหภูมิ ในกรณีของ Arduino อุณหภูมิจะแสดงบน Serial Monitor และสำหรับ ESP8266 เราจะแสดงอุณหภูมิบนเว็บเซิร์ฟเวอร์
มาเริ่มกันที่ความสนุกกันเลย
ขั้นตอนที่ 1: รับ PCB สำหรับโครงการของคุณที่ผลิต
คุณต้องตรวจสอบ OurPCB เพื่อรับ PCB สำหรับโครงการของคุณที่ผลิตทางออนไลน์
พวกเขาใช้ส่วนประกอบที่เชื่อถือได้ซึ่งมาจากซัพพลายเออร์ที่ได้รับการรับรอง เช่น Arrow, Avnet, Future Electronics เป็นต้น และเสนอราคาที่สมเหตุสมผลเพื่อเพิ่มผลกำไรสูงสุดของผู้ใช้ เชี่ยวชาญด้านเทคโนโลยี Multilayer และ Rigid-flex สิ่งสำคัญคือการรักษามาตรฐานคุณภาพสูง
OurPCB มุ่งเน้นไปที่คำสั่งซื้อขนาดเล็กถึงขนาดกลางและให้ราคาที่แข่งขันได้มากสำหรับปริมาณตั้งแต่ 1-100 ตารางเมตร คุณเพียงแค่ต้องอัปโหลดไฟล์ของคุณในรูปแบบที่มี (Gerber,.pcb,.pcbdoc หรือ.cam) แล้วต้นแบบ PCB จะถูกส่งไปยังหน้าประตูของคุณ
คุณยังสามารถตรวจสอบพันธมิตร WellPCB ของพวกเขาสำหรับข้อเสนอที่ดี
ขั้นตอนที่ 2: การเปรียบเทียบระหว่างเซ็นเซอร์อุณหภูมิประเภทต่างๆ
การเปรียบเทียบที่แสดงด้านบนมีเซ็นเซอร์สามตัว DS18B20, DHT11 และ NTC Thermistor แต่ในที่นี้ เราจะจำกัดการเปรียบเทียบกับเซ็นเซอร์ดิจิทัลเท่านั้น ไม่ได้หมายความว่าเทอร์มิสเตอร์เทอร์มิสเตอร์ NTC ไม่สำคัญเท่ากับเซ็นเซอร์ดิจิทัล อันที่จริงการพัฒนาเซ็นเซอร์ดิจิทัลทำได้เพียงเพราะ NTC Thermistor เท่านั้น เซ็นเซอร์ดิจิตอลประกอบด้วย NTC Thermistor ที่เชื่อมต่อกับไมโครโปรเซสเซอร์บางตัวซึ่งจะให้เอาต์พุตดิจิตอลในที่สุด
ประเด็นหลักของการเปรียบเทียบคือ:-
1. DS18B20 นั้นกันน้ำและทนทาน ในขณะที่ DHT11 ไม่ใช่สาเหตุนั้นในสถานการณ์และการใช้งานในชีวิตจริงที่จำเป็นต้องมีการตรวจจับแบบสัมผัส DS18B20 มักใช้ในขณะที่ DHT11 ใช้งานในสภาพแวดล้อมกลางแจ้ง
2. DS18B20 แยกข้อมูลออกเป็นข้อมูล 9-12 บิตในขณะที่ DHT11 ให้ข้อมูล 8 บิต
3. DS18B20 ให้อุณหภูมิเท่านั้น ในขณะที่ DHT11 สามารถใช้รับอุณหภูมิและความชื้นได้
4. DS18B20 ครอบคลุมช่วงอุณหภูมิที่กว้างกว่าเมื่อเปรียบเทียบกับ DHT11 และยังมีความแม่นยำที่ดีกว่าเมื่อเปรียบเทียบกับ DHT (+ 0.5 องศาเมื่อเทียบกับ + 2 องศาสำหรับ DHT11)
5. เมื่อพูดถึงการกำหนดราคา เซ็นเซอร์เหล่านี้มีความแตกต่างกันเล็กน้อย เนื่องจาก DS18B20 สองรุ่นที่แตกต่างกันซึ่งเป็นประเภทสายบรรจุและแพ็คเกจ TO92 มีราคาประมาณ 1 ดอลลาร์และ 0.4 ดอลลาร์ ในขณะที่ DHT11 มีราคาประมาณ 0.6 ดอลลาร์
ดังนั้นเราจึงสามารถพูดได้ว่า DS18B20 ค่อนข้างดีกว่า DHT11 แต่สามารถเลือกได้ดีกว่าโดยพิจารณาจากการใช้งานที่จำเป็นต้องใช้เซ็นเซอร์เท่านั้น
คุณสามารถรับความรู้เพิ่มเติมเกี่ยวกับ DS18B20 ได้โดยการอ่านเอกสารข้อมูลจากที่นี่
ขั้นตอนที่ 3: เชื่อมต่อ DS18B20 กับ Arduino
ที่นี่เราจะเชื่อมต่อเซ็นเซอร์อุณหภูมิ DS18B20 กับ Arduino เพื่อรับอุณหภูมิและแสดงบนจอภาพแบบอนุกรม
สำหรับขั้นตอนนี้เราต้องการ - Arduino UNO, DS18B20 Temperature sensor (Packaged type หรือ TO92 package อะไรก็ได้ที่มี) และตัวต้านทาน 4.7kohm
เซนเซอร์ DS18B20 มีสายไฟ 3 เส้น คือ สีดำ สีแดง และสีเหลือง สีดำสำหรับ GND สีแดงสำหรับ Vcc ในขณะที่สีเหลืองคือพินสัญญาณ
1. เชื่อมต่อพิน GND หรือสายสีดำของเซ็นเซอร์เข้ากับ GND
2. เชื่อมต่อพิน Vcc หรือสายสีแดงของเซ็นเซอร์กับแหล่งจ่ายไฟ 5V
3. เชื่อมต่อพินสัญญาณหรือสายสีเหลืองเข้ากับ 5V ผ่านตัวต้านทาน 4.7kohm และเชื่อมต่อพินสัญญาณนี้กับ Digital Pin no-12 ของ Arduino
คุณสามารถอ้างถึงแผนผังที่แสดงด้านบนเพื่อความเข้าใจที่ดีขึ้น
ขั้นตอนที่ 4: การเข้ารหัส Arduino เพื่อแสดงอุณหภูมิ
ในขั้นตอนนี้ เราจะเขียนโค้ดบอร์ด Arduino เพื่อรับและแสดงอุณหภูมิผ่าน Serial Monitor
1. เชื่อมต่อบอร์ด Arduino UNO กับพีซี
2. ย้ายไปยังที่เก็บ Github สำหรับโครงการนี้จากที่นี่
3. ในที่เก็บ GitHub คุณจะเห็นไฟล์ชื่อ " รหัสพื้นฐาน " เปิดไฟล์นั้น คัดลอกโค้ดและวางลงใน Arduino IDE ของคุณ
4. เลือกบอร์ดที่ถูกต้องและพอร์ต COM ใต้แท็บเครื่องมือแล้วกดปุ่มอัปโหลด
5. หลังจากอัปโหลดโค้ดแล้ว ให้เปิด Serial Monitor และเลือกอัตราบอดที่ถูกต้อง (9600 ในกรณีของเรา) และคุณจะสามารถดูอุณหภูมิที่ DS18B20 ตรวจจับได้ที่นั่น
คุณสามารถดูอุณหภูมิที่เพิ่มขึ้นและลดลงได้โดยทำสิ่งที่เหมาะสมเพื่อเพิ่มอุณหภูมิหรือปรับอุณหภูมิ เช่น ถูส่วนที่เป็นโลหะหรือจุดไฟแช็กใกล้กับส่วนที่เป็นโลหะของเซ็นเซอร์แบบบรรจุหีบห่อ
ขั้นตอนที่ 5: เชื่อมต่อ DS18B20 ด้วย ESP8266
ในขั้นตอนนี้ เราจะเชื่อมต่อ DS18B20 กับโมดูล ESP8266 เพื่อรับอุณหภูมิ
สำหรับขั้นตอนนี้ เราต้องการ= โมดูล ESP8266, ตัวต้านทาน 4.7kohm และเซ็นเซอร์อุณหภูมิ DS18B20 (ประเภทแพ็คเกจหรือแพ็คเกจ TO92 อะไรก็ได้ที่มี)
การเชื่อมต่อสำหรับขั้นตอนนี้คล้ายกับการเชื่อมต่อที่ทำกับ Arduino
1. เชื่อมต่อพิน GND หรือสายสีดำของเซ็นเซอร์เข้ากับ GND
2. เชื่อมต่อพิน Vcc หรือสายสีแดงของเซ็นเซอร์กับแหล่งจ่ายไฟ 3.3V
3. เชื่อมต่อพินสัญญาณหรือสายสีเหลืองเข้ากับ 3.3V ผ่านตัวต้านทาน 4.7kohm และเชื่อมต่อพินสัญญาณนี้กับ GPIO12 ซึ่งเป็นพิน D5 ของโมดูล
คุณสามารถอ้างถึงแผนผังที่แสดงด้านบนเพื่อความเข้าใจที่ดีขึ้น
ขั้นตอนที่ 6: ตั้งค่า Arduino IDE
สำหรับการเข้ารหัส ESP8266 โดยใช้ Arduino IDE เราจำเป็นต้องติดตั้งบอร์ด ESP8266 ในบอร์ดเพิ่มเติมของ Arduino IDE เนื่องจากไม่ได้ติดตั้งไว้ล่วงหน้า เพื่อจุดประสงค์นี้ เราต้องทำตามขั้นตอนที่ระบุไว้ด้านล่าง:-
1. ไปที่ ไฟล์ > การตั้งค่า
2. เพิ่ม https://arduino.esp8266.com/stable/package_esp8266com_index.json ไปยัง URL ของตัวจัดการบอร์ดเพิ่มเติม
3. ไปที่ เครื่องมือ > บอร์ด > ตัวจัดการบอร์ด
4. ค้นหา esp8266 แล้วติดตั้งบอร์ด
5. รีสตาร์ท IDE
ขั้นตอนที่ 7: การเข้ารหัส ESP8266 เพื่อแสดงอุณหภูมิ
ในขั้นตอนนี้ เราจะใช้รหัส ESP8266 เพื่ออ่านอุณหภูมิ และหลังจากนั้น แทนที่จะแสดงอุณหภูมินั้นบนจอภาพแบบอนุกรม เราจะแสดงข้อมูลนั้นบนเว็บเซิร์ฟเวอร์
1. ย้ายไปยังที่เก็บ Github สำหรับโครงการนี้จากที่นี่
2. ใน Repository คุณจะเห็นโค้ดชื่อ "ESP8266 Temperature Web Server" คุณเพียงแค่ต้องคัดลอกโค้ดนั้นแล้ววางลงใน Arduino IDE
3. หลังจากวางรหัสแล้ว ให้เปลี่ยน SSID และรหัสผ่านในรหัสเป็นรหัสของเครือข่าย Wifi ของคุณ
4. ใต้แท็บ เครื่องมือ ให้เลือกบอร์ดและพอร์ต COM ที่ถูกต้อง จากนั้นให้กดปุ่มอัปโหลด
5. เมื่อโค้ดได้รับการอัปโหลด ให้เปิดมอนิเตอร์แบบอนุกรมของ IDE จากนั้นกดปุ่มรีเฟรชบนโมดูล ESP8266 คุณจะได้รับภาษาที่ไม่รู้จักเขียนที่นั่นและด้านล่างจะมีที่อยู่ IP คุณต้องคัดลอกที่อยู่ IP นั้นเนื่องจากเป็นที่อยู่ของเว็บเซิร์ฟเวอร์ซึ่งจะแสดงอุณหภูมิ
ขั้นตอนที่ 8: และเสร็จแล้ว
เมื่อรหัสได้รับการอัปโหลดและได้รับที่อยู่ IP เปิดเว็บเซิร์ฟเวอร์โดยใช้ที่อยู่ IP นั้น
บนเว็บเซิร์ฟเวอร์ จะมีการอ่านค่าอุณหภูมิที่แสดงเป็นองศาเซลเซียสและองศาฟาเรนไฮต์
นอกจากเว็บเซิร์ฟเวอร์แล้ว การอ่านค่าอุณหภูมิยังสามารถสังเกตได้บนจอภาพแบบอนุกรม
คุณจะสังเกตได้ว่าเมื่ออุณหภูมิใกล้เซ็นเซอร์เปลี่ยนแปลง ค่าที่อ่านได้บนเว็บเซิร์ฟเวอร์ก็เปลี่ยนไปเช่นกัน
นั่นมันสำหรับการสาธิต
แนะนำ:
การเชื่อมต่อเซ็นเซอร์อุณหภูมิ LM35 กับ Arduino: 4 ขั้นตอน
การเชื่อมต่อเซ็นเซอร์อุณหภูมิ LM35 กับ Arduino: เทอร์โมมิเตอร์เป็นอุปกรณ์ที่มีประโยชน์ซึ่งใช้ในการวัดอุณหภูมิเป็นเวลานาน ในโครงการนี้ เราได้สร้างเทอร์โมมิเตอร์แบบดิจิตอลที่ใช้ Arduino เพื่อแสดงอุณหภูมิแวดล้อมปัจจุบันและการเปลี่ยนแปลงของอุณหภูมิบน LCD มันสามารถ depl
การเปรียบเทียบ LV-MaxSonar-EZ และ HC-SR04 Sonar Range Finders กับ Arduino: 20 ขั้นตอน (พร้อมรูปภาพ)
การเปรียบเทียบ LV-MaxSonar-EZ และ HC-SR04 Sonar Range Finders กับ Arduino: ฉันพบว่าหลายโครงการ (โดยเฉพาะหุ่นยนต์) ต้องการหรือได้รับประโยชน์จากการวัดระยะทางไปยังวัตถุในแบบเรียลไทม์ ตัวค้นหาช่วงโซนาร์มีราคาไม่แพงนักและสามารถเชื่อมต่อกับไมโครคอนโทรลเลอร์เช่น Arduino ได้อย่างง่ายดาย นี้ใน
วิธีใช้ MQTT กับ Raspberry Pi และ ESP8266/sonoff: 4 ขั้นตอน
วิธีใช้ MQTT กับ Raspberry Pi และ ESP8266/sonoff: สวัสดีทุกคน วันนี้ฉันจะแสดงวิธีกำหนดค่าสวิตช์รีเลย์ sonoff wifi ที่ใช้ราสเบอร์รี่ pi และ ESP8266 เพื่อควบคุมเครื่องใช้ในบ้านของคุณจากทุกที่ในโลก ของคำสั่งสอนนี้ ถ้าคุณได้ปฏิบัติตามคำสั่งของฉันอย่างระมัดระวัง
วิธีใช้ MQTT กับ Raspberry Pi และ ESP8266: 8 ขั้นตอน (พร้อมรูปภาพ)
วิธีใช้ MQTT กับ Raspberry Pi และ ESP8266: ในคำแนะนำนี้ ฉันจะอธิบายว่าโปรโตคอล MQTT คืออะไรและใช้อย่างไรในการสื่อสารระหว่างอุปกรณ์ต่างๆ จากนั้นในการสาธิตเชิงปฏิบัติ ฉันจะแสดงวิธีตั้งค่าสองอย่างง่ายๆ ระบบไคลเอ็นต์ โดยที่โมดูล ESP8266 จะส่งข้อความ
การใช้ ESP8266 กับ Arduino และ Blynk: 4 ขั้นตอน
การใช้ ESP8266 กับ Arduino และ Blynk: เชื่อมต่อ Arduino Mega ของคุณกับแอป blynk โดยใช้ espp8266 shield