Ana içeriğe atla

Konumların Kilidini Aç

Tam Hacimli Sanal Beceri Alanı üzerinde, kırmızı noktanın konumunu orijin (0, 0) ve Kahraman Bot Merkezinin başlangıç ​​konumunu (0, 36) koordinatlarında olacak şekilde bir koordinat sistemi oluşturun. Kahraman robotun turuncuyla vurgulanan Kırmızı Bloğu almasını, puanla Hedefyerleştirmesini ve robotu Tedarik Bölgesi'nde kısmen park etmesini sağlamak için [Sür], [Dön], [Konumlandırmak için Dön] ve [Dön] bloklarını kullanın. Robotun Kırmızı Bloğu alıp puanlayacağı konumun X ve Y koordinatlarını ve robotun Kahraman Robotu park edeceği konumun X ve Y koordinatlarını bulan bir algoritma oluşturun.

  • VIQRC Sanal Beceriler - Tam Ses Seviyeli Oyun Alanı'nı seçin.
  • Sürüş mesafesini ve tahrik sistemi yönünü kullanarak, robotun belirli bir mesafe kat ettikten sonraki konumunun X ve Y koordinatlarını hesaplayıp kaydeden bir algoritma oluşturun 
  • Kahraman robotu, turuncuyla vurgulanan kırmızı bloğa gidip onu alacak şekilde kodlayın. 
    • Robotun konumunun X ve Y koordinatlarını izlemek için algoritmayı kullanın.
  • Robotun bloğu alacağı konumun X ve Y koordinatlarını Yazdırma Konsoluna yazdırmak için [print] bloğunu kullanın.
  • Kahraman robotu, 1. hedefe doğru ilerleyip bloğu hedefe bırakacak şekilde kodlayın. 
    • Robotun konumunun X ve Y koordinatlarını izlemek için algoritmayı kullanın.
  • Robotun Blok'u Hedef I'e bırakacağı konumun X ve Y koordinatlarını Yazdırma Konsoluna yazdırmak için [print] bloğunu kullanın.
  • Kahraman robotu, tedarik bölgesinin bir kısmında yer alacak şekilde konumlandırın.
    • Robotun konumunun X ve Y koordinatlarını izlemek için algoritmayı kullanın.
  • Robotun Tedarik Bölgesi içinde kısmen park edeceği konumun X ve Y koordinatlarını Yazdırma Konsoluna yazdırmak için [yazdır] bloğunu kullanın.

Faydalı İpuçları

  • VIQRC Sanal Beceri Alanındaki Kahraman Robotun X ve Y koordinatlarını belirlemek için, Kahraman Robotun başlangıç ​​konumunu koordinat sisteminin orijini (0,0) olarak ayarlayın. 
  • Kahraman robotun X ve Y koordinatlarını saklamak için iki değişken tanımlayın. Projenin başlangıcında X ve Y koordinatlarının değerlerini 0'a ayarlamak için Değişkenler kategorisindeki set bloklarını kullanın.  VEXcode Değişken bloğunu ayarla, 'değerini okuyarak currentX'i 0' olarak ayarla. VEXcode Set variable block that read 'set currentY to 36'.
    • Eşleşen Python komutu:

      akımX = 0
      akımY = 36
  • Atalet Sensöründen aktarma organı yön değerini almak için Algılama kategorisindeki Muhabir bloklarını kullanın. VEXcode Sürücü yön bloğu, 'derece sürüş yönünü' olarak gösterir.
    • Eşleşen Python komutu:

      aktarma organları.başlık(DERECE)
  • Sürüş mesafesini ve aktarma organı yönünü kullanarak, belirli bir mesafe kat ettikten sonraki X ve Y koordinatlarını hesaplayın.
    • Matematiksel fonksiyon (ileri sürüş):

      X2 = X1 + sürüş mesafesi * sin(sürüş yönü)

      Y2 = Y1 + sürüş mesafesi * cos(sürüş yönü)

      Kahraman Robotu gösteren, yan yana, yukarıdan aşağıya doğru çizilmiş iki diyagram. İlk diyagramda, etrafında bir daire bulunan ve dairenin 360 derecesini gösteren etiketlerle işaretlenmiş bir robot gösterilmektedir. İkinci diyagramda robot (X1, Y1) koordinatında ve (X2, Y2) noktasına doğru yönelmiş olarak gösterilmektedir. Mesafe '(sürüş mesafesi' olarak etiketlenmiş ve açı teta sembolü ile işaretlenmiştir.

  •  Matematiksel fonksiyonları ifade etmek için Operatörler kategorisindeki fonksiyon bloğunu kullanın. Blok denklemleri içeren iki VEXcode Set değişken bloğundan oluşan bir yığın. İlk blokta 'değeri, currentX değerini currentX + drive_distance * sin of drive heading in degrees' olarak ayarla. İkinci blokta şu ifade yer alıyor: 'set currentY to currentY + drive_distance * cos of drive heading in degrees'.
    • Eşleşen Python komutu: 

      currentX = currentX + drive_distance * math.sin(drivetrain.heading(DEGREES) / 180.0 * math.pi)
      currentY = currentY + drive_distance * math.cos(drivetrain.heading(DEGREES) / 180.0 * math.pi)
  • VIQRC Sanal Beceriler Alanı Boyutları hakkında daha fazla bilgi için lütfen .