สารบัญ:
2025 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2025-01-23 15:12
ในคำแนะนำนี้ เราได้สร้างตัวตรวจสอบอุณหภูมิอีกเครื่องหนึ่งโดยใช้เซ็นเซอร์อุณหภูมิ DS18B20 แต่โครงการนี้แตกต่างออกไป สามารถใช้แบตเตอรี่ได้นานเกือบ 1.5 ปี! ใช่! การใช้ไลบรารี่พลังงานต่ำของ Arduino เราสามารถให้โครงการนี้ทำงานเป็นเวลานาน อ่านต่อเพื่อหาข้อมูลเพิ่มเติม!
ขั้นตอนที่ 1: รับชิ้นส่วน
ชิ้นส่วนที่จำเป็นในการสร้างโครงการนี้คือ:
ATMEGA328P ▶
โนเกีย 5110 LCD ▶
DS18B20 ▶
โฟโตรีซีสเตอร์ ▶
ตัวเก็บประจุ ▶
คริสตัล 16MHz ▶
ตัวต้านทาน ▶
มัลติมิเตอร์ Mastech 8268 ▶
ค่าใช้จ่ายทั้งหมดของโครงการในขณะที่ฉันเขียนคำแนะนำนี้น้อยกว่า 10$
ขั้นตอนที่ 2: เชื่อมต่อชิ้นส่วนทั้งหมด
เมื่อคุณมีส่วนประกอบทั้งหมดแล้ว ให้เชื่อมต่อทั้งหมดเข้าด้วยกันตามแผนผัง
กุญแจสำคัญในการใช้พลังงานต่ำของโครงการนี้คือการใช้ชิป ATMEGA เปล่าแทนบอร์ด Arduino เนื่องจากบอร์ด Arduino ใช้ตัวควบคุมแรงดันไฟฟ้าเพื่อทำงานกับระดับแรงดันไฟฟ้าที่แตกต่างกันหลายระดับ บอร์ดจึงต้องการพลังงานมากขึ้น เราไม่ต้องการเครื่องปรับลมนี้เนื่องจากเรากำลังขับเคลื่อนโครงการของเราจากแบตเตอรี่ 3AA!
ในโครงการนี้ ฉันใช้จอแสดงผล Nokia 5110 LCD ซึ่งเป็นจอแสดงผลที่ยอดเยี่ยม และต้องการกระแสไฟเพียง 0.2mA เมื่อปิดไฟแบ็คไลท์ ประทับใจ!
เรายังใช้โฟโตรีซีสเตอร์เพื่อตรวจจับแสง ดังนั้นหากเป็นเวลากลางคืน เราจะปิดการใช้งานจอ LCD เพื่อประหยัดพลังงาน
ความลับอีกเล็กน้อยคือห้องสมุด LowPower เมื่อเราไม่ได้วัดอุณหภูมิ เราก็ทำให้ Arduino เข้าสู่โหมดสลีปโดยใช้ไลบรารี LowPower เมื่อชิป ATMEGA เปลือยกำลังหลับอยู่ มันต้องการกระแสไฟเพียง 0.06mA! นั่นหมายความว่าคุณสามารถมีชิป ATMEGA ที่หลับได้นานกว่า 4 ปีด้วยแบตเตอรี่ AA 3 ก้อน!
ด้วยการออกแบบซอฟต์แวร์ที่ชาญฉลาด เราจึงมีอายุการใช้งานแบตเตอรี่ที่ยาวนาน ชิป ATMEGA ต้องการกระแสไฟประมาณ 10mA เมื่อทำงาน ดังนั้นเป้าหมายของเราคือให้มันนอนหลับเป็นส่วนใหญ่ ด้วยเหตุนี้ เราจึงปลุกเครื่องเมื่อจำเป็นต้องวัดอุณหภูมิเท่านั้น ทุกสองนาที เมื่อเราปลุกชิป ATMEGA เราจะทำทุกอย่างให้เร็วที่สุด และเข้านอนอีกครั้งในทันที
อัลกอริทึม
โครงการตื่นขึ้นทุกสองนาที สิ่งแรกที่ทำคือเปิดใช้งานโฟโตรีซีสเตอร์โดยการเขียน HIGH ไปที่พินดิจิทัล 6 โดยจะอ่านค่าจากโฟโตรีซีสเตอร์และกำหนดว่าจะเป็นกลางวันหรือกลางคืน จากนั้นจะเขียน LOW ไปที่พินดิจิตอล 6 เพื่อปิดการใช้งานโฟโตรีซีสเตอร์และอนุรักษ์ porer หากเป็นเวลากลางคืน เราจะปิดจอแสดงผล LCD หากเปิดอยู่ และเราเข้าสู่โหมดสลีปทันทีโดยไม่อ่านอุณหภูมิเป็นเวลาสองนาที ไม่จำเป็นต้องทำเช่นนั้น เนื่องจากหน้าจอปิดอยู่ วิธีนี้ทำให้เราประหยัดพลังงานมากยิ่งขึ้น หากมีแสงเพียงพอ เราเปิดใช้งานจอ LCD หากปิดใช้งาน เราอ่านอุณหภูมิ เราแสดงบนหน้าจอ และเข้าสู่โหมดสลีปเป็นเวลาสองนาที วนซ้ำนั้นดำเนินต่อไปตลอดกาล
ขั้นตอนที่ 3: การวัด
ดังที่คุณเห็นจากภาพ เมื่อโปรเจ็กต์อยู่ในโหมดสลีปและจอแสดงผลเปิดอยู่ จำเป็นต้องใช้กระแสไฟ 0.26mA ซึ่งต่ำมาก หากคุณพิจารณาถึงความจริงที่ว่าเรามีจอแสดงผล!
เมื่อโปรเจ็กต์วัดอุณหภูมิและอัปเดตการแสดงผลจะต้องอยู่ที่ประมาณ 11.5mA
สุดท้ายนี้ เมื่อมันมืดและ ldr ได้ปิดการใช้งานจอแสดงผล Nokia 5110 LCD เราต้องการเพียง 0.07mA ซึ่งเยี่ยมมาก!
อายุการใช้งานแบตเตอรี่
ในการคำนวณอายุการใช้งานแบตเตอรี่ของโปรเจ็กต์ ฉันได้สร้างไฟล์ Excel อย่างง่าย ฉันป้อนการวัดจากมัลติมิเตอร์และอย่างที่คุณเห็นแบตเตอรี่มีอายุการใช้งานมากกว่า 500 วันหากเราวัดอุณหภูมิทุกๆ 2 นาที! นั่นคือด้วยการใช้แบตเตอรี่ 3AA ที่มีความจุ 2.500mAs แน่นอน ถ้าคุณใช้แบตเตอรี่ที่ดีกว่า เช่น แบตเตอรี่ Li-Ion 3.400 mAh คุณสามารถทำให้โปรเจ็กต์ของคุณใช้งานได้นานกว่า 2 ปี!
คุณสามารถดาวน์โหลดไฟล์ Excel ได้จากลิงค์นี้
ขั้นตอนที่ 4: รหัสของโครงการ
รหัสของโครงการนั้นง่ายมาก เราใช้ไลบรารีบางส่วนในโค้ดนี้ ห้องสมุดที่เราใช้มีดังต่อไปนี้:
- ห้องสมุดพลังงานต่ำ:
- ไลบรารีเซ็นเซอร์อุณหภูมิ DS18B20:
- ไลบรารี Nokia 5110 LCD:
รหัสโครงการประกอบด้วยสองไฟล์ ในไฟล์แรกมีโค้ดที่ทำงานบน Arduino ไฟล์ถัดไปมีข้อมูลไบนารีบางส่วนสำหรับไอคอนที่โปรแกรมหลักแสดง คุณต้องใส่ทั้งสองไฟล์ในโฟลเดอร์โครงการเพื่อให้โค้ดสามารถคอมไพล์ได้อย่างถูกต้อง
รหัสนั้นง่ายมาก คุณสามารถค้นหาได้ด้านล่าง ความมหัศจรรย์ทั้งหมดเกิดขึ้นที่ฟังก์ชัน sleepForTwoMinutes ที่ฟังก์ชันนี้ เราทำให้ Arduino เข้าสู่โหมดสลีป ปัญหาคือการใช้ตัวจับเวลาจ้องจับผิดระยะเวลาสูงสุดที่เราสามารถทำให้ Arduino เข้าสู่โหมดสลีปได้คือ 8 วินาที ดังนั้นเราจึงแทรกสิ่งนั้นในลูปเป็นเวลา 15 ครั้งและได้ช่วงเวลาสองนาทีที่เราต้องการ
ฉันหวังว่าคุณจะสนุกกับโครงการนี้ พบกันเร็ว ๆ นี้!
แนะนำ:
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): 8 ขั้นตอน
การลอยแบบอะคูสติกด้วย Arduino Uno ทีละขั้นตอน (8 ขั้นตอน): ตัวแปลงสัญญาณเสียงล้ำเสียง L298N Dc ตัวเมียอะแดปเตอร์จ่ายไฟพร้อมขา DC ตัวผู้ Arduino UNOBreadboardวิธีการทำงาน: ก่อนอื่น คุณอัปโหลดรหัสไปยัง Arduino Uno (เป็นไมโครคอนโทรลเลอร์ที่ติดตั้งดิจิตอล และพอร์ตแอนะล็อกเพื่อแปลงรหัส (C++)
LEIDS - เซ็นเซอร์ประตู IOT พลังงานต่ำ: 8 ขั้นตอน (พร้อมรูปภาพ)
LEIDS - เซ็นเซอร์ประตู IOT พลังงานต่ำ: LEIDS คืออะไร LEIDS เป็นเซ็นเซอร์ IOT ที่มีพื้นฐานมาจาก ESP8266 เซ็นเซอร์นี้ใช้ประโยชน์จากบอร์ดนี้ วงจรล็อคแบบอ่อน สวิตช์กก และแม่เหล็กบางส่วนเพื่อสร้างเซ็นเซอร์ประตูที่จะส่งการแจ้งเตือนถึงคุณเมื่อประตูของคุณเปิดและปิด
Arduino ที่ถูกที่สุด -- Arduino ที่เล็กที่สุด -- Arduino Pro Mini -- การเขียนโปรแกรม -- Arduino Neno: 6 ขั้นตอน (พร้อมรูปภาพ)
Arduino ที่ถูกที่สุด || Arduino ที่เล็กที่สุด || Arduino Pro Mini || การเขียนโปรแกรม || Arduino Neno:…………………………… โปรดสมัครสมาชิกช่อง YouTube ของฉันสำหรับวิดีโอเพิ่มเติม……. โปรเจ็กต์นี้เกี่ยวกับวิธีเชื่อมต่อ Arduino ที่เล็กที่สุดและถูกที่สุดเท่าที่เคยมีมา Arduino ที่เล็กที่สุดและถูกที่สุดคือ arduino pro mini คล้ายกับ Arduino
The Brew Probe - ตัวตรวจสอบอุณหภูมิ WiFi: 14 ขั้นตอน (พร้อมรูปภาพ)
The Brew Probe - ตัวตรวจสอบอุณหภูมิ WiFi: ในคำแนะนำนี้เราจะสร้างหัววัดอุณหภูมิที่ใช้ MQTT และ Home Assistant เพื่อถ่ายทอดข้อมูลอุณหภูมิไปยังหน้าเว็บที่คุณสามารถตรวจสอบอุณหภูมิการงอกที่ใดก็ได้ในถังหมักของคุณ
เครื่องกำเนิดเสียงมอร์ส (CW Beeper พลังงานต่ำ): 3 ขั้นตอน
Morse Tone Generator (CW Beeper พลังงานต่ำ): ที่นี่ฉันอธิบายวิธีสร้างเครื่องกำเนิดเสียงต่ำแบบง่ายๆ ที่ฉันใช้เพื่อสอนรหัสมอร์สของลูกชายฉัน ขณะทำความสะอาดห้องใต้ดินของฉัน ฉันพบ Wehrmacht morse keyer เก่าของฉัน คีย์นี้ถูกใช้โดยกองกำลังเยอรมันในช่วงสงครามโลกครั้งที่สอง พวงกุญแจมี