Mündəricat:

Evinizdə Arduino Light Theremin: 8 addım
Evinizdə Arduino Light Theremin: 8 addım

Video: Evinizdə Arduino Light Theremin: 8 addım

Video: Evinizdə Arduino Light Theremin: 8 addım
Video: Умный ZigBee выключатель Somgoms без нулевой линии – на симисторе автоматизация дома 2024, Noyabr
Anonim
Evinizdə Arduino Light Theremin
Evinizdə Arduino Light Theremin

Arduino Light Thereminin

Theremin, ifaçının cihaza toxunmadan əllərinin mövqeyini hiss edə bilən və musiqili səslər yaradan elektron musiqi cihazıdır. Yüngül terminimiz üçün bu konsepsiyanı uyğunlaşdıraraq musiqi əvəzinə rəngi idarə edən bir termin yaradacağıq.

Arduino

Kompüter

LED -lər

Fotoresistor

Rezistorlar

Qutu

Addım 1: İşıqlandırmağa hazırlaşın

Kitimizdən 7 LED götürərək başlayaq. İstəsəniz daha çox əlavə edə bilərsiniz, yalnız açıq bir Arduino pininə əlavə bir rezistor və tel əlavə etdiyinizə əmin olun. Unutmayın ki, Arduino çox enerji verə bilməz, buna görə müəyyən bir nöqtədə daha çox LED əlavə etmək onların hamısını qaraldır.

Torpaq teli/ LED əlavə edin

Çörək taxtasının torpaq (mənfi "-") rayı ilə Arduinonun GND pimi arasına bir tel əlavə edərək başlayın. Bu, Arduino və çörək taxtasındakı bütün komponentlərin ortaq bir nöqtəyə sahib olmasını və tam bir dövrə edə biləcəyini təmin edir. Sonra, LED -in qısa ayağını (zəmini) çörək taxtasının yerə (mənfi) rayına bağlayın

Rezistorlar və Tellər əlavə edin

7 rezistora ehtiyacınız olacaq, mən 82 Ohm (boz, qırmızı, qara) istifadə etməyi seçdim, çünki LED -lər Arduinodan çox güc çəkməyəcək qədər parlaq olacaq.

Addım 2: Fotoresistor Dövrü

Fotorezistor dövrə etmək üçün yenidən bir gərginlik bölücü yaradacağıq. Fotorezistorunuzu və 82 Ohm rezistoru (boz, qırmızı, qara) götürün. Fotorezistorun bir ayağını çörək bişirmə çubuğuna, digər ayağını da hər hansı bir səthə qoyun.

Daha sonra, Arduino -dakı 5V çıxışından bir çörək lövhənizdəki fərqli bir sıraya bir tel əlavə edin və 10V Ohm müqavimətini 5V güc sırası ilə fotorezistor sırasına bağlayın.

Nəhayət, bir gərginlik bölücü hazırladıqdan sonra, ayırıcıdan Arduinoya siqnal almalıyıq, buna görə başqa bir tel götürün və bir ucunu fotorezistora və 10K rezistor sırasına, digər ucunu isə A0 -a (analog pin 0) qoşun. Arduino.

Addım 3: Kodlaşdırma 1 -ci hissə

Kodlaşdırma 1 -ci hissə
Kodlaşdırma 1 -ci hissə
Kodlaşdırma 1 -ci hissə
Kodlaşdırma 1 -ci hissə

Kodum burada!

İşığı kodlaşdırmaq üçün əvvəlki analoq sensoru dərsini genişləndirəcəyik və bir sensorun birdən çox LED hərəkətini tetikleyerek bir addım daha irəli gedəcəyik. Əvvəlcə əlavə edilmiş LED.ino'yu yükləyin və Arduino IDE -də açın. Başlamaq üçün bütün 7 LED -i işə salmalıyıq. Adlandırma konvensiyalarını burada kifayət qədər standart olaraq saxladım, ancaq LED -ləri istədiyiniz hər hansı bir konvensiyaya uyğun olaraq etiketləyə bilərsiniz.

İndi hər bir LED adlandırıldıqda, giriş və çıxışlarımızı qurmalıyıq

Cihazı sonradan kalibr edə biləcəyimiz üçün serial port bağlantısına da başladığımızı unutmayın. 9600 dəyəri, kompüterlə Arduinonun bir -biri ilə danışma sürətidir. Buna Baud Rate deyilir və əlavə mənbələr bölməsində bu barədə daha çox oxuya bilərsiniz.

Addım 4: Kodlaşdırma 2 -ci hissə

Kodlaşdırma 2 -ci hissə
Kodlaşdırma 2 -ci hissə

Analog sensor kodumuza əsaslanaraq eyni LED funksiyasından istifadə edəcəyik, lakin daha çox LED -ləri yerləşdirə bilmək üçün onu bir qədər genişləndirməliyik. Bunu etmək üçün funksiya parametrlərinin sayını artırmaq və əlavə sancaqları işə saldığımızdan əmin olmaq istəyirik.

Bu LED vəziyyəti funksiyasında w1, w2, w3, w4, w5, w5, w6 və w7 parametrlərimiz var. Bu LED -lərin açılması və ya söndürülməsi ilə bunları əsas döngədə ya YÜKSƏK və ya LOW olaraq təyin edin.

Addım 5: Kodlaşdırma 3 -cü hissə

Kodlaşdırma 3 -cü hissə
Kodlaşdırma 3 -cü hissə

Bu kodun əsl ətinə keçək və əsas döngəyə dalaq. Əlinizin sensordan olan məsafəsinə uyğun olaraq fərqli LED -lərin yanmasını istədiyimizi bilirik. Bu o deməkdir ki, sensora daha az işıq düşəndə daha çox LED yanmalıdır (əliniz onu bağladığı üçün). Əvvəlki dərslərdə gördüyümüz kimi, fotorezistor dövrəsinin ADC dəyəri işığın azalması ilə artır, buna görə də ADC dəyəri artdıqca işığın daha çox LED yandırması üçün kodumuzu qurmaq istəyirik.

Vay, bu bir beyin bükücü idi! Nəyə ehtiyacımız olduğunu başa düşməyimiz üçün kodu nəzərdən keçirək

Ahhhh, indi bu daha məntiqlidir. Biz daim photoPin -in dəyərini yoxlayırıq və daha çox LED -ləri yandırırıq, bu dəyər daha yüksəkdir. Növbəti addımdakı videoda görəcəyiniz kimi, bu standart dəyərlər otaqdakı mühit işığı ilə mənim üçün olduqca yaxşı işləyib, ancaq əllərinizin məsafəsinə reaksiya verməsi üçün bu dəyərlərlə bir az oynamalı ola bilərsiniz. istədiyiniz şəkildə.

Addım 6: Çörək lövhəsi testi

Kodu Arduinoya yükləyək və yeni Theremin ilə oynayaq.

Addım 7: Theremin Mühafizəsi/Theremin Kablolama hissəsinin hazırlanması

Theremin əsas gövdəsi kağız qutudur. Sonra bıçaq və qayçı ilə bir -birindən aralanmış 7 yarıq kəsməyə başladım. Sonra LED -lərin uyğunluğunu yoxlayıram.

Orijinal telinizi başqa bir tellə bağlayın ki, yeni düzəltdiyiniz çuxura kifayət qədər uzun olsun.

Addım 8: İşıq Theremin

Hər şey bitdi, gəlin yeni Light Thereminimizi sınayaq:)

Tövsiyə: