สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-13 06:58
ในโครงการนี้ เทอร์โมมิเตอร์แบบดิจิตอลที่ใช้ Arduino ได้รับการออกแบบมาเพื่อใช้วิเคราะห์อุณหภูมิของห้อง
โดยทั่วไปเทอร์โมมิเตอร์จะใช้เป็นเครื่องมือวัดอุณหภูมิ มีหลักการต่างๆ ที่สามารถนำมาใช้วัดอุณหภูมิได้ เช่น การขยายตัวทางความร้อนของของแข็งหรือของเหลว ความดันของแก๊ส การวัดพลังงานอินฟราเรด เป็นต้น
เทอร์โมมิเตอร์แบบดิจิตอลที่ใช้ Arduino มีโครงร่างที่สามารถใช้ในการวิเคราะห์อุณหภูมิของห้องได้ LM35 LM35 เป็นเซ็นเซอร์อุณหภูมิ แรงดันไฟขาออกของเซ็นเซอร์นี้เป็นสัดส่วนโดยตรงกับอุณหภูมิในหน่วยองศาเซนติเกรด LM35 สามารถใช้งานได้ในช่วง -550C ถึง +1500C โดยมีความแม่นยำ +/- 0.750C
เสบียง
Arduino Uno
LM35 เซ็นเซอร์อุณหภูมิ
จอ LCD 16x2
ขั้นตอนที่ 1: การออกแบบวงจรของเทอร์โมมิเตอร์แบบดิจิตอล
เซ็นเซอร์อุณหภูมิที่ใช้ในโครงการนี้คือ LM35 เอาต์พุตของเซ็นเซอร์อุณหภูมิเป็นสัดส่วนโดยตรงกับอุณหภูมิแต่อยู่ในรูปแบบแอนะล็อก ดังนั้นเอาต์พุตของ LM35 หมายถึงพิน 2 เชื่อมต่อกับอินพุตแบบอะนาล็อก A0 ของ Arduino
เนื่องจากเป็นเทอร์โมมิเตอร์แบบดิจิตอล เราจึงต้องแปลงค่าอุณหภูมิแอนะล็อกให้เป็นดิจิตอลและแสดงผลบนจอแสดงผล เช่น LCD เป็นต้น โดยใช้จอ LCD ขนาด 16X2 ขาที่ 1 และ 2 ของ LCD เชื่อมต่อกับกราวด์และแหล่งจ่ายตามลำดับ เพื่อจัดการคอนทราสต์ของจอแสดงผล พิน 3 ของ LCD ถูกต่อเข้ากับที่ปัดน้ำฝนของหม้อ 10 KΩ
ขั้วที่เหลือของ POT จะต่อกับแหล่งจ่ายและกราวด์ พิน 15 และ 16 ของ LCD ใช้เพื่อหมุนแบ็คไลท์ของ LCD ซึ่งเชื่อมต่อกับแหล่งจ่ายและกราวด์ตามลำดับ เพื่อแสดงข้อมูลบน LCD เราจำเป็นต้องมี 4 data pin ของ LCD พิน 11 – 14 (D4 – D7) ต่อกับพิน 5 – 2 ของ Arduino พิน 4, 5 และ 6 (RS, RW และ E) ของ LCD เป็นพินควบคุม พิน 4 (RS) ของ LCD เชื่อมต่อกับพิน 7 ของ Arduino Pin 5 (RW) เชื่อมต่อกับกราวด์ Pin 6 (E) เชื่อมต่อกับพิน 6 ของ Arduino
ขั้นตอนที่ 2: การทำงานของเครื่องวัดอุณหภูมิแบบดิจิตอล
มีโครงร่างเทอร์โมมิเตอร์แบบดิจิตอลที่มีความแม่นยำสูงในโครงการนี้ การทำงานของวงจรมีดังต่อไปนี้
เซ็นเซอร์อุณหภูมิ เช่น LM35 จะวิเคราะห์อุณหภูมิห้องอย่างต่อเนื่องและให้แรงดันไฟฟ้าที่เหมือนกันแบบอะนาล็อกซึ่งเป็นสัดส่วนโดยตรงกับอุณหภูมิ
ข้อมูลนี้มอบให้กับ Arduino ผ่าน A0 ตามรหัสที่เขียนไว้ Arduino แปลงค่าแรงดันแอนะล็อกนี้เป็นการอ่านอุณหภูมิแบบดิจิตอล
ค่านี้แสดงบน LCD เอาต์พุตที่แสดงบน LCD คือการอ่านค่าอุณหภูมิห้องที่แน่นอนในหน่วยองศาเซลเซียส
การฝึกอบรมหลักสูตร Internet of Things ของ hIOTron ได้พัฒนาโซลูชัน IoT ต่างๆ บนแอปพลิเคชันดังกล่าวเพื่อปรับปรุงประสบการณ์ของผู้ใช้
ขั้นตอนที่ 3: เรียกใช้โปรแกรม
#รวม
LiquidCrystal LCD (7, 6, 5, 4, 3, 2);
const int เซนเซอร์ = A0;
ไบต์ degree_symbol[8] =
{
0b00111, 0b00101, 0b00111, 0b00000, 0b00000, 0b00000, 0b00000, 0b00000
};
การตั้งค่าเป็นโมฆะ ()
{
pinMode(เซ็นเซอร์, INPUT);
lcd.begin(16, 2);
lcd.createChar(1, degree_symbol);
lcd.setCursor(0, 0);
lcd.print(" ดิจิตอล ");
lcd.setCursor(0, 1);
lcd.print(" เครื่องวัดอุณหภูมิ ");
ล่าช้า(4000);
lcd.clear();
}
วงเป็นโมฆะ ()
{
float temp_reading=analogRead(เซ็นเซอร์);
อุณหภูมิลอยตัว=temp_reading*(5.0/1023.0)*100;
ล่าช้า(10);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("อุณหภูมิใน C");
lcd.setCursor(4, 1);
lcd.print (อุณหภูมิ);
lcd.write(1);
lcd.print ("C");
ล่าช้า (1000);
}