Skip to main content

Ders 4: Nesne Sensörünün Kodlanması

Geçtiğimiz derste Nesne Sensörü'nü öğrenmiş ve Disk ve Küplerin yansıtma yüzdelerini toplamıştınız. Şimdi, bu değerleri VEXcode'da bir proje oluşturmak için kullanacaksınız ve bu proje, Nesne Sensörü tarafından bir Disk algılandığında Çıkış Konveyörünü durduracaktır.

Bu Derste şunları yapacaksınız:

  • VEXcode'da Nesne Sensörünü yapılandırın.
  • VEXcode'da karşılaştırma operatörlerinin nasıl kullanılacağını öğrenin.
  • Nesne Sensöründen gelen geri bildirimi kullanarak Giriş Konveyöründen Çıkış Konveyörüne bir Diski taşımak için bir proje oluşturun.

Bu Dersin sonunda, Disk Nesne Sensörü tarafından algılandığında Çıkış Konveyörünü durdurmak için önceki Dersteki projenizi geliştirmiş olacaksınız.

Çıkış Konveyörü üzerindeki ve Nesne Sensörünün altındaki yeşil disk.

Projeyi Düzenleme

Nesne Sensörü ile ilgili komutları eklemeye hazırlanmak için öncelikle 4. Ünite 2. Ders Etkinliğinden projenizi düzenleyerek başlayacaksınız.

Ünite 4 Ders 2 Etkinlikprojenizi VEXcode EXP'de açın veya burada gösterilen projeyi yeniden oluşturun.

Projenin adını değiştirÜnite 4 Ders

Ünite 4 Ders 2 projesinden üç blok yığını. İlk yığın şunu okur: Başlatıldığında, giriş konveyörü 1'i içeri doğru döndür, 7 saniye bekle ve sonra giriş konveyörü 1'i durdur. Daha sonra taşıma konveyörü 2'yi ileri doğru döndürün, 4 saniye bekleyin ve ardından taşıma konveyörü 2'yi durdurun. Son olarak çıkış konveyörü 4'ü dışarı doğru döndürün, 2 saniye bekleyin ve ardından çıkış konveyörü 4'ü durdurun. Sonraki yığın şunu okur: Sinyal kulesi 6 tamponuna basıldığında, kol 10'u durdurulacak şekilde ayarlayın. Son projede Kol 10 kontrolü durduğunda, sinyal kulesi 6'yı yeşile ve kapalıya ayarla ve sonra sinyal kulesi 6'yı kırmızıya ve yanıp sönmeye ayarla yazıyor. Son olarak giriş konveyörü 1'i durdurun, taşıma konveyörü 2'yi durdurun ve ardından çıkış konveyörü 4'ü durdurun.

VEXcode'da Nesne Sensörünü yapılandırmak için Aygıtlar Penceresini açın veAygıt Ekle'yi seçin.

Cihazlar Penceresi açık ve Cihaz Ekle düğmesi vurgulanmış.

3 kablolu cihazların listesini açmak için 3-Kabloluseçin.

Aygıtlar Penceresindeki Aygıt seçenekleri, 3 Kablo simgesi kırmızı renkle gösterilmiştir.

ArdındanNesne Sensörünü seçin.

Aygıtlar Penceresindeki 3 Kablo Aygıtı seçenekleri, Nesne Sensörü simgesi kırmızı renkle gösterilmiştir.

Yapılandırmayı tamamlamak için Aportunu seçin, ardındanDone.

Not:Nesne Sensörünün Beyindeki A portuna takılı olduğundan emin olun.

Nesne Sensörü için Port A'nın vurgulandığı Aygıtlar Penceresi.

Projedeki son iki bloğu kaldırın. Bu, bu videoda gösterildiği gibi Çıkış Konveyörü içinBeklemebloğu veDurmabloğunu içerir.

Video dosyası

ekle Projeyeblok kalana kadar bekle.

Wait untilbloğu, yığındaki bir sonraki bloğa geçmeden önce bir Boole koşulunun doğru olarak raporlanmasını bekleyen bir bloktur.

VEXcode EXP yığınının sonuna boş bir Bekleme süresi bloğu eklenerek devam ettirilmesi. Yığın şunu okur: Başlatıldığında, giriş konveyörü 1'i içeri doğru döndür, 7 saniye bekle ve sonra giriş konveyörü 1'i durdur. Daha sonra taşıma konveyörü 2'yi ileri doğru döndürün, 5 saniye bekleyin ve ardından taşıma konveyörü 2'yi durdurun. Son olarak çıkış konveyörü 4'ü dışarı doğru döndürün ve ardından bekleyin.

Karşılaştırma Operatörleri

ArtıkWait untilbloğu projeye eklendiğinde, bloğun kontrol edeceği koşulun eklenmesi gerekiyor. 

Daha önce Nesne Sensörü tarafından bildirilen yansıtma yüzdesini öğrenmiş ve bu değerleri mühendislik not defterinize kaydetmiştiniz. Bu projede Çıkış Konveyörününkadar belirli bir üstünde çalışmasını sağlamanız gerekiyor. Eşik, bir değerin kabul edilebilir aralığın üstünde, altında veya içinde olup olmadığını belirlemek için kullanılan bir şeydir. Karşılaştırma operatörleri, yansıtma değerinin belirli bir değerin üstünde olup olmadığını veya o eşik değerinin üstünde olup olmadığını kontrol etmek için kullanılabilir.

bloğunun altıgensel boşluğunabüyük bir bloğu ekleyin.bloğuna kadar bekleyin.

Az önce eklenen Bekleme Süresi bloğu, 0'ın 50'den büyük olduğu yeni bir boolean parametresiyle.

Büyükbloğunun ilk açılışına Yansıtıcılıkbloğunu ekleyin.

Bekleme Süresi bloğu artık büyük blok içerisine bir Nesne Sensörü Yansıtıcılığı bloğu eklendi. Tüm blok şimdi şu mesajı okur: Nesne sensörü A'nın % olarak yansıtıcılığı 50'den büyük olana kadar bekleyin.

Büyükbloğu ilk değeri ikinci değerle karşılaştırır. Projede şu anda bulunan Büyükbloğu, Nesne Sensörü tarafından bildirilen yansıtma yüzdesini, Boole değeriniDoğruveyaYanlışolarak bildirmeden önce '50' parametresiyle karşılaştırıyor. 

Büyük değerin vurgulandığı Bekleme Süresi bloğu. Tüm blok şimdi şu mesajı okur: Nesne sensörü A'nın % olarak yansıtıcılığı 50'den büyük olana kadar bekleyin.

Bu projenin hedeflerini düşünün. Çıkış Konveyörünün, Nesne Sensörü bir nesne algılayana kadar dönmesi ve ardından konveyörün durması gerekir. Önceki Derste toplanan değerler, projenin yığındaki bir sonraki bloğa geçmeden önce aşılması gereken eşiği belirlemek için buBüyükbloğuyla birlikte kullanılabilir.

Greater thanbloğunun ikinci parametresini '9' olarak değiştirin. 

Bu sayı, bir önceki Ders etkinliğinde toplanan değerlere dayanmaktadır. Yeşil Disk Nesne Sensörünün altındayken yansıtma %10 olarak bildirildi, bu nedenle%'dan büyük herhangi bir Trueolarak bildirilmelidir.

Büyük değeri vurgulanan ve 50'den 9'a değiştirilen Bekleme Süresi bloğu. Tüm blok şimdi şu mesajı okur: Nesne sensörü A'nın % olarak yansıtıcılığı 9'dan büyük olana kadar bekleyin.

Projenin sonunaStopbloğu ekleyin. Parametrenin 'ExitConveyor4' olarak ayarlandığından emin olun.

VEXcode EXP yığınının sonuna Stop Motor butonu eklenerek "Çıkış konveyörü 4'ü durdur" ifadesi eklenerek devam ettirilmesi. Yığın şunu okur: Başlatıldığında, giriş konveyörü 1'i içeri doğru döndür, 7 saniye bekle ve sonra giriş konveyörü 1'i durdur. Daha sonra taşıma konveyörü 2'yi ileri doğru döndürün, 5 saniye bekleyin ve ardından taşıma konveyörü 2'yi durdurun. Son olarak, çıkış konveyörü 4'ü içeri doğru döndürün, nesne sensörü A'nın % olarak yansıtma katsayısı 9'dan büyük olana kadar bekleyin ve ardından çıkış konveyörü 4'ü durdurun.

Beyninizin VEXcode'a bağlı olduğundan emin olun ve projeyi indirin.

Beyin ve Çalıştır simgelerinin arasında kırmızı bir kutu içinde İndir simgesinin bulunduğu VEXcode EXP Araç Çubuğu.

Kodu okuyun ve proje çalıştırıldığında konveyörlerin ne yapacağını tahmin edin. 

Tahmininizi mühendislik not defterinize kaydedin.

Stop Motor bloğunun yeni eklendiği VEXcode EXP yığını. Tüm yığın şunu okur: Başlatıldığında, giriş konveyörü 1'i içeri doğru döndür, 7 saniye bekle ve sonra giriş konveyörü 1'i durdur. Daha sonra taşıma konveyörü 2'yi ileri doğru döndürün, 5 saniye bekleyin ve ardından taşıma konveyörü 2'yi durdurun. Son olarak, çıkış konveyörü 4'ü dışarı doğru döndürün. Nesne sensörü A'nın yansıtma katsayısı % olarak 9'dan büyük olana kadar bekleyin ve ardından çıkış konveyörü 4'ü durdurun.

Giriş Konveyörüne yeşil bir Disk yerleştirildiğinden emin olun. Projeyi test etmek için Beyindeki Check butonuna basın.

Proje çalışırken konveyörlerin davranışını gözlemleyin.

EXP Brain, Ünite 4 Ders 4 projesini başlatmak için kırmızı kutuda belirtilen elmas Onay düğmesiyle.

Konveyörler hareket etmeyi bitirdiğinde projeyi durdurmak için Beyindeki X butonuna basın. Gözlemlerinizi mühendislik not defterinize kaydedin.

Konveyörler tahmin ettiğiniz gibi hareket etti mi? Yeşil Disk, tasarlandığı gibi Çıkış Konveyörüne taşındı mı? Neden veya neden olmasın?

Elmas X tuşuyla EXP Brain kırmızı bir kutuya çağrılıp projeyi sonlandırdı.

Projenin İncelenmesi

Yeşil Diskin Nesne Sensörü tarafından algılanmasıyla Çıkış Konveyörünün durduğu bu projedeki proje akışını inceleyelim. bloğu projenin ilerlemesini durdurana kadar bekle, ta ki koşul TRUE olarak bildirilene kadar. 

VEXcode EXP projesindeki mantık akışını görselleştiren diyagram. Bir ok, Bloğun başlamasını bekle'yi gösterir ve ardından döngüsel bir ok, bloğun koşulu doğru olana kadar beklediğini gösterir. Yalnızca nesne sensörü A'nın yansıtma katsayısı % olarak 9'dan büyük olduğunda bir sonraki blok çalışacaktır.

Spinbloğu beklemeyen bir blok olduğundan, CTE Workcell'in Nesne Sensöründen gelen değerleri ve yansıtıcılığın %9'dan büyük olma durumunu kontrol ederken konveyör motorunu döndürmeye devam etmesine olanak tanır. koşul sağlandıktan sonrablokTRUE olarak raporlanıncaya kadar bekle, proje yığındaki bir sonraki bloğa geçer ve Çıkış Konveyör motorunu durdurur.

Bilginize

Bir projede, Nesne Sensörünün altında bir nesne olduğunda Çıkış Konveyörünü durdurmak için başka bir blok kombinasyonu kullanılabilir. Set Detection Thresholdbloğu, yukarıda oluşturulan projedeGreater thanbloğunun yaptığı gibi, bir projenin başlangıcında eşiği ayarlamak için kullanılabilir. 

VEXcode EXP Set Detection Threshold bloğu 'Nesne sensörü A algılama eşiğini %50'ye ayarla' ifadesini okur.

Eşik değeri ayarlandıktan sonra, BooleanDetects objectbloğu altıgen boşluklu herhangi bir blokta kullanılabilir. Bu blok,Algılama eşiğini ayarlabloğu tarafından tanımlanan algılama eşiğine ulaşıldığında TRUE değerini, yansıtma yüzdesi bu eşiğin altında olduğunda FALSE değerini bildirecektir.

VEXcode EXP 'Nesne sensörü A nesneyi algıladı mı?' ifadesini okuyan Nesne bloğunu algılar.

Detectsobjectbloğu bir Boolean bloğu olduğundan, doğrudanWait untilbloğuna sığabilir.

VEXcode EXP yığınının alternatif versiyonu, Bekleme Süresi boolean bloğu Algılama Eşiği sistemine değiştirildi. Tüm yığın şimdi şunu okur: Başladığında, nesne sensörü A algılama eşiğini %9'a ayarla. Daha sonra giriş konveyörü 1'i içeri doğru döndürün, 7 saniye bekleyin ve ardından giriş konveyörü 1'i durdurun. Daha sonra taşıma konveyörü 2'yi ileri doğru döndürün, 5 saniye bekleyin ve ardından taşıma konveyörü 2'yi durdurun. Daha sonra çıkış konveyörü 4'ü içeri doğru döndürün, nesne sensörü A nesneyi algılayana kadar bekleyin ve ardından çıkış konveyörü 4'ü durdurun.

Anlayışınızı Kontrol Edin

Bir sonraki derse geçmeden önce, mühendislik defterinize aşağıdaki soruları cevaplayarak bu dersteki kavramları anladığınızdan emin olun.

Anladığınızı Kontrol Edin soruları > (Google Dokümanı / .docx / .pdf)


Tümünü Bir Araya Getirme Etkinliğine geçmek için Sonraki > seçin.