BLUE LIGHT

by tezelcansu2 in Craft > Digital Graphics

213 Views, 0 Favorites, 0 Comments

BLUE LIGHT

AWAKE (1).png

AMAÇ :

Araştırmalara göre mavi ışık kişinin uyuma ihtimalini azaltıyor. Bu projede uzun yollarda sürücünün kalp atışı takip edilerek, kişinin uykusunun gelmesi durumunda mavi ışık kullanarak kişinin uyanık kalmasını sağlamak amaçlandı ve bunun için bir prototip geliştirildi.

Supplies

1x Arduino Uno

1x Breadboard

1x Pulse Sensor

4x Jumper kablo

1x RGB Led

SİSTEM

Oluşturduğum sisteme göre pulse sensorden alınan kalp ritmi sinyalleri Arduino'ya aktarılıyor. Arduinoda veriler işlenerek RGB led'e aktarılıyor. Bunun sonucunda kalp ritmine göre ledde 3 farklı renkte ışık yanıyor. Bu sistemin çalışması için öncelikle kendi kalp ritmimi heyecanlıyken, uykuluyken ve normal hissettiğim anlarda ölçüp Arduino Ide'de bulunan "Serial Monitor" ekranından verileri not aldım. Heyecanlıyken kalbim 700 - 1023 arasında değerler izliyor. Normalken ise 550-700 arasında değerler izliyor. Uykuluyken ise 550 ve altında değerlere iniyor. Bu değerleri kullanarak 3 farklı çıktı oluşturdum.

  • Heyecanlı: 700-1023 KIRMIZI
  • Normal: 550-700 YEŞİL
  • Uykulu: 550 ve altı MAVİ

Bu yüzden eğer projemi denemek isterseniz verimli bir sonuç almak için kodu kullanırken sizin de kalp ritminizi ölçerek not almanızı ve değerleri kendinize göre revize etmenizi tavsiye ederim.

PROJEYE BAŞLARKEN:

cansu_devre_semasi.png
IMG-1277.jpg
IMG-1276.jpg
IMG-1275.jpg
IMG-1274.jpg
IMG-1273.jpg
IMG-1241.jpg
IMG-1240.jpg
IMG-1233.jpg
  1. Eğer bu işte benim gibi yeniyseniz küçük adımlarla başlayarak öncelikle basit bir şekilde pulse sensoru denemenizi tavsiye ederim. (Bu sırada kalp ritminizi not alabilirsiniz.) Sonrasında ise RGB Led kullanarak ışık yakmayı denemelisiniz. Ben bu şekilde başladım. (Aşağıda belirttiğim linklerden faydalanabilirsiniz)
  2. Denemeleri yaptıktan sonra görseller arasında bulabileceğiniz devre şemasını kurun.(Devre şemasını doğru bağladığınızdan emin olun, yoksa çalışmaz.)
  3. Ardunio Ide'ye girerek aşağıda vermiş olduğum kodu yapıştırıp daha sonra "potVal" verilerini kendinize göre revize ediniz. (Burada kalp ritimizi önceden ölçüp not aldığınız verileri girin.)
  4. Daha sonra kodu Arduino'nuza yükleyin.Pulse sensor'e parmağınızı koyun. (Bende direkt kırmızı yanmıştı,korkmayın.)

***Pulse sensoru kullanabilmeniz için library indirmeniz gerekiyor, aşağıdaki linkte nasıl yapmanız gerektiği adım adım mevcut.

DENEME YAPARKEN FAYDALANABİLECEĞİNİZ LİNKLER:

PULSE SENSOR:

https://lastminuteengineers.com/pulse-sensor-ardui...

RGB LED:

https://www.youtube.com/watch?v=V_Ci2hx-nVU&t=56s

ARDUINO KODU:

/*

* This code, modified by Saverio Silli for Textile Academy 2017 * www.textileacademy.org * It is made for an Attiny44, it can run on 3.2volts * It uses a slider potentiometer to select 8 colors combination from a RGB LED * the max brightness of the led is set to 125 as it is more bright than 256. Maybe should set 255? have to try * based on a sketch by: * Clay Shirky * / INPUT: Potentiometer should be connected to 5V and GND int potPin = A0; // Potentiometer output connected to analog pin 3 int potVal = 0; // Variable to store the input from the potentiometer // OUTPUT: Use digital pins 6-8 (attiny equivalent), with Pulse-width Modulation (PWM) // LED's cathodes should be connected to digital GND (longer leg) int redPin = 11; // Red LED, connected to digital pin 8 int grnPin = 10; // Green LED, connected to digital pin 7 int bluPin = 9; // Blue LED, connected to digital pin 6 // Program variables int redVal = 0; // Variables to store the values to send to the pins int grnVal = 0; int bluVal = 0; void setup() { Serial.begin(9600); } // Main program void loop() { potVal = analogRead(potPin); // read the potentiometer value at the input pin Serial.println(potVal); delay(500); if (potVal < 1023 && potVal >= 700) // 700 ile 1023 arası kırmızı { redVal = 0; // Red on grnVal = 255; // Green off bluVal = 255; // Blue off } else if (potVal < 700 && potVal > 550) // 550 ile 700 arasında yesil { redVal = 255; // Red off grnVal = 0; // Green on bluVal = 255; // Blue off } else if (potVal < 550) // 550 den kucukse mavi yansın { redVal = 255; // Red off grnVal = 255; // Green off bluVal = 0; // Blue on } else { redVal = 255; // Red off grnVal = 255; // Green off bluVal = 255; // Blue off } analogWrite(redPin, redVal); // Write values to LED pins analogWrite(grnPin, grnVal); analogWrite(bluPin, bluVal); delay(100); // Delay to avoid blinkings and interference }

REFERANSLAR