Sensrler Asl Ergn Basn Sensrleri zerlerine den basnla
Sensörler Aslı Ergün
Basınç Sensörleri Üzerlerine düşen basınçla orantılı olarak fiziki yapılarında meydana gelen değişimden dolayı basınç seviyesini ya da basınç değişimi seviyesini elektriksel işarete dönüştüren devre elemanlarına denir. Basınç sensörleri, çalışma prensibine göre dört grupta incelenebilir. • Kapasitif basınç ölçme sensörleri • Strain gage (şekil değişikliği) sensörler • Load cell (yük hücresi) basınç sensörleri • Piezoelektrik özellikli basınç ölçme sensörleri
Kapasitif Basınç Sensörleri Kondansatörler yapıları gereği elektrik yükü Kondansatörlerin yük depolayabilme kapasiteleri ise; depolayabilir. Ø Kondansatör plakalarının boyutlarına, Ø Plakalar arasındaki mesafenin uzaklığına ve Ø İki plaka arasındaki yalıtkan (dielektrik) malzemenin özelliğine bağlıdır.
Kapasitif Basınç Sensörleri Kondansatör plakaları birbirinden uzaklaştırılırsa ya da esnetilirse veya iki plaka arasındaki dielektrik malzeme hareket ettirilirse, kondansatörün kapasitesi değişir. Kondansatörün kapasitesi ile beraber alternatif akıma gösterdiği direnç de değişir. İşte bu prensipten hareketle kapasitif basınç sensörleri üretilmiştir.
Kapasitif Sensör Alandaki kapasitif değişikliği saptar. Metal harici maddeler de algılanabilir. Elektrostatik yüzey Aktif elektrod Arz elektrodu LED Ayar vidası Bağlantı kablosu
Kapasitif Sensör Target
Kapasitif Sensör
Kapasitif Sensör
Kapasitif Sensör
Kapasitif Sensör
Kapasitif Sensör
Kapasitif Sensör
Kapasitif Sensör
Strain Gauge Sensörleri Temel olarak strain gaugeler esneyebilen bir tabaka üzerine ince bir telin veya şeridin çok kuvvetli bir yapıştırıcı ile yapıştırılmasından oluşmuştur
Strain Gauge Sensörleri Üzerindeki basıncın etkisinden dolayı tabakanın esnemesi, iletken şeridin de gerilerek uzamasına sebep olmaktadır. Bu uzama esnasında telin boyu uzayarak kesiti azalacaktır. Bilindiği gibi iletkenlerin kesiti azaldıkça dirençleri artacağından uygulanan kuvvete bağlı olarak iletkenin direncinde de değişme olacaktır. Bu direnç değişimine bağlı olarak uygulanan kuvvetin miktarını tespit edilebilir
Strain Gauge Sensörleri Uygulanan ağırlık (kg) Çıkış ( m. V ) 0 0 10 0. 10 20 0. 20 30 0. 30 40 0. 40
Strain Gauge Sensörleri
Strain Gauge Sensörleri
Load Cell Sensörleri
Load Cell Sensörleri Yük hücresi (load cell) daha çok elektronik terazilerin yapımında kullanılan basınç sensörüdür. Asıl çalışma prensibi strain gauge gibidir. Yukarıda 4 noktadan ölçme yapan bir yük hücresi görülmektedir. Tek noktadan ya da iki noktadan ölçüm yapanları da bulunmaktadır. A, B, C, D noktalarındaki strain gagelerin dirençleri basınca bağlı olarak değişir. Bu değişim ile orantılı olarak da basınç miktarını tespit edebiliriz.
/* Stage 1 sketch for the load cell Stage 1 simply sets up the load cell and take an analogue reading. */ int load. Cell = A 1; //output from load cell int analog. Value = 0; const int num. Readings = 10; int readings[num. Readings]; int index = 0; int total = 0; int rolling. Average = 0; //determines the number of values in the rolling average // the readings from the analog input // the index of the current reading // the running total // the rolling average reading
void setup() { Serial. begin(9600); for (int this. Reading = 0; this. Reading < num. Readings; this. Reading++) //This need to be in the set-up section to aviod resetting the array in the loop readings[this. Reading] = 0; } void loop(){ analog. Value = analog. Read(load. Cell); rolling. Reading(); Serial. print(analog. Value); Serial. print(", "); Serial. println(rolling. Average); delay(500); } // initialize all the readings in the array to 0
void rolling. Reading() { total= total - readings[index]; // subtract the last readings[index] = analog. Read(load. Cell); total= total + readings[index]; index = index + 1; // read from the sensor // add the reading to the total: // advance to the next position in the array: if (index >= num. Readings) // if we're at the end of the array wrap around to the beginning index = 0; rolling. Average = total / num. Readings; // Serial. println(rolling. Average); delay(1); } // delay in between reads for stability
Piezoelektrik Basınç Sensörleri Piezoelektrik özellikli algılayıcılarda kuartz (quartz), roşel (rochelle) tuzu, baryum, turmalin gibi kristal yapılı maddeler kullanılır. Bu elemanlar üzerlerine gelen basınca göre küçük değerli bir elektrik gerilimi ve akımı üretir. Bu elektrik akımının değeri basıncın değeri ile doğru orantılıdır. Piezoelektrik özellikli elemanlar hızlı tepki verdiklerinden ani basınç değişikliklerini ölçmede yaygın olarak kullanılır.
Piezoelektrik Basınç Sensörleri
Denge ve Eğim Sensörleri Bazı otomasyon sistemlerinde ya da robot projelerinde eğimin algılanması gerekebilir. Bu durumlarda eğimi algılayabilmek için içlerinde civa damlacığı ya da metal bilye bulunan eğim sensörleri kullanılır. Bu sensörler bulundukları konuma göre içlerindeki civa damlacığının ya da metal bilyenin sensör içerisindeki anahtarları açması ya da kapamasıyla çalışır.
İvmeölçer-Akseloremetre • Bir hareketin ivme niceliğini belirten, taşıtın hızlanmasından doğan sarsıntıları, titreşimleri gösteren araç (hızölçer). • Bir eksen üzerinde ölçüm yapar, diğer eksene duyarsızdır. • Uygulama alanları: – Titreşimler , patlamalar , etkiler , şok dalgaları ölçümleri. – Hava yastıkları , çamaşır makineleri, kalp monitörleri , araba alarmları.
İvme • İvme, fizik kuralı olarak bilinen a = F / m ifadesi ile bulunuyor. • Buradaki F ifadesi, hareket yönünde uygulanan kuvveti, m ise cismin sahip olduğu kütleyi ifade ediyor. • Burada F ifadesi vektörel bir nicelik olup, m gibi skaler bir niceliğe bölündüğünde vektörel bir nicelik olan a ifadesi meydana geliyor.
İvmeölçer • İvmeölçer veya akselerometre, bir kütleye uygulanan ivmeyi ölçen cihaz. • Uygulanan ivmenin ölçümünde, koordinat ivmesi (referans ivme) bilinmesine gerek duyulmuyor. Bunun yerine ivmeölçer, içindeki test kütlesine referans eksenindeki, kütleden kaynaklı olan uygulanan kuvvetlere bakıyor. Örneğin; • dünya üzerinde deniz seviyesine yakın bir bölgede düz bir yüzey üzerinde ivmeölçerin gösterdiği değer 9. 81 m / s 2 olurken, • serbest düşen bir cisim üzerinde veya boş uzayda göstereceği değer 0 m / s 2 oluyor.
• • • • İvme sensörleri analog ve sayısal çıkışlı olmak üzere ikiye ayrılıyor. Analog ivme sensörleri, ivmenin değişmesine göre sürekli gerilim değeri veriyor. Sayısal ivme sensörleri ise; uygulama alanına göre, modüle edilmiş çıkış değerleri veriyor. İvme sensörleri seçilirken göz önünde bulundurulması gereken özellikler şunlardır: » Eksen Sayısı: Bilindiği gibi ivme sensörlerinin hareketi kontrol edebilmesi için birden fazla eksene sahip olması gerekiyor. Piyasada çok eksenli bir çok ivmeölçer mevcut. Ancak en yoğun olarak 2 ve 3 eksenli ivmeölçerler kullanılıyor. » Hassasiyet: Ölçümün önemine göre hassasiyeti düşük veya yüksek ivme sensörleri tercih edilebiliyor. Hassasiyeti yüksek olan ivme sensörleri ivmedeki küçük bir değişimde dahi çok büyük tepkiler verebiliyor. » Bant Genişliği: Yavaş hareket eden bir sistemde ivme değişimlerini algılayabilmek için bant genişliğinin 50 Hz, yüksek hızda ise 100 Hz olması gerekiyor. » Empedans: Uygulanan sistemin çıkış elemanının empedansının, uygulanan ivmeölçerle uygun olması gerekiyor.
Arduino ve İvmeölçerler-ADXL 337
Arduino ve İvmeölçerler-ADXL 337 • • • /* ADXL 337 ile İvme Ölçme Uygulaması ADXL 337 3 Eksen İvmeölçer ile İvme Ölçümü İvmeölçerin her bir ekseni için okuma gerçekleştiriyoruz. X ekseni için Analog 0 pininden, Y ekseni için Analog 1 pininden, Z ekseni için Analog 2 pininden okuma gerçekleştiriyoruz. */
• • • // Bu iki değişkenin doğruluğundan emin oluyoruz. //ADXL 337 için bu değer 3 (± 3 g) ‘dir. int scale = 3; // Arduino Uno gibi 5 V çıkış veren bir mikrodenetleyici kullanacaksak bu kod satırını eklememiz gerekiyor. boolean micro_is_5 V = true; void setup() { // Seri haberleşmeyi başlatıyoruz. Seri haberleşme hızımız 115200 bps’dir. Serial. begin(115200); }
• • • • // İvmeölçer verilerimizi her bir eksen için okuyoruz. void loop() { // X, Y ve Z ekseninin bilgilerini A 0, A 1 ve A 2 pininden okuyoruz. int raw. X = analog. Read(A 0); int raw. Y = analog. Read(A 1); int raw. Z = analog. Read(A 2); // Her eksen için ölçülen değerleri Analog Dijital Dönüştürme işleminden geçiriyoruz. float scaled. X, scaled. Y, scaled. Z; // 5 V için. . . if (micro_is_5 V) { scaled. X = mapf(raw. X, 0, 675, -scale, scale); // 3. 3/5 * 1023 =~ 675 scaled. Y = mapf(raw. Y, 0, 675, -scale, scale); scaled. Z = mapf(raw. Z, 0, 675, -scale, scale); }
// 3. 3 V için. . . else { scaled. X = mapf(raw. X, 0, 1023, -scale, scale); scaled. Y = mapf(raw. Y, 0, 1023, -scale, scale); scaled. Z = mapf(raw. Z, 0, 1023, -scale, scale); } // X, Y, Z ekseninden okuduğumuz bilgileri Arduino Serial Monitor ekranında gözlemleyebiliyoruz. • Serial. print(“X: “); Serial. println(raw. X); • Serial. print(“Y: “); Serial. println(raw. Y); • } • •
Arduino ve İvmeölçer- mma 7361
//Programa : Teste Acelerometro MMA 7361 //Alterações e comentários : Arduino e Cia #include <Accelero. MMA 7361. h> //Carrega a biblioteca do MMA 7361 Accelero. MMA 7361 accelero; int x; int y; int z; void setup() { Serial. begin(9600); accelero. begin(13, 12, 11, 10, A 1, A 2); //Seta a voltagem de referencia AREF como 3. 3 V accelero. set. ARef. Voltage(3. 3); //Seta a sensibilidade (Pino GS) para +/-6 G accelero. set. Sensitivity(LOW); accelero. calibrate(); } void loop() { x = accelero. get. XAccel(); //Obtem o valor do eixo X y = accelero. get. YAccel(); //Obtem o valor do eixo Y z = accelero. get. ZAccel(); //Obtem o valor do eixo Z Serial. print("nx: "); //Mostra os valores no serial monitor Serial. print(x); Serial. print(" ty: "); Serial. print(y); Serial. print(" tz: "); Serial. print(z); Serial. print("t. G*10^-2"); delay(500); }
- Slides: 39