สารบัญ:

นาฬิกาปลุก LED Matrix (พร้อมเครื่องเล่น MP3): 6 ขั้นตอน (พร้อมรูปภาพ)
นาฬิกาปลุก LED Matrix (พร้อมเครื่องเล่น MP3): 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: นาฬิกาปลุก LED Matrix (พร้อมเครื่องเล่น MP3): 6 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: นาฬิกาปลุก LED Matrix (พร้อมเครื่องเล่น MP3): 6 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: นาฬิกาดิจิตอล+ ลำโพง bluetooth เปลี่ยนเวลา + นาฬิกาปลุก 2024, กรกฎาคม
Anonim
นาฬิกาปลุก LED Matrix (พร้อมเครื่องเล่น MP3)
นาฬิกาปลุก LED Matrix (พร้อมเครื่องเล่น MP3)
นาฬิกาปลุก LED Matrix (พร้อมเครื่องเล่น MP3)
นาฬิกาปลุก LED Matrix (พร้อมเครื่องเล่น MP3)

นาฬิกาปลุกที่ใช้ Arduino นี้มีทุกสิ่งที่คุณคาดหวังจากการปลุกของคุณ - เป็นไปได้ที่จะปลุกคุณด้วยทุกเพลงที่คุณชอบ ปุ่มเลื่อนปลุกและควบคุมง่ายผ่านปุ่มสามปุ่ม มีสามบล็อกหลัก - เมทริกซ์ LED, โมดูล RTC และแผงป้องกัน MP3 พร้อมลำโพง

ขั้นตอนที่ 1: วัสดุและเครื่องมือ

  • LED Matrix
  • Arduino Uno
  • เครื่องเล่น MP3 ป้องกัน DHF Mini
  • โมดูล RTC DS1307
  • วิทยากรคนใดก็ได้
  • 3 ปุ่ม (พร้อมตัวต้านทานแบบดึงขึ้น/ดึงลง 10k)
  • สายไฟ
  • Plexi (หรือวัสดุใด ๆ ที่คุณต้องการให้กล่องของคุณ)
  • เครื่องพิมพ์ 3 มิติ (สำหรับพิมพ์กล่องเมทริกซ์)
  • ขั้วต่อแหล่งจ่ายไฟ DC
  • ขั้วต่อ USB B หญิง

ฉันเชื่อว่าคุณสามารถแก้ไขรายการวัสดุนี้ตามความเป็นไปได้ของคุณ (แน่นอนว่าคุณสามารถใช้ MP3 Shields ที่แตกต่างกัน โมดูล RTC ที่แตกต่างกัน และทุกอย่างน่าจะใช้ได้ดี:)

ขั้นตอนที่ 2: LED Matrix

LED Matrix
LED Matrix
LED Matrix
LED Matrix
LED Matrix
LED Matrix

เพื่อเป็นแรงบันดาลใจ ฉันใช้คำแนะนำนี้เพื่อสร้างเมทริกซ์ LED ฉันเพียงตัดสินใจที่จะไม่ใช้บอร์ดต้นแบบและออกแบบ PCB ของตัวเอง คุณสามารถค้นหาโครงการของฉันในเครื่องทำวงจรได้ที่นี่ คุณสามารถใช้ schematics และถ้าคุณต้องการส่งข้อมูล gerber (แทนที่จะสร้างจากโครงการตัวสร้างวงจรด้วยตัวเราเอง) แจ้งให้เราทราบฉันจะให้ข้อมูลแก่คุณ:) เคล็ดลับบางประการ - อย่างแรกเลย ฉันใช้ LED ราคาถูกมาก แต่หลังจากที่ฉันบัดกรีไดโอดทั้งหมดและรันโค้ด Arduino แล้ว กลับกลายเป็นว่าค่าความแปรปรวนของสี LED ไดโอดนั้นไม่เป็นที่ยอมรับ ดังนั้นฉันจึงต้องสั่งซื้ออันอื่นและทำเมทริกซ์ LED อื่น ฉันจะอธิบายหลักการทำงานในส่วน Arduino อย่างไรก็ตาม เพื่อดูว่าคุณทำงานได้ดีหรือไม่และจอแสดงผลทำงานได้ดีหรือไม่ เพียงแทนที่ค่าคงที่ในฟังก์ชัน DisplayChar ในลูป Arduino หลัก (เช่น แทน DisplayChar(1, letA) ให้ใช้ DisplayChar(0, 9) ซึ่งจะเขียนหมายเลข 9 เริ่มจากคอลัมน์ที่ 1) คุณไม่จำเป็นต้องแสดงความคิดเห็นอย่างอื่น

ขั้นตอนที่ 3: HW. อื่น ๆ

HW. อื่นๆ
HW. อื่นๆ
HW. อื่นๆ
HW. อื่นๆ
HW. อื่นๆ
HW. อื่นๆ

ส่วนประกอบ HW อื่น ๆ ในการสร้างนาฬิกาปลุก ได้แก่ โมดูล RTC, โล่ MP3, ปุ่มและ Arduino UNO

สำหรับโมดูล RTC ฉันใช้โมดูล DS1307 และไลบรารี MD_DS1307.h มันค่อนข้างง่าย ทุกอย่างทำงานได้อย่างราบรื่น แต่ฉันขอแนะนำให้ใช้โมดูล RTC ที่แม่นยำกว่านี้ เช่น 3231 หรืออื่น ๆ - ถ้าฉันปล่อยให้มันไม่มีพลังงานประมาณสองสามวัน มันก็เริ่มหลวมบางวินาที.

เครื่องเล่น MP3 shield DHF ขนาดเล็ก - ตัวป้องกัน MP3 นี้ใช้งานได้ง่ายมาก คุณสามารถอัปโหลด mp3 ลงในการ์ด SD เชื่อมต่อลำโพงที่คุณพบ จากนั้นจึงสั่งงานได้สองวิธี ไม่ว่าจะผ่านการสื่อสารแบบอนุกรม หรือโดยพิน I/O พูดตามตรงจากเหตุผลบางอย่างที่ฉันไม่ประสบความสำเร็จในการสื่อสารแบบอนุกรม (มันไม่ทำงานร่วมกับการสื่อสาร SPI และ I2C ที่ใช้สำหรับส่วนประกอบอื่น ๆ) แต่ฉันก็โอเคที่จะใช้พิน IO (ฉันใช้ ADKEY1 ที่เชื่อมต่อกับ arduino Digital output เป็น ทริกเกอร์ให้เล่นเพลงและเสียบ USB+ เพื่อหยุดเพลง)

ดังที่คุณเห็นในภาพ ฉันใช้ปุ่มง่ายๆ สามปุ่มบนบอร์ดสร้างต้นแบบที่เชื่อมต่อกับอินพุตดิจิทัลของ Arduino พร้อมตัวต้านทาน 10kOhm แบบดึงลง

การเดินสายไฟสำหรับ Arduino นั้นสามารถเห็นได้ชัดเจนในรหัส Arduino:)

ขั้นตอนที่ 4: ชิ้นส่วนเครื่องจักรกล

ชิ้นส่วนเครื่องกล
ชิ้นส่วนเครื่องกล
ชิ้นส่วนเครื่องกล
ชิ้นส่วนเครื่องกล
ชิ้นส่วนเครื่องกล
ชิ้นส่วนเครื่องกล
ชิ้นส่วนเครื่องกล
ชิ้นส่วนเครื่องกล

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

กล่องถูกโม่บนเครื่อง CNC จาก milk plexi ขึ้นอยู่กับคุณว่าจะเลือกใช้วัสดุประเภทใด คำแนะนำเดียวเท่านั้น หากคุณจะใช้วัสดุที่คล้ายคลึงกันอย่างที่ฉันทำ ให้วางเลเยอร์ที่ซึมผ่านได้บางส่วนซึ่งอยู่บน LED โดยตรงเพื่อป้องกันไม่ให้มองเห็น LED เป็นแหล่งกำเนิดแสง. คุณจะเห็นว่าที่ผนังด้านข้างมีที่ว่างสำหรับขั้วต่อแหล่งจ่ายไฟ DC และ USB เพื่ออัปโหลดแนวคิดเกี่ยวกับโค้ดที่ดีขึ้น:) ฉันใช้กาวมาตรฐานสำหรับพลาสติกเพื่อติดชิ้นส่วนเพล็กซิเข้าด้วยกัน ในไฟล์แนบมีไฟล์ STL สำหรับทุกส่วน (ขอบคุณเพื่อน Peshi ที่ออกแบบกล่องสุดเจ๋งนี้:))

ขั้นตอนที่ 5: ส่วน Arduino

Arduino Part
Arduino Part

ในส่วนที่เกี่ยวข้องกับ Arduino ฉันแค่อยากจะอธิบายสั้น ๆ เกี่ยวกับอัลกอริธึมลูปหลักแล้วพูดสองสามคำเพื่อควบคุม Shift register ผ่านการตั้งค่า SPI และ Alarm

ในลูปหลัก คุณเพียงแค่ตรวจสอบว่ามีการกดปุ่มบางปุ่มหรือไม่ ตรวจสอบว่า RTC ส่งค่านาทีที่อัปเดตใหม่ให้คุณหรือไม่ และถึงเวลาที่จะเล่นเพลง Pink Floyd หรือไม่ และหากไม่ใช่ คุณเพียงแค่เปิดและปิดไฟ LED เป็นระยะ ตั้งค่าตัวเลข

การควบคุมเมทริกซ์ LED - เพื่อความเข้าใจที่ดีขึ้น เป็นการดีที่จะปฏิบัติตามคำสั่งสำหรับเมทริกซ์ LED ที่ฉันกล่าวถึงในตอนเริ่มต้น แต่เพียงสั้น ๆ - สิ่งสำคัญคือต้องเข้าใจว่าในการแสดงตัวเลขหรือตัวอักษรในเมทริกซ์นี้ คุณต้องเลือก LED จากชุดเป็นระยะ ต้องเปิดแถว จากนั้นเปิดไฟ LED ทั้งหมดจากแถวสักระยะ ในขั้นตอนต่อไป คุณจะต้องปิดแถวนี้และเตรียมแถวที่สองและแถวนี้ครั้งแล้วครั้งเล่า สิ่งนี้หมายความว่าอย่างไร - อย่าใช้การล่าช้าใด ๆ ! - มิฉะนั้นจะไม่แสดงตัวเลข แต่เพียงกะพริบ:)

ฉันใช้ค่อนข้างแตกต่างและฉันจะบอกว่าวิธีที่ง่ายกว่าในการควบคุม shift register (ขอบคุณเพื่อนของฉัน Krystof ที่เขียนฟังก์ชันที่ราบรื่นนี้) ดังนั้นขั้นตอนแรก (การเตรียมข้อมูลสำหรับ shift register เกิดขึ้นในฟังก์ชัน DisplayChar ซึ่งคุณเพียงแค่ค้นหาสัญลักษณ์ที่ต้องการจากอาร์เรย์ของค่าคงที่และเตรียมข้อมูลสำหรับ register และเมื่อเรียกใช้ฟังก์ชัน UpdateDisplay ข้อมูลจะเปลี่ยนไปเป็นเอาต์พุต (สำหรับข้อมูลเพิ่มเติม ดูหน้าจอจาก arduino IDE)

การตั้งค่าการเตือน มีสามปุ่ม ซ้าย กลาง และขวา เมื่อคุณกดสองครั้งที่ด้านขวาและตรงกลาง คุณจะเข้าสู่เมนูการเตือน ในเมนู Alarm มีฟังก์ชั่นดังต่อไปนี้ - ปุ่มซ้าย (ตั้งปลุกเป็นชั่วโมง) ปุ่มกลาง (ตั้งปลุกเป็นนาที) ปุ่มขวา กดค้าง (ยืนยันการปลุก) กดปุ่มกลางและขวาค้างไว้ (ลบนาฬิกาปลุกที่มีอยู่)

เมื่อตั้งนาฬิกาปลุก (คุณสามารถรับรู้สิ่งนี้ได้ด้วยความจริงที่ว่านาฬิกาปลุกเปิดเครื่องหมาย LED ที่ด้านล่างขวา) และนาฬิกาจะเริ่มเล่นเพลงโปรดตอนเช้าของคุณ:) มีฟังก์ชั่นต่อไปนี้ให้เลือก - ปุ่มซ้าย (เลื่อนปลุกอีก 5 นาที) ปุ่มกลาง (ยกเลิกการเตือน)

ขั้นตอนที่ 6: เสร็จสิ้นการปลุก

Image
Image
เสร็จสิ้นการปลุก
เสร็จสิ้นการปลุก

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

สำหรับอนาคต ฉันต้องการลองใช้วัสดุที่แตกต่างออกไป - ควรเป็นสีดำ:) และเพิ่มฟังก์ชันอื่นๆ เช่น แสดงวันที่ อาจเป็นอุณหภูมิ ฯลฯ:)

หวังว่าคุณจะสนุกกับการสร้างนาฬิกาปลุกของคุณเอง และรอคอยความคิดของคุณ:)

การประกวดนาฬิกา
การประกวดนาฬิกา
การประกวดนาฬิกา
การประกวดนาฬิกา

รางวัลรองชนะเลิศการประกวดนาฬิกา

แนะนำ: