İçindekiler:

Arduino Kontrollü Çan Kulesi/Carillon: 5 Adım (Resimli)
Arduino Kontrollü Çan Kulesi/Carillon: 5 Adım (Resimli)

Video: Arduino Kontrollü Çan Kulesi/Carillon: 5 Adım (Resimli)

Video: Arduino Kontrollü Çan Kulesi/Carillon: 5 Adım (Resimli)
Video: Zorla Çıktı! ~ Hollandalı Göçmenlerin Terk Edilmiş Evlerini Büyüleyici 2024, Kasım
Anonim
Arduino Kontrollü Çan Kulesi/Carillon
Arduino Kontrollü Çan Kulesi/Carillon
Arduino Kontrollü Çan Kulesi/Carillon
Arduino Kontrollü Çan Kulesi/Carillon

Bu, solenoidler tarafından tahrik edilen ve bir Arduino mikro denetleyicisi tarafından kontrol edilen bir müzik zili setidir. Bir oktavı kaplayan 8 zil vardır. Ziller bir PC'den kontrol edilebilir veya kule tek başına durabilir ve önceden programlanmış melodileri çalabilir. Hareket halindeki videosu için son sayfaya göz atın.

Adım 1: Parçalar

Parçalar
Parçalar

Aşağıdaki parçalar kullanıldı: 1 set kromatik el zili. Bunları yerel Aldi'mden 20 dolara aldım. C'den C'ye kadar uzanırlar. (I.e. c, d, e, f, g, A, B, C). Zilleri ve solenoidleri yerinde tutmak için ahşap panel ve braketler. 10.8 Solenoidler çanları çalmak için. Bunları çöp kutumda ortalıkta bırakmıştım. Onları çöpe atan bir daktilo tamircisinden aldım. Muhtemelen benzerlerini Ebay. Arudino mikrodenetleyicisinde bulabilirsiniz. ~45 dolar. Arduino için özel 'kalkanımı' yapmak için SparkFun electronics. Proto/Perf board ve çeşitli bileşenlerden benimkini aldım. $10. Darlington sürücü kartı. Etrafta bıraktığım bir tane kullandım ama ayrı satılmadığına inanıyorum. Birkaç dolara ULN2803 çipini kullanarak bunu yapmak mümkün olmalı.

Adım 2: Ağaç İşleme

Ağaç işleri
Ağaç işleri

Şaşırtıcı bir şekilde, bu adım en uzun sürdü. Kodlama ve kablolama, yapıştırıcının kurumasına göre daha az zaman aldı. Bunun çerçevesi oldukça basitti. Tüm çanları tutmak için sadece bir parça kontrplak ve ayrıca solenoidler için birkaç çam parantez. Her şey PVA tutkalı ile yapıştırıldı. Solenoid braketleri daha tekrarlanabilir hale getirmek için MS Visio'da bir şablon yaptım ve ardından ahşaba yapıştırdım. Bu, tüm solenoidlerin zilden sabit bir mesafede olmasına çok yardımcı oldu. Bunu yaparsanız, forvet yerleri için dikkatli bir şekilde ölçmek için yeterince stres yapamam. Çanlar, nereye vurduğunuza ve solenoidin 'fırlatılmasına' bağlı olarak oldukça farklı geliyor.

Adım 3: Elektronik ve Kablolama

Elektronik ve Kablolama
Elektronik ve Kablolama

Sürücü tarafı: Tasarımı çok basitleştiren bir darlington sürücüsüne sahip olduğum için şanslıydım. Darlington, normalde küçük mikrodenetleyici pinlerinin desteklediğinden daha ağır yükleri sürmek için kullanabileceğiniz bir güç transistörüdür. Kullandığım kart, oldukça yaygın ve ucuz olan ULN2803 yongasını temel alıyor. Lütfen dikkat: Solenoidler (genellikle) sürekli olarak sürülmek üzere tasarlanmamıştır! Yaparsan eriyebilirler! Daha fazla bilgi için yazılım bölümüne bakın. Arduino tarafı:Bu sadece Darlington girişlerini sürmek için arduinodan 8 IO pini bulma meselesiydi. Seri veri göndermek ve almak istediğim için 0 ve 1 pinlerini kullanamadım, bu yüzden bir tarafta 2, 3, 4 ve 5 dijitallerini ve diğer tarafta analog giriş pinlerinden dördünü dijital çıkış olarak kullandım.. Ayrıca tempoyu kontrol etmek için kullanılan analog giriş #5'e bağlı bir potansiyometre ekledim. Sürücünün görsel geri bildirimi için iki LED kullanılır. Pimler 8-13, korkak arduino pin aralığı (grr…) nedeniyle işe yaramazdı., (yanlışlıkla) USB gücünün yeterli olduğunu keşfettim. Ani akım darbesinin voltajın düşmesine ve mikrodenetleyicinin 'kararmasına' neden olacağından endişeliydim, ancak bu gerçekleşmiyor gibi görünüyor. Kilometreniz değişebilir. Sadece USB gücünü kullanmak benim için çok daha uygun olduğu için, bir sorunum olana kadar bunu yapmaya devam edeceğim.

Adım 4: Yazılım Tasarımı

Yazılım Tasarımı
Yazılım Tasarımı
Yazılım Tasarımı
Yazılım Tasarımı

Tasarım stratejisi Bunun amacı, çan kulesinin PC'den çalıştırılmasıydı. Arduino'nun USBSerial bağlantısı bunu yapmanın ideal yoluydu. Arduino, PC'den hangi notaların çalınacağına karşılık gelen seri verileri alır. Protokol basittir; notların tümü ASCII metin eşdeğerlerindedir. Değişken gecikme olarak sayısal bir sayı da vardır. PC şunu gönderir: "cde2fgABC" ve Arduino 1, 2, 3 zillerini çalar, yarım nota için dinlenir ve ardından 4, 5, 6, 7 ve 8 zillerini çalar. John Plocher'a kısmen ilham veren ServoBells projesi için şapkanın ucu Bu proje. Arduino Yan Kodu:Arduino kodu seri verileri alır, hangi notanın veya gecikmenin çalınacağını çözer ve ardından solenoidleri uygun şekilde değiştirir. Kodunuzun, solenoidler açık kalmayacak şekilde tasarlandığından emin olun!. Yanlışlıkla bir solenoidi açık bırakırsanız erir. Bunu, sürekli yoklama vb. yerine, selenoid kapanana kadar not rutinlerimi bloke ederek çözdüm. PC Yan Kodu: İstemci programı C# ile yazılmıştır. Her bir nota için düğmelerin yanı sıra önceden programlanmış melodiler için düğmelere sahiptir. Not verileri seri bağlantı noktasına gönderilir. Her şeyin kaynak kodu ektedir. İyileştirme için yer:

polifonik notalar

1 oktava sığabilecek herhangi bir ezginin bunları gerektireceğini düşünmediğim için iki notanın aynı anda çalınma olasılığını devre dışı bıraktım. Ek olarak, birden fazla solenoid ateşleme

Sırayı öldürmek

PC, arduino'ya büyük not cümleleri gönderir ve daha sonra sıra boşalana kadar bunları işler. Ancak büyük ezgiler için bu yorucu olabilir ve çalmakta olan bir ezgiyi kesintiye uğratmak istenebilir. Bu, arabelleği temizlemek için bir kod olarak seri cümlede başka bir harf (örneğin 'x') kullanılarak gerçekleştirilebilir.

Adım 5: Zilleri Çalıştırma

Çanları Çalıştırmak
Çanları Çalıştırmak
Çanları Çalıştırmak
Çanları Çalıştırmak

Zilleri çalıştırmak oldukça basittir. USB kablosunu takın ve PC yazılımını açın. Bir melodiyi çalmak için ayrı zil düğmelerine tıklayabilirsiniz. İsteğe bağlı olarak gamları çalmak için düğmeler, önceden programlanmış melodiler ve ayrıca serbest biçimli metin girişi için bir metin kutusu vardır. Çalan çanların bir videosunu ekledim. Şimdiye kadar sadece basit melodiler programlandı in.video burada:https://blip.tv/file/1521415(Futurama temasını bir C-C oktavında nasıl oynayacağını bilen varsa, lütfen bana bildirin….)

Önerilen: