สารบัญ:
- ขั้นตอนที่ 1: โดยทั่วไปทำงานอย่างไร
- ขั้นตอนที่ 2: การเชื่อมต่อและการเดินสายที่เหมาะสม
- ขั้นตอนที่ 3: ประเภทการใช้งาน
- ขั้นตอนที่ 4: ปัญหาใหญ่เกี่ยวกับรหัสเมื่อทำการวัด
- ขั้นตอนที่ 5: รหัส ตอนที่ 1
- ขั้นตอนที่ 6: รหัสตอนที่ 2
- ขั้นตอนที่ 7: ผลลัพธ์
วีดีโอ: Arduino AD8495 เทอร์โมมิเตอร์: 7 ขั้นตอน
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:07
คู่มือฉบับย่อวิธีแก้ปัญหาของคุณด้วยเทอร์โมมิเตอร์ชนิด K นี้ เราหวังว่าจะช่วยได้:)
สำหรับโครงการต่อไปนี้คุณจะต้อง:
1x Arduino (แบบไหนก็ได้ ดูเหมือนเราจะมี Arduino Nano ฟรี 1 ตัว)
1x AD8495 (โดยทั่วไปจะมาพร้อมกับชุดเซ็นเซอร์และทุกอย่าง)
สายจัมเปอร์ 6x (เชื่อมต่อ AD8495 กับ Arduino)
หัวแร้ง & ลวดบัดกรี
ไม่จำเป็น:
แบตเตอรี่ 1x 9V
ตัวต้านทาน 2x (เราใช้ 1x 10kOhms & 2x5kOhms เพราะเราเชื่อมต่อ 2x5k เข้าด้วยกัน)
โปรดใช้ความระมัดระวังและระมัดระวังนิ้วของคุณ หัวแร้งอาจทำให้เกิดการไหม้ได้หากไม่จัดการด้วยความระมัดระวัง
ขั้นตอนที่ 1: โดยทั่วไปทำงานอย่างไร
โดยทั่วไปเทอร์โมมิเตอร์นี้เป็นผลิตภัณฑ์ของ Adafruit ซึ่งมีเซ็นเซอร์ประเภท K ซึ่งสามารถใช้ได้กับเกือบทุกอย่างตั้งแต่การวัดอุณหภูมิที่บ้านหรือชั้นใต้ดินไปจนถึงการวัดความร้อนของเตาเผาและเตาอบ สามารถทนต่ออุณหภูมิได้ตั้งแต่ -260 องศาเซลเซียส ถึง 980 และด้วยการปรับพาวเวอร์ซัพพลายเพียงเล็กน้อยก็ทำได้ถึง 1380 องศาเซลเซียส (ซึ่งค่อนข้างน่าทึ่ง) และค่อนข้างแม่นยำด้วย +/-2 องศา การเปลี่ยนแปลงของมันมีประโยชน์อย่างน่าทึ่ง หากคุณสร้างมันเหมือนที่เราทำกับ Arduino Nano คุณสามารถแพ็คมันในกล่องขนาดเล็กได้เช่นกัน (พิจารณาว่าคุณจะทำกล่องของคุณเองซึ่งไม่รวมอยู่ในบทช่วยสอนนี้)
ขั้นตอนที่ 2: การเชื่อมต่อและการเดินสายที่เหมาะสม
ตามที่เราได้รับแพ็คเกจเป็นแบบนี้ตามที่คุณเห็นจากรูปภาพด้านบน คุณสามารถใช้สายจัมเปอร์เพื่อเชื่อมต่อกับบอร์ด Arduino ได้ แต่ฉันขอแนะนำให้บัดกรีสายไฟเพราะมันทำงานบนแรงดันไฟฟ้าที่น้อยมาก ดังนั้นการเคลื่อนไหวเพียงเล็กน้อยอาจทำให้ผลลัพธ์เสียได้
ภาพถ่ายด้านบนนี้ถ่ายจากการที่เราบัดกรีสายไฟบนเซ็นเซอร์ สำหรับโครงการของเรา เราใช้ Arduino Nano และอย่างที่คุณเห็น เราได้ปรับเปลี่ยน Arduino ของเราเล็กน้อยเช่นกันเพื่อให้ได้ผลลัพธ์ที่ดีที่สุดจากการวัดของเรา
ขั้นตอนที่ 3: ประเภทการใช้งาน
ตามเอกสารข้อมูล เซ็นเซอร์นี้สามารถใช้วัดได้ตั้งแต่ -260 ถึง 980 องศาเซลเซียส ด้วยแหล่งจ่ายไฟ 5V ของ Arduino ปกติ หรือคุณสามารถเพิ่มแหล่งพลังงานภายนอกบางส่วน และนั่นจะทำให้คุณมีโอกาสวัดได้ถึง 1380 องศา แต่ระวังถ้าเทอร์โมมิเตอร์ให้มากกว่า 5V กลับไปที่ Arduino เพื่ออ่านมันอาจทำให้ Arduino ของคุณเสียหายและโครงการของคุณอาจถึงวาระที่จะล้มเหลว
เพื่อแก้ปัญหานี้ เราได้วางตัวแบ่งแรงดันไฟไว้บนอุปกรณ์ ซึ่งในกรณีของเราคือ Vout ที่แรงดัน Vin ครึ่งหนึ่ง
ลิงค์ไปยังแผ่นข้อมูล:
www.analog.com/media/en/technical-documenta…
www.analog.com/media/en/technical-documenta…
ขั้นตอนที่ 4: ปัญหาใหญ่เกี่ยวกับรหัสเมื่อทำการวัด
ตามแผ่นข้อมูลสำหรับเทอร์โมมิเตอร์ แรงดันอ้างอิงคือ 1.25V ในการวัดของเรา ไม่ได้เป็นเช่นนั้น… ขณะที่เราทดสอบเพิ่มเติม เราพบว่าแรงดันอ้างอิงเป็นตัวแปร และเราทดสอบบนคอมพิวเตอร์สองเครื่อง ทั้งสองมีความแตกต่างกัน (!?!) เราติดหมุดบนกระดาน (ดังแสดงในภาพด้านบน) และใส่บรรทัดในโค้ดเพื่ออ่านค่าแรงดันอ้างอิงทุกครั้งก่อนทำการคำนวณ
สูตรหลักคือ Temp=(Vout-1.25) / 0.005
ในสูตรของเราเราทำได้: Temp=(Vout-Vref) / 0.005
ขั้นตอนที่ 5: รหัส ตอนที่ 1
const int AnalogPin= A0; //ขาอะนาล็อกสำหรับ temp readconst int AnalogPin2= A1; //ขาอนาล็อกสำหรับอ่านค่าอ้างอิงค่า float Temp; //Temperaturefloat Vref; //อ้างอิง voltagefloat Vout; //แรงดันหลังจาก adcfloat SenVal; //ค่าเซ็นเซอร์ลอย SenVal2; //ค่าเซ็นเซอร์จากการตั้งค่า pinvoid อ้างอิง () {Serial.begin(9600); } วงเป็นโมฆะ () { SenVal = analogRead (A0); //ค่าอนาล็อกจากอุณหภูมิ SenVal2 =analogRead(A1); //ค่าแอนะล็อกจาก pinVref อ้างอิง = (SenVal2 *5.0) / 1024.0; //แปลงแอนะล็อกเป็นดิจิทัลสำหรับค่าอ้างอิงVout = (SenVal * 5.0) / 1024.0; //แปลงอนาล็อกเป็นดิจิตอลสำหรับอุณหภูมิที่อ่านค่าแรงดัน Temp = (Vout - Vref) / 0.005; //การคำนวนอุณหภูมิ Serial.print("Temperature=");Serial.println(Temp);Serial.print("Referent Voltage=");Serial.println(Vref);delay (200);}
รหัสนี้ใช้เมื่อคุณใช้พลังงานจาก Arduino (ไม่มีแหล่งพลังงานภายนอก) การดำเนินการนี้จะจำกัดการวัดของคุณไว้ที่ 980 องศาเซลเซียสตามเอกสารข้อมูล
ขั้นตอนที่ 6: รหัสตอนที่ 2
const int AnalogPin= A0; //ขาอะนาล็อกสำหรับ temp readconst int AnalogPin2= A1; //ขาอะนาล็อกจากจุดที่เราอ่านค่าอ้างอิง (เราต้องสร้างสิ่งนี้เพราะค่าอ้างอิงของเซ็นเซอร์ไม่เสถียร)float Temp; //Temperaturefloat Vref; //อ้างอิง voltagefloat Vhalf; //แรงดันไฟฟ้าบน Arduino อ่านหลังจาก dividerfloat Vout; //แรงดันไฟฟ้าหลังการแปลงfloat SenVal; //ค่าเซ็นเซอร์ลอย SenVal2; //ค่าเซ็นเซอร์จากตำแหน่งที่เราได้รับการอ้างอิง valuevoid setup() {Serial.begin(9600); } วงเป็นโมฆะ () {SenVal = analogRead (A0); // ค่าเอาต์พุตแบบอะนาล็อกSenVal2 = analogRead (A1); //เอาต์พุตแบบอะนาล็อกจากตำแหน่งที่เราได้รับค่าอ้างอิงVref = (SenVal2 * 5.0) / 1024.0; //การแปลงค่าแอนะล็อกจากพินอ้างอิงเป็นค่าดิจิตอลVhalf = (SenVal * 5.0) / 1024.0; //แปลงค่าอนาล็อกเป็นดิจิตอลVout = 2 * Vhalf; // การคำนวณแรงดันหลังจากแบ่งแรงดันครึ่งหนึ่ง Temp = (Vout - Vref) / 0.005; //การคำนวณสูตรอุณหภูมิSerial.print("Temperature=");Serial.println(Temp);Serial.print("Vout= ");Serial.println(Vout);Serial.print("Reference Voltage=");Serial.println(Vref);ล่าช้า (100);}
นี่คือรหัสหากคุณใช้แหล่งพลังงานภายนอก และด้วยเหตุนี้ เราใช้ตัวแบ่งแรงดันไฟฟ้า นั่นเป็นเหตุผลที่เรามีค่า "Vhalf" อยู่ภายใน ตัวแบ่งแรงดันไฟฟ้าที่ใช้ (ดูในส่วนที่ 3) คือครึ่งหนึ่งของแรงดันไฟฟ้าขาเข้า (R1 มีค่าโอห์มเท่ากับ R2) เนื่องจากเราใช้แบตเตอรี่ 9V ดังที่ได้กล่าวไว้ข้างต้น แรงดันไฟฟ้าที่สูงกว่า 5V สามารถสร้างความเสียหายให้กับ Arduino ของคุณได้ ดังนั้นเราจึงทำให้มันได้รับสูงสุด 4.5V (ซึ่งเป็นไปไม่ได้ในกรณีนี้ เนื่องจากเอาต์พุตกำลังสูงสุดจากเซ็นเซอร์หลังจากตัวแบ่งแรงดันไฟฟ้าสามารถมีค่าประมาณ 3.5V)
ขั้นตอนที่ 7: ผลลัพธ์
ดังที่คุณเห็นจากภาพหน้าจอด้านบน เราได้ทดสอบแล้วและใช้งานได้ นอกจากนี้เรายังได้จัดเตรียมไฟล์ Arduino ดั้งเดิมให้กับคุณ
แค่นี้แหละ เราหวังว่ามันจะช่วยคุณในโครงการของคุณ
แนะนำ:
เทอร์โมมิเตอร์ - Micro:Bit: 11 Steps
เครื่องวัดอุณหภูมิ - Micro:Bit: ใช้ Micro:Bit ของคุณเพื่ออ่านอุณหภูมิของสภาพแวดล้อมของคุณ
เทอร์โมมิเตอร์ IR แบบไม่สัมผัส 8 ขั้นตอน (พร้อมรูปภาพ)
เครื่องวัดอุณหภูมิอินฟราเรดแบบไม่สัมผัส: กรมอนามัยในพื้นที่ของฉันติดต่อกับฉันเพราะพวกเขาต้องการวิธีติดตามอุณหภูมิร่างกายของสุขภาพของพนักงานในแต่ละวันในช่วงวิกฤตโควิด-19 ในปี 2020 ปกติ เทอร์โมมิเตอร์ IR นอกชั้นวางเริ่มหายาก
โล่สำหรับ Arduino จากหลอด VFD รัสเซียรุ่นเก่า: นาฬิกา, เทอร์โมมิเตอร์, โวลต์มิเตอร์: 21 ขั้นตอน (พร้อมรูปภาพ)
Shield for Arduino จากหลอด VFD รุ่นเก่าของรัสเซีย นาฬิกา เทอร์โมมิเตอร์ โวลต์มิเตอร์…: โครงการนี้ใช้เวลาเกือบครึ่งปีจึงจะเสร็จสมบูรณ์ ฉันไม่สามารถอธิบายได้ว่าโครงการนี้มีงานมากแค่ไหน การทำโปรเจ็กต์นี้คนเดียวจะใช้เวลาตลอดไป ดังนั้นฉันจึงได้รับความช่วยเหลือจากเพื่อนๆ ที่นี่คุณสามารถเห็นงานของเราที่รวบรวมไว้ในคำสั่งเดียวที่ยาวมาก
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
เทอร์โมมิเตอร์ RGB โดยใช้ PICO: 6 ขั้นตอน
เทอร์โมมิเตอร์ RGB โดยใช้ PICO: นั่นคือผลลัพธ์สุดท้ายของความพยายามของเราในวันนี้ เป็นเทอร์โมมิเตอร์ที่จะแจ้งให้คุณทราบว่าห้องของคุณอุ่นเพียงใด โดยใช้แถบ LED RGB ที่วางอยู่ในภาชนะอะคริลิกที่เชื่อมต่อกับเซ็นเซอร์อุณหภูมิเพื่ออ่านอุณหภูมิ และว