İVME SENSÖRÜNDEN GELEN VERİYİ "g" CİNSİNDEN GÖRMEK

Başlatan iruraz, 07 Ağustos 2011, 16:39:37

iruraz

Herkese merhaba,
İvme sensörü olarak ADXL335 kullanıyorum. Seri porttan aldığım verileri "g" cinsinden hesaplamaya çalışıyorum ama mantıklı sayılar çıkmıyor. Örneğin sensör düz durumdayken  x ve y eksenleri sıfır çıkması gerekirken daha farklı değerler buluyorum. Sensör düz durumdayken (xyz eksenine göre) aldığım değerler x:335 y:339 z:407 .
Alıntı YapRx = (AdcRx * Vref / 1023 - VzeroG) / Sensitivity

Rx=((335*3.3/1023)-1.65)/0.33
Rx =-1.7253
bu eşitliğe göre x ekseninde g 'yi hesapladığımda  -1.7253 gibi bir sayı çıkıyor, sıfır ya da sıfıra yakın bir sayı çıkması gerekmez miydi? Alınan değerler AdcRx=335 , Vref=3.3 ,  VzeroG=1.65 , Sensivity=0.33 Katalogdaki değerler Vref=3V 'a göre ben ise 3.3V kullanıyorum. Vref, VzeroG ve Sensivity değelerini ona göre değiştirdim ama gene de böyle bir sayı ortaya çıktı. Acaba nerede hata yapıyorum?  ???  İlgilenenlere şimdiden teşekkür ederim.

bymrz


iruraz

Zaten bu formülasyonu Barış Samancı 'nın sitesinden almıştım.

iyildirim

İşlemciniz nedir. Eğer ADC referansınız 5V ise X ve Y eksenlerinde ölçülen sonuçlar doğru.

1.65/5*1023 = 337.6
Z ekseni içinde sensör düz durumdayken +1G ölçmeniz gerekli. Bu durumda da sensör çıkışı 1G için 0.34V gibi birşey oluyor.
407/1023*5 -1.65 = .339V
Zaten sensörün datasheetinde de 330mV/G denmiş.

Kullandığınız formüldeki Vref'i 3.3 değil 5 olarak kullanırsanız sorun kalmıyor.


muhittin_kaplan

normal durumda kütle çekim kuvveti 1g dir. Yanılıyormuyum?

iyildirim


GreeN

@iyildirim ustaya katılıyorum.

x:335 y:339 z:407  değerlerine karşılık yaklaşık  x:0 y:0 z:1 olduğu belli.
buna göre (407*5/1023-1,65)/0,33 = 1,028 gibi bir değer çıkar.

Sensörün beslemesi 3.3 volt bu tamam , ADC Vref 5v. olmasın? (MCU vref+ bağlantısını kontrol edin.)
Terörü Lanetliyoruz.

iruraz

Haklısınız. Vref değerini sensörü çalıştırdığım 3.3V almışım, 5V olmalıydı. Bu arada ATmega328 çipi olan Arduino-Uno kullanıyorum. Yardımlarınız için çok teşekkür ederim. Şimdiki hedefim gelen verileri matlab'a atıp oluşturacağım sanal yüzeyi ivme sensörü ile hareket ettirmeye çalışacağım. Yardımlarınız için çok teşekkür ederim.