Sensorler Ders 4 Asl Ergn FOTO DYOTLAR Foto

  • Slides: 29
Download presentation
Sensorler Ders 4 Aslı Ergün

Sensorler Ders 4 Aslı Ergün

FOTO DİYOTLAR • Foto diyotlar da bir tip optik sensördür. • Diyot tek yönlü

FOTO DİYOTLAR • Foto diyotlar da bir tip optik sensördür. • Diyot tek yönlü akım geçiren elemandır. • Foto diyot ise ışığın etkisi ile tek yönlü akım geçişini sağlar. • Işığın girebilmesi için katot bölgesine açılan şeffaf bir pencere bulunmaktadır. 2

FOTO DİYOTLAR • Fotodiyotlar, ışık kontrollü devrelerde, alarm devrelerinde , elektronik flaşlarda ışık ölçüm

FOTO DİYOTLAR • Fotodiyotlar, ışık kontrollü devrelerde, alarm devrelerinde , elektronik flaşlarda ışık ölçüm cihazlarında ve sayıcı devrelerinde kullanılırlar. 3

FOTO DİYOTLAR • Fotodiyotlar, devreye ters bağlanır. Üzerine gelen ışık arttıkça, anot katot arası

FOTO DİYOTLAR • Fotodiyotlar, devreye ters bağlanır. Üzerine gelen ışık arttıkça, anot katot arası akım iletimi artar. 4

Foto Diyot Sağlamlık Kontrolü • Avometreyi ohm kademesine getiririz. Foto diyotu avometre uçlarına ters

Foto Diyot Sağlamlık Kontrolü • Avometreyi ohm kademesine getiririz. Foto diyotu avometre uçlarına ters olarak bağladıktan sonra fotodiyotun karanlıkta direncinin yüksek aydınlıkta ise direncinin düşük olduğunu görmemiz gerekir. Aksi durumda fotodiyot bozuktur. 5

FOTO TRANSİSTÖR • Foto transistörler de elektrik akımını ışık ile kontrol eden elemanlardır. •

FOTO TRANSİSTÖR • Foto transistörler de elektrik akımını ışık ile kontrol eden elemanlardır. • Foto diyotlara göre daha yüksek akımları iletebilirler. • Foto transistörlerde merceğe gelen ışık arttıkça, Emiter-Kollektör arası geçebilecek akım da artar. • Foto transistörlerde mercek beyz ucunun görevini görür. 6

FOTO TRANSİSTÖRÜN SAĞLAMLIK KONTROLÜ • Ölçü aleti direnç konumuna alınır. Foto transistörün ışık alan

FOTO TRANSİSTÖRÜN SAĞLAMLIK KONTROLÜ • Ölçü aleti direnç konumuna alınır. Foto transistörün ışık alan kısmı kapatılır. Bu anda ölçü aletinde sonsuz direnç gözükür. • Foto transistörün üzeri açıldığında yani ışık aldığında ölçü aletinde küçük bir değer okunur. ( 15 – 20 ). • Bunların dışındaki durumlarda foto transistör bozuktur. 7

LDR ve Fotodiyot arasındaki farklar: • LDR=Işığa göre değişen dirençtir genellikle aydınlık sensörlerinde, sokak

LDR ve Fotodiyot arasındaki farklar: • LDR=Işığa göre değişen dirençtir genellikle aydınlık sensörlerinde, sokak lambalarında kullanılır, ışığa göre elektrik üretmez. • FOTODİYOT= Fotodiyot, üzerine düşen ışıkla orantılı voltaj üretir. Genellikle uygulamada ters polarite de beslenir ve sızıntı akımının ışıkla orantılı değişmesi sağlanır. Hırsız alarm sistemlerinde, tv, müzik seti gibi uzaktan kumanda aletlerinde, otomatik açılır kapanır kapı sistemlerinde, otomatik çalışan gece lambalarında ışık algılayıcısı olarak kullanılır.

Infrared Sensörler (IR)

Infrared Sensörler (IR)

IR Sensör • Bir cismin uzaklığını ölçmek için kızılötesi dalga boyunu kullanan sensörlere infrared

IR Sensör • Bir cismin uzaklığını ölçmek için kızılötesi dalga boyunu kullanan sensörlere infrared (IR) sensör denir. • Lens aracılığı ile IR LED tarafından ışık yayılır. • Cisimden yansıyan ışık, ikinci bir lens aracılığıyla konuma duyarlı foto algılayıcı tarafından alınır. • Foto algılayıcının iletkenliği ışığın geldiği konuma göre değişir. İletkenliğe bağlı olarak bir gerilim üretilir. • Bu gerilim değerine göre uzaklık hesaplanır

Sharp IR Sensör

Sharp IR Sensör

Arduino • /* Analog. Read. Serial // the loop routine runs over and over

Arduino • /* Analog. Read. Serial // the loop routine runs over and over again forever: void loop() { // read the input on analog pin 0: Reads an analog input on pin 0, prints the result to the serial monitor. Attach the center pin of a potentiometer to pin A 0, and the outside pins to +5 V and ground. int sensor. Value = analog. Read(A 0); This example code is in the public domain. Serial. println(sensor. Value); */ delay(1); // the setup routine runs once when you press reset: void setup() { // initialize serial communication at 9600 bits per second: Serial. begin(9600); } // print out the value you read: } // delay in between reads for stability

IR Sensör ile Ses Sensörü Kontrolü

IR Sensör ile Ses Sensörü Kontrolü

Alev sensörü • Alev sensörü yangın algılamalarında sıkça kullanılan sensörlerdir. Ayrıca yangın söndüren robotlarda

Alev sensörü • Alev sensörü yangın algılamalarında sıkça kullanılan sensörlerdir. Ayrıca yangın söndüren robotlarda da kullanılmaktadır. • Alev sensörü 760 nm ~ 1100 nm ışık IR dalga boyuna duyarlıdır. • Analog çıkış (A 0): Isı direnci Gerçek zamanlı çıkış voltajı sinyalidir

const int sensor. Min = 0; // sensor minimum const int sensor. Max =

const int sensor. Min = 0; // sensor minimum const int sensor. Max = 1024; // sensor maximum void setup() { // initialize serial communication @ 9600 baud: Serial. begin(9600); } void loop() { // read the sensor on analog A 0: int sensor. Reading = analog. Read(A 0); // map the sensor range (four options): int range = map(sensor. Reading, sensor. Min, sensor. Max, 0, 3); // range value: switch (range) { case 0: // A fire closer than 1. 5 feet away. Serial. println("** Close Fire **"); break; case 1: // A fire between 1 -3 feet away. Serial. println("** Distant Fire **"); break; case 2: // No fire detected. Serial. println("No Fire"); break; } delay(1); // delay between reads }

 PIR (Passive Infrared sensor) Sensör • PIR sensörler görüş alanlarındaki insanların ve sıcak

PIR (Passive Infrared sensor) Sensör • PIR sensörler görüş alanlarındaki insanların ve sıcak kanlı canlıların yaydıkları IR ışıkları algılayabilen sensörlerdir. Genellikle hareket sensörü olarak kullanılırlar. ( hırsız alarmları, otomatik aydınlatma üniteleri gibi yerlerde ). • Algılayıcı ısı veya kızılötesi ışına maruz kaldığında elektrik yüklü yüzey oluşturan kristalimsi bir maddeden yapılmıştır. Kızılötesi ışınların çarpma miktarı değiştikçe oluşan elektriksel yük miktarı da değişir ve bu yük algılayıcının içinde ölçülebilir.

PIR • 3. 3 ile 5 V arası çalışmaktadır. Sensör yaklaşık 3 -5 metre

PIR • 3. 3 ile 5 V arası çalışmaktadır. Sensör yaklaşık 3 -5 metre arası aktif haldedir. Hareket algıladığı an DATA çıkışını HIGH yapmaktadır. Yaklaşık 15 sn HIGH’ta bulunmaktadır. Daha sonra sabit değere yani LOW’a geri dönmektedir.

PIR Sensörü Kullanımı int pir. Pin = 3; // PIR pin int led. Pin

PIR Sensörü Kullanımı int pir. Pin = 3; // PIR pin int led. Pin = 4; // LED pin int deger = 0; void setup() { pin. Mode(pir. Pin, INPUT); // PIR Pin'i giriş yapılıyor pin. Mode(led. Pin, OUTPUT); // LED Pin'i çıkış yapılıyor Serial. begin(9600); //Serial Porttan veri göndermek için baundrate ayarlanıyor. } void loop(){ deger = digital. Read(pir. Pin); // Dijital pin okunuyor Serial. println(deger); // Okunan değer seri porttan okunuyor. if (deger == HIGH) { digital. Write(led. Pin, HIGH); // Eğer okunan değer 1 ise LED yakılıyor. } else{ digital. Write(led. Pin, LOW); // Eğer okunan değer 0 ise LED söndürülüyor. } }

Renk Sensor TCS 230

Renk Sensor TCS 230

 • https: //github. com/Alexey. Krasikov/Main/tree/master/TCS 3200 • http: //www. dfrobot. com/wiki/index. php? title=TCS

• https: //github. com/Alexey. Krasikov/Main/tree/master/TCS 3200 • http: //www. dfrobot. com/wiki/index. php? title=TCS 3200_Color_Senso r_(SKU: SEN 0101)

/* void setup() { Sketch Christmas Lamp */ int S 0 = 2; //

/* void setup() { Sketch Christmas Lamp */ int S 0 = 2; // output frequency control pin TCS 230 setup(); Serial. begin(115200); int S 1 = 3; // input frequency control pin Serial. print("nnnreadynnn"); int S 2 = 6; // pin color filter control pin. Mode(R, OUTPUT); //S 2 pin. E int S 3 = 5; // pin color filter control int taos. Out. Pin = 4; // pin output for PWM pin. Mode(G, OUTPUT); //S 2 pin. E int LED = 13; // pin. D pin. Mode(B, OUTPUT); //S 2 pin. E int R = 9; delay(100); // PWM red int G = 10; // PWM green int B = 11; // PWM blue double Coeff = 0; } void loop() { int Ro = 0; // pin E Serial. print(detect. Color(taos. Out. Pin)); // serial debug int Go = 0; // pin E Serial. print("nnn"); int Bo = 0; // pin E delay(1000); }

int detect. Color(int taos. Out. Pin){ double red, blue, green; // surface detection //

int detect. Color(int taos. Out. Pin){ double red, blue, green; // surface detection // light intensity detection no filters double is. Present. Tolerance = 5; double white = color. Read(taos. Out. Pin, 0, 1); double is. Present = color. Read(taos. Out. Pin, 0, 0)/color. Read(taos. Out. Pin, 0, 1); // red Serial. print("is. Present: "); red = white/color. Read(taos. Out. Pin, 1, 1); Serial. println(is. Present, 2); // blue Serial. print("valore is. Present. Tolerance: "); blue = white/color. Read(taos. Out. Pin, 2, 1); Serial. println(is. Present. Tolerance, 2); // green if(is. Present < is. Present. Tolerance){ green = white/color. Read(taos. Out. Pin, 3, 1); Serial. println("nessuna superficie rilevata"); Serial. print("red"); return 0; Serial. println(red); } Serial. print("blue"); Serial. println(blue); Serial. print("green"); Serial. println(green);

if(green > blue && green > red){ Coeff = 255 / green; if(red >

if(green > blue && green > red){ Coeff = 255 / green; if(red > blue && red > green){ Coeff = 255 / red; Go = 255; Ro = red * Coeff; Go = green * Coeff; Bo = blue * Coeff; LED_RGB(Ro, Go, Bo); return 1; return 3; } } if(blue > green && blue > red){ Coeff = 255 / blue; } Bo = 255; Go = green * Coeff; Ro = red * Coeff; LED_RGB(Ro, Go, Bo); double color. Read(int taos. Out. Pin, int color, boolean LEDstate){ //make sure that the pin is set to input return 2; } pin. Mode(taos. Out. Pin, INPUT); taos. Mode(1); int sensor. Delay = 3;

double read. Pulse; if(LEDstate == 0){ //set pins to trigger filters taos. Mode(0); if(color

double read. Pulse; if(LEDstate == 0){ //set pins to trigger filters taos. Mode(0); if(color == 0){// bianco (no filtri) digital. Write(S 3, LOW); //S 3 // digital. Write(LED, LOW); } digital. Write(S 2, HIGH); //S 2 // Serial. print(" w"); if(LEDstate == 1){ }else if(color == 1){// red filter taos. Mode(1); digital. Write(S 3, LOW); //S 3 // digital. Write(S 2, LOW); //S 2 } digital. Write(LED, HIGH); // Serial. print(" r"); delay(sensor. Delay); }else if(color == 2){// blue filter read. Pulse = pulse. In(taos. Out. Pin, LOW, 80000); digital. Write(S 3, HIGH); //S 3 // pulse timeout read setting digital. Write(S 2, LOW); //S 2 if(read. Pulse <. 1){ // Serial. print(" b"); read. Pulse = 80000; }else if(color == 3){// green filter } digital. Write(S 3, HIGH); //S 3 // turn off sensor led digital. Write(S 2, HIGH); //S 2 taos. Mode(0); // Serial. print(" g"); } return read. Pulse; } // manages the frequency output mode Taos. Mode(0); // sero, sensor quiet

void taos. Mode(int mode){ }else if(mode == 3){ // frequenza 1: 50 if(mode ==

void taos. Mode(int mode){ }else if(mode == 3){ // frequenza 1: 50 if(mode == 0){ //power OFF digital. Write(S 0, LOW); //S 0 digital. Write(LED, LOW); digital. Write(S 1, HIGH); //S 1 digital. Write(S 0, LOW); //S 0 digital. Write(S 1, LOW); //S 1 //Serial. println("m 1: 50 m"); // Serial. println("m. OFFm"); } }else if(mode == 1){ // frequenza 1: 1 return; digital. Write(S 0, HIGH); //S 0 digital. Write(S 1, HIGH); //S 1 } // Serial. println("m 1: 1 m"); }else if(mode == 2){ // frequenza 1: 5 void LED_RGB(int Rx, int Gx, int Bx){ digital. Write(S 0, HIGH); //S 0 analog. Write(R, Rx); digital. Write(S 1, LOW); //S 1 analog. Write(G, Gx); //Serial. println("m 1: 5 m"); analog. Write(B, Bx); return; }

void TCS 230 setup(){ // init pin frequency management pin. Mode(LED, OUTPUT); // color

void TCS 230 setup(){ // init pin frequency management pin. Mode(LED, OUTPUT); // color filter management pin. Mode(S 2, OUTPUT); //S 2 pin. Mode(S 3, OUTPUT); //s 3 // output pin light-frequency conversion pin. Mode(taos. Out. Pin, INPUT); // pin to select ouput mode pin. Mode(S 0, OUTPUT); //S 0 pin. B pin. Mode(S 1, OUTPUT); //S 1 pin. A return; }