VEX IQ (1. nesil) Mesafe Sensörünün Kullanımı

Tanım

Bu sensör, kendisi ile en yakın katı nesne arasındaki mesafeyi (50mm - 1m aralık) bildirir. Ultrasonik dalgaların bir nesneden yansıyıp sensöre geri dönmesi için geçen süreyi kullanarak mesafeyi hesaplar.

VEX IQ (1. nesil) Mesafe Sensörü parçası.

Mesafe Sensörü Nasıl Çalışır: Mesafeyi Dinlemek

Mesafe sensörünün yeşil bir küpü vurmak üzere ultrasonik sinyal göndermesini ve ardından yansıyan sesi almasını gösteren şema.

Mesafe Sensörü, sesi ölçmek için sonar cihazlarıyla aynı prensipleri kullanır. Sensörün bir tarafındaki vericisiyle küçük bir ultrasonik darbe gönderir ve ardından sesin sensörün diğer tarafındaki alıcıya geri yansımasını duyma süresini ölçer. Sensör, ses darbesinin gidiş-dönüş süresini esas alarak mesafeyi hesaplar. Mesafe sensörü daha sonra ses hızına dayalı bir hesaplama yaparak robot beynine en yakın nesnenin ne kadar uzakta olduğunu bildirir. 

Yüzey, kavisli bir duvar veya top gibi düz değilse, ultrasonik dalga tüm kısımlardan eşit şekilde veya aynı anda yansımaz. Dalganın algılanabilir bir miktarını geri yansıtabilecek kadar büyük olan en yakın yüzey, cismin algılanan mesafesini belirler.


Mesafe Sensörünün Genel Kullanım Alanları:

VEXcode IQ Nesne bulundu bloğunda "Mesafe bir nesne buldu mu?" yazıyor.
İki diyagram. Yukarıda, Mesafe Sensörü yakındaki Yeşil Küp'e doğru yönlendirilmiş ve bir onay işaretiyle etiketlenmiştir. Aşağıda, mesafe sensörü yakındaki hiçbir şeye doğrultulmamış ve X sembolüyle işaretlenmiştir.

Bu sensör önünde bir nesne olup olmadığını algılayabiliyor.

VEXcode IQ Bloktan uzaklık, milimetre cinsinden mesafeyi gösterir.

Bu sensör kendisi ile bir nesne arasındaki mesafeyi ölçebilir.

  • Bir robot bu sensörü bir nesneden belirli bir mesafeye gitmek için kullanabilir. Robotun mesafe 160 mm'nin altına düşene kadar sürüşü sırasında mesafe değerinin nasıl değiştiğini görmek için aşağıdaki animasyonu izleyin.

  • Bir robot bu sensörü bir nesneye dokunmadan yaklaşmak için kullanabilir. Sürüşlerini koordine etmek için Mesafe Sensörlerini kullanan iki robotu görmek için bu animasyonu izleyin.

  • Bu sensör tarafından sağlanan değerler, robotun bir nesneye veya yüzeye yakın veya uzak olmasına bağlı olarak hızını ayarlamak için kullanılabilir. Bir robotun duvara olan uzaklığına göre nasıl ayarlandığını görmek için bu animasyonu izleyin.


Mesafe Sensörünün Yarışma Robotunda Kullanımı

  • Robot, doğru yerde olduğunda bir dizi davranışı başlatmak için Mesafe Sensörünü kullanabilir. Örneğin robot, duvardan 150 mm uzakta olduğunu algılayana kadar ileri gidebilir, ardından 90 derece dönebilir ve bir nesneyi puanlama bölgesine bırakabilir.  
  • Mesafe Sensörü, menzil içinde bir nesne algılandığında bir oyun parçasını almak gibi robot eylemlerini tetiklemek için kullanılabilir.
  • Robot, belirli bir mesafeye gelene kadar bir nesneye veya yüzeye dokunmadan yaklaşmak için Mesafe Sensörünü kullanabilir. Bu, robotun oyun parçalarını devirmediğinden emin olmak için kullanılabilir.
  • Bir robot, belirli bir mesafeye ulaşana kadar bir nesneden veya yüzeyden uzaklaşmak için Mesafe Sensörünü kullanabilir. Bu, sahadaki diğer robotlarla çarpışmaları önlemek için kullanılabilir.

VEXcode IQ'da Mesafe Sensörünü Kullanma

Mesafe Sensörünü VEXcode IQ'ya Cihaz Olarak Ekleme

Cihaz Ekle butonu seçildikten sonra VEXcode IQ Cihazları menüsü. Mesafe (1. nesil) seçeneği vurgulanmıştır.

Mesafe Sensörünü VEXcode IQ'da kodlamak için öncelikle Mesafe Sensörünü yapılandırmanız gerekir. VEXcode IQ'da bir sensörün yapılandırılması hakkında daha fazla bilgi edinmek için bu makaleyi görüntüleyin.

Sensör yapılandırıldıktan sonra projenizde kullanabileceğiniz Araç Kutusunda komutlar görünecektir.

Mesafe Sensörünün Bloklar halinde Kodlanması

VEXcode IQ Nesnesi, Distance7 yazan bloğu buldu, bir nesne buldu mu?

<Object found> bloğu, bir koşulu doğru veya yanlış olarak bildiren bir Boole raportör bloğudur. Boolean blokları, <Object found> bloğu gibi, diğer bloklar için altıgen (altı taraflı) girişlere sahip blokların içine sığar.

<Object found> Boolean bloğu, sensör bir nesneyi algılarsa 'doğru', algılamazsa 'yanlış' bildirir. Boole blokları hakkında daha fazla bilgi edinmek için Yardım veya Blok Şekli ve Anlamı makalesini ziyaret edin.

 

VEXcode IQ, bir nesneyi bulana kadar ileriye doğru hareket etmek için Mesafe Sensörü kullanan bir projeyi engeller. Proje şu şekildedir: Başladığınızda, ileri doğru sürün, Distance7 bir nesne bulana kadar bekleyin ve ardından sürüşü durdurun.

Bu örnekte <Object found> bloğu, Mesafe Sensörü bir nesne algılayana kadar robotun ileri gitmesini sağlamak için bir [Bekle] bloğuyla birlikte kullanılır. Sensör bir nesne algıladığında robot yukarıdaki resimde gösterildiği gibi sürüşü durduracaktır. 

VEXcode IQ Distance7 uzaklığını mm olarak okuyan bloktan uzaklık.

(Mesafe) bloğu, en yakın nesnenin Mesafe Sensörüne olan mesafesini bildirir. Bu, 24 mm ile 1000 mm veya 1 inç ile 40 inç arasında bir aralık bildirmektedir. (Mesafe) bloğu, dairesel boşluklar içeren blokların içinde kullanılan bir raporlama bloğudur.

 

VEXcode IQ, mesafe sensörü kullanarak mesafeyi 50 mm'den az olana kadar ileriye doğru hareket eden bir projeyi engeller. Proje başlatıldığında ileri doğru sürülmeli, Brain'e Distance7 mesafesini mm cinsinden yazdırmalı, Distance7 mesafesi mm cinsinden değeri 50'den az olana kadar beklenmeli ve ardından sürüş durdurulmalıdır.

Bu örnekte, (Mesafe) bloğu, Beyin ekranında Mesafe Sensörü ile bir nesne arasındaki mesafeyi görüntülemek için bir [Yazdır] bloğuyla birlikte kullanılır. (Mesafe) bloğu ayrıca {Wait until} bloğunun içindeki <Less than> bloğunun içinde gösterilir. Bu, robotun Mesafe Sensörü 50 milimetreden daha yakın bir nesneyi algılayana kadar sürmesine ve ardından sürüşün durmasına neden olacaktır. Bu, yukarıdaki ilk videoda gösterilmektedir.

Python'da Mesafe Sensörünü Kodlama

Not:VEX IQ (1. nesil) Mesafe Sensörünü Python'da kodlamak için, VEX IQ (2. nesil) Beynine bağlanması gerekir. VEX IQ (1. nesil) Brain, Python'ı desteklemiyor.

mesafe_7.nesne_tespit_edildi()

distance.is_object_detected komutu, bir nesne algılanırsa 'doğru', bir nesne algılanmazsa 'yanlış' rapor eder.

Not:Mesafe Sensörünün komutta görünen adı, konfigürasyonda verilen isme karşılık gelir. 

aktarma organları.ileri sür (İLERİ)
mesafe_7.nesne_tespit_edilmediği sürece
    bekle (20 MSEC)
aktarma organları.dur (Durdur)
Bu örnekte, mesafe sensörü bir nesne algılayana kadar robotun ileri doğru hareket etmesini sağlamak için,While döngüsü ve not koşulu distance.is_object_detected komutu kullanılmıştır. Yukarıdaki Python kodunda gösterildiği gibi, sensör bir nesne algıladığında robot hareket etmeyi durduracaktır.
mesafe_7.mesafe(MM)

mesafe.mesafe komutu, en yakın nesnenin Mesafe Sensörüne olan mesafesini bildirir. Bu, 24 mm ile 1000 mm veya 1 inç ile 40 inç arasında bir aralık bildirmektedir.

aktarma organı.sür (İLERİ)
beyin.ekran.yazdır (mesafe_7.mesafe(MM)
mesafe_7.mesafe(MM) olmadığı sürece < 50:
    bekle (20, MSEC)
aktarma organı.durdur()

Bu örnekte, robotun Mesafe Sensörü bir nesne algılayana kadar ileri doğru hareket etmesini sağlamak için, While döngüsü ve not koşulu distance.is_object_detected komutu kullanılmıştır. Sensör bir nesne algıladığında robot hareket etmeyi durduracaktır.

Bu örnekte, Mesafe Sensörü ile bir nesne arasındaki mesafeyi Beyin ekranında görüntülemek için distance.distance komutu brain.screen.print komutuyla birlikte kullanılmıştır. distance.distance komutu ayrıca While döngüsünün içinde not koşuluyla gösterilmiştir. Bu, robotun Mesafe sensörü 50 milimetreden daha yakın bir nesne algılayana kadar hareket etmesine ve ardından hareketini durdurmasına neden olacaktır. Bu, yukarıdaki ilk videoda gösterilmiştir.

Python kullanarak Mesafe Sensörü kodlama hakkında daha fazla bilgi edinmek için Bilgisayar Bilimleri Seviye 1 - Python kursunun 5. Ünitesine göz atın. 

For more information, help, and tips, check out the many resources at VEX Professional Development Plus

Last Updated: