Kuvvet Algılama Direnci (FSR) Arduino
Kuvvet Algılama Dirençleri, Kuvvet Duyarlı Dirençler veya Kuvvet Sensörleri veya yalnızca FSR'ler olarak da bilinir . FSR - Force Sensing Resistor Fiziksel basıncı, sıkışmayı ve ağırlığı algılamak için özel olarak tasarlanmış düşük maliyetli ve kullanımı kolay sensörlerdir.
Bunları elektronik davullarda, cep telefonlarında, avuç içi oyun cihazlarında ve daha birçok taşınabilir elektronik cihazlarda bulacaksınız.
Bu sensörler basıncı ölçmek için harika olsa da, üzerlerinde kaç kilo ağırlık olduğunu bulmakta harika değiller. Ancak, "sensörün sıkıştırılıp sıkıştırılmadığını ve ne kadar olduğunu" öğrenmek istiyorsanız, bir sonraki dokunma algılama projeniz için bunlar iyi bir seçenektir.
FSR'ye Genel Bakış
FSR'lerde kullanılan teknoloji, 1985'ten beri kullanımda olan Interlink Electronics tarafından patentlenmiştir . Kolayca bulabileceğiniz en yaygın FSR türleri Interlink FSR-402 ve FSR-406'dır.
FSR, algılama alanına basınç uygulandıkça direnç açısından değişen değişken bir dirençten başka bir şey değildir.
Birkaç ince esnek katmandan oluşur. Ne kadar çok bastırılırsa, dirençli karbon elementleri iletken izlere o kadar çok dokunur ve bu da direnci azaltır.
Şekil ve boyut
Dışarıda çeşitli FSR seçenekleri ve onları ayıran boyut, şekil ve algılama aralığı gibi birkaç temel özellik var.
Çoğu FSR'nin dairesel veya dikdörtgen bir algılama alanı vardır. Kare FSR'ler geniş alan algılama için iyidir, küçük dairesel sensörler ise algılama alanına daha fazla doğruluk sağlayabilir.
Algılama Aralığı
FSR'nin bir diğer önemli özelliği, sensörün birbirinden ayırt edebileceği minimum ve maksimum basınçları tanımlayan nominal algılama aralığıdır.
Kuvvet oranı ne kadar düşükse, FSR o kadar hassastır. Sensörün maksimum aralığının dışındaki herhangi bir basınç ölçülemez (bu, sensöre de zarar verebilir). Örneğin, 1kg değerindeki daha küçük bir FSR, 0 ile 1kg arasında daha hassas okumalar sağlayabilir, ancak 2kg ile 5kg ağırlık arasındaki farkı söyleyemez.
FSR Nasıl Çalışır?
Söylediğimiz gibi, FSR temelde ne kadar basıldığına bağlı olarak direnç değerini değiştiren bir dirençtir.
Basınç olmadığında, sensör sonsuz bir direnç (açık devre) gibi görünür. Sensörün başına ne kadar sert bastırırsanız, iki terminal arasındaki direnç o kadar düşük olacaktır, ancak basıncı kaldırdıkça orijinal değerine geri dönecektir.
Aşağıdaki grafik, FSR 402 sensörü için farklı kuvvet ölçümlerinde sensörün direncini yaklaşık olarak göstermektedir. Verilerin logaritmik ölçeklerde çizildiğine dikkat edin.
Grafiğin genellikle 50 g ve yukarısından doğrusal olduğuna, ancak 50 g'nin altında olmadığına dikkat edin. Bu, üzerine ne zaman baskı yapsak direncinin hızla sonsuzdan 100K'ya düşeceği ve sonra daha doğrusal hale geldiği anlamına gelir.
FSR okumak
FSR'yi okumanın en kolay yolu, bir voltaj bölücü oluşturmak için FSR'yi sabit değerli bir dirençle (genellikle 10kΩ) bağlamaktır. Bunu yapmak için FSR'nin bir ucunu Güce, diğer ucunu aşağı çekme direncine bağlarsınız. Ardından sabit değerli aşağı çekme direnci ile değişken FSR direnci arasındaki nokta bir Arduino'nun ADC girişine bağlanır.
Bu şekilde, bir mikrodenetleyicinin ADC girişi tarafından okunabilen değişken bir voltaj çıkışı oluşturabilirsiniz.
Ölçtüğünüz çıkış voltajının FSR boyunca değil, aşağı çekme direnci üzerindeki voltaj düşüşü olduğunu unutmayın.
Gerilim bölücü konfigürasyonunun çıktısı aşağıdaki denklemle açıklanmaktadır:
Gösterilen konfigürasyonda, çıkış voltajı artan güçle artar.
Örneğin 5V besleme ve 10K aşağı çekme direnci ile basınç olmadığında FSR direnci çok yüksektir (yaklaşık 10MΩ). Bu, aşağıdaki çıkış voltajıyla sonuçlanır:
FSR'ye gerçekten çok bastırırsanız, direnç yaklaşık 250 Ω'a düşecektir. Bu, aşağıdaki çıkış voltajıyla sonuçlanır:
Gördüğünüz gibi, sensöre uygulanan kuvvet miktarına bağlı olarak çıkış voltajı 0 ile 5V arasında değişmektedir.
Aşağıdaki tablo, 5V besleme ve 10K çekme direnci ile sensör kuvvetine / direncine dayalı yaklaşık analog voltajı göstermektedir.
Arduino UNO'ya FSR Bağlama
FSR'yi bir arduino'ya bağlamak oldukça kolaydır.
Bir voltaj bölücü devre oluşturmak için FSR ile seri olarak 10kΩ aşağı çekme direnci bağlamanız gerekir. Ardından aşağı çekme direnci ile FSR arasındaki nokta bir Arduino'nun A0 ADC girişine bağlanır.
FSR'lerin temelde dirençler olduğunu unutmayın. Bu, onları her iki şekilde de bağlayabileceğiniz ve iyi çalışacakları anlamına gelir.
Arduino Kodu - Basit Analog FSR Ölçümleri
İlk deneyimiz için sensör verilerini Arduino'nun ADC pininden okuyacağız ve çıkışı seri monitörde göstereceğiz.
Kod oldukça basittir. Baskı miktarı olarak yorumladığı şeyi nitel bir şekilde basar. Çoğu proje için gerekli olan hemen hemen budur.
Her şey yolundaysa, aşağıdaki çıktıyı seri monitörde görmelisiniz.
Kod Açıklaması:
Çizim, FSR ve 10K pull-down'ın bağlı olduğu Arduino pininin beyanıyla başlar. Ayrıca FSR'den fsrReading
ham analog okumayı tutan değişkeni de tanımlıyoruz .
Kodun kurulum fonksiyonunda, PC ile seri iletişimi başlatıyoruz.
Döngü fonksiyonunda, analog okumayı FSR direnç bölücüsünden alıp seri monitörde görüntülüyoruz.
Daha önce belirtildiği gibi, sensörün çıkış voltajı 0V (basınç uygulanmamış) ile yaklaşık 5V (uygulanan maksimum basınç) arasındadır. Arduino bu analog voltajı dijitale dönüştürdüğünde, aslında onu 10 bitlik bir sayı olan 0 ila 1023 aralığına dönüştürür. Dolayısıyla, sensörü ne kadar sıktığınıza bağlı olarak seri monitörde 0 ile 1023 arasında bir değer göreceksiniz.
Arduino Kodu - Gelişmiş Analog FSR Ölçümleri
Bir sonraki arduino taslağımız oldukça gelişmiş. FSR tarafından ölçülen yaklaşık Newton kuvvetini ölçer. Bu, FSR'nin yaşayacağını düşündüğünüz güçleri kalibre etmek için oldukça yararlı olabilir.
Seri monitörde çıkışın nasıl göründüğü aşağıda açıklanmıştır.