สารบัญ:
- ขั้นตอนที่ 1: ถอดแยกชิ้นส่วนทุกอย่าง
- ขั้นตอนที่ 2: ปุ่มสำหรับการตั้งค่าดิจิทัล
- ขั้นตอนที่ 3: ตัวเก็บประจุสำหรับมอเตอร์
- ขั้นตอนที่ 4: ใบหน้าใหม่สำหรับนาฬิกา
- ขั้นตอนที่ 5: จอแสดงผลดิจิตอลจากโทรศัพท์มือถือเครื่องเก่า
- ขั้นตอนที่ 6: การเชื่อมต่อวงจร
- ขั้นตอนที่ 7: บอร์ดเชื่อมต่อเพื่อการเชื่อมต่อที่ง่ายดาย
- ขั้นตอนที่ 8: การตั้งค่าพลังงาน
- ขั้นตอนที่ 9: Micro USB สำหรับการชาร์จและอัปเดตเฟิร์มแวร์
- ขั้นตอนที่ 10: การประกอบขั้นสุดท้าย
- ขั้นตอนที่ 11: รหัส
- ขั้นตอนที่ 12: วิดีโอทีละขั้นตอน
- ขั้นตอนที่ 13: คำสุดท้าย
วีดีโอ: นาฬิกาพยากรณ์อากาศโดยใช้นาฬิกาปลุกเก่าและ Arduino: 13 ขั้นตอน (พร้อมรูปภาพ)
2024 ผู้เขียน: John Day | [email protected]. แก้ไขล่าสุด: 2024-01-30 13:06
ฉันมีนาฬิกาปลุกที่พังอยู่รอบๆ และเกิดไอเดียที่จะแปลงเป็นนาฬิกาและสถานีพยากรณ์อากาศ
สำหรับโครงการนี้ คุณจะต้อง:
- นาฬิกาปลุกวงกลมเก่า
- Arduino นาโน
- โมดูลเซ็นเซอร์ BME280 (อุณหภูมิ ความชื้น ความดัน)
- โมดูลจอแสดงผล LCD จาก Nokia 5110
- DS1307 RTC นาฬิกา
- TP4056 เครื่องชาร์จแบตเตอรี่ลิเธียม
- กู้แบต Li-ion เก่าจากมือถือ
- โมดูลบูสเตอร์ 3.7v ถึง 5v ขนาดเล็ก
- ตัวต้านทานแบบขึ้นกับแสง (LDR - เครื่องวัดแสง)
- Buzzer (ใช้กู้จากพีซีเครื่องเก่า)
- ปุ่มกด 3 ปุ่ม
- ตัวต้านทานจำนวนหนึ่ง (2x10k, 270 ohm) และทรานซิสเตอร์ (2N2222A หรือใกล้เคียง)
- ท่อหดบางแบบกว้าง
- เศษ PCB เพื่อใช้ตกแต่งจานหน้า
- สายต่อ Micro-USB (ด้านตัวเมียและตัวผู้เป็น Micro-USB)
- บอร์ดต้นแบบขนาด 2x8 ซม. และสายไฟบางส่วน
ขั้นตอนที่ 1: ถอดแยกชิ้นส่วนทุกอย่าง
ก่อนอื่นฉันถอดนาฬิกาเก่าออก ระฆัง มอเตอร์ กลไกนาฬิกาแตก…
ขั้นตอนที่ 2: ปุ่มสำหรับการตั้งค่าดิจิทัล
เนื่องจากนาฬิกาใหม่จะเป็นแบบดิจิตอลทั้งหมดโดยมีมินิคอมพิวเตอร์อยู่ภายใน ฉันจึงเพิ่มปุ่มที่ดูเรียบง่าย 3 ปุ่มที่ด้านข้าง
ฉันใช้เศษอลูมิเนียมเพื่อตัดโอเวอร์เลย์เพื่อสร้างฉลาก ตัวอักษรสำหรับฉลากถูกสร้างขึ้นโดยใช้เครื่องเจาะตัวอักษรและเครื่องหมายสีดำ
ขั้นตอนที่ 3: ตัวเก็บประจุสำหรับมอเตอร์
ฉันจะเก็บระฆังเก่าไว้เพื่อส่งเสียงเตือนด้วยมอเตอร์ กลไกนาฬิกาที่พังแบบเก่ามีตัวเก็บประจุแบบเซรามิกที่มีฉลาก 104 ฉันถอดมันออกจากแผงวงจรและบัดกรีเข้ากับมอเตอร์โดยตรง ซึ่งจะช่วยป้องกันไฟกระชากเมื่อเปิดมอเตอร์ในระหว่างการเตือน สิ่งสำคัญที่ควรทราบก็คือมอเตอร์จะถูกควบคุมผ่านทรานซิสเตอร์ แต่จะเพิ่มเติมในภายหลัง
ขั้นตอนที่ 4: ใบหน้าใหม่สำหรับนาฬิกา
เนื่องจากฉันตัดสินใจเปลี่ยนหน้าปัดนาฬิกาใหม่ ฉันจึงนำแผงวงจรออกจากกองขยะและใช้ปืนความร้อนของผู้สร้างเพื่อถอดส่วนประกอบทั้งหมดออกอย่างรวดเร็ว รูตรงกลางทำขึ้นสำหรับหน้าจอดิจิตอลของนาฬิการุ่นใหม่
ขั้นตอนที่ 5: จอแสดงผลดิจิตอลจากโทรศัพท์มือถือเครื่องเก่า
สำหรับโครงการนี้ ฉันตัดสินใจใช้หน้าจอ LCD จากโทรศัพท์มือถือ Nokia 5110 รุ่นเก่า หน้าจอเหล่านี้มีจำหน่ายเป็นโมดูลอย่างกว้างขวาง โดยใช้พลังงานน้อยมาก และมีไลบรารี่ที่ดีสำหรับ Arduino หากคุณกำลังซื้อโมดูลใหม่ที่มีหน้าจอ 5110 - คุณกำลังช่วยโลกเพราะโมดูลใหม่ทั้งหมดถูกสร้างขึ้นจากโทรศัพท์ 5110, 3110 และ 3210 ที่กู้คืนแล้ว!
ขั้นตอนที่ 6: การเชื่อมต่อวงจร
คุณอาจเดาได้แล้วว่าฉันกำลังวางแผนที่จะใช้บอร์ด Arduino เพื่อควบคุมนาฬิกานี้ โปรเจ็กต์นี้ทำซ้ำได้ง่ายแม้สำหรับแฟน Arduino มือใหม่ เพราะฉันไม่ได้สร้างแผงวงจรของตัวเอง เป็นบอร์ด Arduino Nano ที่มีโมดูลเชื่อมต่ออยู่ - BME280 เซ็นเซอร์อุณหภูมิ, ความดันและความชื้น, นาฬิกา DS1307 RTC, เครื่องชาร์จแบตเตอรี่ลิเธียม TP4056, โมดูลบูสเตอร์ขนาดเล็ก 3.7v ถึง 5v, ตัวต้านทานขึ้นอยู่กับแสง (LDR - เครื่องวัดแสง) และเสียงกริ่ง (เอามาจากคอมเครื่องเก่า)
ดูภาพสเก็ตช์ด้วย - พวกมันแสดงการเชื่อมต่อทั้งหมด ฉันคิดว่าทุกอย่างอ่านและเข้าใจได้ง่ายมาก แต่ถ้าคุณมีคำถามใด ๆ เพียงแค่ถามในความคิดเห็นด้านล่าง
หมายเหตุเล็กน้อยเกี่ยวกับการตั้งค่า:
- มอเตอร์เชื่อมต่อโดยตรงจากแบตเตอรี่ผ่านทรานซิสเตอร์ Arduino ควบคุมทรานซิสเตอร์ผ่านตัวต้านทานและขา PWM D5
- พิน D7-12 ใช้สำหรับขั้วต่อ LCD กราวด์และ VCC เชื่อมต่อกับรางบนบอร์ดรวมสัญญาณ
- ติดตั้ง LDR บนหน้าปัดนาฬิกาและตัวต้านทาน + สายไฟขาออก 3 เส้นถูกบัดกรีที่ด้านหลังของหน้าปัดนาฬิกา
- สำหรับการเชื่อมต่อปุ่ม ฉันใช้ฟังก์ชัน PULLUP ภายในใน Arduino ปุ่มเมนูติดอยู่กับการขัดจังหวะและฉันรู้ในภายหลังว่าคุณสามารถใช้ PULLUP ภายในสำหรับการขัดจังหวะได้เช่นกัน จำเป็นต้องมีการขัดจังหวะสำหรับปุ่มเมนูเพื่อให้โค้ดไม่สแกนสถานะของปุ่มตลอดเวลา
- นาฬิกาจะตรวจสอบและแสดงสถานะของแบตเตอรี่ด้วย ดังนั้นแบตเตอรี่จึงเชื่อมต่อโดยตรงกับพิน A0 แรงดันแบตเตอรี่ไม่เคยสูงกว่า 4.2V ดังนั้นจึงปลอดภัยที่จะเชื่อมต่อแบตเตอรี่เข้ากับขาอะนาล็อก Arduino โดยตรง
- Buzzer เชื่อมต่อโดยตรงกับขา PWM D6 แม้ว่านี่จะไม่ใช่วิธีปฏิบัติที่ดี แต่ฉันก็เลิกใช้เพราะ Arduino Nano สามารถรองรับสเป็คที่สูงกว่าที่ระบุไว้และเพราะว่า Buzzer จะไม่ทำงานอย่างต่อเนื่อง การตั้งค่าเดียวกันนี้สามารถเบิร์นพินบนบอร์ด ESP ได้อย่างง่ายดาย ดังนั้นในกรณีเหล่านั้น ผมขอแนะนำให้ใช้การควบคุมทรานซิสเตอร์
- นาฬิกามีสวิตช์อยู่แล้ว เลยตัดสินใจใช้ ด้านหลังดูเป็นธรรมชาติ
ขั้นตอนที่ 7: บอร์ดเชื่อมต่อเพื่อการเชื่อมต่อที่ง่ายดาย
โมดูลทั้งหมดต้องการการเชื่อมต่อเชิงบวกและกราวด์ ดังนั้นฉันจึงตัดสินใจใช้บอร์ดต้นแบบขนาด 2x8 ซม. และบัดกรี 5V และรางกราวด์กับโมดูล ฉันยังสร้างราง I2C ขนาดเล็กที่นั่นด้วย เนื่องจากฉันมีหลายโมดูลที่ใช้อินเทอร์เฟซ I2C
อีกด้านหนึ่ง ฉันบัดกรีหมุดมาตรฐานเพื่อให้ฉันสามารถเชื่อมต่อและถอดโมดูลเมื่อจำเป็น
ส่วนประกอบเพิ่มเติมบางส่วนถูกบัดกรีด้วย เช่น ทรานซิสเตอร์และตัวต้านทานสำหรับการควบคุมมอเตอร์ และตัวต้านทานสำหรับปุ่มเมนูซึ่งใช้การขัดจังหวะ ฉันแสดงแผนผังในส่วนก่อนหน้า
btw คุณเห็นเซ็นเซอร์ LDR ติดตั้งอยู่ที่หน้าปัดนาฬิกาในภาพแรกหรือไม่?
ขั้นตอนที่ 8: การตั้งค่าพลังงาน
ฉันใช้แบตเตอรี่ลิเธียมไอออนแบบเก่าจากโทรศัพท์มือถือเพื่อจ่ายไฟให้กับนาฬิกานี้ โดยปกติแบตเตอรี่โทรศัพท์มือถือที่เปลี่ยนแล้วยังคงมีความจุที่ดี (อย่างน้อยครึ่งหนึ่งของแบตเตอรี่ใหม่) ข้อได้เปรียบของพวกเขาคือมีวงจรป้องกันการคายประจุในตัวและยังบางมาก จึงสามารถใช้ในสถานการณ์ที่มีพื้นที่ขนาดเล็กได้
ในการเชื่อมต่อแบตเตอรี่ คุณเพียงแค่บัดกรีสายไฟเข้ากับหมุด + และ - บนแบตเตอรี่ ไม่ต้องกังวล คุณจะไม่สร้างความเสียหายให้กับเซลล์เพราะมีตัวควบคุมและช่องว่างระหว่างหมุดและสารเคมีของเซลล์
ในภาพนี้ คุณสามารถเห็นแบตเตอรี่และตัวควบคุมการชาร์จ TP4056 รวมถึงบูสเตอร์ 5V ที่เชื่อมต่อเข้าด้วยกันและกับแบตเตอรี่ ฉันใช้ท่อหดเพื่อทำให้ทุกอย่างแยกออกมาและกะทัดรัด
ขั้นตอนที่ 9: Micro USB สำหรับการชาร์จและอัปเดตเฟิร์มแวร์
เมื่อฉันบัดกรีทุกอย่างเรียบร้อยแล้ว ฉันจึงติดออดและเซ็นเซอร์อุณหภูมิ/ความดัน/ความชื้นที่แผงด้านหลัง พวกเขาทั้งหมดติดตั้งอย่างดีในช่องที่มีอยู่จากปุ่มควบคุมนาฬิกาแบบเก่า
ถึงเวลาติดตั้งพอร์ต Micro USB ที่ด้านหลังแล้ว ทำไมต้อง Micro USB ถ้า Nano ใช้ Mini USB? เพียงเพราะในครัวเรือน สาย USB ส่วนใหญ่มาจากโทรศัพท์มือถือ และจะสะดวกถ้านาฬิกาใช้ได้เช่นกัน
เนื่องจากฉันต้องการใช้ทั้งการชาร์จและอัปเดตฟังก์ชันนาฬิกาและสถานีตรวจอากาศ ฉันจึงถอดสาย USB ออก เดินสายไฟผ่านเครื่องชาร์จ TP4056 และสาย Data+/Data- โดยตรงไปยังช่องเสียบ USB ของ Arduino Nano คุณสามารถเห็นสิ่งนี้ในแผนผังที่ฉันแสดงในส่วนก่อนหน้า
ขั้นตอนที่ 10: การประกอบขั้นสุดท้าย
ถึงเวลาที่จะบรรจุทุกอย่างกลับเข้าไปในนาฬิกาเดิม ฉันใช้ท่อหดเพื่อแยกส่วนประกอบและโมดูล แม้แต่ Arduino ก็ถูกห่อด้วยท่อหด
วางเมาส์เหนือรูปภาพแรกเพื่อดูว่าแต่ละองค์ประกอบวางอยู่ที่ใด
ขั้นตอนที่ 11: รหัส
อย่างที่คุณเห็น นาฬิกาถูกบรรจุไว้เต็มภายใน สิ่งนี้ทำให้สามารถสร้างสิ่งที่ซับซ้อนกว่านาฬิกาเก่าที่ฉันมีอยู่ได้ เนื่องจากแน่นอนว่ามีทักษะการเขียนโปรแกรมอยู่บ้าง ฉันเขียนรหัสเริ่มต้น แต่ขอให้เพื่อนของฉันก้าวเข้ามาและช่วยฉันออกไป
จนถึงตอนนี้ นอกเหนือจากตัวนาฬิกาแล้ว นี่คือฟังก์ชันที่โครงการนี้สนับสนุนอยู่แล้ว:
- การแสดงเวลาและวันที่ (รวมถึงเวลาและการเปิดใช้งานการเตือนบนหน้าจอเดียวกัน)
- หน้าจอจะสว่างขึ้นในที่มืดหรือเมื่อตรวจพบการเคลื่อนไหว (ขึ้นอยู่กับการเปลี่ยนแปลงของแสง)
- พยากรณ์อากาศ (แดดจัด, เมฆมาก, ฝนตก)
- แสดงอุณหภูมิ ความดัน และความชื้น (สำหรับความชื้นจะระบุว่าแห้งเกินไปหรือไม่)
- เมนูสำหรับการตั้งค่า: ปลุก, เปลี่ยนเวลา, เปิด/ปิดการแสดงวันที่, เปิด/ปิดการแจ้งเตือนเสียงการเปลี่ยนแปลงสภาพอากาศและสลับระหว่างหน่วยอิมพีเรียลและเมตริก
- การตั้งค่าการปลุก - เปิด/ปิด ตั้งเวลา ตั้งค่าทำนองและ/หรือเสียงระฆังสำหรับการแจ้งเตือน
โค้ดล่าสุด:
รหัสจะได้รับการอัปเดตในอนาคตด้วยคุณสมบัติใหม่ ดังนั้นโปรดกลับมาตรวจสอบการอัปเดตเฟิร์มแวร์อีกครั้ง:-)
หากคุณยังใหม่ต่อโลกของ Arduino นี่คือขั้นตอนที่ฉันอยากจะแนะนำให้ทำ:
- ติดตั้งไดรเวอร์ USB สำหรับบอร์ดของคุณ (เช่น CH340)
- ติดตั้ง Arduino IDE
- ติดตั้งไลบรารีที่ใช้ในโครงการนี้
- ดาวน์โหลดจาก GitHub และอัปโหลดรหัสโครงการล่าสุดไปยังนาฬิกาโดยใช้สาย Micro USB (คุณสามารถใช้จากโทรศัพท์มือถือได้)
อัลกอริทึมการคาดการณ์มีดังต่อไปนี้:
Arduino Nano รับข้อมูลใหม่จากเซ็นเซอร์ BME280 ทุก 12 นาที รอบการวัดคือ 3 ชั่วโมง หลังจาก 3 ชั่วโมง ช่วงการตรวจสอบแรงดัน (ค่าสูงสุดและต่ำสุดระหว่าง 3 ชั่วโมง) จะเปลี่ยนไปตามค่าเฉลี่ยระหว่างช่วงปัจจุบันและค่าแรงดันปัจจุบัน ทุก ๆ ชั่วโมงทิศทางของการเปลี่ยนแปลงแรงดันด้วยค่าแรงดันปัจจุบันจะถูกบันทึกไว้ หน่วย kPa ใช้สำหรับการคำนวณการคาดการณ์
เนื่องจากข้อจำกัดด้านหน่วยความจำของ Nano อัลกอริธึมการคาดการณ์จึงต้องถูกทำให้ง่ายขึ้น แต่แม้จะมีการทำให้เข้าใจง่ายขึ้น แต่ก็สามารถคาดการณ์ปริมาณน้ำฝนได้ในอีก 12-24 ชั่วโมงข้างหน้า แม้ว่าการพยากรณ์จะมองโลกในแง่ร้ายมากกว่าก็ตาม ค่าเริ่มต้นคือ "สภาพอากาศที่มีเมฆมาก"
"Sunny Weather" - ค่าความดันปัจจุบันสูงกว่าค่าปกติ 7 คะแนน ความดันไม่ลดลงและความแตกต่างระหว่างค่าต่ำสุดและสูงสุดในช่วง 3 ชั่วโมงที่ผ่านมาไม่เกิน 2 คะแนน
ปริมาณน้ำฝนที่เป็นไปได้ "สภาพอากาศฝนตก" - ความดันปัจจุบันต่ำกว่าค่าปกติ 15 จุด และความแตกต่างระหว่างค่าต่ำสุดและสูงสุดมากกว่า 2 คะแนน หรือ ความดันลดลงและความแตกต่างระหว่างค่าปัจจุบันและค่าปกติคือ 3 - 30 คะแนน
เพื่อปรับปรุงคุณภาพของการคาดการณ์ ขอแนะนำให้เปลี่ยน "ระดับความสูง" ของคุณในไฟล์โค้ดหลัก คุณสามารถดูระดับความสูงได้ เช่น
ขั้นตอนที่ 12: วิดีโอทีละขั้นตอน
หากเป็นการยากที่จะทำตามที่ฉันทำข้างต้น นี่เป็นเวอร์ชันวิดีโอพร้อมขั้นตอนทั้งหมดที่แสดงไว้ด้วย
ขั้นตอนที่ 13: คำสุดท้าย
โดยรวมแล้ว ในมุมมองของผม ระดับความยากของโครงการนี้ไม่สูงนัก ใครๆ ก็ทำได้ หากไม่มีนาฬิกาเรือนเก่า คุณสามารถหานาฬิการาคาถูกได้ที่ตลาดนัดท้องถิ่น
ส่วนประกอบทั้งหมดมีราคาต่ำและมีอยู่ใน Sparkfun/AliExpress/eBay/Amazon
ฉันหวังว่าบทช่วยสอนนี้น่าสนใจสำหรับคุณ และจะขอบคุณมากหากคุณสนับสนุนการแข่งขัน Instructable in the Clock ครั้งแรกของฉัน
รองชนะเลิศการแข่งขันนาฬิกา
แนะนำ:
อะแดปเตอร์ Arduino Nano เป็น Arduino Uno: 6 ขั้นตอน (พร้อมรูปภาพ)
อะแดปเตอร์ Arduino Nano เป็น Arduino Uno: Arduino Nano เป็นสมาชิกที่ดี ขนาดเล็ก และราคาถูกของตระกูล Arduino มันขึ้นอยู่กับชิป Atmega328 สิ่งที่ทำให้มีประสิทธิภาพเท่ากับ Arduino Uno พี่ชายที่ใหญ่ที่สุดของเขา แต่สามารถรับเงินน้อยกว่า ในอีเบย์ตอนนี้เวอร์ชั่นภาษาจีนสามารถข
Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): 6 ขั้นตอน (พร้อมรูปภาพ)
Bolt - DIY Wireless Charging Night Clock (6 ขั้นตอน): การชาร์จแบบเหนี่ยวนำ (เรียกอีกอย่างว่าการชาร์จแบบไร้สายหรือการชาร์จแบบไร้สาย) เป็นการถ่ายโอนพลังงานแบบไร้สาย ใช้การเหนี่ยวนำแม่เหล็กไฟฟ้าเพื่อจ่ายกระแสไฟฟ้าให้กับอุปกรณ์พกพา แอปพลิเคชั่นที่พบบ่อยที่สุดคือ Qi Wireless Charging st
Arduino ที่ถูกที่สุด -- Arduino ที่เล็กที่สุด -- Arduino Pro Mini -- การเขียนโปรแกรม -- Arduino Neno: 6 ขั้นตอน (พร้อมรูปภาพ)
Arduino ที่ถูกที่สุด || Arduino ที่เล็กที่สุด || Arduino Pro Mini || การเขียนโปรแกรม || Arduino Neno:…………………………… โปรดสมัครสมาชิกช่อง YouTube ของฉันสำหรับวิดีโอเพิ่มเติม……. โปรเจ็กต์นี้เกี่ยวกับวิธีเชื่อมต่อ Arduino ที่เล็กที่สุดและถูกที่สุดเท่าที่เคยมีมา Arduino ที่เล็กที่สุดและถูกที่สุดคือ arduino pro mini คล้ายกับ Arduino
4 ขั้นตอน Digital Sequencer: 19 ขั้นตอน (พร้อมรูปภาพ)
4 ขั้นตอน Digital Sequencer: CPE 133, Cal Poly San Luis Obispo ผู้สร้างโปรเจ็กต์: Jayson Johnston และ Bjorn Nelson ในอุตสาหกรรมเพลงในปัจจุบัน ซึ่งเป็นหนึ่งใน “instruments” เป็นเครื่องสังเคราะห์เสียงดิจิตอล ดนตรีทุกประเภท ตั้งแต่ฮิปฮอป ป๊อป และอีฟ
ป้ายโฆษณาแบบพกพาราคาถูกเพียง 10 ขั้นตอน!!: 13 ขั้นตอน (พร้อมรูปภาพ)
ป้ายโฆษณาแบบพกพาราคาถูกเพียง 10 ขั้นตอน!!: ทำป้ายโฆษณาแบบพกพาราคาถูกด้วยตัวเอง ด้วยป้ายนี้ คุณสามารถแสดงข้อความหรือโลโก้ของคุณได้ทุกที่ทั่วทั้งเมือง คำแนะนำนี้เป็นการตอบสนองต่อ/ปรับปรุง/เปลี่ยนแปลงของ: https://www.instructables.com/id/Low-Cost-Illuminated-