Teknoloji ve Hayata dair günceler

Son Yazılar


Kategoriler


Son Yorumlar..


Mindstorms Ev3 Ultrasonik Sensor Kullanımı

Kemal İKİZOĞLUKemal İKİZOĞLU

Herkese merhaba,

Bugün sizinle birlikte Lego Mindstorms Ev3 eğitim seti içerisinde bulunan ultrasonik sensörünün(ultrasonic sensor) özelliklerini ve sensörün nasıl kullanıldığını öğreneceğiz. Bu sensör her mindstorms seti içerisinde 1 adet vardır.

EV3 ultrasonik sensörü, ses dalgaları ile karşısındaki objeyi algılar ve kendisine olan mesafesini ölçebilir. Sensörün iki farklı modu vardır: Measure(Ölçme) ve Compare(Kıyaslama). Ölçme modunda sensör 250cm veya 100 inçe kadar ölçüm yapabilir, dinleme modunda etrafındaki diğer ultrasonik sensor kullanan robotları algılayabilir, tetikleme işlemleri yapabilir.

Resmi sitesinden sensörü satın almak istediğinizde 31,99$ yaklaşık olarak 305 TL gibi bir fiyatı bulunmaktadır. Şimdi biraz daha bu özelliklerin detaylarına bakalım.

ULTRASONIC SENSOR OBJECT EV3

Ultrasonik Sensör Kullanımı

EV3 ultrasonik sensörü, ses dalgaları ile karşısındaki objeyi algılar ve ona olan mesafesini ölçebilir.Dikkat etmemiz gereken bir durum var ki ultrasonik sensör ile infrared sensör aynı değildir. Görselleri birbirini anımsatıyor olsa da farklıdır. Programlama sayfasını açıp sensörler kısmından ultrasonik sensör bloğunu aldığımızda bu sensöre ait kullanılabilecek özelliklere şöyle bir göz atalım.

Mindstorms Ev3 uygulamasında Sensör sekmesi içerisinde bulunan ultrasonik sensör bloğunu alıyorum. Bloğun temel olarak Measure(ölçme) ve Compare(Kıyaslama) özellikleri bulunmaktadır. Measure kısmında Advanced, Distance Cm, Distance Inc, Presence özellikleri bulunmaktadır.

Distance(uzaklık) özelliği parçanın temel görevi olan sensör ile engel arasındaki mesafeyi ölçmektedir. Distance Centimeter, adından da anlaşılacağı üzere santimetre cinsinden 255 cm kadar ölçüm yapmaktadır. Distance Inches, uzaklığı inç birimi üzerinden 100 inç aşmamak üzere sensör ile engel arasındaki mesafeyi ölçmektedir.

Yukarıda yer alan örnekte ultrasonik sensörü Distance Centimeters özelliğini kullanarak “cm” cinsinden ölçtüğümüz değeri tuğla ekranına yazdıran kod bloklarını görüyorsunuz. Sensör sekmesi içerisinden alınan bu blok ile ölçme kıyaslama işlemleri yapıyoruz ve bu işlemleri yaparken okunan değerleri de başka bir bloğa aktarabiliyoruz. Bu önemli bir ayrımdır. Bu sayede biz ölçtüğümüz değeri tuğla ekranına yazdırabiliyoruz.

Ölçme bloğu içerisinde yer alan bir başka fonksiyon da Presence Dinleme/Bulma modudur.. Ultrasonik sensörün çevreyi dinleme ve farklı ultrasonik sensörlerle iletişime geçme gibi sık kullanılmayan fakat etkili bir özelliği vardır. Sensörün bu özelliğiyle çevredeki nesneleri dinlemeye başlayalım.

Sensör modu içerisinde Measure > Presence seçtiğimizde sensörümüz çevredeki ultrasonik sensörleri dinleyici halini alıyor. Dinleme durumunda değeri “0” ya da mantık değerine göre “False”, varlık göründüğü takdirde “1” ya da mantık değerine göre “True” olacaktır.

Yukarıda yer alan kod bloklarıyla ultrasonik sensörün Listen özelliğine ait anlık değeri ekranda 0 veya 1 şeklinde görüntülenecektir. Kod bloğunun devamına algılama / keşfetme durumuna uygun bir kodlama yapabilirsiniz.

Bir sonraki özelliğimiz ise Measure > Advanced. Ölçmenin bu menü içerisinde ekstra iki özelliği daha var. Bu ölçüm özellikleriyle tek bir ultrasonik sinyal mi yoksa sürekli sinyaller mi göndereceğini seçebilirsiniz. Ping, tek bir sinyal gönderip sinyal dönüşü sonrası tekrar ölçüm yaparken Continuous gönderdiği sinyalin dönmesini beklemeden sürekli olarak sinyal göndererek bu işlemi gerçekleştirir. Ev3 setiyle ileri seviye çalışmalar yapacağınız zaman bu mod işinizi görecektir.

Ultrasonik sensörün en sık kullanılan modlarından biri de Compare yani kıyaslama modudur. Belirlenen kritere uygun işlem yapabilmenize olanak sağlar. Bir engele, duvara, başka bir robota olan uzaklığın ölçümü yapılır. Blok içerisinde karşılaştırma türü, değer için eğer şu sayıdan küçükse, büyükse, küçük eşitse … gibi ifadeler kullanılır. Sonuç durumu için de mantıksal veya sayısal sonuç kullanabilirsiniz. Yukarıda yer alan örnekte sensör bloğu kullanılarak uzaklık değeri 50’den küçükse tuğlanın ses çıkarmasını istedim. Değerim 50’den küçük olduğunda şartım sağlanıyor ve durum doğrulanıyor. Doğru olduğunda döngüden çıkış yapılıyor ve ses çalmaya başlıyor.

Bu örneğimizde switch bloğu kullanarak hazırladığım örneği inceleyelim. Örnekte kıyaslama modunda uzaklık değeri 50’den küçükse ekranda Cok Yakın yazarken, uzaklık değeri 50’den büyükse Cok Uzak yazacaktır.

Bu ekrana yazdırmak değil de motorların hareketi olabilir, Eğer uzaklık değeri 50’den küçükse hızı 30, uzaklık değeri 30’den küçükse hızı 20, uzaklık değeri 10’dan küçükse durmasını istiyorum.

Hazırlayacağımız örneğimizde sensör bloğu değil de Wait bloğu kullandık. Belirlediğimiz aralık gerçekleştikten sonra bir sonraki aralığın gerçekleşmesi bekleniyor.

Sensör blokları içerisinde yer alan Presence Modu kullanımını yazımın başlangıcında anlatmıştım. Sensör bloğu içerisinde sensörün mantıksal ve sayısal değerinin kullanılmasına olanak sağlayan bir bloktur. Presence / Listen modu akış olayları içerisinde bulunan Wait bloğu içerisinde de bulunmaktadır. Yukarıda yer alan örneğimizde bu özelliği kullandık. Motorlar 20 hızında dinleme modu aktif bir şekilde ilerliyor. Başka bir sensör varlığı algılandığı zaman Blip4 sesi çıkardıktan sonra duracaktır.

Wait bloğunda ultrasonik sensör > Change > Distance Centimeter moduna bir bakalım. Direction özelliğinde 3 farklı durum bulunmaktadır. Increase değeri arttır, Decrease değeri azalt, Any herhangi bir yönde bir doğrultuyu takip eder. Amount ise değeri belirler. Hangi yönde kaç değerinde bir işlem gerçekleştirileceğini ayarlayabilirsiniz. Santimetre modunun yanında bir de inç modu bulunmaktadır. Birim dışında bir farklılığı bulunmamaktadır. Santimetre modunu kullanarak bir örnekle devam edelim.

Örneğimizde A ve D portlarına bağlı motorlar 30 hızında ilerlerken engele 10 cm kala duracaktır. Ters yönde 20 hızında 10 cm geri gidecektir. Robotunuza hizalama yaptırmak istediğinizde de kullanabileceğiniz bir mod olabilir. Çok sık kullanılmasa da bilinmesi önemlidir.

Ultrasonik sensörümüzün kullanımı, bilinmesi gereken özellikleri genel hatlarıyla bu şekildedir. Sensör üzerinde çalışmalar yaptıkça ileri seviye detayları deneyimledikçe daha etkin kullanabilirsiniz.

Bir sonraki yazımda görüşmek dileğiyle..

Eğitim ve teknoloji haberlerini, ilginç ve önemli bilgileri, kendimi geliştirdiğim alanlardaki öğrendiğim tecrübelerimi blogumda paylaşıyorum. Öğrenmekten ve paylaşmaktan zevk alıyorum.İnandığım bir şey var ki istisnalar hariç, hiçbir şey imkansız değildir. Mucizeler için zaman gerekir! Bu benim yaşam felsefem.

Yorumlar 0
İlk yorumu yazmak ister misin?