Robotlara Özel Python#
giriiş#
Hero Bot Swish, bir motor seçeneği, bir motor grubu seçeneği ve Optik Sensör içermektedir.
IQ 24-25 Hızlı Röle Oyun Alanında tüm standart VEXcode VR yöntemleri kullanılabilir.
Aşağıda, robotlara özel olarak geliştirilmiş tüm yöntemlerin listesi bulunmaktadır:
Tahrik Sistemi – Robotu hareket ettirin ve döndürün.
İşlemler
drive— Robotu sonsuza dek ileri veya geri hareket ettirir.drive_for— Robotu belirli bir mesafe boyunca ileri veya geri hareket ettirir.turn— Robotu sonsuza dek sola veya sağa döndürür.turn_for— Robotu belirli sayıda derece sola veya sağa döndürür.turn_to_heading— Robotu -359 ile 359 derece arasında belirli bir yöne doğru çevirir.turn_to_rotation— Robotu belirli bir dönüşe döndürür.stop— Robotun hareketini durdurur.
Değiştiriciler
set_heading— Robotun mevcut yönünü yeni bir yöne değiştirir.set_rotation— Robotun mevcut dönüşünü yeni bir dönüşe değiştirir.set_timeout— Robotun bir hareketi bitirmek için ne kadar süre deneyeceğini ayarlar.set_drive_velocity— Robota ne kadar hızlı süreceğini söyler.set_turn_velocity— Robota ne kadar hızlı döneceğini söyler.
Alıcılar
heading— Robotun mevcut yönünü 0 ile 359,99 derece arasında döndürür.rotation— Robotun mevcut dönüşünü döndürür.is_done— Robotun hareketinin tamamlanıp tamamlanmadığını Boolean değer olarak döndürür.is_moving— Robotun hareket edip etmediğini Boolean değer olarak döndürür.velocity— Robotun ne kadar hızlı sürdüğünü döndürür.
Hareket - Robotun motorunu ve motor grubunu hareket ettirin ve takip edin.
İşlemler
spin— Bir motoru veya motor grubunu sonsuza dek ileri veya geri yönde döndürür.spin_for— Bir motoru veya motor grubunu belirli bir mesafe için döndürür.spin_to_position— Bir motoru veya motor grubunu belirli bir konuma döndürür.stop— Bir motorun veya motor grubunun dönmesini durdurur.
Değiştiriciler
set_position— Motorun veya motor grubunun mevcut konumunu yeni bir değere değiştirir.set_velocity— Bir motora veya motor grubuna ne kadar hızlı döneceğini söyler.set_timeout— Bir motorun veya motor grubunun bir hareketi bitirmek için ne kadar süre deneyeceğini ayarlar.
Alıcılar
is_done— Motorun veya motor grubunun hareketinin tamamlanıp tamamlanmadığını Boolean değer olarak döndürür.is_spinning— Motorun veya motor grubunun dönüp dönmediğini Boolean değer olarak döndürür.position— Motorun veya motor grubunun mevcut konumunu döndürür.velocity— Motorun veya motor grubunun ne kadar hızlı döndüğünü döndürür.
Konsol – Konsola yazdırın ve değerleri izleyin.
Yazdır
brain.screen.print— Konsolda metin, sayı veya değişken değerleri görüntüler.brain.screen.next_row— Konsol imlecini bir sonraki satırın başına taşır.brain.screen.clear_screen— Konsoldaki tüm satırları temizler.
Monitör
monitor_variable— İzleme sekmesine bir veya daha fazla önceden tanımlanmış değişken ekler.monitor_sensor— İzleme sekmesine bir veya daha fazla sensör değeri ekler.
Algılama - Robotun çeşitli sensörlerini kullanın.
Optik
is_near_object– Optik Sensörün menzil içinde bir nesne algılayıp algılamadığını döndürür.color– Optik Sensör tarafından algılanan rengi döndürür.brightness– Nesneden yansıyan ışık miktarını döndürür.hue– Optik Sensör tarafından algılanan tonu döndürür.object_detected– Optik Sensör bir nesne algıladığında çağrılacak bir fonksiyonu kaydeder.object_lost– Optik Sensör bir nesneyi kaybettiğinde çağrılacak bir fonksiyonu kaydeder.
Bu sayfadaki örnekler, varsayılan Oyun Alanı başlangıç konumunu kullanmaktadır.
Aktarma organları#
Tahrik sistemi, VR Robotunun nasıl hareket edeceğini ve döneceğini kontrol eder. Tahrik sistemi ileri veya geri hareket edebilir, sola veya sağa dönebilir, belirli bir yöne dönebilir ve kendi dönüşünü takip edebilir.
Eylemler#
sürmek#
drive robotu sonsuza dek ileri veya geri hareket ettirir. Robot, dönme veya durma gibi başka bir işlem verilene kadar hareket etmeye devam edecektir.
Usage:
drivetrain.drive(direction)
Parametreler |
Tanım |
|---|---|
|
Robotun hareket yönü: |
def main():
# Drive forward then stop
drivetrain.drive(FORWARD)
wait(2, SECONDS)
drivetrain.stop()
# VR threads — Do not delete
vr_thread(main)
sürüş_için#
drive_for komutu, robotu belirli bir mesafe boyunca ileri veya geri hareket ettirir. Proje, bir sonraki kod satırı çalışmadan önce robotun hareketini tamamlamasını bekleyecektir.
Usage:
drivetrain.drive_for(direction, distance, units, wait)
Parametreler |
Tanım |
|---|---|
|
Robotun hareket yönü: |
|
Robotun kat ettiği mesafe. Bu, |
|
Mesafe birimi: |
|
İsteğe bağlı. |
def main():
# Drive forward and backward
drivetrain.drive_for(FORWARD, 200, MM)
drivetrain.drive_for(REVERSE, 200, MM)
# VR threads — Do not delete
vr_thread(main)
dönüş#
turn robotu sonsuza dek sola veya sağa döndürür. Robot, sürüş veya durma gibi başka bir işlem verilene kadar dönmeye devam edecektir.
Usage:
drivetrain.turn(direction)
Parametreler |
Tanım |
|---|---|
|
Robotun dönüş yönü: |
def main():
# Turn right and left, then stop
drivetrain.turn(RIGHT)
wait(2, SECONDS)
drivetrain.turn(LEFT)
wait(2, SECONDS)
drivetrain.stop()
# VR threads — Do not delete
vr_thread(main)
sıra_için#
turn_for komutu, robotu belirli bir derece kadar sola veya sağa döndürür. Dönüş, robotun mevcut konumuna göre belirlenir. Proje, bir sonraki kod satırı çalışmadan önce robotun dönüşünün tamamlanmasını bekleyecektir.
Usage:
drivetrain.turn_for(direction, angle, units, wait)
Parametreler |
Tanım |
|---|---|
|
Robotun dönüş yönü: |
|
Robotun döndüğü derece sayısı. Bu |
|
Dönme birimi: |
|
İsteğe bağlı. |
def main():
# Turn the robot right and left
drivetrain.turn_for(RIGHT, 90, DEGREES)
wait(1, SECONDS)
drivetrain.turn_for(LEFT, 90, DEGREES)
# VR threads — Do not delete
vr_thread(main)
başlığa dön#
Yön, robotun baktığı yönü derece cinsinden ifade eder. turn_to_heading komutu, robotu -359 ile 359 derece arasında belirli bir yöne çevirir. Robot, hedef yöne ulaşmak için en kısa yöne dönecektir.
Robotun başlangıç yönü 0 derecedir.
Proje, bir sonraki kod satırını çalıştırmadan önce robotun dönüş işlemini tamamlamasını bekleyecektir.
Usage:
drivetrain.turn_to_heading(angle, units, wait)
Parametreler |
Tanım |
|---|---|
|
Robotun bakması gereken yön, derece cinsinden. Bu, -359 ile 359 arasında bir tamsayı |
|
Dönme birimi: |
|
İsteğe bağlı. |
def main():
# Turn to face the cardinal directions
drivetrain.turn_to_heading(90, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_heading(180, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_heading(270, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_heading(0, DEGREES)
# VR threads — Do not delete
vr_thread(main)
döndürmeye dön#
turn_to_rotation robotu belirli bir dönüşe döndürür.
Dönme, robotun ne kadar döndüğünü derece cinsinden ölçer. Bir projenin başlangıcında, dönme değeri 0 dereceye ayarlanır. Dönme ayrıca set_rotation yöntemi kullanılarak da ayarlanabilir.
Dönme değerleri mutlaktır. Bu, dönüş yönünün robotun mevcut dönüşüne bağlı olduğu anlamına gelir. Sağa dönmek dönmeyi artırır, sola dönmek ise dönmeyi azaltır.
Örneğin, robot 0 dereceden başlarsa ve 720 derece döndürürseniz, iki kez sağa dönecektir. Ardından 360 derece döndürürseniz, 360, 720’den küçük olduğu için bir kez sola dönecektir.
Proje, bir sonraki kod satırını çalıştırmadan önce robotun dönüş işlemini tamamlamasını bekleyecektir.
Usage:
drivetrain.turn_to_rotation(angle, units, wait)
Parametreler |
Tanım |
|---|---|
|
Robotun döneceği dönüş açısı (derece cinsinden). Bu, |
|
Dönme birimi: |
|
İsteğe bağlı. |
def main():
# Turn left, then spin in a circle
# clockwise and face right
drivetrain.turn_to_rotation(-90, DEGREES)
wait(1, SECONDS)
drivetrain.turn_to_rotation(450, DEGREES)
# VR threads — Do not delete
vr_thread(main)
durmak#
stop robotun hareketini durdurur.
Usage:
drivetrain.stop()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
def main():
# Drive forward then stop
drivetrain.drive(FORWARD)
wait(2, SECONDS)
drivetrain.stop()
# VR threads — Do not delete
vr_thread(main)
Mutatörler#
başlık belirle#
Yön, robotun baktığı yönü derece cinsinden ifade eder. set_heading komutu, robotun mevcut yönünü yeni bir yön değerine değiştirir.
Örneğin, robot sağa doğru dönmüşse, yönü 0 dereceye ayarlamak, sağa dönük bu pozisyonu yeni 0 derece yapar. Ardından robot, bu yeni yöne göre diğer pozisyonlara dönebilir.
Usage:
drivetrain.set_heading(heading, units)
Parametreler |
Tanım |
|---|---|
|
Robot için ayarlanacak yön değeri, derece cinsinden. Bu, |
|
Başlık birimi: |
def main():
# Face the new 0 degrees
drivetrain.set_heading(90, DEGREES)
drivetrain.turn_to_heading(0, DEGREES)
# VR threads — Do not delete
vr_thread(main)
döndürmeyi ayarla#
Dönme, robotun ne kadar döndüğünü derece cinsinden ölçer. Bir projenin başlangıcında, dönme değeri 0 dereceye ayarlanır. set_rotation komutu, robotun mevcut dönme değerini yeni bir değere değiştirir.
Örneğin, robot sağa doğru iki tam tur atmışsa, dönüş değeri 720 derece olacaktır. Dönüşü 0 dereceye ayarlamak, bu dönüş değerini 720’den 0 dereceye sıfırlayacaktır. Ardından robot, bu yeni değere göre dönüş yapabilir.
Usage:
drivetrain.set_rotation(rotation, units)
Parametreler |
Tanım |
|---|---|
|
Robot için ayarlanacak dönüş değeri, derece cinsinden. Bu, |
|
Dönme birimi: |
def main():
# Spin counterclockwise two times
drivetrain.set_rotation(720, DEGREES)
drivetrain.turn_to_rotation(0, DEGREES)
# VR threads — Do not delete
vr_thread(main)
zaman aşımını ayarla#
set_timeout , robotun bir hareketi tamamlamak için ne kadar süre deneyeceğini belirler. Robot bu süre içinde hareketi tamamlayamazsa, denemeyi bırakır ve bir sonraki kod satırına geçer. Bu, robotun bir harekette takılıp kalmasını önler.
Usage:
drivetrain.set_timeout(value, units)
Parametreler |
Tanım |
|---|---|
|
Robotun bir hareketi tamamlamak için deneyebileceği süre. Bu, pozitif bir tamsayı |
|
Zaman birimi: |
def main():
# Turn right after driving forward
drivetrain.set_timeout(1, SECONDS)
drivetrain.drive_for(FORWARD, 25, INCHES)
drivetrain.turn_for(RIGHT, 90)
# VR threads — Do not delete
vr_thread(main)
sürüş hızını ayarla#
set_drive_velocity komutu robota ne kadar hızlı gideceğini söyler. Daha yüksek bir yüzde robotun daha hızlı, daha düşük bir yüzde ise daha yavaş gitmesini sağlar.
Her proje, robotun varsayılan olarak %50 hızda hareket etmesiyle başlar.
Not: Daha yüksek hız, robotun daha hızlı hareket etmesini sağlar, ancak hassasiyeti azalabilir. Daha düşük hız ise robotun daha yavaş hareket etmesini sağlar, ancak hassasiyeti artabilir.
Usage:
drivetrain.set_drive_velocity(velocity, units)
Parametreler |
Tanım |
|---|---|
|
Sürüş hızı %0 ile %100 arasında değişir. Bu değer |
|
Hız birimi: % |
def main():
# Drive forward at different velocities
# Default velocity
drivetrain.drive_for(FORWARD, 150, MM)
wait(1, SECONDS)
# Drive slower
drivetrain.set_drive_velocity(20, PERCENT)
drivetrain.drive_for(FORWARD, 150, MM)
wait(1, SECONDS)
# Drive faster
drivetrain.set_drive_velocity(100, PERCENT)
drivetrain.drive_for(FORWARD, 150, MM)
# VR threads — Do not delete
vr_thread(main)
dönüş hızını ayarla#
set_turn_velocity komutu robota ne kadar hızlı döneceğini söyler. Daha yüksek bir yüzde robotun daha hızlı dönmesini, daha düşük bir yüzde ise robotun daha yavaş dönmesini sağlar.
Her proje, robotun varsayılan olarak %50 hızda dönmesiyle başlar.
Not: Daha yüksek hız, robotun daha hızlı dönmesini sağlar, ancak hassasiyeti azalabilir. Daha düşük hız ise robotun daha yavaş dönmesini sağlar, ancak hassasiyeti artabilir.
Usage:
drivetrain.set_turn_velocity(velocity, units)
Parametreler |
Tanım |
|---|---|
|
The velocity to turn with from 0% to 100%. This can be an |
|
Hız birimi: % |
def main():
# Turn at different velocities
# Default velocity
drivetrain.turn_for(RIGHT, 120, DEGREES)
wait(1, SECONDS)
# Turn slower
drivetrain.set_turn_velocity(20, PERCENT)
drivetrain.turn_for(RIGHT, 120, DEGREES)
wait(1, SECONDS)
# Turn faster
drivetrain.set_turn_velocity(100, PERCENT)
drivetrain.turn_for(RIGHT, 120, DEGREES)
# VR threads — Do not delete
vr_thread(main)
Getters#
başlık#
Yön, robotun baktığı yönü derece cinsinden ifade eder. heading komutu, robotun mevcut yönünü 0 ile 359,99 derece arasında döndürür.
Robotun başlangıç yönü 0 derecedir.
Usage:
drivetrain.heading(units)
Parametreler |
Tanım |
|---|---|
|
Başlık birimi: |
def main():
# Display the heading after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print("Heading: ")
brain.screen.print(drivetrain.heading(DEGREES))
# VR threads — Do not delete
vr_thread(main)
rotasyon#
Dönme, robotun ne kadar döndüğünü derece cinsinden ölçer. Bir projenin başlangıcında, dönme değeri 0 dereceye ayarlanır. rotation komutu robotun mevcut dönme değerini döndürür.
Sağa dönmek dönüş açısını artırır, sola dönmek ise azaltır. Örneğin, sağa iki tam tur dönmek 720 derecelik bir dönüş sağlar.
Usage:
drivetrain.rotation(units)
Parametreler |
Tanım |
|---|---|
|
Dönme birimi: |
def main():
# Display the rotation after turning
drivetrain.turn_for(RIGHT, 450, DEGREES)
brain.screen.print("Rotation: ")
brain.screen.print(drivetrain.rotation(DEGREES))
# VR threads — Do not delete
vr_thread(main)
tamamlandı#
is_done , robotun hareketinin tamamlanıp tamamlanmadığını Boolean bir değer olarak döndürür. Bu, robotun hareketine bağlı olarak diğer davranışların zamanlamasını kontrol etmek için kullanılabilir.
True— Robot hareket etmeyi bitirdi.False— Robot hala hareket halinde.
Bu yöntem, wait parametresine sahip aşağıdaki Aktarma Organı yöntemleriyle birlikte çalışır: drive_for, turn_for, turn_to_heading ve turn_to_rotation.
Usage:
drivetrain.is_done()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
hareket ediyor#
is_moving , robotun hareket edip etmediğini Boolean bir değer olarak döndürür. Bu, robotun hareketine bağlı olarak diğer davranışların zamanlamasını kontrol etmek için kullanılabilir.
True— Robot hareket ediyor.False— Robot hareket etmiyor.
Usage:
drivetrain.is_moving()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
hız#
velocity , robotun ne kadar hızlı sürdüğünü -100% ile 100% arasında bir yüzde olarak döndürür.
Usage:
drivetrain.velocity(units)
Parametreler |
Tanım |
|---|---|
|
Hız birimi: % |
Örnek
def main():
# Display the velocity after driving
drivetrain.drive_for(FORWARD, 150, MM)
brain.screen.print("Velocity: ")
brain.screen.print(drivetrain.velocity(PERCENT))
Hareket#
Swish, topları toplamak ve mancınığa taşımak için emme motorunu kullanır. Mancınık motor grubu, topları fırlatmak için mancınık kolunu indirir ve serbest bırakır.
Her motor ve motor grubunun kendine özgü bir yön davranışı vardır. Yön açıklamaları, her yönün o motoru veya motor grubunu Swish üzerinde nasıl hareket ettirdiğini açıklar.
Eylemler#
döndürmek#
spin bir motoru veya motor grubunu sonsuza kadar ileri veya geri yönde döndürür. Motor veya motor grubu, farklı bir yönde dönme veya durma gibi başka bir işlem verilene kadar dönmeye devam edecektir.
Kullanım:
Bu yöntemle, aşağıda gösterildiği gibi, mevcut iki motor veya motor grubu nesnesinden biri kullanılabilir:
motor |
Emretmek |
|---|---|
|
|
|
|
Parametreler |
Tanım |
|---|---|
|
Motorun veya motor grubunun dönüş yönü:
|
def main():
# Spin the Intake Motor to bring a Ball onto the Catapult
intake_motor.spin(FORWARD)
wait(2, SECONDS)
intake_motor.stop()
# VR threads — Do not delete
vr_thread(main)
spin_for#
spin_for komutu, bir motoru veya motor grubunu belirli bir mesafe boyunca döndürür. Dönme, motorun veya motor grubunun mevcut konumuna göre belirlenir. Proje, bir sonraki kod satırı çalışmadan önce motorun veya motor grubunun dönmesini bekleyecektir.
Kullanım:
Bu yöntemle, aşağıda gösterildiği gibi, mevcut iki motor veya motor grubu nesnesinden biri kullanılabilir:
motor |
Emretmek |
|---|---|
|
|
|
|
Parametreler |
Tanım |
|---|---|
|
Motorun veya motor grubunun dönüş yönü:
|
|
Motorun veya motor grubunun dönme mesafesi. |
|
İsteğe bağlı. Mesafe birimi: |
|
İsteğe bağlı.
|
def main():
# Release the preloaded Ball
catapult_group.spin_for(REVERSE, 5, DEGREES)
# Lower the Catapult to prepare to load another Ball
catapult_group.spin_for(FORWARD, 1350, DEGREES)
# VR threads — Do not delete
vr_thread(main)
spin_to_position#
spin_to_position , bir motoru veya motor grubunu belirli bir konuma döndürür.
Bir motorun veya motor grubunun konumu, DEGREES veya TURNScinsinden ölçülen ne kadar döndüğünü gösterir. Bir tur 360 dereceye eşittir. Bir projenin başlangıcında, motor veya motor grubunun konumu 0 dereceye ayarlanır. Motor veya motor grubunun konumu ayrıca set_position yöntemi kullanılarak da ayarlanabilir.
Pozisyon değerleri mutlaktır. Bu, dönüş yönünün motorun veya motor grubunun mevcut konumuna bağlı olduğu anlamına gelir.
Örneğin, motor veya motor grubu 0 dereceden başlayıp 720 dereceye kadar dönerse, iki tur ileri dönecektir. Daha sonra 360 dereceye kadar dönerse, 360, 720’den küçük olduğu için bir tur geri dönecektir.
Kullanım:
Bu yöntemle, aşağıda gösterildiği gibi, mevcut iki motor veya motor grubu nesnesinden biri kullanılabilir:
motor |
Emretmek |
|---|---|
|
|
|
|
Parametreler |
Tanım |
|---|---|
|
Motorun veya motor grubunun döneceği pozisyon değeri. |
|
İsteğe bağlı. Konum birimi: |
|
İsteğe bağlı.
|
def main():
# Release the preloaded Ball
catapult_group.spin_to_position(-90, DEGREES)
# Lower the Catapult to prepare to load another Ball
catapult_group.spin_to_position(1260, DEGREES)
# VR threads — Do not delete
vr_thread(main)
motoru durdur#
stop durdurma, bir motorun veya motor grubunun dönmesini durdurur.
Kullanım:
Bu yöntemle, aşağıda gösterildiği gibi, mevcut iki motor veya motor grubu nesnesinden biri kullanılabilir:
motor |
Emretmek |
|---|---|
|
|
|
|
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
def main():
# Spin the Intake Motor to bring a Ball onto the Catapult
intake_motor.spin(FORWARD)
wait(2, SECONDS)
intake_motor.stop()
# VR threads — Do not delete
vr_thread(main)
Mutatörler#
konum belirle#
Bir motorun veya motor grubunun konumu, DEGREES veya TURNScinsinden ölçülen ne kadar döndüğünü gösterir. Bir tur 360 dereceye eşittir. set_position komutu, motorun veya motor grubunun mevcut konumunu yeni bir değere değiştirir.
Örneğin, bir motor veya motor grubu 180 derece döndüyse, pozisyonu 0 dereceye ayarlamak, bu pozisyonu 180 dereceden 0 dereceye sıfırlar. Ardından motor veya motor grubu, bu yeni değere göre pozisyonlara dönebilir.
Kullanım:
Bu yöntemle, aşağıda gösterildiği gibi, mevcut iki motor veya motor grubu nesnesinden biri kullanılabilir:
motor |
Emretmek |
|---|---|
|
|
|
|
Parametreler |
Tanım |
|---|---|
|
Motor veya motor grubu için ayarlanacak konum değeri. |
|
İsteğe bağlı. Konum birimi: |
def main():
# Lower the Catapult to prepare to load another Ball
catapult_group.spin_to_position(1260, DEGREES)
# Set the new Catapult position to be 0 degrees
catapult_group.set_position(0, DEGREES)
# VR threads — Do not delete
vr_thread(main)
hızı ayarla#
set_velocity komutu, bir motora veya motor grubuna ne kadar hızlı döneceğini söyler. Daha yüksek bir yüzde, motorun veya motor grubunun daha hızlı dönmesini, daha düşük bir yüzde ise daha yavaş dönmesini sağlar.
Her proje, her bir motorun veya motor grubunun varsayılan olarak %50 hızda dönmesiyle başlar.
Not: Daha yüksek hız, motorun veya motor grubunun daha hızlı dönmesini sağlar, ancak hassasiyeti azaltabilir. Daha düşük hız ise motorun veya motor grubunun daha yavaş dönmesini sağlar, ancak hassasiyeti artırabilir.
Kullanım:
Bu yöntemle, aşağıda gösterildiği gibi, mevcut iki motor veya motor grubu nesnesinden biri kullanılabilir:
motor |
Emretmek |
|---|---|
|
|
|
|
Parametreler |
Tanım |
|---|---|
|
Dönme hızı -100% ile 100% arasında olabilir. Bu değer |
|
Hız birimi: % |
def main():
# Start spinning the Intake Motor to prepare for picking up a Ball
intake_motor.set_velocity(100, PERCENT)
intake_motor.spin(FORWARD)
# VR threads — Do not delete
vr_thread(main)
zaman aşımını ayarla#
set_timeout parametresi, bir motorun veya motor grubunun bir hareketi tamamlamak için ne kadar süre deneyeceğini belirler. Motor veya motor grubu bu süre içinde hareketi tamamlayamazsa, denemeyi bırakır ve bir sonraki kod satırına geçer. Bu, motorun veya motor grubunun bir harekette takılı kalmasını önler.
Kullanım:
Bu yöntemle, aşağıda gösterildiği gibi, mevcut iki motor veya motor grubu nesnesinden biri kullanılabilir:
motor |
Emretmek |
|---|---|
|
|
|
|
Parametreler |
Tanım |
|---|---|
|
Motorun veya motor grubunun bir hareketi tamamlamaya çalışabileceği süre. Bu, pozitif bir tamsayı |
|
Zaman birimi: |
def main():
# Limit how long the Catapult waits to reach its target
catapult_group.set_timeout(2, SECONDS)
catapult_group.spin_for(FORWARD, 2160, DEGREES)
# VR threads — Do not delete
vr_thread(main)
Getters#
tamamlandı#
is_done , motorun veya motor grubunun hareketinin tamamlanıp tamamlanmadığını Boolean bir değer olarak döndürür. Bu, motorun veya motor grubunun hareketine bağlı olarak diğer davranışların zamanlamasını kontrol etmek için kullanılabilir.
True— Motor veya motor grubu hareket etmeyi bitirdi.False— Motor veya motor grubu hala hareket halinde.
Bu yöntem, wait parametresine sahip aşağıdaki Hareket yöntemleriyle birlikte çalışır: spin_for ve spin_to_position.
Kullanım:
Bu yöntemle, aşağıda gösterildiği gibi, mevcut iki motor veya motor grubu nesnesinden biri kullanılabilir:
motor |
Emretmek |
|---|---|
|
|
|
|
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
dönüyor#
is_spinning , motorun veya motor grubunun dönüp dönmediğini Boolean değer olarak döndürür. Bu, motorun veya motor grubunun hareketine bağlı olarak diğer davranışların zamanlamasını kontrol etmek için kullanılabilir.
True— Motor veya motor grubu dönüyor.False— Motor veya motor grubu dönmüyor.
Bu yöntem, wait parametresine sahip aşağıdaki Hareket yöntemleriyle birlikte çalışır: spin_for ve spin_to_position.
Kullanım:
Bu yöntemle, aşağıda gösterildiği gibi, mevcut iki motor veya motor grubu nesnesinden biri kullanılabilir:
motor |
Emretmek |
|---|---|
|
|
|
|
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
konum#
Bir motorun veya motor grubunun konumu, DEGREES veya TURNScinsinden ölçülen ne kadar döndüğünü gösterir. Bir tur 360 dereceye eşittir. position motorun veya motor grubunun mevcut konumunu döndürür.
Bir projenin başlangıcında, motorun veya motor grubunun konumu 0 dereceye ayarlanır. Motor veya motor grubu ileri yönde tam bir tur dönerse, konum 360 derece veya 1 tur olur. Motor veya motor grubu ters yönde dönerse, konum negatif olur.
Kullanım:
Bu yöntemle, aşağıda gösterildiği gibi, mevcut iki motor veya motor grubu nesnesinden biri kullanılabilir:
motor |
Emretmek |
|---|---|
|
|
|
|
Parametreler |
Tanım |
|---|---|
|
Motorun veya motor grubunun konumunu şu şekilde döndürecek ünite: |
def main():
# Lower the Catapult to prepare to load another Ball
while not catapult_group.position(DEGREES) == 1260:
catapult_group.spin(FORWARD)
# VR threads — Do not delete
vr_thread(main)
hız#
velocity motorun veya motor grubunun ne kadar hızlı döndüğünü gösterir.
Pozitif bir değer, motorun veya motor grubunun ileri yönde döndüğü anlamına gelir. Negatif bir değer ise motorun veya motor grubunun ters yönde döndüğü anlamına gelir.
Kullanım:
Bu yöntemle, aşağıda gösterildiği gibi, mevcut iki motor veya motor grubu nesnesinden biri kullanılabilir:
motor |
Emretmek |
|---|---|
|
|
|
|
Parametreler |
Tanım |
|---|---|
|
Döndürülecek hız birimi: % |
def main():
# Print the current Catapult velocity
brain.screen.print(catapult_group.velocity(PERCENT))
# VR threads — Do not delete
vr_thread(main)
Konsol#
Konsol, bir proje çalışırken metin, sayılar ve değişken değerlerini görüntüler. Konsol yöntemleri ayrıca imleci yeni bir satıra taşıyabilir, konsolu temizleyebilir ve İzleme sekmesine değişkenler veya sensör değerleri ekleyebilir.
Yazdır#
beyin.ekran.baskı#
brain.screen.print geçerli imleç konumunu kullanarak Konsolda metin, sayı veya değişken değerleri görüntüler. Konsol API sayfasındaki print gibi davranır.
Sonraki yazdırılan değerin yeni bir satırda başlamasını istediğinizde brain.screen.next_row kullanın.
Usage:
brain.screen.print(value)
Parametreler |
Tanım |
|---|---|
|
Konsolda görüntülenecek metin, sayı veya değişken değeri. |
def main():
# Display a message in the Console
brain.screen.print("Hello, robot!")
# VR threads — Do not delete
vr_thread(main)

beyin.ekran.sonraki_satır#
brain.screen.next_row komutu, imleci Konsol’daki bir sonraki satırın 1. sütununa taşır. Yazdırılacak bir sonraki değer o satırda görünecektir.
Usage:
brain.screen.next_row()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
def main():
# Print on two rows
brain.screen.print("Row 1")
brain.screen.next_row()
brain.screen.print("Row 2")
# VR threads — Do not delete
vr_thread(main)

beyin.ekran.ekranı temizle#
brain.screen.clear_screen Konsoldaki tüm satırları temizler ve imleci 1. satıra geri taşır.
Usage:
brain.screen.clear_screen()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
def main():
# Display text, then clear it after two seconds
brain.screen.print("This will disappear...")
wait(2, SECONDS)
brain.screen.clear_screen()
# VR threads — Do not delete
vr_thread(main)
Monitör#
monitör_değişkeni#
monitor_variable komutu, VEXcode’daki İzleme sekmesine bir veya daha fazla önceden tanımlanmış değişken ekler. Bu sayede, bir proje çalışırken bir değişkenin değerinin değişimini izleyebilirsiniz.
Değişkenlerin başarılı monitor_variable izlenebilmesi için global olmaları gerekir. Her değişken adını bir dize olarak belirtin.
Usage:
monitor_variable(“variable”)
monitor_variable(“variable1”, “variable2”)
Parametreler |
Tanım |
|---|---|
|
İzlenecek önceden tanımlanmış global bir değişkenin adı, bir dize olarak verilmelidir. Birden fazla değişkeni izlemek için, her değişken adını virgülle ayırın. |
def main():
# Monitor the amount of loops
global loops
monitor_variable("loops")
# Drive in a square 3 times
for loops in range(12):
drivetrain.turn_for(RIGHT, 90, DEGREES)
drivetrain.drive_for(FORWARD, 150, MM)
# VR threads — Do not delete
vr_thread(main)
monitör_sensörü#
monitor_sensor komutu, VEXcode’daki İzleme sekmesine bir veya daha fazla sensör değeri ekler. Bu sayede proje çalışırken sensör değerlerindeki değişiklikleri izleyebilirsiniz.
Her bir sensör değerini bir dize olarak girin.
Usage:
monitor_sensor(“sensor”)
monitor_sensor(“sensor1”, “sensor2”)
Parametreler |
Tanım |
|---|---|
|
The sensor value to monitor, given as a string. To monitor more than one sensor value, separate each sensor value with a comma. Supported sensor identifiers include:
|
def main():
# Monitor the robot's heading
monitor_sensor("drivetrain.heading")
drivetrain.turn_for(RIGHT, 450, DEGREES)
# VR threads — Do not delete
vr_thread(main)
Algılama#
Optik#
nesneye yakın#
is_near_object , Optik Sensörün menzil içinde bir nesne algılayıp algılamadığını gösteren bir Boolean değer döndürür.
True– Optik Sensör bir nesneyi algılıyor.False– Optik sensör bir nesne algılamıyor.
Usage:
intake_optical.is_near_object()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
def main():
# Launch a loaded Ball once the Intake Optical Sensor detects a Ball
if intake_optical.is_near_object():
catapult_group.spin_for(REVERSE, 5, DEGREES)
# VR threads — Do not delete
vr_thread(main)
renk#
color , algılanan ton değerine bağlı olarak Color sınıfının bir örneğini döndürür. Bunlar, koşullu ifadeler oluşturmak için önceden tanımlanmış Color nesneleriyle karşılaştırılabilir.
Olası renkler şunlardır:
NONERED- 340° - 20° arasında bir renk tonu değeriGREEN- 80° - 140° arasında bir renk tonu değeriBLUE- 200° - 240° arasında bir renk tonu değeriYELLOW- 40° - 60° arasında bir renk tonu değeriORANGE- 20° - 40° arasında bir renk tonu değeriPURPLE- 240° - 280° arasında bir renk tonu değeriCYAN- 140° - 200° arasında bir renk tonu değeri
Not: Optik Sensör, belirtilen renkle eşleşen ton aralıklarını arıyor. Belirli ton aralıklarını algılamak için hue bölümüne bakın.
Usage:
intake_optical.color()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
def main():
# Launch a loaded Ball once yellow is detected in the Intake
if intake_optical.color() == YELLOW:
catapult_group.spin_for(REVERSE, 5, DEGREES)
# VR threads — Do not delete
vr_thread(main)
parlaklık#
brightness nesneden yansıyan ışık miktarını yüzde olarak temsil eden ondalık sayı (float) olarak döndürür.
Yüzde oranının yüksek olması, optik sensöre daha fazla ışığın geri yansıdığı anlamına gelir. Yüzde oranının düşük olması ise daha az ışığın geri yansıdığı anlamına gelir.
Usage:
intake_optical.brightness()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
def main():
# Launch a loaded Ball once the Intake Optical Sensor sees a Ball
if intake_optical.brightness() > 0:
catapult_group.spin_for(REVERSE, 5, DEGREES)
# VR threads — Do not delete
vr_thread(main)
renk tonu#
hue algılanan rengin ton değerini 0 ile 359 arasında ondalık sayı (float) olarak döndürür.
Renk tonu, renk çemberi üzerindeki sayılar kullanılarak rengi tanımlamanın bir yoludur.

Usage:
intake_optical.hue()
Parametreler |
Tanım |
|---|---|
Bu yöntemin parametresi yoktur. |
def main():
# Launch a loaded Ball once the Intake Optical Sensor reports a hue value
if intake_optical.hue() > 100:
catapult_group.spin_for(REVERSE, 5, DEGREES)
# VR threads — Do not delete
vr_thread(main)
nesne_tespit edildi#
object_detected , Optik Sensör yeni bir nesne algıladığında çağrılacak bir fonksiyonu kaydeder.
Usage:
intake_optical.object_detected(callback, arg)
Parametreler |
Tanım |
|---|---|
|
Optik Sensör yeni bir nesne algıladığında yürütülen, önceden tanımlanmış bir fonksiyon. |
|
İsteğe bağlı. Geri çağrı fonksiyonuna iletilecek argümanları içeren bir tuple. Daha fazla bilgi için Parametreli Fonksiyonları Kullanma bölümüne bakın. |
def launch_ball():
catapult_group.spin_for(REVERSE, 5, DEGREES)
def main():
# Launch the Ball when the Intake Optical Sensor detects an object
intake_optical.object_detected(launch_ball)
# VR threads — Do not delete
vr_thread(main)
nesne_kayboldu#
object_lost , Optik Sensör algılanan bir nesneyi kaybettiğinde çağrılacak bir fonksiyonu kaydeder.
Usage:
intake_optical.object_lost(callback, arg)
Parametreler |
Tanım |
|---|---|
|
Optik Sensör algılanan nesneyi kaybettiğinde yürütülen, önceden tanımlanmış bir fonksiyon. |
|
İsteğe bağlı. Geri çağrı fonksiyonuna iletilecek argümanları içeren bir tuple. Daha fazla bilgi için Parametreli Fonksiyonları Kullanma bölümüne bakın. |
def lower_catapult():
catapult_group.spin_to_position(1260, DEGREES)
def main():
# Lower the Catapult when the Intake Optical Sensor no longer detects an object
intake_optical.object_lost(lower_catapult)
# VR threads — Do not delete
vr_thread(main)