Site icon elektromanyetix

Arduino Ultrasonik Sensör Örneği (SEN136B5B)

Ultrasonik Sensör Örneği

Arduino Ultrasonik Sensör Örneği (SEN136B5B)

Ultrasonik Sensör Örneği SEN136B5B , Seeedstudio’dan bir ultrasonik telemetre cihazıdır. Sensörün önündeki en yakın nesnenin mesafesini tespit eder (3 cm’den 400 cm’ye kadar). Bir ultrason patlaması göndererek ve bir nesneden sıçradığında yankıyı dinleyerek çalışır. Ultrason ile engelleri pingler . Arduino veya Genuino anakartı tespiti tetiklemek için kısa bir sinyal gönderir, ardından pulseIn () fonksiyonunu kullanarak aynı pin üzerinde bir nabız dinler. Bu ikinci darbenin süresi, ultrasonun nesneye gitmesi ve sensöre geri dönmesi için geçen süreye eşittir. Ses hızını kullanarak, bu kez mesafeye dönüştürülebilir.

Ultrasonik Sensör Örneği

Donanım

  • Arduino veya Genuino
  • Ultrasonik Sensör
  • Bağlantı Telleri

“Arduino UNO, elektronik ve kodlamaya başlamak için en iyi tahtadır. Bu, platformla birlikte çalıştığınız ilk deneyiminizse, Arduino UNO, denemelere başlayabileceğiniz en iyi seçimdir. UNO, tüm Arduino ailesinin en çok kullanılan ve içeriği bulunan kartıdır.

Arduino Uno, ATmega328P tabanlı bir mikro denetleyici karttır. 14 adet dijital giriş / çıkış pini (6’sı PWM çıkışı olarak kullanılabilir), 6 analog giriş, 16 MHz kristali, bir USB bağlantısı, bir güç girişi, bir ICSP başlığı ve bir sıfırlama düğmesi vardır. Mikrodenetleyiciyi desteklemek için gereken her şeyi içerir; Başlamak için bir USB kablosuyla bir bilgisayara bağlayın ya da AC-DC adaptörü ya da pille çalıştırın. UNO’yu, yanlış bir şey yapmadan çok fazla endişe etmeden tamir edebilir, en kötü durum senaryosunu değiştirebilirsiniz. Birkaç dolara çip alır ve tekrar kullanabilirsiniz.”

Devre

SEN136B5B’nin 5V pini, kart üzerindeki 5V pimine bağlanır, GND pini GND pimine bağlanır ve SIG (sinyal) pini, tahtadaki dijital pim 7’ye bağlanır.

Kod

/*
Ping))) Sensör

Bu taslak bir PING okur))) ultrasonik telemetre ve mesafeyi döndürür
aralıktaki en yakın nesneye. Bunu yapmak için, sensöre bir darbe gönderir
Bir okuma başlat, sonra geri dönmek için bir darbe dinler. Uzunluğu
geri dönen darbe, nesnenin sensörden uzaklığı ile orantılıdır.

Devre:
- PING'in + V bağlantısı))) + 5V'a bağlı
- PING'in GND bağlantısı))) toprağa bağlı
- PING'in SIG bağlantısı))) dijital pime bağlı 7

oluşturuldu 3 Kas 2008
David A. Mellis tarafından
değiştirildi 30 Ağu 2011
Tom Igoe tarafından

Bu örnek kod kamu malıdır.
http://www.arduino.cc/en/Tutorial/Ping
*/

// bu sabit değişmeyecek. Sensörün çıkışının pin numarası:
const int pingPin = 7;

void setup() {
  // seri iletişimi başlat:
  Serial.begin(9600);
}

void loop() {
  // ping süresi ve mesafe sonucu için değişkenler oluşturmak
  // inç ve santimetre cinsinden:
  long duration, inches, cm;

  // PING))) 2 veya daha fazla mikrosaniye YÜKSEK bir darbe ile tetiklenir.
  // Temiz bir YÜKSEK nabız sağlamak için önceden kısa bir DÜŞÜK nabız verin:
  pinMode(pingPin, OUTPUT);
  digitalWrite(pingPin, LOW);
  delayMicroseconds(2);
  digitalWrite(pingPin, HIGH);
  delayMicroseconds(5);
  digitalWrite(pingPin, LOW);

  // PING'den gelen sinyali okumak için aynı pin kullanılır))): YÜKSEK bir darbe
  // süresi ping gönderilmesinden itibaren geçen süre (mikro saniye cinsinden)
  // bir nesnenin yankısının alınmasına.
  pinMode(pingPin, INPUT);
  duration = pulseIn(pingPin, HIGH);

  // zamanı bir mesafeye dönüştürmek
  inches = microsecondsToInches(duration);
  cm = microsecondsToCentimeters(duration);

  Serial.print(inches);
  Serial.print("in, ");
  Serial.print(cm);
  Serial.print("cm");
  Serial.println();

  delay(100);
}

long microsecondsToInches(long microseconds) {
  // Parallax'ın PING için veri sayfasına göre))), 73.746 var
  // inç başına mikro saniye (ses, saniyede 1130 feet) hareket eder.
  // Bu, ping'in gidişatını, giden ve geri dönüşünü verir.
  // böylece engelin mesafesini almak için 2'ye böleriz.
  // Bakınız: http://www.parallax.com/dl/docs/prod/acc/28015-PING-v1.3.pdf
  return microseconds / 74 / 2;
}

long microsecondsToCentimeters(long microseconds) {
 // Ses hızı, santimetre başına 340 m / s veya 29 mikrosaniyedir.
 // Ping dışarı çıkar ve geri gider, böylece nesnenin mesafesini bulmak için
 // seyahat edilen mesafenin yarısını al.
  return microseconds / 29 / 2;
}

Kaynak:arduino.cc

Exit mobile version