กลับไปหน้ารวมไฟล์
homemade-iv-22-vfd-clock-2102ba.md

ชื่อโปรเจกต์: นาฬิกา VFD IV-22 ทำเอง!

หลักการเบื้องต้น:

วิดีโอสั้นๆ แสดงนาฬิกา

หลายท่านคงทราบดีว่าเรื่องราวเหล่านี้เป็นอย่างไร: คุณเริ่มต้นด้วยการทำนาฬิกา nixie แล้วก็จบลงด้วยชั้นวางที่เต็มไปด้วยนาฬิกาหลอดสไตล์โซเวียต! นั่นคือสิ่งที่เกิดขึ้นกับผมเช่นกัน: ขณะที่ค้นคว้าเกี่ยวกับหลอด nixie ผมก็ได้พบกับ VFD ซึ่งเป็นเทคโนโลยีจอแสดงผลที่เข้ามาแทนที่ nixie ในตอนนั้น ผมรู้เลยว่าโปรเจกต์ต่อไปของผมจะเป็นอะไร แตกต่างจาก nixie ตรงที่ ผมโตพอที่จะจำได้ว่าจอแสดงผลสีฟ้าเขียวสดใสแบบแบ่งส่วนนี้มีอยู่ทุกหนแห่ง ตั้งแต่ในรถยนต์ไปจนถึงระบบเสียง Hi-Fi ในสมัยที่ผมยังเป็นเด็ก นอกจากความรู้สึกคิดถึงแล้ว ความรู้สึกย้อนยุคแต่ก็ล้ำยุคที่ขัดแย้งกันนี้ดึงดูดใจผมมาก ดังนั้นมันต้องเป็น VFD เท่านั้น!

ในฐานะมือสมัครเล่นด้านอิเล็กทรอนิกส์และเรียนรู้ด้วยตัวเองทั้งหมด ผมพยายามทำให้ทุกโปรเจกต์ใหม่เป็นก้าวที่ไปข้างหน้าจากโปรเจกต์ก่อนหน้านี้ นาฬิกา nixie ของผมทำบน perfboard โดยใช้ Arduino Mega และพาวเวอร์ซัพพลายสำเร็จรูป (หากคุณสนใจที่จะลองดู นี่คือลิงก์: https://create.arduino.cc/projecthub/deathorion/diy-nixie-clock-on-perfboard-7c47d1?ref=search&ref_id=perfboard%20nixie%20clock&offset=0 )

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

ผมเลือกหลอด VFD IV-22 เพราะครั้งนี้ผมต้องการใช้ form factor ที่แตกต่างจากหลอด nixie IN-14 ที่ผมใช้ในนาฬิกาเครื่องก่อน หากคุณสนใจ คุณสามารถหาหลอด nixie ที่มี form factor เหมือน IV-22 ได้ ซึ่งมีชื่อเรียกว่า IN-12 แน่นอนว่าไม่สามารถใช้แทนกันได้เพราะทำงานต่างกันโดยสิ้นเชิง แต่หลอดมีรูปร่างและขนาดใกล้เคียงกัน หลอดประเภทเหล่านี้ทั้งหมดไม่ได้ผลิตแล้ว แต่ยังคงหาซื้อได้ทางออนไลน์ (ส่วนใหญ่คือ ebay) ไม่ว่าจะเป็นแบบมือสองหรือแบบที่ยังไม่เคยใช้งานจากสต็อกเก่า ซึ่งมักเรียกว่า NOS (New-Old Stock)

การออกแบบ:

ข้อควรพิจารณาหลักบางประการเป็นแรงผลักดันในการตัดสินใจด้านการออกแบบหลายๆ อย่าง:

  • ผมต้องการให้ส่วนประกอบเป็นแบบ through hole เพื่อที่ผมจะได้บัดกรีเองได้อย่างสะดวกสบาย ซึ่งไม่ใช่เรื่องง่ายเลยในปัจจุบัน เนื่องจากชิปส่วนใหญ่ผลิตมาในแพ็คเกจแบบ surface mount มีหลายครั้งที่ผมพบชิปที่เหมาะกับงาน แต่มาในแพ็คเกจที่ผมรู้ว่าบัดกรีเองได้ยากมาก ผมจึงข้ามไป มีส่วนประกอบสองอย่างที่ผมหาแบบผ่านรู (through hole) ที่เทียบเท่ากันไม่ได้ เลยต้องใช้แบบ surface mount โชคดีที่ทั้งสองมีขาไม่กี่ขา
  • ผมต้องการให้มันมีราคาค่อนข้างถูกในการสร้าง เพราะผมจะทำหลายชิ้น ไม่ใช่แค่ชิ้นเดียว เนื่องจากหลอดเป็นส่วนประกอบที่แพงที่สุดของนาฬิกา ผมจึงตัดสินใจใช้เพียงสี่หลอดและตัดการแสดงผล "วินาที" ออกไป
  • เพื่อลดต้นทุนและขนาด ผมจำเป็นต้องใช้ VFD driver chip เพียงตัวเดียว ดังนั้นผมจึงต้องใช้การ multiplex หลอดต่างๆ การ multiplex เป็นเทคนิคในการส่งสัญญาณไปยังหลอดหลายหลอดที่ใช้การเชื่อมต่อสัญญาณร่วมกัน เคล็ดลับคือหลอดจะถูกสลับเปิดและปิดเพื่อแสดงตัวเลขที่ถูกต้อง และการสลับนั้นรวดเร็วมากจนตาของมนุษย์สังเกตไม่เห็น ในกรณีของผม หลอดที่ 1 และ 2 ใช้การเชื่อมต่อสัญญาณร่วมกัน เช่นเดียวกับหลอดที่ 3 และ 4 ดังนั้น เมื่อหลอดที่ 1 แสดงตัวเลขเฉพาะ หลอดที่ 2 จะปิด และในทางกลับกัน — คุณคงเข้าใจแล้ว
  • เนื่องจากโปรเจกต์ก่อนหน้านี้ทั้งหมดของผม (ทั้งสามโปรเจกต์...) สร้างขึ้นโดยใช้ Arduino ผมจึงต้องการโปรแกรมโปรเจกต์นี้โดยใช้ Arduino IDE ซึ่งผมคุ้นเคยอยู่แล้ว ดังนั้นจึงตัดสินใจใช้ microcontroller ของ Arduino UNO อันโด่งดัง นั่นคือ ATMEGA328P ด้วยวิธีนี้ ในแง่ของซอฟต์แวร์ก็จะเหมือนกับการโปรแกรม Arduino UNO
  • เมื่อ firmware เสร็จสมบูรณ์แล้ว ก็ไม่จำเป็นต้องอัปโหลดโค้ดไปยัง microcontroller เป็นประจำ ผมจึงตัดสินใจข้ามส่วนของ UART ที่ปกติมีในฮาร์ดแวร์ Arduino ทั่วไป และมีเพียง header สำหรับเชื่อมต่อบอร์ด FTDI เพื่อสื่อสารผ่าน Arduino IDE เท่านั้น

แล้วจะอัปโหลดโค้ดได้อย่างไร คุณอาจสงสัย? จริงๆ แล้วมันง่ายมาก: คุณเชื่อมต่อบอร์ด FTDI เข้ากับพอร์ต USB ของคอมพิวเตอร์ และเชื่อมต่อขา RXD, TXD, DTR และ GND ของ FTDI เข้ากับขาที่เกี่ยวข้องของนาฬิกา ซึ่งจะต้องเปิดเครื่องอยู่ ใน Arduino IDE ให้เลือก Tools-> Board:-> "Ardruino Uno" เขียนโค้ดของคุณเหมือนที่คุณเขียนสำหรับ Arduino Uno แล้วกดอัปโหลด เพียงจำไว้ว่าเพื่อให้การทำงานนี้ได้ microcontroller ATMEGA328p จะต้องถูกโหลดด้วย Arduino Uno bootloader คุณสามารถทำได้ด้วยตัวเอง(มีคู่มือมากมายทางออนไลน์) หรือคุณสามารถซื้อชิปที่โหลด bootloader มาแล้วได้

คุณสมบัติ:

นาฬิกามีคุณสมบัติดังต่อไปนี้:

  • แน่นอนว่ามีการแสดงเวลา ทั้งในรูปแบบ 24 ชั่วโมงและ 12 ชั่วโมง พร้อมจุดแบ่งเวลาที่กะพริบและตัวบ่งชี้ am/pm
  • การรักษาเวลาที่แม่นยำและแบตเตอรี่เพื่อรักษาเวลาเมื่อปิดเครื่อง
  • แสดงอุณหภูมิและความชื้นในห้อง
  • ไฟแบ็คไลท์ RGB LED บนหลอด พร้อมเอฟเฟกต์สีที่แตกต่างกันห้าแบบ
  • เซ็นเซอร์วัดแสงและการหรี่ไฟอัตโนมัติของหลอดและ LED ขึ้นอยู่กับแสงในห้อง
  • ปุ่มสี่ปุ่มที่สามารถควบคุมสิ่งต่อไปนี้ได้:
  • - ตั้งเวลา
  • - สลับโหมด (12 ชั่วโมง, 24 ชั่วโมง, แสดงอุณหภูมิและความชื้นเป็นช่วงๆ, แสดงอุณหภูมิและความชื้นเท่านั้น)
  • - วนผ่านเอฟเฟกต์สีของ LED
  • - เปิดและปิด LED
  • ใช้พลังงานน้อยกว่า 500mAmps จึงสามารถจ่ายไฟได้แม้กระทั่งจากพอร์ต USB ของคอมพิวเตอร์
  • ระบบป้องกันแรงดันไฟฟ้าเกิน (Overvoltage protection)
  • ระบบป้องกันกระแสไฟฟ้าเกิน (Overcurrent protection)
  • ระบบป้องกัน ESD (Electrostatic discharge)
  • ง่ายต่อการเข้าถึงเพื่อซ่อมแซม

ผมยังวางแผนที่จะนำคุณสมบัติดังต่อไปนี้ไปใช้ใน firmware ด้วย:

  • Routine t

ข้อมูล Frontmatter ดั้งเดิม

title: "Homemade IV-22 VFD Clock!"
description: "Glowing retro tubes made in the Soviet Union? 80's electro-style? Sign me up! (or sign us up comrade?)"
author: "deathorion"
category: ""
tags:
  - "vintage"
  - "clock"
  - "vfd"
views: 1035
likes: 1
price: 2450
difficulty: "Intermediate"
components:
  - "1x DHT11 Temperature & Humidity Sensor (4 pins)"
  - "1x ATMEGA328P-PU"
  - "1x DS3231MZ+"
  - "1x HV5812P-G"
tools: []
apps:
  - "1x Arduino IDE"
  - "1x EasyEDA"
downloadableFiles:
  - "https://projects.arduinocontent.cc/f95a31f4-0a3d-451e-b60e-f0c7bbbb4e8c.ino"
  - "https://projects.arduinocontent.cc/f95a31f4-0a3d-451e-b60e-f0c7bbbb4e8c.ino"
documentationLinks: []
passwordHash: "22a893cfb80ef875e70ca1d1f0a3a74ee967a098b5d64cb76d6e319d02d9d421"
encryptedPayload: "U2FsdGVkX1+TP8sBTwqu620IIPKN+QZwS5iE5APNJDZqMqLmTWwS6UAiYFy29F0/KegPfjZfXb748OuQRcyo1mpUBvyi3c4+Q3tKpOdvslM="
seoDescription: "Build a homemade IV-22 VFD Clock with Soviet retro tubes and 80's electro-style. A classic Arduino project for vintage tech lovers."
videoLinks:
  - "https://www.youtube.com/embed/O6aGIQlonTk"
heroImage: "https://cdn.jsdelivr.net/gh/bigboxthailand/arduino-assets@main/images/projects/homemade-iv-22-vfd-clock-2102ba_cover.jpg"
lang: "th"