Vu Metre Yapımı - Neopixel RGB Led - Robolink Akademi
Maybe your like
Herkese merhaba, bu yazımızda Neopixel halka led kullanarak, dekoratif bir görüntüye sahip aynı zamanda süs objesi olarak da kullanabileceğiniz bir Vu Metre yapacağız.
Vu Metre Nedir?
Ses sinyalini ledler yardımı ile görülebilir hale getiren renkli ve eğlenceli bir devredir. Kısaca ses seviyesine göre çıkışlarında bulunan ledleri yakan devrede diyebiliriz.
Malzemeler
- Arduino Nano
- Ses Sensörü
- 12’li Neopixel Halka Led
- Breadboard
- Jumper Kablo
- Havya
- Lehim Teli
- Makaron
- 3D Baskı (vumetre STL dosyası)
Devre Şeması
Devre şemasından önce biraz Vu metrenin çalışma prensibinden bahsedelim. Vu metreyi normal ledler ile yapabileceğiniz gibi rgb ledler ile de yapabilirsiniz. RGB Led kullanmanız durumunda onunda sinyal pinini kontrol etmelisiniz. Biz projemizde neopixel rgb ledi kullanmayı tercih ettik.
Neopixel Led, WS2812, SK6812 ve APA102 isimleri ile de bilinen adreslenebilen ledlerdir. Adreslenebilir ledler mikrokontrolcüler ile kontrol edilebilir. 3 yada 4 girişi bulunan ledler sinyaller ile kontrol edilmektedir. ( GND-BESLEME-SİNYAL-GND). Her bir RGB Led karesi içersinde üç adet renkli led barındırmaktadır.(Kırmızı-yeşil-mavi). Sinyaller ile kontrol ederek istediğiniz parlaklıkta ve renkte ledler elde edebilirsiniz. Neopixel ledler tek başlarına kullanılabildiği gibi, arka arkaya eklenerek de kullanılmaktadır.
Ses sensörü, ses dalgalarını elektrik sinyallerine dönüştürmek için bir kapasitif mikrofonu (50Hz-10kHz) ve bazı işlem devrelerini birleştiren küçük bir karttır. Bu elektrik sinyali, dijitalleştirmek için yerleşik LM393 Yüksek Hassasiyetli Karşılaştırıcıyı besler.Modülde çıkış sinyalinin hassasiyet ayarlaması için yerleşik bir potansiyometreye sahiptir.Bu potansiyometreyi kullanarak ayar yapabilirsiniz.
Ses modülü üzerinden Analog okuma yaparak bu değere göre sırası ile ledlerimizi yakacağız. Yine neopixel ledimizi de 6 numaralı dıjıtal pin ile kontrol edeceğiz.

Bağlantı Detayları
- Ses Sensörü : GND – GDN, VCC-VCC, OUT-AO
- Neopixel: GND-GND, VCC-VCC, DIN-D6
Kod
| #include <Adafruit_NeoPixel.h> |
| #ifdef __AVR__ |
| #include <avr/power.h> |
| #endif |
| int ara_deger,ara_deger2; |
| // aradeger2 0 ve 1 olamaz |
| float hassasiyet = 0.2; // 0 ile 1 arasında bir float değer girin örnek 0.444 bu değer analogtan okuduğumuz değeri yumuşak bi şekilde yansıtmak için |
| #define PIN 6 // hangi pindne çıkış alacaksanız onu girin pwm olması gerekli |
| #define NUMPIXELS 12 // Popular NeoPixel ring size |
| Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); |
| #define gecikme 40 // kaç ms beklesin tekrar hesaplama yapması için 20 nin altına inmeyin bu değer değiştirğinde hassasiyet dolaylı yoldan değişir |
| void setup() { |
| #if defined(__AVR_ATtiny85__) && (F_CPU == 16000000) |
| clock_prescale_set(clock_div_1); |
| #endif |
| Serial.begin(9600); |
| pixels.begin(); |
| } |
| void loop() { |
| pixels.clear(); |
| ara_deger2 = (1-hassasiyet) * ara_deger2 + hassasiyet * analogRead(0); |
| ara_deger = map(ara_deger2, 0, 623, 0, 13); |
| // Serial.println(ara_deger); |
| if(ara_deger >= 1 && ara_deger <=3 ) |
| { |
| for(int i=ara_deger ; i<=12 ; i++) |
| pixels.setPixelColor(i, pixels.Color(11, 0, 0)); // 3 ana rengide 0 – 255 arasında bir değere set edebilirsiniz |
| pixels.show(); |
| delay(gecikme); |
| } |
| else if(ara_deger >= 4 && ara_deger <= 6 ) |
| { |
| for(int i=ara_deger ; i<=12 ; i++) |
| pixels.setPixelColor(i, pixels.Color(0, 11, 0)); // 3 ana rengide 0 – 255 arasında bir değere set edebilirsiniz |
| pixels.show(); |
| delay(gecikme); |
| } |
| else if(ara_deger >=7 && ara_deger <= 9 ) |
| { |
| for(int i=ara_deger ; i<=12 ; i++) |
| pixels.setPixelColor(i, pixels.Color(0, 0, 11)); // 3 ana rengide 0 – 255 arasında bir değere set edebilirsiniz |
| pixels.show(); |
| delay(gecikme); |
| } |
| else if(ara_deger >=10 && ara_deger <= 12 ) |
| { |
| for(int i=ara_deger ; i<=12 ; i++) |
| pixels.setPixelColor(i, pixels.Color(11, 0, 11)); // 3 ana rengide 0 – 255 arasında bir değere set edebilirsiniz |
| pixels.show(); |
| delay(gecikme); |
| } |
| else { |
| for(int i=ara_deger ; i<=0 ; i++) |
| pixels.setPixelColor(i, pixels.Color(0, 0, 0)); // 3 ana rengide 0 – 255 arasında bir değere set edebilirsiniz |
| pixels.show(); |
| delay(gecikme); |
| }} |
Projenin yapım aşaması için Robolink Teknoloji youtube kanalındaki videoyu izlemenizi tavsiye ederim.
🚀 Okumanı Tavsiye Ederiz: Neopixel Saat Yapımı
Tag » Arduino Vumetre Yapımı
-
Arduino Ile Vu Metre Yapalım - Maker Robotistan
-
ARDUINO VU METRE UYGULAMASI | VU METER WITH ARDUINO
-
Arduino Nano Ve Neopixel Ile Vu Metre Yapımı - YouTube
-
Arduino Ile Vumetre Devresi Yapımı - Mühendislikler
-
Arduino Vumetre Devresi Ve Projesi: Ses Seviyesine Göre Yanıp ...
-
Arduino İle VuMeter Yapımı - Şahin Yağlı
-
Arduino İle Vu-Metre Yapımı? | Arduino, Computer Monitor, Stereo
-
Arduino Ile Vumetre Devresi Yapımı - KendinYapSitesi
-
Arduino LCD Vu-Meter Temmuz 7th, 2022 - Elektronik Atölyem
-
Stereo NeoPixel Ring VU Meter - Arduino Project Hub
-
Simple Vu Meter Using Arduino - Arduino Project Hub
-
Arduino Basit Vu Metre - Kodla Gitsin
-
Prosper Gözünü Dikmek Raf Yanıp Sönen Led Yapımı