İçindekiler:
- Adım 1: Saat Nasıl Okunur
- Adım 2: Araçlar ve Malzemeler
- 3. Adım: Şablonları Birleştirin
- Adım 4: Kaba Kesim Daireleri
- Adım 5: Boyuta Göre Kes
- Adım 6: Şablonu Uygulayın
- Adım 7: Şablonu Kes
- Adım 8: Zımparalama
- Adım 9: LED'ler için Matkap Tutma Yerleri
- Adım 10: Panoları Birleştirin
- Adım 11: LED'leri takın
- Adım 12: Segment 1'i ekleyin
- Adım 13: Boya
- Adım 14: Bölüm 2
- Adım 15: Bölüm 3
- Adım 16: Pürüzsüz Halka ve Boya
- Adım 17: Akrilik Kes
- Adım 18: Pencere Tonu Uygulayın
- Adım 19: Defuser'ı Takın
- Adım 20: Yalıtımı Uygulayın
- Adım 21: Birleştirin
- Adım 22: Bağlantı Noktalarını Ekleyin
- Adım 23: Delme Gücü ve LDR Sensör Delikleri
- Adım 24: Elektronik Tutucuyu Kurun
- Adım 25: Arka Kapak
- Adım 26: Kod ve Dosyalar
- Adım 27: Keyfini çıkarın
Video: Şifreli Duvar Saati: 27 Adım (Resimli)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Zamanın geçişi kontrol edemeyeceğimiz bir şeydir. Uyuyorsak, uyanıksak, sıkılmışsak veya meşgulsek aynı oranda olur. Güncel olaylarla, zamanın geçeceğini hatırlamak önemlidir. Zamanın geçmesini beklerken, neden zamanın geçişini izlemeyi daha çekici hale getiren bir şey yapmıyoruz?
Bu saat, Almanya'nın Berlin kentinde bulunan Mengenlehreuhr'dan esinlenmiştir ve aynı şekilde okunabilmektedir. Tıpkı orijinalinde olduğu gibi, ışıklı, renkli alanlar aracılığıyla zamanı söyler.
52 'rakamlı' bölgeyi aydınlatan 96 LED'e sahiptir. Orijinalinden farklı olarak, yatay çubuk düzeni yerine saniye halkası içeren dairesel bir tasarıma sahiptir. Dış bant, orta nokta ile bağlantılı olarak saniyeleri, sonraki iki bant dakikaları, son iç bantlar ise saatleri gösterir.
Elinizde biraz hurda malzeme ve fazladan zaman varsa, neden bu zamanı gösterecek bir şey yapmak için kullanmıyorsunuz?
Tekrar yapacak olsam bu projede yapacağım birkaç değişiklik var. İlk önce çerçeveyi ve LED kartını siyah yerine beyaza boyardım. Bu, öndeki büyük mercekten daha fazla ışık yansıtacaktır. Ayrıca LED'leri takmak için sonuna kadar beklerdim. Kodu yazmama yardımcı olabilmesi için tahtanın daha erken bitmesine ihtiyacım vardı. Bu arada, önce onu nasıl okuyacağımızı öğrenelim!
Adım 1: Saat Nasıl Okunur
Saat, iç halkalardan dışa doğru okunur. Dört alanın iç halkası, her biri beş tam saati, ikinci halkanın yanı sıra, her biri bir tam saati gösteren ve saat değerini 24 saatlik biçimde gösteren dört alandan oluşur. Üçüncü halka, her biri beş tam dakikayı gösteren on bir alandan oluşur, sonraki halkada, her biri bir tam dakikayı işaretleyen dört alan daha vardır. Son olarak, 29 alandan oluşan dış halka, merkezdeki ışık tek (yandığında) veya çift sayılı (yanık olmadığında) saniyeleri belirtmek için yanıp sönerken çift saniyeleri belirtir.
Örneğin, yukarıdaki resimde beş saat rakamından 1'i, bir saat rakamından 3'ü, beş dakika rakamından 8'i, bir dakika rakamından 4'ü ve iki saniye rakamından 23'ü ve ortadaki ikinci rakam yanıyor.
1x5 + 3x1: 8x5 + 4x1: 23x2 + 1x1 = 08:44:47 = 08:44:47
Yukarıda gösterilen saat: 3x5 + 0x1: 3x5 + 2x1: 5x2 + 1x1 = 15:17:11 = 3:17:11 PM
Yukarıda gösterilen saat: 3x5 + 2x1: 3x5 + 3x1: 16x2 + 1x1 = 17:18:33 = 17:18:33 PM
Adım 2: Araçlar ve Malzemeler
Elektronik Malzemeler:
- Arduino Nano
- Gerçek Zamanlı Saat
- Adreslenebilir LED'ler
- Elektrik fişi
- Güç kablosu
- USB Güç Fişi
- Işık Bağımlı Direnç ve dengeli direnç (gece karartmasını istiyorsanız)
- Tel
Ağaç İşleme Malzemeleri:
- 3/4 inç Kontrplak
- İnce Kontrplak
- Hurda Ahşap (2x4 kullandım ama parke de işe yarar)
- Boya
- Akrilik 30 x 36 inç Levha (yerel ev geliştirme mağazasında bulunur)
- Pencere Tonu (yerel kaynak yapmayı deneyin. Hiçbiri yoksa, burada yeterince büyük bir sayfa bulabilirsiniz)
- Window Tint Uygulama Sıvısı (Püskürtme şişesinde bebek şampuanı ile karıştırılmış su kullandım)
- rüzgar gülü
- Kasap kağıdı
- Vidalar
- Sprey yapıştırıcı
- Zamk
- Yapıştırıcı
Aletler:
- Hükümdar
- Xacto Bıçağı
- Kaset
- Çift taraflı bant
- Pusula
- Daire Kesme Jig
- yapboz
- Bant testere
- Mil Zımpara
- avuç içi zımparası
- Disk Zımpara
- Yönlendirici Tablosu
- bız
- Matkap ve Matkap Uçları/Sürücüler
- Kelepçeler
- Havya
- Lehim
- Tel Sıyırıcılar
3. Adım: Şablonları Birleştirin
Büyük şablon için, Adobe Reader'daki poster ayarını kullanarak yazdırın. Her kağıdın kenar boşluklarını kesin ve birbirine bantlayın. Dikey, yatay ve çapraz çizgiler şablonun sıralanmasına yardımcı olacaktır. Sayfaların hepsinde, sırasız olduklarında düzenli kalmalarına yardımcı olmak için küçük sayılar bulunur.
Gerekli tüm şablonlar ve dosyalar Adım 26'da bulunur.
Adım 4: Kaba Kesim Daireleri
İki şablonu 3/4 inçlik bir kontrplak yaprağına yerleştirerek, bir pusula ile gerekenden biraz daha büyük daireler çizin. Bir yapboz kullanarak kaba şekli kesin.
Adım 5: Boyuta Göre Kes
Şerit testere üzerinde bir daire kesme aparatı kullanarak daireleri son boyuta kesin.
Adım 6: Şablonu Uygulayın
Sprey yapıştırıcı kullanarak her şablonu bir daireye uygulayın. Daire üzerinde ortalamak için şablonun ortasına bir çivi yerleştirin.
Adım 7: Şablonu Kes
Bir yapboz kullanarak, şablonun her bir penceresini kesin. Bir CNC'ye erişiminiz varsa, bu adım çok daha kolay olurdu! Bu işleme yardımcı olmak için her pencerede bir delik açtım. Kesmeye başladığınızda şablon çıkmaya başlayabilir. Bu olursa, küçük bant parçalarıyla yerine sabitleyebilirsiniz.
Adım 8: Zımparalama
Bir çubuğa, mil zımparasına ve avuç içi zımparasına uygulanan zımpara kağıdını kullanarak dekupaj testeresinin bıraktığı kaba kesimi zımparalayın ve düzeltin.
Adım 9: LED'ler için Matkap Tutma Yerleri
Her deliğin ortasını bir bız ile işaretleyin ve LED'ler için boşluk delikleri açın. Matkabı iş parçama dik tutmak için bir kılavuz ve arkadaki ahşabı dışarı üflememek için bir destek tahtası kullandım.
Adım 10: Panoları Birleştirin
Ön ve arka panoları değiştirin ve çerçevenin parçalarını LED panosunun arkasına yerleştirin. Çerçeveyi LED panosunun önüne geri getirin ve delikler açın ve parçaları birbirine vidalayın.
Daha fazla bilgi için resim notlarına bakın.
Adım 11: LED'leri takın
LED'leri LED kartının arkasından itin. Delikler, bir daireden diğerine geçmek dışında herhangi bir kabloyu kesmenize gerek kalmayacak kadar aralıklı olmalıdır.
Arkadan, LED'ler merkezden başlar ve ardından saat yönünün tersine ve ardından bir sonraki halkaya kadar çalışır.
Adım 12: Segment 1'i ekleyin
3/4 inç kontrplak üzerine iliştirilmiş "Bölüm 1" şablonundan 9 parça kesin (adım 26'da bulunur). Tutkal ve kelepçelerle LED kartına takın. Sabırsızsanız, yerine sabitlemek için çivi de kullanabilirsiniz.
Kuruduktan sonra kenarı bir disk zımpara ile zımparalayın.
Adım 13: Boya
Hem LED kartını hem de çerçeveyi püskürterek boyayın. Bunu tekrar yapıyor olsaydım, lensten daha fazla yansıtıcı olacağı için siyah yerine beyaz boya kullanmayı seçerdim.
Adım 14: Bölüm 2
2 3/8 inç kalınlığında (26. adımda bulunur) ahşaptan iliştirilmiş "Segment 2" şablonundan 9 parça kesin. Dükkanın çevresinden biraz hurda 2x4 kullandım. Segmentleri kuru olarak takın ve bir bant kelepçesiyle iyice oturduğundan emin olun. Her şey yolunda giderse, yapıştırıcının yapışmasını önlemek için dışını boya bandıyla kapatın ve bir sonraki adıma geçmeden önce en az bir saat kurumasını bekleyin.
Adım 15: Bölüm 3
3/8 inç kalınlığındaki hurda odundan iliştirilmiş "Segment 3" şablonundan 9 parça kesin (adım 26'da bulunur). 2. Segmentteki dikişler her Segment 3'ün ortasında olacak şekilde yapıştırın. Bu, halkayı güçlendirecektir.
Adım 16: Pürüzsüz Halka ve Boya
Büyük halkanın kesilmiş parçasından özel bir zımpara bloğu yaptım. Halkanın içini ve dışını zımparalayın ve yapıştırma işlemi sırasında oluşabilecek çatlakları doldurun.
Pürüzsüz hale geldikten sonra birkaç kat siyah boya ve vernik uygulayın.
Adım 17: Akrilik Kes
Akriliği 30 x 30 inç ölçülerinde bir kareye kesin ve merkezi işaretleyin. Akrilikleri çift taraflı bantla yapıştırın. Bir gömme trim freze ucu kullanarak fazla akriliği çıkarın
Adım 18: Pencere Tonu Uygulayın
Tozsuz bir ortamda, koruyucu filmi akrilikten çıkarın. Sprey uygulayın ve pencere tonundaki desteği çıkarın. Pencere tonunu yapışkan tarafı aşağı doğru uygulayın. Bir silecek veya kredi kartı kullanarak cam renginin altındaki tüm sıvıyı sıkın. Tüm kabarcıklar ve kırışıklıklar giderildikten sonra, keskin bir bıçak kullanarak fazla pencere tonunu düzeltin.
Adım 19: Defuser'ı Takın
Defansör görevi görmesi için büyük bir kasap kağıdı kullandım. Kağıdı düz bir yüzeye yayın. Çerçevenin yüzünü bir tutkal çubuğundan tutkalla örtün. Tutkal kurumadan saatin ön tarafını kağıda yatırın ve fazla kısmı kabaca kesin. Kuruduktan sonra, sifonu kesmek için keskin bir bıçak kullanın.
Adım 20: Yalıtımı Uygulayın
Güç ve veri hatlarını ayrı tutmak için elektrik bandı kullandım.
Adım 21: Birleştirin
Diğer koruyucu tabakayı akrilikten çıkarın. Akriliği, pencere tonlu tarafı yukarı bakacak şekilde halkanın içine yerleştirin. Saatin geri kalanını halkaya kaydırın. Halkadan LED kartına bir delik açılırken hafif basınç uygulamak için bir kelepçe kullanın. Bu, arkadan kabaca 1 1/8 inç olmalıdır. Bir LED'i delmemeye dikkat edin. Bir kafes başlı vidayı deliğe vidalayın. Saatin çevresinde toplam sekiz vida için tekrarlayın.
Adım 22: Bağlantı Noktalarını Ekleyin
Arka kapağın takılması için saatin arkasına tutkal noktaları. Bunlar 3/4 inç kalınlığında ve yaklaşık 2 inç uzunluğundadır.
Adım 23: Delme Gücü ve LDR Sensör Delikleri
Güç fişi için saatin altından bir güç deliği ve ışığa bağlı direnç (LDR) sensörü için üstte bir delik açın.
Adım 24: Elektronik Tutucuyu Kurun
RTC ve Arduino Nano için 3D baskılı tutucuyu takın. Tüm elektronik aksamları şemada gösterildiği gibi bağlayın.
Adım 25: Arka Kapak
Saatin dışından biraz daha küçük olan ince kontrplaktan bir arka kapak kesin. Ankraj noktalarına delikler açın. Sırtın ortasını bulun ve anahtar deliklerini kesmek için her iki yönde 8 inç ölçün (ABD'de saplamalar için merkezlerde standart 16). Ana deliği, kullanacağım vidaların başından biraz daha büyük açtım ve deliği bir yönde daha büyük eğeledim. Siyaha boyayın ve kapağı yerine takın.
Adım 26: Kod ve Dosyalar
Yine, burada kullanılan Arduino kitaplıklarının çoğunu kullanma konusunda oldukça yeniyim, bu yüzden onları kullanmanın daha iyi yolları olduğundan eminim.
Proje büyütülürse veya küçültüldüğünde kaç adet led kullandığınıza göre kolayca güncellenebilecek bir kod yazdım. Tek yapmanız gereken, LED başlangıç ve bitiş konumlarını ve ayrıca her bir basamağın kaç LED'in parçası olduğunu güncellemektir.
Başlangıçta ve saatte oynayan birkaç animasyon ekledim. Gemide bulunan rasgele sayı üretecine göre sudo rasgeledirler.
Saati, renkler arasında geçiş yapacak veya birinde sabit kalacak şekilde ayarlayabilirsiniz. Girişte gösterildiği gibi, okuma süresinin okunmasına yardımcı olması için gösterge basamağını bile vurgulayabilirsiniz.
Kodu istediğiniz gibi düzenlemekten ve değiştirmekten çekinmeyin.
#include "RTClib.h"
#include #define NUM_LEDS 96 #define DATA_PIN 3 #define LDR A0 RTC_DS1307 rtc; boolean timeChange = yanlış; boolean printTime = yanlış; // Çıktıyı konsolda görmek istiyorsanız true olarak ayarlayın. Hata ayıklama için yararlıdır. boolean redDown = true; boolean greenDown = yanlış; boolean blueDown = yanlış; boole döngüsü = yanlış; // Saat renklerinin boolean vurgulama = true; // 'Son rakamı' vurgulamak için true değerini ayarlayın. // Her bir zaman grubunun başlangıç ve bitiş konumları const int SECOND_1_LOCATION = 0; const int HOUR_2_START_LOCATION = 1; const int HOUR_2_END_LOCATION = 8; const int HOUR_1_START_LOCATION = 9; const int HOUR_1_END_LOCATION = 20; const int MINUTE_2_START_LOCATION = 21; const int MINUTE_2_END_LOCATION = 42; const int MINUTE_1_START_LOCATION = 43; const int MINUTE_1_END_LOCATION = 66; const int SECOND_2_START_LOCATION = 67; const int SECOND_2_END_LOCATION = 95; const int LEDS_PER_HOUR_1 = 3; const int LEDS_PER_HOUR_2 = 2; const int LEDS_PER_MINUTE_1 = 6; const int LEDS_PER_MINUTE_2 = 2; // Zamanı bölmek için kullanılan çarpanlar const int MULTIPLIER_FIVE = 5; const int MULTIPLIER_TWO = 2; const int START_UP_DELAY = 1; // Başlangıç animasyonunu hızlandırmak veya yavaşlatmak için bunu değiştirin const int CYCLE_SPEED = 1; // Renk değiştirme döngüsü için oranı buradan değiştirin (1'den büyük olmalıdır) // Değişkenleri bildirin int lastSecond = 0; int akımSaat = 0; int akımDakika = 0; int akımSaniye = 0; int saat1 = 0; int saat2 = 0; int dakika1 = 0; int dakika2 = 0; int saniye1 = 0; int saniye2 = 0; int cycleCount = 1; kayan nokta fadeValue = 255; şamandıra fadeCheck = 255; uint8_t parlak = 255; intAnimasyonların sayısı = 5; int rastgelelik = 0; // Renkleri Ayarla uint8_t red = 0; uint8_t yeşil = 0; uint8_t mavi = 255; uint8_t Highlight_red = 60; uint8_t vurgu_yeşil = 60; uint8_t Highlight_blue = 255; // Led dizisini tanımlayın CRGB ledleri[NUM_LEDS]; geçersiz kurulum() { Serial.begin(19200); FastLED.addLed'ler(led'ler, NUM_LEDS); LEDS.setParlaklık(parlak); FastLED.clear(); rtc.begin(); // Zamanı ayarlamak için aşağıdaki satırı kaldırın. // rtc.adjust(DateTime(2020, 2, 19, 23, 59, 50)); // rtc.adjust(DateTime(F(_DATE_), F(_TIME_))); // Başlangıç animasyonu canlandırması(rastgelelik); } void loop() { // DateTime saatini şimdi al = rtc.now(); currentHour = şimdi.saat(); akımDakika = şimdi.dakika(); currentSecond = şimdi.saniye(); timeChange = yanlış; // RTC olmadan zamanı manuel olarak ayarlamak için bunları kullanın. Hata ayıklamak için kullanışlıdır // currentHour = 5; // akımDakika = 30; // akımSaniye = 30; // (int i = SECOND_1_LOCATION; i <= SECOND_2_END_LOCATION; i++) için tüm bitleri sıfırlayın { led'ler = CRGB::Black; } // Saati Ayarla // Saati 1 saat ayarla1 = (currentHour % MULTIPLIER_FIVE) * LEDS_PER_HOUR_1; // Bu, (int i = HOUR_1_START_LOCATION; i 0)// && hour1 <12) { for (int i = (HOUR_1_START_LOCATION + saat1 - 1); i>= (HOUR_1_START_LOCATION + saat1 - LEDS_PER_HOUR_1); i--) { ledler = CRGB(vurgu_kırmızı, vurgu_yeşil, vurgu_mavi); } } // Saati 2 saat ayarla2 = (currentHour / MULTIPLIER_FIVE) * LEDS_PER_HOUR_2; // Bu, (int i = HOUR_2_START_LOCATION; i 0)// && saat2 <8) { for (int i = (HOUR_2_START_LOCATION + saat2 - 1); i>= (HOUR_2_START_LOCATION + saat2 - LEDS_PER_HOUR_2);i--) { led'ler = CRGB(vurgu_kırmızı, vurgu_yeşil, vurgu_mavi); } } // Dakika Ayarla // Dakika 1 dakika ayarla1 = (currentMinute % MULTIPLIER_FIVE) * LEDS_PER_MINUTE_1; // Bu, (int i = MINUTE_1_START_LOCATION; i 0)// && dakika1 <24) { for (int i = (MINUTE_1_START_LOCATION + dakika1 - 1); i>= (MINUTE_1_START_LOCATION + dakika1 - LEDS_PER_MINUTE_1);i--) { ledler = CRGB(vurgu_kırmızı, vurgu_yeşil, vurgu_mavi); } } // Dakika 2 dakikayı ayarla2 = (geçerliDakika / ÇARPAN_BEŞ) * LEDS_PER_MINUTE_2; // Bu, (int i = DAKİKA_2_START_LOCATION; i 0)// && dakika2 <22) { for (int i = (DAKİKA_2_START_LOCATION + dakika2 - 1); i>= (MINUTE_2_START_LOCATION + dakika2 - LEDS_PER_MINUTE_2);i--) { ledler = CRGB(vurgu_kırmızı, vurgu_yeşil, vurgu_mavi); } } // SecondSecond if (currentSecond != lastSecond) { timeChange = true; } // Saniyeyi ayarla 1 saniye1 = currentSecond % MULTIPLIER_TWO; if (ikinci1 == 1) { ledler[SECOND_1_LOCATION] = CRGB(kırmızı, yeşil, mavi); } // saniye 2 saniye ayarla2 = geçerliSaniye / MULTIPLIER_TWO; for (int i = SECOND_2_START_LOCATION; i 0)// && saniye2 <29) { for (int i = (SECOND_2_START_LOCATION + saniye2 - 1); i>= (SECOND_2_START_LOCATION + saniye2 - 1); i--) { ledler = CRGB(vurgu_kırmızı, vurgu_yeşil, vurgu_mavi); } } lastSecond = currentSecond; // Programın döngülerini sayın ve LED'lerin rengini CYCLE_SPEED döngüsü boyunca değiştirmek için setColor işlevini çağırın. if (cycleCount
Adım 27: Keyfini çıkarın
Sonuç olarak, bu saati izlemesi harika ve bir kez alıştığınızda, okuması nispeten kolay. Kendi saat projeni yaparsan, bana haber ver!
Önerilen:
LED Ambiyans Duvar Saati: 11 Adım (Resimli)
Ortam LED Duvar Saati: Son zamanlarda birçok insanın kesinlikle güzel görünen büyük LED matrisleri oluşturduğunu gördüm, ancak bunlar ya karmaşık kodlardan ya da pahalı parçalardan ya da her ikisinden oluşuyordu. Bu yüzden çok ucuz parçalardan oluşan kendi LED matrisimi oluşturmayı düşündüm ve çok
Büyüleyici Manyetik Duvar Saati: 24 Adım (Resimli)
Büyüleyici Manyetik Duvar Saati: Mekanik saatler beni her zaman büyülemiştir. Tüm iç dişlilerin, yayların ve eşapmanların birlikte çalışarak sürekli güvenilir bir saat elde etme şekli, sınırlı beceri setim için her zaman ulaşılmaz görünüyordu. Neyse ki modern elektronik
Renkli Duvar Saati: 7 Adım (Resimli)
Renkli Duvar Saati: Bu sefer size LED şeritler kullanarak çocuk tasarımı için renkli bir duvar analog saati sunuyorum. Saatin temelleri, zamanı göstermek için üç LED şerit ve farklı renkler kullanmaktır: Yuvarlak led şeritte, yeşil renk saatleri göstermek için kullanılır, th
TheSUN, Arduino Powered Tasarım Duvar Saati: 6 Adım (Resimli)
TheSUN, Arduino Powered Tasarım Duvar Saati: Tekrar merhaba Instructables-millet!:-PNakliye sorunları nedeniyle ABTW Projeme devam edemedim bu yüzden size en yeni eserimi daha göstermeye karar verdim.Sanırım çoğumuz, ben, şu güzel adreslenebilir LED Şeritler gibi (NEOP olarak da bilinir
Eski Sabit Disklerden Duvar Saati: 5 Adım (Resimli)
Eski Sabit Disklerden Duvar Saati: İşte eski bilgisayar Sabit Disklerinin çok orijinal görünümlü DUVAR SAATİNE nasıl dönüştürüleceğine dair Talimatlar