สารบัญ:

Dreamday Box สำหรับคนพิเศษในชีวิตของคุณ: 11 ขั้นตอน (พร้อมรูปภาพ)
Dreamday Box สำหรับคนพิเศษในชีวิตของคุณ: 11 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Dreamday Box สำหรับคนพิเศษในชีวิตของคุณ: 11 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: Dreamday Box สำหรับคนพิเศษในชีวิตของคุณ: 11 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: บนร่องรอยอารยธรรมโบราณ? 🗿 ถ้าที่ผ่านมาเราเข้าใจผิดล่ะ? 2024, กรกฎาคม
Anonim
Dreamday Box สำหรับคนพิเศษในชีวิตของคุณ
Dreamday Box สำหรับคนพิเศษในชีวิตของคุณ
Dreamday Box สำหรับคนพิเศษในชีวิตของคุณ
Dreamday Box สำหรับคนพิเศษในชีวิตของคุณ
Dreamday Box สำหรับคนพิเศษในชีวิตของคุณ
Dreamday Box สำหรับคนพิเศษในชีวิตของคุณ

กล่องเล็ก ๆ นี้บอกจำนวนวันที่ฉันและฉันใช้ชีวิตร่วมกัน แน่นอน สำหรับคุณ วันที่อาจเป็นอะไรก็ได้ มันบอกวันที่คุณแต่งงานได้ ตั้งแต่วันที่คุณและคู่สมรสได้พบกัน วันที่คุณย้ายเข้ามาอยู่ด้วยกัน หรืออะไรก็ตามที่สำคัญกับคุณมาก

เมทริกซ์พิกเซลขนาด 8x8 สามารถแสดงสัญลักษณ์ใดๆ ได้ มันค่อนข้างง่ายในการแก้ไขโค้ดสำหรับรูปภาพที่คุณต้องการ ฉันไปหาหัวใจที่เปล่งประกายนี้เพื่อเป็นสัญลักษณ์ของความรักและความเสน่หาที่เรามอบให้ในชีวิตประจำวัน (ฉันก็อยากจะทำโปรเจ็กต์ให้เสร็จก่อนวันวาเลนไทน์เหมือนกัน แต่ SARS-CoV-2 นั้นล่าช้าไปเล็กน้อย)

พลังงานจัดส่งโดยเซลล์ LiIon 18650 แบบชาร์จซ้ำได้แบบ USB ซึ่งควรแสดง 7-segment และ 8x8-matrix อย่างต่อเนื่องประมาณ 24 ชั่วโมง แต่อย่าลืมว่าจะไม่เรืองแสงหากปิดกล่อง อายุการใช้งานแบตเตอรี่ที่สมจริงจะนานหลายปี นาฬิกาตามเวลาจริง (RTC) จะเก็บเวลาที่ใช้ในการคำนวณวันที่ผ่านไป มีแบตเตอรี่สำรองของตัวเอง (CR2032) ซึ่งใช้งานได้ประมาณ 8 ปี

ฐานเป็นแผงวงจรพิมพ์แบบกำหนดเอง ฉันมีมันผลิตโดย JLCPCB ไฟล์ Gerber สามารถพบได้ในที่เก็บ GitHub คุณสามารถอัปโหลดไปยังผู้ผลิต PCB ใดก็ได้ ซึ่งเป็นรูปแบบไฟล์สากล หรือแน่นอน คุณสามารถเขียนอีเมลถึงฉัน ฉันมีอะไหล่ที่ฉันยินดีส่งออก เพียงแต่สำหรับค่าขนส่ง

รวมถึงไฟล์ BOM (รายการวัสดุ) ซึ่งคุณจะพบชิ้นส่วนอิเล็กทรอนิกส์ทุกชิ้นที่จำเป็นสำหรับโครงการ

ค่าใช้จ่ายทั้งหมดที่ไม่มีกล่องไม้หรือภาพพิมพ์จะอยู่ที่ประมาณ 30 เหรียญ ขึ้นอยู่กับต้นทุนของ PCB

เสบียง

เครื่องมือ:

  • หัวแร้ง
  • Arduino ISP dongle (ดูคำแนะนำอื่น ๆ ของฉันเกี่ยวกับวิธีการสร้าง)
  • PC หรือ Mac เพื่อตั้งโปรแกรม
  • Custom PCB (รวม Gerber หรือถามฉันฉันมีอะไหล่)
  • ชิ้นส่วนอิเล็กทรอนิกส์ (ดูไฟล์ BOM)
  • กล่องบางประเภท (หรือทำเอง)

ขั้นตอนที่ 1: สั่งซื้อ PCB. ของคุณ

สั่งซื้อ PCB ของคุณ
สั่งซื้อ PCB ของคุณ

ไปที่ JLCPCB และอัปโหลด gerber.zip จากที่เก็บ GitHub คุณสามารถเลือกสี PCB ที่คุณต้องการได้เช่นกัน

คุณสามารถเขียนอีเมลถึงฉันได้ ฉันอาจมี PCB สำรองที่ฉันยินดีส่งให้คุณสำหรับค่าใช้จ่ายในการจัดส่ง

ขั้นตอนที่ 2: การสั่งซื้ออะไหล่

ไฟล์ BOM มีชิ้นส่วนอิเล็กทรอนิกส์ทั้งหมดที่คุณต้องใช้ในการเติม PCB

ฉันได้สั่งอะไหล่จาก LCSC และ digi-key แล้ว แต่สิ่งของส่วนใหญ่สามารถพบได้ในผู้จำหน่ายอุปกรณ์อิเล็กทรอนิกส์ทุกแห่ง หากคุณประสบปัญหาในการหาบางสิ่งบางอย่างหรือไม่แน่ใจว่าเป็นส่วนที่ถูกต้องหรือไม่ โปรดส่งอีเมลถึงฉัน

ขั้นตอนที่ 3: Minimal Assembly (สำหรับการเบิร์น Bootloader)

Minimal Assembly (สำหรับเบิร์น Bootloader)
Minimal Assembly (สำหรับเบิร์น Bootloader)

เพื่อให้เบิร์น Bootloader ได้สำเร็จ (อธิบายในขั้นตอนต่อไป) ไม่ควรบัดกรีบางส่วนกับ PCB ส่วนประกอบที่สำคัญคือ ATmega32u4 (ชัดเจน…) คริสตัลและตัวเก็บประจุโหลดสองตัว หัวหกพิน และตัวเก็บประจุสามตัวสำหรับ ATmega32u4

เป็นสิ่งสำคัญที่คุณไม่ต้องบัดกรีตัวต้านทาน/จัมเปอร์ 0Ohm บนการเชื่อมต่อแบบอนุกรม

ขั้นตอนที่ 4: การเบิร์น Bootloader

เบิร์น Bootloader
เบิร์น Bootloader

ก่อนที่คุณจะสามารถอัปโหลดโปรแกรมไปยัง ATmega32u4 ด้วย Arduino IDE ได้ จำเป็นต้องมี Bootloader ที่เบิร์นเข้าไป โดย Arduinos ทั่วไปได้ดำเนินการนี้ไปแล้ว แต่เนื่องจากเรากำลังทำงานกับชิปเปล่าที่นี่ เราจึงต้องทำเอง แต่อย่ากังวลไปเลย มันไม่ยากเลยจริงๆ

เชื่อมต่อ Arduino ISP ของคุณกับส่วนหัวหกพินบน PCB ตรวจสอบให้แน่ใจว่าขั้วถูกต้อง

หากคุณไม่มี Arduino ISP ให้ตรวจสอบคำแนะนำของฉัน หนึ่งสามารถสร้างได้ภายใน 10 นาที

ตรวจสอบการตั้งค่าต่อไปนี้ใน Arduino IDE:

  • เครื่องมือ -> บอร์ด: Arduino Leonardo
  • เครื่องมือ -> พอร์ต: [เลือก COM-Port ของโปรแกรมเมอร์]
  • เครื่องมือ -> โปรแกรมเมอร์: Arduino เป็น ISP

คุณสามารถค้นหา COM-Port ได้ใน Windows Device Manager

สุดท้าย คลิกที่เครื่องมือ -> เบิร์น Bootloader

ขั้นตอนที่ 5: การประกอบ PCB

การประกอบ PCB
การประกอบ PCB
การประกอบ PCB
การประกอบ PCB

หลังจากเบิร์น Bootloader สำเร็จแล้ว คุณสามารถวางชิ้นส่วนที่เหลือทั้งหมดบน PCB ได้ ฉันคิดว่ามันสะดวกที่จะเริ่มต้นด้วยชิ้นส่วนที่เล็กที่สุด เช่น ตัวต้านทานและตัวเก็บประจุ จากนั้นไอซี และสุดท้ายคือที่ใส่แบตเตอรี่เซลล์ จอแสดงผล 7 ส่วน และเมทริกซ์ขนาด 8x8 พิกเซล

บัดกรีส่วนหัวพิน 90° สองตัวที่ด้านหลังเพื่อซ่อนแบตเตอรี่และสายเคเบิลสวิตช์ ฉันใช้หัวต่อแบบ 3 พินสำหรับแบตเตอรี่ ซึ่งจะทำให้ไม่สามารถเชื่อมต่อแบบผิดๆ ในภายหลังได้

ขั้นตอนที่ 6: การติดตั้งไลบรารี

ในการอัปโหลดโปรแกรมที่ให้ไว้ในคำแนะนำนี้ คุณต้องติดตั้งการพึ่งพาต่อไปนี้:

  • RTClib
  • DS3231

ดาวน์โหลดไฟล์.zip และนำเข้าผ่าน Arduino IDE ผ่าน:

ร่าง -> รวมไลบรารี -> เพิ่ม. ZIP Library

ถ้าด้วยเหตุผลบางอย่าง ลิงก์ดาวน์โหลดใช้งานไม่ได้ สำเนาของไลบรารีจะอยู่ในไดเร็กทอรี GitHub นี้ เพียงลากไปยังโฟลเดอร์ไลบรารี Arduino ของคุณ

คุณอาจต้องรีสตาร์ท Arduino IDE หลังจากนี้

ขั้นตอนที่ 7: ตั้งเวลาบน RTC ของคุณ (นาฬิกาตามเวลาจริง)

ตรวจสอบ GitHub ของฉันสำหรับเวอร์ชันล่าสุด/อัปเดตเกี่ยวกับโครงการ!

วงจรรวม DS3231 บน PCB ของคุณช่วยให้เวลาปัจจุบันที่จำเป็นในการคำนวณวันที่ผ่านไป แต่เพื่อให้บรรลุผลนั้น คุณต้องบอกก่อนว่าตอนนี้เวลา/วันที่อะไร ทำได้โดยการอัปโหลดแบบร่าง RTC_set.ino

ตรวจสอบให้แน่ใจว่าการตั้งค่าของคุณมีดังต่อไปนี้ก่อนที่จะอัปโหลด:

  • เครื่องมือ -> บอร์ด: Arduino Leonardo
  • เครื่องมือ -> พอร์ต: [เลือกพอร์ตของ Arduino Leonardo ไม่ใช่ ISP จากขั้นตอน Bootloader]
  • เครื่องมือ -> โปรแกรมเมอร์: AVR ISP หรือ AVRISP mkII

กดปุ่มอัปโหลดและรอจนกว่าจะเสร็จสิ้น

ขั้นตอนที่ 8: การเปลี่ยนแปลงรหัสโปรแกรม

ตรวจสอบ GitHub ของฉันสำหรับเวอร์ชันล่าสุด/อัปเดตเกี่ยวกับโครงการ!

ตอนนี้เราสามารถเริ่มแก้ไขโปรแกรมหลักได้แล้ว เปิดโครงการ main.ino ด้วย Arduino IDE โค้ดมีหลายบรรทัดที่คุณสามารถ/จำเป็นต้องเปลี่ยนค่าบางอย่างเพื่อให้เหมาะกับคุณ ฉันจะไม่พูดถึงหมายเลขบรรทัดใด ๆ เพราะอาจมีการเปลี่ยนแปลงในบางครั้ง แต่ฉันพยายามทำให้หาง่ายที่สุด

กำหนดวันพิเศษของคุณ:

คุณต้องรับการประทับเวลา Unix จากวันที่ของคุณ ไปที่เว็บไซต์นี้และป้อนวันที่ของคุณ: www.unixtimestamp.com

จะได้เลขทศนิยม 10 หลัก คัดลอกหมายเลขนั้นไปยังบรรทัดในโค้ดที่ระบุว่า " const long special_date = " และแทนที่ตัวเลขที่นั่น ตัวเลขนี้คือจำนวนวินาทีตั้งแต่วันที่ 1 มกราคม 1970 หรือที่เรียกว่าเวลา Unix

ตั้งค่ารูปสัญลักษณ์ 8x8 ของคุณ:

คุณสามารถเปลี่ยนรูปภาพบนเมทริกซ์ LED โดยเปลี่ยนค่าใน "const unsigned int matrix_heart_big[8]" ค่า 8 0x[XX] เหล่านั้นแสดงถึงเส้นแนวตั้งบนจอแสดงผลจากซ้ายไปขวา หากคุณไม่ทราบว่าค่าหมายถึงอะไร ให้ลอง 0x00, 0x01, 0x02, 0x04 และดูว่าเกิดอะไรขึ้น หรืออ่านค่าเป็นเลขฐานสิบหก (หรือเขียนอีเมลหาฉัน)

ขั้นตอนที่ 9: การอัปโหลดโปรแกรมของคุณ

เมื่อคุณได้ทำการเปลี่ยนแปลงทั้งหมดกับโค้ดที่คุณต้องการแล้ว ตรวจสอบให้แน่ใจว่าคุณได้ตั้งค่าต่อไปนี้ใน Arduino IDE ของคุณ:

  • เครื่องมือ -> บอร์ด: Arduino Leonardo
  • เครื่องมือ -> พอร์ต: [เลือกพอร์ตของ Arduino Leonardo ไม่ใช่ ISP จากขั้นตอน Bootloader]
  • เครื่องมือ -> โปรแกรมเมอร์: AVR ISP หรือ AVRISP mkII

กดปุ่มอัปโหลดและรอจนกว่าจะเสร็จสิ้น

ขั้นตอนที่ 10: เตรียมกล่อง

เตรียมกล่อง
เตรียมกล่อง

เพื่อรองรับ PCB ในกล่องและป้องกันไม่ให้ล้ม ฉันได้ตัดแถบไม้ขนาด 8x10 มม. บางส่วนแล้วติดกาวเข้าที่

ฉันแนะนำให้เคลือบไม้ด้วยแล็กเกอร์บางประเภทเพื่อให้มันยังคงสวยงามอยู่เป็นเวลานาน บางทีอาจมีคนยิงเลเซอร์บางอย่างขึ้นไปด้านบน ฉันกำลังคิดถึงเส้นขอบฟ้าของสถานที่ที่คุณเคยพบหรือชื่อของคุณ

ในการสั่งงานสวิตช์ที่จะตัดการเชื่อมต่อแบตเตอรี่เมื่อปิดกล่อง ฉันได้ติดไม้ชิ้นเล็กๆ ไว้ที่มุมของฝาแล้ว ไม่จำเป็นต้องลงรายละเอียดเกี่ยวกับกลไกนี้ มีวิธีการมากมายในการทำเช่นนี้ และฉันแน่ใจว่าคุณจะคิดวิธีที่ดีกว่านี้ได้

ฉันยังใช้แถบห่วง hock n 'เหนียวเพื่อยึดที่ใส่แบตเตอรี่ที่ด้านล่าง

ขั้นตอนที่ 11: การประกอบขั้นสุดท้าย

การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย
การประกอบขั้นสุดท้าย

สิ่งที่ต้องทำคือเสียบทุกอย่างเข้าด้วยกัน วาง PCB ลงในกล่อง และอาจตัดรูปถ่ายให้มีขนาดแล้ววางลงในฝา

ฉันหวังว่าคนสำคัญของคุณจะพบกับความสุขในความรอบคอบเล็กน้อยนี้

การประกวดหัวใจ
การประกวดหัวใจ
การประกวดหัวใจ
การประกวดหัวใจ

รองชนะเลิศอันดับการประกวดหัวใจ

แนะนำ: