Skip to main content

Görüntü Sensörünün Kullanımı - Python

Öğretmen Araç Kutusu simgesi Öğretmen Araç Kutusu - Bu Bölümün Amacı

Görme Sensörünü etkili bir şekilde kullanmak, öğrencilerin onu bulunduğu ortama göre yapılandırabilmelerini ve ayarlayabilmelerini gerektirir. Aşağıdaki etkinlikte öğrenciler her ikisini de nasıl yapacaklarını öğrenecekler.

VEXcode V5 ile Görüntü Sensörünü programlama hakkında daha fazla bilgi için VEXcode V5'tekiPythonyardım bilgilerini ziyaret edin veya VEX Kütüphanesi'nin V5 Bölümünü görüntüleyin.

Aşağıda öğrencilerinizin bu etkinlikte neler yapacaklarının bir özeti yer almaktadır:

  • Nesneleri Algılama (Vision) örnek projesini açın.

  • Görüntü Sensörünü yapılandırın.

  • Nesneleri Algılama (Vision) örnek projesini çalıştırın.

  • Tartışın ve Düşünün.

  • Görüntü Sensörünü ayarlayın.

Öğretmen İpuçları simgesi Öğretmen İpuçları

Eğer öğrenci VEXcode V5'i ilk kez kullanıyorsa, VEX Kütüphanesibirçok faydalı makaleye erişebilir. 

Öğretmen İpuçları simgesi Öğretmen İpuçları - Otomatik Tamamlama Kullanımı

Otomatik tamamlama, VEXcode V5'te yazdığınız komutun geri kalanını tahmin eden bir özelliktir. Öğrenciler VEXcode V5 üzerinde çalışırken, Python sözdizimine yardımcı olması için Otomatik Tamamlama özelliğini kullanmalarını teşvik edin. Komutu yazmaya başladığınızda otomatik tamamlama fonksiyonunu fark edebilirsiniz. İstediğiniz ismi seçmek için “Yukarı” ve “Aşağı” tuşlarını kullanın, ardından seçimi yapmak için klavyenizdeki “Tab” veya (Enter/Return) tuşuna basın. Otomatik Tamamlama'nın kullanımı hakkında daha fazla bilgi için şu makaleye bakın VEXcode V5'te, bir komutun Drivetrain kısmı sola, o komut için otomatik tamamlama seçeneklerinin kaydırılabilir listesi ise sağa doğru gösteriliyor.

Gerekli donanımı, mühendislik defterinizi alın ve VEXcode V5 'i açın.

Gerekli Malzemeler:
Adet Gerekli Malzemeler
1

VEX V5 Sınıf Başlangıç Kiti

1

VEXcode V5 (en son sürüm, Windows, macOS)

1

Mühendislik Defteri

1

Görme Sensörünü Yapılandırma (VEX Kitaplığı)

1

Görme Sensörünü Ayarlama (VEX Kütüphanesi)

1

Nesneleri Algılama (Vizyon) örnek projesi

Bu etkinlik size Görme Sensörünü kullanmak için gerekli araçları verecektir.

Komutları öğrenmek için VEXcode V5 içerisinde bulunanHelpbilgisini kullanabilirsiniz.

VEXcode V5, en solda Araç Kutusu açık ve en sağda Sürücü Yardım komutu açık olarak gösterilir. Yardım, komutun tanımını ve nasıl kullanıldığına ilişkin bilgileri gösterir.

1. Adım: Örnek Bir Proje Açın

VEXcode V5 birçok farklı örnek proje içermektedir. Bu keşifte bunlardan birini kullanacaksınız.

Aşağıdaki adımları tamamlayarak Nesneleri Algılama (Vizyon) örnek projesini açın:

  • Dosya menüsünü açın.
  • Açık Örnekler'i seçin.

Dosya menüsü açık ve Açık Örnekler kırmızı bir kutuda vurgulanmış VEXcode V5 Araç Çubuğu. Açık Örnekler, Yeni Bloklar Projesi, Yeni Metin Projesi ve Açık altındaki dördüncü menü öğesidir.

  • Uygulamanın üst kısmındaki filtre çubuğunu kullanın ve "Algılama" yı seçin.

VEXcode V5 'teki örnek proje seçim penceresi, kırmızı bir kutu ile vurgulanan üstte seçilen Algılama filtresini gösterir. Aşağıda birkaç örnek proje simgesi bulunmaktadır.

Nesneleri Algılama (Vision) örnek projesini seçin ve açın.

Örnek proje simgesi altta Nesneleri Algılama Vizyonunu okur ve solda bir sensör ve sağda algılamayı gösteren bir taslak ile bir robot simgesi gösterir.

Projenizi Nesneleri Algılama olarak kaydedin.

  • Nesneleri Algılama proje adının artık araç çubuğunun ortasındaki pencerede olduğundan emin olmak için kontrol edin.

Öğretmen İpuçları simgesi Öğretmen İpuçları

  • Öğrencilerin Dosya menüsünden Örnekleri Aç seçtiğinden emin olun.

  • Öğrencilerin Nesne Algılama (Görme) Örnek projesini seçtiğinden emin olun. Öğrencilere Açık Örnekler sayfasında seçebilecekleri birkaç seçenek olduğunu belirtebilirsiniz.

  • Öğrencilerden proje ismine kendi adlarının baş harflerini veya gruplarının adını eklemelerini isteyebilirsiniz. Öğrencilerden programlarını göndermelerini istemeniz, programları farklılaştırmanıza yardımcı olacaktır.

  • VEXcode V5'te otomatik kaydetme özelliği bulunduğundan, proje ilk kez kaydedildikten sonra tekrar kaydedilmesine gerek yoktur.

  • Eğer öğrencilerin tasarruf konusunda yardıma ihtiyacı varsa, onları şu makalelerden birine yönlendirin: 

Adım 2: Görüntü Sensörünü Yapılandırma ve Kullanma

Vizyon Sensörü yapılandırma penceresi, solda kırmızı bir küp tutan bir elin görüntüsünü, küp üzerinde bir kaplama ve üzerinde REDBOX ve W142 H142 kelimeleri ile gösterir. Sağda, BlueBox, Redbox ve Greenbox için 3 Renkli imza ayarlanmıştır.

Daha önce kaydedilmiş Nesneleri Algılama (Vision) örnek projesini açın.

Vision Sensor bu projede nasıl kullanılıyor? Proje yürütüldüğünde ne olacağını tahmin edin ve tahminleri mühendislik defterinize yazın.

  # Vex
import'tan kütüphane importları *

# Begin

project code check_red =
Event () check_blue = Event
() check_green = Event ()

# VISION
# sensörünün görünümünde mavi bir nesne olup olmadığını kontrol eder ve sonucu V5 Brain'in ekranında 1. satırda görüntüler
def has_blue_callback (): brain.screen.clear_row (1) brain.screen.set_cursor
    (1
    , 1) vexcode_vision_5_objects =
    vision_5.take_snapshot (vision_5 __BLUEBOX)
    if vexcode_vision_5_objects ve len(vexcode_vision_5_objects) > 0: brain.screen.print (" Mavi Nesne Bulundu ")
    else: brain.screen.print ("
        Mavi Nesne Yok ")

# VISION
#
        sensörünün görünümünde kırmızı bir nesne olup olmadığını kontrol eder ve sonucu V5 Brain'in ekranında 3. satırda görüntüler
def has_red_callback (): brain.screen.clear_row (3) brain.screen.set_cursor (3, 1) vexcode_vision_5_objects = vision_5.take_snapshot
    (vision_5 __
    REDBOX)
    if vexcode_vision_5_objects
    ve len(vexcode_vision_5_objects) > 0: brain.screen.print (" Kırmızı Nesne Bulundu ")
    else: brain.screen.print (" Kırmızı Nesne Yok ")

# VISION görünümünde yeşil bir
        nesne olup olmadığını kontrol eder
#
        sensor and display the result on line 5 on the V5 Brain's screen
def has_green_callback (): brain.screen.clear_row (5) brain.screen.set_cursor (5, 1) vexcode_vision_5_ objects = vision_5.take_snapshot (vision_5 __GREENBOX
    )
    if
    vexcode_vision_5_objects and len(
    vexcode_vision_5_objects) > 0: brain.screen.print (" Green Object Found ")
    else: brain.screen.print (" No Green Object ")# register event handlers check_blue (has_blue_callback) check_red
        (has_red_callback) check_green (has_green_callback

)#
        small delay to ensure that the event handlers
are ready to be used
wait (
15, MSEC

)# set the print
font for all future prints to the V5 screen brain.screen.set_font (FontType.MONO40

)# constantly runs to check for new sensor data
while True: check_blue.broadcast_and_wait (check_road_wait

)# small delay
to ensure that the event handlers are ready to be used
    (has_green_wait_wait_wait
    )( 0.1
    SANİYE),
    wait(0.1),
  • indirin ve çalıştırın. Görme Sensörünün önüne farklı renkli nesneler yerleştirin ve robotun davranışını gözlemleyin. Projede gerçekte gözlemlediklerinize kıyasla tahmininizin nasıl farklı veya doğru olduğunu mühendislik defterinize kaydedin.

Öğretmen İpuçları simgesi Öğretmen İpuçları

Üç renkli nesnenin küp olması gerekmez, yeşil, kırmızı ve mavi renkte, nispeten küçük herhangi bir nesne olabilir.

Tartışmayı Motive Et simgesi Tartışmayı Motive Et - Cevap

Öğrencilerin bu projenin mühendislik not defterlerinde ne yapacağını öngördüklerini paylaşmalarını ve ayrıca Görüntü Sensörünün nasıl yapılandırılacağını düşünmelerini sağlamak için bir sınıf tartışması kolaylaştırın.
Aşağıdaki soruları sorarak tartışmayı kolaylaştırın:

  1. Görüntü Sensörünün yapılandırılması için adımlar nelerdir?

  2. if else yapısı ne işe yarar?

  3. Odayı değiştirirsek Görüntü Sensörünün nesneleri algılama şekli ne olur?

Cevaplar farklılık gösterecektir:

  1. Öğrenciler nesnenin isminin belirlenmesi gerektiğini unutmamalıdırlar. Nesne, Görüntü Sensörünün çerçevesine yerleştirilmeli ve "Dondur" düğmesi kullanılarak sabitlenmelidir. Daha sonra "Ayarla" butonu kullanılarak renk seçilecek ve yapılandırılacaktır. Öğrenciler bu maddelistelenen adımlarıbelirtmelidir.

  2. if elseyapısı, bildirilen Boolean değerine göreif elseilk veya ikinci bölümlerindeki talimatları çalıştırır. Bu talimatın nasıl kullanılacağına dair daha fazla bilgiyi Yardım bilgilerinde bulabilirsiniz.

  3. Görüntü Sensöründen farklı bir ortamdaki nesneleri algılaması istendiğinde, aydınlatma değişebilir ve nesnelerin renkleri farklı görünebilir. Bu durum, Görüntü Sensörünün nesneleri algılamasını zorlaştırabilir.

Adım 3: Vizyon Sensörünü Ayarlama

Çoğu zaman bir nesne, örneğin bir sınıfta, bir ortamda Görme Sensörü tarafından tanınacak şekilde yapılandırılır. Görme Sensörü daha sonra rekabet ortamı gibi farklı bir ortama alındığında, nesne Görme Sensörü tarafından tanınmayabilir. Bu durum genellikle Görüntü Sensörüyapılandırıldıktan sonra aydınlatmada meydana gelen bir değişiklikten kaynaklanır Bu sorunu çözmek için Görme Sensörünüzü ayarlamanız gerekebilir.

Küp ve metin okuma redbox ve x84 y 28 üzerinde bir kaplama ile kırmızı bir küp tutan bir el ile Görüş Sensörü yapılandırma penceresi daha sonra w 158 h 166. Sağdaki Bluebox, Redbox ve Greenbox renk imzaları, kadran 4.4 olarak ayarlanmış kırmızı bir kutuda vurgulanmış bir kaydırıcı ile ayarlanır.

Daha önce kaydedilmiş Nesneleri Algılama (Vision) örnek projesini açın.

Görme Sensörünün ayarlanması nesneleri ne kadar iyi algılayabildiğini nasıl etkileyecektir? Clawbot'u odanın az ya da çok ışık alan farklı bir bölümüne götürün.

V5 Bir Tarlada Clawbot, kolu aşağıda ve pençesi mor bir kutunun etrafında açık.

  • indirin ve çalıştırın. Görme Sensörünün önüne farklı renkli nesneler yerleştirin ve robotun davranışını gözlemleyin. Mühendislik defterinizde Görme Sensörünün nesneleri ne kadar iyi algıladığını belgeleyin. Vizyon Sensörünün konum değiştirdikten sonra ayarlanması gerekiyor mu?
  • Görüntü Sensörünü gerektiği gibi ayarlayın. Görüş Sensörünü, nesneleri daha iyi algılayıp algılamadığını belirlemek ve gerektiğinde ayarlamalar yapmak için ayarlandıktan sonra test edin.

Tartışmayı Motive Et simgesi Motive Edici Tartışma - Etkinlik Üzerine Düşünme

S: Görme Sensörü nesneleri beklediğiniz gibi algıladı mı?
C: Cevaplar değişiklik gösterebilir; ancak bu sorunun amacı bilişsel düşünmeyi teşvik etmektir. Öğrenciler, Görme Sensörünün nesneleri algılama yeteneğinin ortama ve ışığa bağlı olarak değişebileceğini unutmamalıdır.

S: Görme Sensörünü gerektiği gibi ayarlayabilmek neden önemlidir?
C: Cevaplar değişiklik gösterebilse de, bir robot bir Görme Sensörü kullanıyorsa ve bir yarışmaya götürülüyorsa veya hatta bir oyun ya da mücadelede kullanılıyorsa, robotun ne kadar iyi performans göstereceği Görme Sensörünün doğruluğuna bağlı olacaktır. Hassasiyet açısından ayarlanması önemlidir.

Öğrenmenizi Genişletin simgesi Öğreniminizi Genişletin - Çoklu Nesneler

Öğrencilerden Nesne Algılama (Görüntü) projesini çalıştırmalarını ve yapılandırılmış nesnelerden birden fazlasını Görüntü Sensörünün önüne yerleştirmelerini isteyin. Ne oluyor? Bulgularını mühendislik not defterlerine kaydetmelerini isteyin.
Şimdi öğrencilerden Görüntü Sensörünün önüne yapılandırılmış bir nesne ve bilinmeyen veya yapılandırılmamış bir nesne yerleştirmelerini isteyin. Ne oluyor? Bulgularını mühendislik not defterlerine kaydetmelerini isteyin.

Öğrencilere test etmeden önce, Görüntü Sensörünün önüne üç yapılandırılmış nesne yerleştirirlerse ne olacağını sorun. Öğrencilerden test etmeden önce tahminlerini yazmalarını isteyin. Deneyden sonra gözlemlerini kaydetmelerini isteyin.

Soldaki pencerede bir Greenbox ve bir Redbox tutan iki elin gösterildiği Vision Sensor Utility arayüzü. Her renkli küpün üzerinde veri içeren bir katman bulunur. Sağ tarafta Bluebox, Redbox, Greenbox ve Yellowbox'ın imzaları hazır.

Öğrencilerin tahmin ettikleri ve gözlemledikleri konular hakkında bir tartışma başlatın.

Tartışmayı kolaylaştırmak için şu soruları sorun:

  • Bir, iki ve üç nesne arasındaki farklar nelerdi?
  • Birden fazla nesneyi tanıyabilmek için projeyi herhangi bir şekilde ayarlayacak mısınız?