สารบัญ:

นาฬิกา, จอ LCD, อินฟราเรดเพื่อตั้งค่า: 6 ขั้นตอน
นาฬิกา, จอ LCD, อินฟราเรดเพื่อตั้งค่า: 6 ขั้นตอน

วีดีโอ: นาฬิกา, จอ LCD, อินฟราเรดเพื่อตั้งค่า: 6 ขั้นตอน

วีดีโอ: นาฬิกา, จอ LCD, อินฟราเรดเพื่อตั้งค่า: 6 ขั้นตอน
วีดีโอ: รีวิว วิธีตั้งค่า 3D LED Clock (นาฬิกาดิจิตอล 3D Digital LED) บอกวันที่ อุณหภูมิ ปรับแสงอัตโนมัติ 2024, พฤศจิกายน
Anonim
นาฬิกา, จอ LCD, อินฟราเรดเพื่อตั้งค่า
นาฬิกา, จอ LCD, อินฟราเรดเพื่อตั้งค่า
นาฬิกา, จอ LCD, อินฟราเรดเพื่อตั้งค่า
นาฬิกา, จอ LCD, อินฟราเรดเพื่อตั้งค่า

สร้างนาฬิกาตามเวลาจริงที่คอยกระตุ้นเวลาภายในไม่กี่นาทีต่อปี โค้ดและส่วนประกอบสามารถนำไปใช้ใหม่ในโปรเจ็กต์อื่นๆ ได้อย่างง่ายดาย

โครงการนี้ต้องใช้สายไฟขั้นต่ำและไม่มีการบัดกรี ตัวจับเวลาเป็นนาฬิกาเรียลไทม์ DS3231 เวลาจะแสดงบนจอ LCD 1602 ราคาไม่แพง ทั้งสองโมดูลใช้การสื่อสารแบบ I2C I2C ใช้เพียง 2 สายต่อโมดูลเมื่อเชื่อมต่อกับ Arduino ฉันใช้ Arduino Nano เพราะมันพอดีกับเขียงหั่นขนม คำแนะนำต่อไปนี้จะใช้งานได้กับ Arduino Uno เนื่องจากมีหมายเลขพินเหมือนกับ Nano สำหรับโครงการนี้ อีกองค์ประกอบหนึ่งคือเครื่องรับอินฟราเรด ช่วยให้คุณใช้รีโมตคอนโทรลทั่วไป เช่น รีโมตทีวี เพื่อตั้งเวลาได้เหมือนกับที่คุณทำบนสมาร์ททีวีของเรา ตัวรับสัญญาณอินฟราเรดต้องการเพียงสายเดียวเพื่อเชื่อมต่อกับ Arduino

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

คำแนะนำนี้ต้องการให้คุณติดตั้ง Arduino IDE คุณต้องมีทักษะพื้นฐานในการดาวน์โหลดโปรแกรมร่าง Arduino จากลิงก์ในโครงการนี้ สร้างไดเร็กทอรีสำหรับโปรแกรม (ชื่อไดเร็กทอรีเหมือนกับชื่อโปรแกรม) ขั้นตอนต่อไปคือการโหลด ดู และแก้ไขโปรแกรมใน IDE จากนั้นอัปโหลดโปรแกรมผ่านสาย USB ไปยังบอร์ด Arduino ของคุณ

เสบียง

  • Nano V3 ATmega328P CH340G บอร์ดไมโครคอนโทรลเลอร์สำหรับ Arduino คุณสามารถใช้ Uno แทนได้
  • นาฬิกาเรียลไทม์ DS3231 และแบตเตอรี่ CR2032
  • 1602 LCD พร้อมโมดูล I2C
  • ตัวรับสัญญาณอินฟราเรดและรีโมทคอนโทรล ฉันใช้ชุดโมดูลรีโมตคอนโทรลไร้สาย IR ซึ่งมาพร้อมกับตัวรับสัญญาณอินฟราเรดและรีโมตคอนโทรลอินฟราเรด
  • เขียงหั่นขนม
  • สายไฟ
  • อะแดปเตอร์ติดผนัง 5 โวลต์

ฉันซื้อชิ้นส่วนบนอีเบย์ ส่วนใหญ่มาจากผู้จัดจำหน่ายในฮ่องกงหรือจีน ผู้จัดจำหน่ายในสหรัฐอเมริกาบางครั้งมีชิ้นส่วนที่เหมือนกันหรือคล้ายกันในราคาที่สมเหตุสมผลและจัดส่งได้เร็วกว่า ชิ้นส่วนของจีนใช้เวลา 3 ถึง 6 สัปดาห์ในการจัดส่ง ตัวแทนจำหน่ายที่ฉันเคยใช้ล้วนเชื่อถือได้

ค่าใช้จ่ายโดยประมาณ: Nano $3, DS3231 $1, LCD $3, ชุดอินฟราเรด $1, เขียงหั่นขนม $2, แพ็คเกจสายไฟ 40 เส้น $1, $1 สำหรับอะแดปเตอร์ติดผนัง 5 โวลต์ รวมประมาณ 11 เหรียญ หมายเหตุ ฉันซื้อนาโนและ LCD พร้อมหมุดเขียงหั่นขนมที่บัดกรีแล้ว เนื่องจากทักษะการบัดกรีของฉันไม่ดี สำหรับแบตเตอรี่นาฬิกา ฉันซื้อแบตเตอรี่ลิเธียม CR2032 จำนวน 5 ก้อนในราคาประมาณ 1.25 เหรียญ ฉันยังซื้อ DS3231 จำนวน 5 แพ็คเพราะฉันชอบชิ้นส่วนของเวลา โปรเจ็กต์นี้ใช้เขียงหั่นขนม 1 อัน ฉันซื้อแพ็คเกจเขียงหั่นขนม 3 ชิ้นราคาประมาณ $ 7; ดีกว่าซื้อบอร์ดแยก

ขั้นตอนที่ 1: เพิ่ม Arduino Nano ไปที่ Breadboard

เพิ่ม Arduino Nano ลงในเขียงหั่นขนม
เพิ่ม Arduino Nano ลงในเขียงหั่นขนม

เสียบ Arduino Nano เข้ากับ Breadboard หรือหากต้องการ คุณสามารถใช้ Arduino Uno สำหรับโครงการนี้ได้ พวกเขาทั้งสองใช้หมุดเดียวกันสำหรับโครงการนี้ เชื่อมต่อ Nano (หรือ Uno) กับคอมพิวเตอร์ของคุณผ่านสาย USB

เชื่อมต่อพลังงานและกราวด์จาก Arduino เข้ากับแถบพลังงานของเขียงหั่นขนม เชื่อมต่อขา Arduino 5+ กับแถบบวกของเขียงหั่นขนม เชื่อมต่อพิน Arduino GRN (กราวด์) กับแถบลบ (กราวด์) ของเขียงหั่นขนม สิ่งนี้จะถูกใช้โดยส่วนประกอบอื่น ๆ

ดาวน์โหลดและรันโปรแกรมทดสอบ Arduino พื้นฐาน: arduinoTest.ino เมื่อรันโปรแกรม ไฟ LED บนเครื่องจะติด 1 วินาที จากนั้นดับ 1 วินาที นอกจากนี้ยังมีการโพสต์ข้อความซึ่งสามารถดูได้ใน Arduino IDE Tools/Serial Monitor

+++ การติดตั้ง

+ เริ่มต้นพินดิจิตอล LED บนบอร์ดสำหรับเอาต์พุต ไฟ LED ปิดอยู่ ++ ไปที่ลูป + ตัวนับวง = 1 + ตัวนับวง = 2 + ตัวนับวง = 3 …

ในแบบฝึกหัด ให้เปลี่ยนการหน่วงเวลาบนไฟกะพริบ อัปโหลดโปรแกรมที่เปลี่ยนแปลง และยืนยันการเปลี่ยนแปลง

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

ขั้นตอนที่ 2: เพิ่มโมดูลนาฬิกา DS3231 และเชื่อมต่อกับ Arduino

เพิ่มโมดูลนาฬิกา DS3231 และเชื่อมต่อกับ Arduino
เพิ่มโมดูลนาฬิกา DS3231 และเชื่อมต่อกับ Arduino

เสียบโมดูลนาฬิกาเข้ากับเขียงหั่นขนม เชื่อมต่อหมุด GND ของโมดูลนาฬิกากับแถบกราวด์ของเขียงหั่นขนม เชื่อมต่อพิน VCC ของโมดูลนาฬิกากับแถบแท่งบวกของเขียงหั่นขนม เชื่อมต่อขาโมดูลนาฬิกา SDA (ข้อมูล) กับขา A4 ของ Arduino (ขาข้อมูล I2C) เชื่อมต่อขาโมดูลนาฬิกา SCL (นาฬิกา) กับขา A5 ของ Arduino (ขานาฬิกา I2C)

ใน Arduino IDE ให้ติดตั้งไลบรารีนาฬิกา DS3231 เลือกเครื่องมือ/จัดการไลบรารี กรองการค้นหาของคุณโดยพิมพ์ใน 'rtclib' เลือก RTClib โดย Adafruit (สำหรับการอ้างอิง ลิงก์ไลบรารี)

ดาวน์โหลดและรันโปรแกรมทดสอบพื้นฐาน: clockTest.ino เมื่อรันโปรแกรม ข้อความเวลานาฬิกาจะถูกโพสต์ซึ่งสามารถดูได้ใน Arduino IDE Tools/Serial Monitor

+++ การติดตั้ง

+ ชุดนาฬิกา ++ ไปที่ลูป ---------------------------------------- + วันที่ & เวลาปัจจุบัน: 2020/3/ 22 (วันอาทิตย์) 11:42:3 + วันที่ & เวลาปัจจุบัน: 2020/3/22 (วันอาทิตย์) 11:42:4 + วันที่ & เวลาปัจจุบัน: 2020/3/22 (วันอาทิตย์) 11:42:5 …

ในแบบฝึกหัด ให้ใช้ rtc.adjust() เพื่อตั้งเวลาและวันที่ของนาฬิกา อัปโหลดโปรแกรมที่เปลี่ยนแปลง และยืนยันการเปลี่ยนแปลง

rtc.adjust (วันที่เวลา (2020, 3, 19, 10, 59, 50)); // วันแรกของฤดูใบไม้ผลิปี 2020

ขั้นตอนที่ 3: เพิ่มโมดูลแสดงผล LCD 1602 และเชื่อมต่อกับ Arduino

เพิ่มโมดูลจอแสดงผล LCD 1602 และเชื่อมต่อกับ Arduino
เพิ่มโมดูลจอแสดงผล LCD 1602 และเชื่อมต่อกับ Arduino

เสียบโมดูล LCD เข้ากับเขียงหั่นขนม เชื่อมต่อหมุด GND ของโมดูลนาฬิกากับแถบกราวด์ของเขียงหั่นขนม เชื่อมต่อพิน VCC ของโมดูลนาฬิกากับแถบแท่งบวกของเขียงหั่นขนม เชื่อมต่อขาโมดูลนาฬิกา SDA (ข้อมูล) กับขา A4 ของ Arduino (ขาข้อมูล I2C) เชื่อมต่อขาโมดูลนาฬิกา SCL (นาฬิกา) กับขา A5 ของ Arduino (ขานาฬิกา I2C)

ใน Arduino IDE ให้ติดตั้งไลบรารี LCD 1602 เลือกเครื่องมือ/จัดการไลบรารี กรองการค้นหาของคุณโดยพิมพ์ใน 'LiquidCrystal' เลือก LiquidCrystal I2C โดย Frank de Barbander (สำหรับการอ้างอิง ลิงก์ไลบรารี)

ดาวน์โหลดและรันโปรแกรมทดสอบพื้นฐาน: lcd1602Test.ino เมื่อรันโปรแกรม ข้อความเวลานาฬิกาจะถูกโพสต์ซึ่งสามารถดูได้ใน Arduino IDE Tools/Serial Monitor

+++ การติดตั้ง

+ LCD พร้อมใช้งาน +++ ไปที่ลูป + ตัวนับ = 1 + ตัวนับ = 2 + ตัวนับ = 3 …

ในแบบฝึกหัด ให้เปลี่ยนข้อความที่แสดงบนหน้าจอ LCD อัปโหลดโปรแกรมที่เปลี่ยนแปลง และยืนยันการเปลี่ยนแปลง

ขั้นตอนที่ 4: เพิ่มตัวรับสัญญาณอินฟราเรดและเชื่อมต่อกับ Arduino

เพิ่มตัวรับสัญญาณอินฟราเรดและเชื่อมต่อกับ Arduino
เพิ่มตัวรับสัญญาณอินฟราเรดและเชื่อมต่อกับ Arduino

เสียบสายเคเบิลตัวเมียกับตัวผู้เข้ากับตัวรับสัญญาณอินฟราเรด (ปลายตัวเมีย) ต่อหมุดกราวด์ของโมดูลนาฬิกาเข้ากับแถบกราวด์ของเขียงหั่นขนม ต่อสายไฟของโมดูลนาฬิกาเข้ากับแถบบวกของเขียงหั่นขนม เชื่อมต่อขาออกของเครื่องรับอินฟราเรดกับขา Arduino A1

เชื่อมต่อตัวรับสัญญาณอินฟราเรด หมุดจากบนซ้ายไปขวา:

ซ้ายสุด (ข้าง X) - Nano pin A1 Center - 5V ขวา - กราวด์

A1 + - - การเชื่อมต่อแบบนาโนพิน

| | | - หมุดรับสัญญาณอินฟราเรด --------- |S | | | | --- | | | | | | --- | | | ---------

ใน Arduino IDE ให้ติดตั้งไลบรารีอินฟราเรด เลือกเครื่องมือ/จัดการไลบรารี กรองการค้นหาของคุณโดยพิมพ์ใน 'IRremote' เลือก IRremote โดย Shirriff (สำหรับการอ้างอิง ลิงก์ไลบรารี)

ดาวน์โหลดและรันโปรแกรมทดสอบพื้นฐาน: infraredReceiverTest.ino เมื่อเรียกใช้โปรแกรม ให้ชี้รีโมทคอนโทรลไปที่เครื่องรับ แล้วกดปุ่มต่างๆ เช่น ตัวเลขตั้งแต่ 0 ถึง 9 ข้อความอนุกรมจะถูกส่งออก (พิมพ์) ซึ่งสามารถดูได้ใน Arduino IDE Tools/Serial Monitor

+++ การติดตั้ง

+ เริ่มต้นเครื่องรับอินฟราเรด ++ ไปที่ลูป + ปุ่ม OK - สลับ + คีย์ > - ถัดไป + คีย์ < - ก่อนหน้า + คีย์ขึ้น + คีย์ลง + คีย์ 1: + คีย์ 2: + คีย์ 3: + คีย์ 4: + คีย์ 6: + คีย์ 7: + คีย์ 8: + คีย์ 9: + คีย์ 0: + คีย์ * (ย้อนกลับ) + คีย์ # (ออก)

ในการออกกำลังกาย ให้ใช้รีโมททีวีเพื่อดูค่าที่พิมพ์ออกมา จากนั้นคุณสามารถปรับเปลี่ยนโปรแกรมเพื่อใช้ค่าในคำสั่ง switch ของฟังก์ชัน infraredSwitch() ตัวอย่างเช่น กดปุ่ม "0" และรับค่าสำหรับรีโมตของคุณ เช่น "0xE0E08877" จากนั้น เพิ่มเคสลงในคำสั่ง switch ดังตัวอย่างโค้ดต่อไปนี้

กรณี 0xFF9867:

กรณี 0xE0E08877: Serial.print("+ คีย์ 0:"); Serial.println(""); หยุดพัก;

ขั้นตอนที่ 5: โหลดโปรแกรมนาฬิกา Arduino Sketch Program และทดสอบ

โหลดโปรแกรมนาฬิกา Arduino Sketch Program และทดสอบ
โหลดโปรแกรมนาฬิกา Arduino Sketch Program และทดสอบ
โหลดโปรแกรมนาฬิกา Arduino Sketch Program และทดสอบ
โหลดโปรแกรมนาฬิกา Arduino Sketch Program และทดสอบ
โหลดโปรแกรมนาฬิกา Arduino Sketch Program และทดสอบ
โหลดโปรแกรมนาฬิกา Arduino Sketch Program และทดสอบ

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

ดาวน์โหลดและเรียกใช้โปรแกรมนาฬิกาของโครงการ: clockLcdSet.ino

เมื่อโปรแกรมเริ่มทำงาน จะแสดงเวลาของ DS3231 บนหน้าจอ LCD 1602 ข้อความสามารถดูได้ใน Arduino IDE Tools/Serial Monitor

+++ การติดตั้ง

+ ชุดจอแอลซีดี + syncCountWithClock, theCounterHours=13 theCounterMinutes=12 theCounterSeconds=13 + ชุดนาฬิกาและซิงค์กับตัวแปรของโปรแกรม + เปิดใช้งานตัวรับสัญญาณอินฟราเรด ++ ไปที่ลูป + clockPulseMinute(), theCounterMinutes= 15 + clockPulseMinute(), theCounterMinutes= 16 + clockPulseMinute(), theCounterMinutes= 17 …

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

ขั้นตอนที่ 6: แหล่งจ่ายไฟภายนอก

แหล่งจ่ายไฟภายนอก
แหล่งจ่ายไฟภายนอก

เมื่อนาฬิกาของคุณได้รับการทดสอบและใช้งานได้แล้ว คุณสามารถถอดปลั๊กออกจากคอมพิวเตอร์และใช้แหล่งจ่ายไฟอิสระได้ เพื่อความง่าย ฉันใช้อะแดปเตอร์เสียบผนังขนาด 5 โวลต์ ซึ่งสามารถซื้อได้ในราคาประมาณ 1 ดอลลาร์ และใช้สาย USB อีก 1 ดอลลาร์ สายเคเบิลเชื่อมต่อ Arduino กับอะแดปเตอร์ติดผนัง +5V เนื่องจากสายไฟ Arduino และพินกราวด์เชื่อมต่อกับเขียงหั่นขนม ซึ่งจะจ่ายไฟให้กับส่วนประกอบอื่นๆ

เนื่องจากความเรียบง่ายและต้นทุนต่ำ ฉันจึงใช้ชุดค่าผสมเดียวกันนี้เพื่อขับเคลื่อนโครงการอื่นๆ

ฉันหวังว่าคุณจะประสบความสำเร็จและสนุกกับการสร้างนาฬิกา LCD ที่ควบคุมด้วยอินฟราเรด

แนะนำ: