Işık ve Ses Efektleri ile Arduino Tabanlı Lightsaber: 14 Adım (Resimlerle)

Işık ve Ses Efektleri ile Arduino Tabanlı Lightsaber: 14 Adım (Resimlerle)

İçindekiler:

Anonim

Merhaba jedi! Bu öğretilebilir hale getirme hakkında lightsaber, bu filmdeki gibi görünüyor, sesler ve performans! Tek fark - metal kesemez:(Bu cihaz Arduino platformuna dayanıyor ve birçok özellik ve işlev veriyorum, çok büyük bir işti ve tüm programlama becerilerimi kullandım, ama buna değdi!

Öyleyse, özellikler hakkında konuşalım! Sen de yapabilirsin videomda kısa bir inceleme izleGyverSaber sisteminin tüm etkilerini ve işlevlerini gösterdiğim ve Ayrıca video sonunda ışınlarımla savaşan iki profesyonel jedi var!

Özellikler:

  • Işın kılıcı benzeri ses efekti ile sorunsuz açma / kapama
  • Rastgele darbeli renk (onu kapatabilirsiniz)
  • sesler:
  • MOD 1: oluşturulan hum. Frekans, bıçağın açı hızına bağlıdır
  • MOD 2: SD karttan çıkan hum sesi
  • Yavaş salınım - uzun hum sesi (4 ses arasından rasgele)
  • Hızlı salınım - kısa hum sesi (5 ses arasından rasgele)
  • Vurulduğunda parlak beyaz flaş
  • Vurulduğunda, 16 isabet sesinden birini çalın:
  • Zayıf vuruş - kısa ses
  • Sert vuruş - uzun "bzzzghghhdh" sesi
  • Açıldığında blade geçerli pil seviyesini yüzde 0 ile 100 arasında gösterir.

Pil güvenli mod

  • AÇMADAN ÖNCE Pil bitiyor: GyverSaber açılmıyor, düğme LED'i birkaç kez PULSE
  • Pil boşalıyor AÇMA SONRASI: GyverSaber otomatik olarak kapanacak

Kontrol düğmesi:

  • HOLD - GyverSaber'ı açın / kapatın
  • ÜÇLÜ TIKLAYIN - renk değiştir (kırmızı - yeşil - mavi - sarı - pembe - buz mavisi)
  • QUINARY CLICK - ses modunu değiştir (uğultu - hum çalma)
  • EEPROM'da depolanan seçilen renk ve ses modu (kalıcı bellek)

Gereçler:

Adım 1: Malzemeler ve Bileşenler

Her zaman Aliexpress'den elektronik personel satın alırım, ancak Amazon, eBay, vb'de aynı modülleri bulabilirsiniz.

Elektronik parçalar:

  • Arduino NANO http://ali.pub/20o35g
  • Adreslenebilir LED şeridi. WS2811, 12V. Beyaz PCB'yi alın, IP30, metre başına 60 LED http://ali.pub/23csyd http://ali.pub/23cszc
  • LED'li düğme. Http://ali.pub/23ct29 5V sürümünü alın
  • MPU6050 http://ali.pub/23mryw
  • Ucuz MicroSD http://ali.pub/23msne
  • MicroSD modülü mini http://ali.pub/23ms27
  • Veya bu
  • Piller 18650 korumalı http://ali.pub/23moiu http://ali.pub/23moke
  • DCDC Basamak Aşağı http://ali.pub/23mpex http://ali.pub/23mpfi
  • Yükselteç http://ali.pub/23mp6d http://ali.pub/23mp75
  • Konuşmacı http://ali.pub/23mq8h http://ali.pub/23mq9g
  • Dirençler KIT http://ali.pub/23mqei
  • Güç düğmesi
  • Şarj portu http://ali.pub/23mtf0
  • 3 hücreli CC CV şarj cihazı http://ali.pub/23mt8s http://ali.pub/23mt9d
  • Prototip kurulu

Malzemeler ve aletler:

  • Polikarbonat tüp (ışık difüzyonu, 32mm)
  • Bu tüp için 2 taslak
  • Kabza için bazı borular (PVC kanalizasyon borusu ve borularını kullandım: kabza için 40 mm, PC borusuna montaj için 32 mm)
  • Çelik tel
  • Plastik lehimleme ve kesme için yaygın kullanılan aletler

Adım 2: Kablolama

Bu projeyi prototip tahtası üzerinde yapmaya karar verdim, 3x7cm, tüm şemaları ve çirkin görünümlü kablolamayı görebilirsiniz =)

