สารบัญ:

รอบนาฬิกาบอกเวลาโลก: 5 ขั้นตอน (พร้อมรูปภาพ)
รอบนาฬิกาบอกเวลาโลก: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: รอบนาฬิกาบอกเวลาโลก: 5 ขั้นตอน (พร้อมรูปภาพ)

วีดีโอ: รอบนาฬิกาบอกเวลาโลก: 5 ขั้นตอน (พร้อมรูปภาพ)
วีดีโอ: AM PM นับยังไง? #เรื่องง่าย5Minutes | Point of View 2024, พฤศจิกายน
Anonim
รอบนาฬิกาบอกเวลาโลก
รอบนาฬิกาบอกเวลาโลก
รอบนาฬิกาบอกเวลาโลก
รอบนาฬิกาบอกเวลาโลก

ไม่ว่าโลกจะวิ่งเหยาะๆ หรือแค่อยากรู้ว่าเวลาไหนก่อนจะโทรไปช่วงดึก นาฬิกาโลก 5 โซนก็เหมาะกับบิล เนื่องจากฉันได้รับจอแสดงผล 7 หลัก TM1637 พิเศษในการจัดส่งครั้งล่าสุด ฉันจึงตัดสินใจรวบรวมนาฬิกาสำหรับทุกโอกาส ฉันตัดสินใจใช้ Arduino Uno สำหรับโปรเจ็กต์ ซึ่งให้ GPIO เพียงพอสำหรับ 5 นาฬิกา, ไฟแสดงเวลา 5 นาฬิกา (LED) และไฟเหนือศีรษะที่เปิดใช้งานด้วยเซ็นเซอร์สัมผัส พินเดียวที่ฉันไม่ได้ใช้คือ D1 ซึ่งใช้สำหรับซีเรียล Tx ซึ่งอาจนำไปสู่ปัญหาเท่านั้น ดังนั้นหากคุณสนใจอ่านต่อ!

ขั้นตอนที่ 1: อะไหล่

อะไหล่
อะไหล่
อะไหล่
อะไหล่
อะไหล่
อะไหล่

ในการสร้างนาฬิกาที่ฉันใช้: - Arduino Uno (แต่ Nano หรือ Mega ก็ใช้งานได้เช่นกัน)

- (5) TM1637 จอแสดงผล

- (5) ไฟ LED (เพื่อใช้เป็นไฟสัญญาณ AM/PM)

- (5) ตัวต้านทาน 220 โอห์ม

- RTC3231 นาฬิกา

- AdaFruit NeoPixel stick หรือไฟอื่นๆ

- เซ็นเซอร์สัมผัสเพื่อเปิดใช้งานแสง

- ตัวแปลงบั๊กเพื่อรองรับการดึงพลังงาน

- กรอบหรือเคส (ฉันพิมพ์เคส 3 มิติ แต่สร้างสรรค์)

- กำลังไฟ 12V พร้อมเต้ารับแบบถัง (เพื่อให้สามารถแยกฟีดได้)

- ตัวเลือก - Arduino Uno shield (เพื่อให้ง่ายขึ้นเล็กน้อย)

ขั้นตอนที่ 2: เริ่มต้น

เริ่มต้น
เริ่มต้น
เริ่มต้น
เริ่มต้น
เริ่มต้น
เริ่มต้น
เริ่มต้น
เริ่มต้น

ฉันยังใหม่กับ TM1637 ดังนั้นฉันจึงตั้งโปรแกรมไว้ก่อนเพื่อดูว่าฉันจะทำอะไรได้บ้าง ในตอนแรกมันไม่ได้ทำอะไรเลย แต่ชุมชน Arduino นั้นน่าทึ่งและในไม่ช้าก็ทำให้ฉันพร้อมทำงาน ใน TM1637 ของฉัน ฉันต้องตัดฝา 2 อันที่ด้านหลังเพื่อให้มันทำงาน จากนั้นก็แค่ลองผิดลองถูก ในท้ายที่สุด ฉันยังหาทวิภาคสำหรับนาฬิกาไม่ได้ - มัน "แทนที่" หลักชั่วโมงในตำแหน่งที่ 1 แต่ตอนนี้ฉันโอเคกับมันแล้ว

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

ขั้นตอนที่ 3: การเดินสายไฟ

การเดินสายไฟ
การเดินสายไฟ
การเดินสายไฟ
การเดินสายไฟ
การเดินสายไฟ
การเดินสายไฟ
การเดินสายไฟ
การเดินสายไฟ

ใช้ขั้วต่อไฟแบบบาร์เรลสำหรับอินพุต 12v แยกพลังงานและกราวด์เป็น 1) ตัวแปลงบั๊กและ 2) Vin บน Arduino

ใช้ตัวแปลงบั๊กเพื่อสร้างพลังงาน 5v และแถวกราวด์บนแผงป้องกันเพื่อเรียกใช้การเชื่อมต่อ ซึ่งจะทำให้ปัญหาด้านพลังงานมีเสถียรภาพ

TM1637 แต่ละตัวมีการเชื่อมต่อ 4 จุด (5v, Grd, Data และ Clock) โดย DIO และ CLK จะไปยังพิน GPIO แต่ละตัว (ฉันใช้ 2-11) และกำลังไปยังแถวของฉัน

สำหรับตัวบ่งชี้เมริเดียน (5 LEDs) บัดกรี (5) 220 Ohm res กับกราวด์และการเชื่อมต่อแอโนดกับ A0-A3 และ D12

RTC ต้องการ 5v และ Grd พร้อมกับ SDA และ SCL (A4 และ A5)

แท่งไฟจะต้องต่อสายดินสองครั้ง หนึ่งครั้งต่อแถว และอีกครั้งสำหรับ Uno เรียกใช้ 5v ไปที่แถวและข้อมูลไปยัง GPIO (D13) เซ็นเซอร์สัมผัสทำงานที่ 5v และ Grd และไปที่ GPIO D0

ขั้นตอนที่ 4: การเขียนโปรแกรม

การเขียนโปรแกรมค่อนข้างตรงไปตรงมา ฉันใช้ไลบรารี TM1637display.h สำหรับการแสดงผล โดยกำหนดชื่อที่ไม่ซ้ำกันให้กับแต่ละจอแสดงผล ซึ่งคาดเดาได้โดยใช้ชื่อเมือง เพียงเปลี่ยนพิน DIO และ CLK สำหรับแต่ละอัน

ตั้งรหัสตำแหน่งแรกของคุณด้วยความแตกต่างของเวลาและตั้งค่าขอบเขต AM/PM เพื่อให้ LED เปิด/ปิดตามชั่วโมง ใช้เพื่อทำซ้ำสำหรับแต่ละสถานที่

ฉันกำหนดชั่วโมงไปที่ตำแหน่ง 0, 2 หลัก ไม่มีศูนย์นำหน้า สำหรับนาที ฉันใช้ 'นาที' และหารด้วย 10 สำหรับหลัก 1 (ตำแหน่ง 2, 1 หลัก) และโมดูโล (%) สำหรับหลัก 2 (ตำแหน่ง 3, 1 หลัก)

การให้แสง NeoPixel ด้วยเซ็นเซอร์เหมือนกับปุ่ม/คำสั่งผสม LED อื่นๆ โดยใช้ไลบรารี Adafruit_NeoPixel

ง่าย.

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

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

ประดิษฐ์เคสที่เหมาะสมกับจอภาพและมีพื้นที่ด้านหลังบอร์ด แหล่งจ่ายไฟ และตัวแปลงบั๊ก ใส่ ต่อสายไฟ เปิดเครื่องก็พร้อม โอเค อาจมีมากกว่านี้ แต่สิ่งเหล่านี้เป็นพื้นฐานโดยไม่คำนึงถึงการออกแบบ

สนุกและมีความสุขในการซ่อม!

แนะนำ: