Teknoloji ve Hayata dair günceler

Son Yazılar


Kategoriler


Son Yorumlar..


Mindstorms EV3 Touch Sensör Kullanımı

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

Herkese merhaba,

Bugün sizinle birlikte Lego Mindstorms eğitim seti içerisinde bulunan dokunma sensörünün(touch 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 dokunma sensörü, ön düğmesinin ne zaman basıldığını veya bırakıldığını algılayan ve tek ve çoklu presleri sayabilen basit ama son derece hassas bir araçtır. Öğrenciler başlatma / durdurma kontrol sistemleri oluşturabilir, labirent çözüm robotları oluşturabilir ve teknolojinin dijital müzik aletleri, bilgisayar klavyeleri ve mutfak aletleri gibi cihazlarda kullanımını açığa çıkarabilir.

Resmi sitesinden sensörü satın almak istediğinizde 21,99$ yaklaşık olarak 108 TL gibi bir fiyatı bulunmaktadır.

Touch Sensör Kullanımı:

Bu sensör ön düğmesinin ne zaman basıldığını veya bırakıldığını algılayan ve tek ve çoklu presleri sayabilen basit ama son derece hassas bir araçtır. Programlama sayfasını açıp sensörler kısmından touch sensör bloğunu aldığımızda bu sensöre ait kullanılabilecek özelliklere şöyle bir göz atalım.

Sensörler sekmesinde Measure(ölçüm), Compare(Kıyaslama) olmak üzere 2 mod mevcuttur. Measure özelliği ile sensörün durumunu kontrol edebiliriz. Basılı mı, bırakıldı mı? Bu bilgiyi başka bir bloğa aktarıp kullanabilirsiniz. Compare modunda ise sonuç ve değer özelliklerini kullanarak başka bloklara aktarabileceğiniz bilgiler mevcuttur. Measure özelliğini kullanarak bir örnek yapalım.

Sarı sekmeli olan Sensor bölümüne gelip bir adet touch sensör bloğu alalım. Yeşil sekmeli action sekmesinden Brick Status Light bloğunu alalım. Turuncu sekmeli loop döngüsünden bir adet alalım. Aldığımız blokları döngü içerisine yerleştirelim. Sensör ile brick status light bloğu arasına yukarıdaki resimde görüldüğü gibi bir bağ kuralım. Programı çalıştırdığımızda sensörün aldığı değere göre tuğla üzerindeki ışıkların renginin değiştiğini göreceksiniz. Sensörün verdiği değeri ışıklarla test ettik. Ekrana yazdırabilir, değişken olarak kullanabilirsiniz.

Bizim çalışmalarımızda sıkça kullanacağımız bekleme kontrollü bloğa ihtiyacımız var. Flow Control yani akış kontrol sekmesinde yer alan Wait bloğundan bir adet alalım. Yukarıdaki resimde görüldüğü gibi Touch Sensor > Compare > State modunu seçelim. Blok değerini basıp bıraktıktan sonra olarak ayarlamak istiyorum.

Blok üzerinde yer alan butona bastığımda 3 farklı fonksiyon bulunmaktadır.
0 Normal 
1Basıldığında
2 – Basılıp bırakıldığında 
Bu 3 farklı fonksiyondan biz 2. sini kullanacağız.

Sensöre basılıp bırakıldığında bunun sonucunu görebilmek için bir adet motor kullanıyorum. Motor 5 sn boyunca çalışsın ve sonra da dursun. Hemen bloklarımızı hazırlayalım.

Hazırlıklarımı tamamladıktan sonra programı çalıştırdığımda, dokunma sensörüne basıp bıraktığımda 50 birim hızda 5 sn boyunca motor dönmeye başlayacaktır.

Birden fazla sensör bloğu kullanıldığında dikkat etmeniz gereken bir durum var.Kod içerisinde 2 ile tanımlanan durum sonrası 1 tanımlı durum kullanıldığında sensörün basılma durumunu beklemeden dümdüz kodu çalıştırıp geçiyor. Böyle durumlarda doğru kullanım çoğunlukta 2 tanımlı durumu kullanmak olacaktır.

Peki sensörde bulunan 3 farklı durum var. İki durumda farklı görevler yaptırmak istediğimizde nasıl yaptırabileceğiz? 

Sensörümüze basıldığında ve basılıp bırakıldığı durumlarında iki farklı görev yaptırmak istediğinizde switch döngüsünü kullanabilirsiniz. Turuncu renkli akış kontrol sekmesinde bulunan bir adet switch bloğu alalım. Switch modunu Touch Sensor > Compare > State olarak değiştirelim. Sensör değerini 2 seçtim. Programda ekranın sağ alt köşesinde bulunan port ekranında sensöre basılıp bırakıldığında 2 değerini göremeyeceksiniz. 0 ve 1 değerlerinin döndüğünü göreceksiniz. O yüzden ben burada 2 değeri yani basılıp bırakıldığında moduna bir görev atamak istiyorum. Eğer basılıp bırakırsa alanına Blip 3 sesini ekleyip 2 sn bekleme ekliyorum. Diğer durumlar için Laser sesi sonrası 2 sn bekleme ekliyorum. Programınızı çalıştırdığınızda herhangi dokunma olmazsa Laser sesi 2 sn aralıklarla çalmaya devam edecektir. Basıp bırakıldığında ise Blip 3 sesi çalıp 2 sn bekleyip durumu kontrol edecektir.

Sensörün sık kullanılan durumlarını sizlerle öğrendik. Sorularınızı yorum sayfasından bana iletebilirsiniz.

Kolay gelsin.

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?