ÖNEMLİ! Kablolamadan önce, DCDC kademeli konvertörü 12V DC güç kaynağına bağlayın ve çıkış gerilimini 4.5V'a ayarlayın!

Adım 3: Kalk

Tepki için kanalizasyon boruları kullanıyorum, ancak bunlar rus kanalizasyon boruları, bu yüzden doğaçlama yapmanız gerektiğini düşünüyorum.

Adım 4: Piller

3 lityum pil kullanıyorum (normal laptop bataryadan 18650). İlk önce onları 40 mm'lik tüpün (eğim) içine koymamız ve bunun için tüpü ısıtmamız gerekir. Ancak ilk önce pilleri bantla sabitlememiz ve 2 kat kağıtla kalınlaştırmamız gerekir.

Tüpü ısıtın, aküleri içeri koyun ve tüpü olabildiğince hızlı bir şekilde soğutun! Lityum piller çok yüksek sıcaklıklardan hoşlanmazlar. Sonra onları çıkarın ve mükemmel bir pil kutusu göreceksiniz.

Adım 5: Pilleri Lehimleme

Dediğim gibi, lityum piller yüksek sıcaklıklardan hoşlanmazlar. Bu yüzden aküleri çok hızlı bir şekilde lehimlemek için akı ve güçlü havya (100W) kullanın. Bu yüzden seri olarak bağlayın.

Adım 6: Bıçak ve Şerit LED

75cm bıçağım var, bu yüzden 75 + 75 = 150cm şerit kestim. LED şerit kablo etrafına iki kez katlanacaktır, bu yüzden hepsini sabitlemek için çift taraflı bant kullanın ve içinde telli çift taraflı LED şerit elde edin.

Şerit, bıçak borusu boyunca bazı desteklere ihtiyaç duyar, termal büzülme borularında çividen yapılmış 3 destek kullandım ve bunları iplik ve süper yapıştırıcı ile şeride tutturdum.

Tel için saplamalara bir delik açın, kablo iki saplama arasında gerilir ve 3mm vida ile sabitlenir, ancak şu anda olmaz.

Adım 7: MPU6050

MPU6050'yi eski IDE esnek kablo kullanarak bağladım, çünkü MPU'yu bıçağın mümkün olduğunca yakın yerleştirmesi iyi bir fikir. Ve sadece PC tüp düşük saplama tutkal:)

Adım 8: Kabartma Düğmeleri

Düğmeler ve şarj portu için biraz delik ve hoparlör için altta birkaç delik açın. Ayrıca siyah boyayla kabzayı boyadım.

Adım 9: Son Kablolama

Bu nedenle, pilleri bağlayın, anahtar ve şarj için telleri çekin, hepsini lehimleyin ve deliklerine sabitleyin. Ayrıca, lehim hoparlör de teller.

Adım 10: Hoparlör Sabitleme

Hoparlörü 40mm tüp halkası ve bazı çiviler kullanarak sabitledim =) Çok acımasız ve çok sert.

Adım 11: Programlama

Arduino taslağını, kitaplıklarını, SD ses dosyalarını ve GitHub'daki proje sayfasında birçok talimatı bulabilirsiniz, ancak burada tüm proje dosyalarının taslaklarını ve arşivlerini Instructables'ta ekliyorum.

Basit rehber:

  • GyverSaber.ino açın ve ayarlayın:
  • LED şerit üzerindeki mikro devrelerin WS2811 sayısı (not: bir WS2811, 3 LED'i kontrol eder!)
  • Bıçak pulsasyonunu açın veya kapatın
  • Gerilim bölücü dirençlerinin gerçek direncini ölçmeniz pek tavsiye edilmez
  • Sistem pil izlemeden çalışabilir, sadece BATTERY_SAFE'yi devre dışı bırakın. AMA TAVSİYE EDİLMEZ
  • Flash arduino
  • Ses dosyalarını SD karta yükleyin
  • Keyfini çıkarın!

MicroSD bilgisi:

  • Boyut
  • FAT olarak biçimlendir
  • Ses dosyalarını kök dizinine kopyala

Kendi seslerinizi eklemek istiyorsanız, bunları.WAV'a dönüştürün:

  • 8 bit
  • 16-32 kHz
  • Mono
  • Çevrimiçi dönüştürücüler veya Toplam Ses Dönüştürücü kullanın

UYARI! Birleştirilmiş düzeni yanıp sönüyorsa, açmalısınız! Arduino, bağlı DCDC dönüştürücü ile doğru çalışmayacak!

Adım 12: Ayarlama

GyverSaber'i tamamen özelleştirilebilir hale getirdim, böylece kendi bıçakınızı farklı bıçak uzunlukları ve diğer parametrelerle oluşturabiliyor, sadece çizim ayarlarına bir göz atıyorsunuz.

Adım 13: Son Vida

Yani, ışın kılıcı neredeyse bitti! Bıçağı boruya sabitleyen son bir vida. Tüm kılıç yapımında çizim yaptım.

Adım 14: Sonuçlar

Yani, DIY ışın kılıcı savaşmaya hazır! Döndürme, salıncak, nesne vuruşlarıyla ilgili bazı testleri izleyebilirsiniz. avize kazası (ayy!) ve ayrıca GyverSabers ile kavga eden iki gerçek Jedi (evet, 2 tanesini yaptım !!!) Bu DIY ışın kılıcı hakkındaki video incelememde fonksiyonlar ve özellikler var.

Saygılarımla, MadGyver.

İkincisi

Arduino Yarışması 2017

Bu Projeyi 3 Kişi Yaptı!

  • scimsabre başardı!

  • Mad Gyver başardı!

  • Mad Gyver başardı!

Bu projeyi yaptın mı? Bizimle paylaşın!

öneriler

  • Arduino Kod Örneklerini Ezmek

  • Ornithopter Prototipini Açar. Arduino Powered ve Uzaktan Kumandalı.

  • Nesnelerin İnterneti Sınıfı

  • Gökkuşağı Yarışması'nın Renkleri

  • Fandom Yarışması

  • Sınıf Bilim Yarışması

113 Tartışmalar

0

CarlosF207

Soru 3 ay önce

Merhaba neden bağlanmadı Yükseltici 5v yerine Arduino'nun 5v çıkışına yükseltir

1 cevap 0

inigohe CarlosF207

Yanıt 8 hafta önce

Bence dik aşağı ampli kartına 4.5 ya da daha az verir ve bunları arduino kartındaki dijital bir girişe voltaj sağlayan bir voltaj bölücüye verir.

0

inigohe

Soru 8 hafta önce

Saygılarımla, eşim … harika bir iş senin. Bir soru … Güç kaynağı olarak üç 18650 pil var 12 v var, ancak benim stepdown kurulu sadece 4 v verir. Ben bu arduino nano ampli kurulu ve dijital giriş pin sağlamak için yeterli olmadığını düşünüyorum, …. sonra voltaj bölücüsünü yeniden hesaplamalıyım ?? hakkında biraz fikir, dostum !!!;)

0

Çorap kuklası

1 yıl önce

Bu harika bir proje - kodunuz çok zarif. Ben 5V üzerinde bir WS2812S şeridi ile çalışma var.

Donanımda pil koruması olacağı için A6'yı yüksek bir şekilde bağladım ve aksi halde 16'dan fazla led seçemedim.

PARLAKLIK, daha iyi bir etki için hit_flash'te bir mod olan tek 18650'm için akımı makul bir seviyede tutmama izin veriyor.

Yine, iyi kod, harika bir proje. Teşekkür ederim.

1 cevap 0

CarlosF207 Çorap kuklası

Yanıtla 3 ay önce

Merhaba, nasıl 5v dönüştürebilirsiniz? Diyagram var mı?

0

muratm7

1 yıl önce

Eğer 3 18650 kullanmıyorsam ve dcdc aşağı iniyorsa, hala 51k ve 100k direnç kullanmam gerekir mi?

1 cevap 0

CarlosF207 muratm7

Yanıtla 3 ay önce

Sorunu nasıl çözüyorsunuz 5v'ye dönüştür

0

anv3D

Soru 6 ay önce

Kodda hata! Lütfen yardım et!

Hata mesajı:

Arduino: 1.8.7 (Windows Mağazası 1.8.15.0) (Windows 10), Pano: "Arduino Nano, ATmega328P (Eski Önyükleyici)"

Yapı seçenekleri değiştirildi, tümü yeniden oluşturuldu

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 106: 0'dan dahil edilen dosyaya:

C: Kullanıcılar Brendan Belgeler Arduino library FastLED / FastLED.h: 17: 21: not: # pragma mesajı: FastLED sürüm 3.001.005

# pragma mesajı "FastLED sürüm 3.001.005"

^

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 'void setup ()' işlevinde:

GyverSaber: 194: 17: error: 'setAll' bu kapsamda ilan edilmedi

tmrpcm.setVolume (5);

^

GyverSaber: 245: 20: hata: 'setColor' bu kapsamda ilan edilmedi

GyverSaber: 246: 35: hata: 'voltage_measure' bu kapsamda ilan edilmedi

GyverSaber: 254: 33: error: 'setPixel' bu kapsamda ilan edilmedi

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 'void loop ()' işlevinde:

GyverSaber: 269: 15: hata: 'randomPULSE' bu kapsamda ilan edilmedi

if (nowColor> = 6) nowColor = 0;

^

GyverSaber: 270: 11: hata: 'getFreq' bu kapsamda ilan edilmedi

setColor (nowColor);

^

GyverSaber: 271: 16: hata: 'on_off_sound' bu kapsamda ilan edilmedi

setAll (kırmızı, yeşil, mavi);

^

GyverSaber: 272: 11: hata: 'btnTick' bu kapsamda ilan edilmedi

eeprom_flag = 1;

^

GyverSaber: 273: 14: hata: 'strikeTick' bu kapsamda ilan edilmedi

GyverSaber: 274: 13: error: 'swingTick' bu kapsamda ilan edilmedi

if (btn_counter == 5) {// 5 basın sayısı

^

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 'void btnTick ()' işlevinde:

GyverSaber: 303: 26: hata: 'setColor' bu kapsamda ilan edilmedi

tmrpcm.play ("HUM.wav");

^

GyverSaber: 304: 32: hata: 'setAll' bu kapsamda bildirilmedi

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 311: 32: uyarı: ISO C ++, bir dizgiyi 'char *' sabitine dönüştürmeyi yasaklar -Wwrite-string

digitalWrite (BTN_LED, 0);

^

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 'void on_off_sound ()' işlevinde:

GyverSaber: 326: 27: error: 'voltage_measure' bu kapsamda bildirilmedi

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 328: 29: uyarı: ISO C ++, bir dizgeyi 'char *' sabitine dönüştürmeyi yasaklar -Wwrite-string

GyverSaber: 330: 18: hata: 'light_up' bu kapsamda ilan edilmedi

EEPROM.write (1, HUMmode); // EEPROM'da yazma modu

^

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 336: 32: uyarı: ISO C ++ bir dizgeyi 'char *' sabitine dönüştürmeyi yasaklar -Wwrite-string

eğer (((millis () - humTimer)> 9000) && bzzz_flag && HUMmode) {

^

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 353: 28: uyarı: ISO C ++, bir dizgiyi 'char *' sabitine dönüştürmeyi yasaklar -Wwrite-string

GyverSaber: 355: 18: hata: 'light_down' bu kapsamda ilan edilmedi

PULSE_timer = millis ();

^

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 370: 26: uyarı: ISO C ++, bir dizgiyi 'char *' sabitine dönüştürmeyi yasaklar -Wwrite-string

strcpy_P (BUFFER, (char *) pgm_read_word (& (strikes_short nowNumber)));

^

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 'void randomPULSE ()' işlevinde:

GyverSaber: 394: 46: hata: 'setAll' bu kapsamda bildirilmedi

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 'void strikeTick ()' işlevinde:

GyverSaber: 405: 15: error: 'hit_flash' bu kapsamda ilan edilmedi

swing_timer = millis ();

^

GyverSaber: 418: 15: hata: 'hit_flash' bu kapsamda ilan edilmedi

C: Kullanıcılar Brendan Belgeler GyverSaber GyverSaber GyverSaber.ino: 'void batteryTick ()' işlevinde:

GyverSaber: 572: 25: hata: 'Gerilim_ ölçüsü' bu kapsamda bildirilmedi

C: Users Brendan Documents GyverSaber GyverSaber clear.ino: 'void setup ()' işlevinde:

temizle: 2: 6: hata: 'void setup ()' ifadesinin yeniden tanımlanması

geçersiz kurulum () {}

^

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 191: 6: not: 'void setup ()' daha önce burada tanımlandı

C: Users Brendan Documents GyverSaber GyverSaber clear.ino: 'void loop ()' işlevinde:

temizle: 3: 6: hata: 'void loop ()' ifadesinin yeniden tanımlanması

void loop () {}

^

C: Users Brendan Documents GyverSaber GyverSaber GyverSaber.ino: 268: 6: not: 'void loop ()' daha önce burada tanımlandı

nowColor ++; // rengi değiştir

^

Çıkış durumu 1

'setAll' bu kapsamda ilan edilmedi

Bu raporda daha fazla bilgi olacak

"Derleme sırasında ayrıntılı çıktı göster"

seçenek Dosya -> Tercihler'de etkin.

1 cevap 0

CarlosF207 anv3D

Cevap 3 ay önce

Hata olmadan derler

Lybraries klasörünü Arduino kurulum klasörüne koyup koymadığınızı kontrol edin.

0

anv3D

Soru 3 ay önce

LÜTFEN CEVAP VER!

Kodu 1 veya 2 18650 pille veya AAA / AA pillerle çalışacak şekilde nasıl değiştiririm ve

5V WS2812B LED şerit? Bu gerçekten yardımcı olur. Teşekkürler!

1 cevap 0

CarlosF207 anv3D

Cevap 3 ay önce

Merhaba ben bu proyect yaptı ve tamam çalışıyor

Bir batery 3.7 v ile 5v bir adım ile 5v bir adım dönüştürmek için bazı denemeler yaptım

Vcc Arduino ve amplifikatöre de bağlı ve amplifikatör panelini öldürün, Hatta amplifikatör panelini doğrudan 5v çıkışa bağlamaya çalışıyorum Arduino, adım atmayı ortadan kaldırıyor ve çalışmıyor, pes ediyorum

0

ZNACKI.R

4 ay önce

О, какие люди, здарова, Алекс))

0

winneremerald12

Soru 5 ay önce

Sen benim babam mısın

0

anv3D

6 ay önce

Herkes 3D baskı yapmak istiyorsa, işte yaptığım bazı STL dosyaları!

www.thingiverse.com/thing:3194221

0

fett7703

7 ay önce

SD 5 volt modülünün ikinci seçeneğine sahibim ve 3v3 mini modülünü kullanan rehber gibi CLK yerine sck'ye sahibim.

ide arduino kodunu hata ayıklamak ve sd başarısız göstermek arcnion vd 5v ardunio bir gnd ana zemin herhangi bir fikir ne sorun var?

0

anv3D

Soru 8 ay önce

İlk 3 LED'in yanıp sönmemesini sağlamanın bir yolu var mı? hala renk değiştirir, ancak yanıp sönmez? İlk birkaçını ayırmayı ve onu bir yapay kristalin içine koymayı planlıyorum

0

bb151bb

Soru 8 ay önce 8. Adımda

- 18650 pil yerine 4 AAA kullanabilir miyim?

- Daha fazla yer kazanmak için arduino pro mini 3.3 kullanmak sorun değil mi?

0

ca_rodriguez

Soru 1 yıl önce

Tebrik! Bu projeyi Kasım ayının sonunda buldum. Amerika Birleşik Devletleri'ndeyim ve ali … beni parçalamak için çok uzun zaman aldı … Bunu birkaç gün önce yapmak için oturdum, her şeyin işe yarayacağını kablolu hale getirdim, ama alıyorum "SD Başarısız "Bağlantı noktalarını değiştirmeyi denedim, şanssız. Böylece her şeyin bağlantısını kestim ve SD Kart okuyucuyu yeni bağladım. Bir okuma / yazma testi yaptım ve kart okuyucusu çalışıyor …

Neyi yanlış yaptığım hakkında hiçbir fikrim yok.

Bu benim okuyucum:

http: //www.amazon.com/SenMod-Adapter-Reader-Modul …

Ayrıca 5v'lık LED şeritleri ile gittim. Muhtemelen o kadar parlak olmayacaklar, ama ben bununla iyiyim. 100k ve 51k direnç döngüsüne hala ihtiyacım olacak mı?

Şimdiden teşekkürler!

° C ~

2 cevap 0

AmrasElensar ca_rodriguez

Cevap 10 ay önce

Merhaba, sorunu hiç buldunuz mu? Aynı şey ve aynı zamanda gyro ile sahibim. Henüz kablolamayı denemedim.

0

muratm7 AmrasElensar

Yanıtla 10 ay önce

Başka bir sd kart modülü kullanıyorsanız, 3v3 ve a4 pimi yerine 5v ve GND kullanın. Sanırım aylarca önce anladığım gibi anladım.