İçindekiler:
- Gereçler
- Adım 1: Parçaları 3B Yazdırma
- Adım 2: Arduino'yu Kurma
- Adım 3: Kod
- Adım 4: Corona Saatinin Montajı
- Adım 5: Corona Saatini Ayarlama
- Adım 6: Düşünceler ve Tasarım Yinelemeleri
Video: Corona Saati: 6 Adım (Resimlerle)
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Coronavirus gezegene yayılırken ve giderek daha fazla ülke virüsü yavaşlatmak için vatandaşlarını kendi evlerine hapsederken, çoğumuz günlerce yapacak bir şey bulamadan yaşıyoruz. Neyse ki Instructables yardım etmek için burada ve akılda birkaç fikirle Instructables Clock yarışması mükemmel bir geçiş zamanı gibi görünüyordu:)
Siz de Coronavirus hapsi nedeniyle evde can sıkıntısı çekiyorsanız, korkmayın Corona Saati sizin için burada, garantili 2 günlük yapım süresi ve yeni Corona Saatinizle sonsuz saatlerce izleme süresi uçuyor!
Bu nedenle, saatin arkasındaki fikir, mıknatıslarla yönlendirilen eller yerine saatin yüz plakasında çelik bilyelere sahip olmaktı, böylece toplar sanki sihirli bir şekilde Saatin etrafında hareket ediyorlardı. Dıştaki top dakikaları, içteki top ise saatleri temsil eder.
Tüm CAD dosyalarını Autodesk Fusion 360 kullanarak tasarladım.
Her şey bir Arduino kullanılarak programlanmıştır.
Umarım bu öğreticiyi beğenirsiniz ve belki siz de boş zamanlarınızda mükemmel bir Baskı/Yapım mücadelesi olarak görürsünüz.
Lafı fazla uzatmadan İnşaata geçelim!!!
Gereçler
ELEKTRONİK:
- 2x TowerPro SG90 Servolar (Buraya Bağlantı)
- 1x Arduino Nano (Buraya Bağlantı)
- 1x Arduino Nano Kalkanı (Buraya Bağlantı)
- 1x Mini USB kablosu (buraya bağlantı)
- 1x 5V USB telefon şarj cihazı (Link Here)
- 1x Düğme Modülleri (Buraya Bağlantı) !!!Bununla aynı modeli satın aldığınızdan emin olun!!!
- Dişi-dişi atlama telleri paketi (Link Here)
- 10 ila 15 mm çapında 2 adet Çelik bilye
- 2x 15mm çap x 3 mm genişlik Neodimyum mıknatıslar (Link Here) Benim gibi kırarsanız 2 adetten fazla alırdım:(
PLASTİK:
Parçalar PLA veya PETG veya ABS olarak basılabilir.
En iyi sonuçları elde etmek için 2 renkli filamente ihtiyacınız olacak.
Lütfen her birinden 500 gr'lık bir makaranın 1 Saat yazdırmak için fazlasıyla yeterli olduğunu unutmayın.
3 BOYUTLU YAZICI:
Gerekli minimum yapı platformu: L130mm x G130mm x Y75mm
Herhangi bir 3d yazıcı yapacaktır. Parçaları 200$'ın altında düşük maliyetli bir 3D yazıcı olan Creality Ender 3'e bizzat bastım. Baskılar mükemmel çıktı.
Aletler:
1x Küçük yıldız tornavida tek ihtiyacınız olan:)
Adım 1: Parçaları 3B Yazdırma
Tüm Parçalar Pinshape'den indirilebilir (Link Here)
Baskı sırasında herhangi bir destek malzemesi, raft veya kenarlık gerektirmeden tüm saat parçalarını 3D olarak basılacak şekilde titizlikle tasarladım.
Tüm parçalar Creality Ender 3'te test baskısı yapıldı
- Baskı süresi: Yaklaşık 20 Saat
- Malzeme: PETG
- Katman Yüksekliği: 0.3mm
- Dolgu: %15
- Meme çapı: 0.4mm
Saatin parça listesi aşağıdaki gibidir:
Beyaz:
- 1x Baz
- 1x Kapak
- 1x Servo Tutucu
- 1x Dişli
- 1x Servo Rafı
- 1x İç daire
- 1x Dış daire
- 1x Kol Uzatma
- 4x Pim
- 2x Düğme Tutucu
- 2x Ayak klipleri
Kırmızı:
- 2x Ayak
- 1x Plaka
Rötuş:
Çok şanslı değilseniz veya çok pahalı bir yazıcınız yoksa, bazı parçaların döndüğü ve birbiri arasında kaydığı yerlerde zımparalanması gerekecektir.
Adım 2: Arduino'yu Kurma
Corona Clock, çalışması için Arduino C++ programlamasını kullanır. Programları saate yüklemek için Arduino IDE kullanacağız.
Arduino IDE'yi bilgisayarınıza kurun
Arduino IDE (Buraya Bağlantı)
Kodun Arduino IDE'de çalıştığından emin olmak için aşağıdaki adımları izleyin.
- İstediğiniz Arduino Kodunu aşağıdan indirin (Corona Clock.ino)
- Arduino IDE'de açın
- Araçlar Seçin:
- Yönetim Kurulu Seçin:
- Arduino Nano'yu seçin
- Araçlar Seçin:
- İşlemci Seçin:
- ATmega328p'yi seçin (eski önyükleyici)
- Arduino IDE'nin sol üst köşesindeki Doğrula düğmesine (Tick düğmesi) tıklayın
Her şey yolunda giderse, en altta Derleme tamamlandı yazan bir mesaj almalısınız. Ve işte bu kadar, şimdi 2. Adımı tamamladınız !!!
Adım 3: Kod
İlgilenenler için koda bir göz atın, muhtemelen her servo hassasiyeti değiştikçe servo kol hareketlerini mükemmel bir şekilde kalibre etmek için ince ayar yapmanız gerekecektir.
#Dahil etmek
Servo myservoPUSHER;
Servo myservoSLIDER;
const int düğmeDakika = 4;
int buttonStateMinutes = 0;
int FiveMinuteCounter = 0;
int OneHourCounter = 0;
imzasız uzun time_now = 0;
geçersiz kurulum()
{ Serial.başlangıç(9600);
pinMode(buttonDakika, GİRİŞ);
myservoPUSHER.attach(2); myservoSLIDER.attach(3); myservoPUSHER.write(90); myservoSLIDER.write(90); gecikme (5000); myservoPUSHER.detach(); myservoSLIDER.detach(); }
boşluk döngüsü()
{ FiveMinuteCounter = ((milis()/1000) % (300)); // FiveMinuteCounter = 5 dakikada bir 0
buttonStateMinutes = digitalRead(buttonMinutes);
Serial.print(" FiveMinuteCounter: ");
Serial.print(BeşDakikaSayacı); Serial.print(" OneHourCounter: "); Serial.print(OneHourCounter); Serial.print(" buttonStateMinutes: "); Serial.println(buttonStateDakika);
// butona basılırsa dakika topunu 5 dakika ileri hareket ettir
if (buttonStateMinutes == 1)
{ myservoPUSHER.attach(2); myservoSLIDER.attach(3); myservoPUSHER.write(30); 5 saniye bekle(); myservoSLIDER.write(130); 5 saniye bekle(); myservoPUSHER.write(140); 5 saniye bekle(); myservoPUSHER.write(90); 5 saniye bekle(); myservoSLIDER.write(90); 5 saniye bekle(); myservoPUSHER.detach(); myservoSLIDER.detach(); OneHourCounter++; }
// 5 dakika geçmişse dakika topunu 5 dakika ileri hareket ettir
if (BeşDakikaSayacı == 0)
{ myservoPUSHER.attach(2); myservoSLIDER.attach(3); myservoPUSHER.write(30); 5 saniye bekle(); myservoSLIDER.write(130); 5 saniye bekle(); myservoPUSHER.write(140); 5 saniye bekle(); myservoPUSHER.write(90); 5 saniye bekle(); myservoSLIDER.write(90); 5 saniye bekle(); myservoPUSHER.detach(); myservoSLIDER.detach(); OneHourCounter++; }
// dakika topu 12 kez hareket ettiyse saat topunu 1 saat ileri götür
if (OneHourCounter >= 12) { myservoPUSHER.attach(2); myservoSLIDER.attach(3);
myservoPUSHER.write(65);
5 saniye bekle(); myservoSLIDER.write(50); 5 saniye bekle(); myservoPUSHER.write(130); 5 saniye bekle(); myservoSLIDER.write(90); 5 saniye bekle(); myservoPUSHER.write(90); 5 saniye bekle(); myservoPUSHER.detach(); myservoSLIDER.detach(); OneHourCounter = 0; } }
5 saniye beklemeyi geçersiz kıl()
{ time_now = millis(); while(millis() < time_now + 500) { //bekle yakl. 500 ms } }
Adım 4: Corona Saatinin Montajı
Aşağıdaki tüm Adımlar, yukarıdaki Assembley Videosunda gösterilmiştir.
- Kodu Arduino Nano'ya yükleyin
- Arduino Nano'yu Nano Shield'e sabitleyin
- Servolardan birini videoda gösterildiği gibi Servo rafına vidalayın
- Servo ve Servo rafını Servo tutucuya yerleştirin ve kabloyu videoda gösterildiği gibi yuvadan geçirin
- Bu Servoyu Nano kalkanın D2 pinine takın
- Diğer Servoyu Nano kalkanın D3 pinine takın
- Diğer Servoyu videoda gösterildiği gibi Tabana vidalayın
- USB kablosunu şebeke elektriğine veya dizüstü bilgisayara takın
- USB kablosunun diğer ucunu, Servolar 90 derecelik ana konumlarına ulaşana kadar 2 saniye boyunca Arduino Nano'ya takın.
- USB Kablosunu ana güçten veya dizüstü bilgisayardan ve Nano kalkandan çıkarın
- Servo uzantısına bir Servo kolu yerleştirin
- Servo kolunu, servo gövdesine tam olarak videoda gösterildiği gibi 90 derecelik bir açıyla D2 pimine takılı Servoya vidalayın.
- Düğmeyi GND, V+ ve S pinine 3 dupont kablo ile Nano Shield'in D4 pinine bağlayın
- 4 Pimi Saatin Tabanına Yerleştirin
- Arduino Nano kalkanını Tabana yerleştirin
- Düğmeyi tabana yerleştirin
- Düğme tutucu ile düğmeyi yerine sabitleyin
- Ayakları tabandaki ilgili yuvalara yerleştirin
- Ayak klipsleri ile ayakları yerinde sabitleyin
- USB kablosunu tabanda kalan delikten Arduino'ya takın
- Servo Tutucuyu 4 pim üzerinden Tabana yerleştirin Doğru şekilde taktığınızdan emin olun (Video)
- Daire kılavuz pimini Servo tutucuya yerleştirin
- Kalan Servo kolunu dişliye yerleştirin
- Bu Servo kolunu diğer Servoya, servo gövdesine 90 derecelik bir açıyla ve servo rafı hareketin merkezine yerleştirilmiş olarak vidalayın (video)
- İç Daireyi mıknatıs deliği aşağı bakacak şekilde yerine yerleştirin (6) (kablo çıkış deliği)
- Dış Daireyi mıknatıs deliği yukarı bakacak şekilde yerine yerleştirin (12)
- Mıknatısları dikkatli bir şekilde yerleştirin (Neodymium mıknatıslar güçlüdür ve birbirleriyle temas etmeleri halinde kendilerine ve başkalarına zarar verebilir)
- Plakayı kapağa yerleştirin, plaka kapak delikleriyle aynı hizada
- Kapağı, 6 numara kablo çıkış deliğine bakacak şekilde üste yerleştirin.
- Çelik bilyeleri manyetik olarak yerlerine yapışacakları yerlere yerleştirin.
Ve işte bu, saatin tamamen monte edilmiş ve çalışmaya hazır olması gerekir!
Adım 5: Corona Saatini Ayarlama
Saati ayarlamak için dış dakika dairesi üst 12 konumundan başlamalıdır.
neyse ki iç saat çemberi istediğiniz pozisyonda başlayabilir
Ardından, saatin fişini prize takarak ve dakikayı ayarlamak için düğmeyi kullanarak Saati açmaya devam edebilirsiniz.
ve saatleri ayarlamak için Çelik bilyeyi manuel olarak döndürmek.
Adım 6: Düşünceler ve Tasarım Yinelemeleri
Bu harika bir projeydi ve makine mühendisliği yeteneklerimi sonuna kadar zorladı!
Bu fikir bir süredir aklımdaydı ve bu projeyi hayata geçirmek gerçekten inanılmaz. Özellikle zamanlama mekanizmasını ve ona güç sağlamak için ucuz 180 derecelik SG90 servoları kullanmanın bir yolunu bulmak bir mücadeleydi.
Bu projeyi tamamlamak için tam bir haftadan az bir zaman aldı, bu projeyi gerçekleştirmek için bazıları yukarıdaki fotoğrafta olan en az 10 tasarım yinelemesinden geçtim. Her şeye değdi, iyi harcanan zaman!
Önerilen:
Zaman Ölçüsü (Mezura Saati): 5 Adım (Resimlerle)
Zaman Ölçümü (Mezura Saati): Bu proje için, biz (Alex Fiel ve Anna Lynton) günlük bir ölçüm aleti aldık ve onu bir saate dönüştürdük! Orijinal plan, mevcut bir şerit metreyi motorlu hale getirmekti. Bunu yaparken, birlikte gitmek için kendi kabuğumuzu yaratmanın daha kolay olacağına karar verdik
ESP8266'yı Kullanan Ağ Saati Dijital Saati: 4 Adım (Resimlerle)
ESP8266'yı Kullanarak Ağ Saati Dijital Saati: NTP sunucuları ile iletişim kuran ve ağ veya internet saatini gösteren küçük şirin bir dijital saatin nasıl oluşturulacağını öğreniyoruz. WeMos D1 mini'yi bir WiFi ağına bağlanmak, NTP zamanını almak ve bir OLED modülünde görüntülemek için kullanıyoruz.Yukarıdaki video t
Emeklilik Saati / Sayım/Dn Saati: 4 Adım (Resimli)
Emeklilik Saati / Sayım / Dn Saati: Çekmecede bu 8x8 LED nokta vuruşlu ekranlardan birkaçı vardı ve onlarla ne yapacağımı düşünüyordum. Diğer talimatlardan esinlenerek, gelecekteki bir tarihe/saate geri sayım yapmak için bir geri sayım/yukarı geri sayım ekranı oluşturma fikrini aldım ve eğer hedef zaman p
Bolt - Kendin Yap Kablosuz Şarjlı Gece Saati (6 Adım): 6 Adım (Resimlerle)
Bolt - DIY Kablosuz Şarjlı Gece Saati (6 Adım): Endüktif şarjlar (kablosuz şarj veya kablosuz şarj olarak da bilinir) bir tür kablosuz güç aktarımıdır. Taşınabilir cihazlara elektrik sağlamak için elektromanyetik indüksiyon kullanır. En yaygın uygulama Qi kablosuz şarj cihazıdır
İnternet Saati: NTP Protokolüyle ESP8266 NodeMCU Kullanan OLED İle Tarih ve Saati Görüntüleme: 6 Adım
İnternet Saati: OLED ile Tarih ve Saati Görüntüleme ESP8266 ile NodeMCU Kullanarak NTP Protokolü ile: Merhaba arkadaşlar, bu talimatta internetten zaman alacak bir internet saati oluşturacağız, böylece bu projenin çalışması için herhangi bir RTC'ye ihtiyacı olmayacak, sadece bir çalışan internet bağlantısı Ve bu proje için bir esp8266'ya ihtiyacınız var