Robotspecifikus blokkok#
Bevezetés#
A Flop nevű hősbot tartalmaz egy szívómotort, egy karmotort és egy IQ AI látásérzékelőt.
Minden szabványos VEXcode VR blokk használható az IQ 26-27 szintlépés Játszótéren.
Az alábbiakban felsoroljuk az összes elérhető robotspecifikus blokkot:
Mozgás – Mozgasd és kövesd a robot motorjait.
Műveletek
pörgesd a motort – Örökké forgatja a motort az egyik irányában.
spin motor forgása – Megadja a motor forgatásának fokokban vagy fordulatokban megadott távolságát.
motor forgatása a kívánt pozícióba – A motort egy adott pozícióba forgatja.
motor leállítása – Leállítja a motor forgását.
Beállítások
motor sebesség beállítása – Megadja a motor forgási sebességét.
set motor timeout – Beállítja, hogy mennyi idő alatt próbálja meg a motor befejezni a mozgást.
Pozíció
motor pozíció – A motor aktuális pozícióját jelzi.
motor pozíció beállítása – A motor aktuális pozícióját új értékre módosítja.
Értékek
motor kész – Jelzi, hogy a motor mozgása befejeződött-e.
motor forog – Jelzi, hogy a motor forog-e.
motor sebesség – Megadja a motor forgási sebességét százalékban, -100%-tól 100%-ig.
AI Vision – Rögzítsen és elemezzen tárgyakat az IQ AI Vision érzékelővel.
Műveletek
objektumadatok lekérése – Egy adott aláíráshoz tartozó adatokat rögzít, például egy észlelt AI-osztályozást.
Beállítások
objektum elem beállítása – Kiválaszt egy adott objektumot a listából.
Értékek
objektum létezik – Visszaadja, hogy észlelt-e bármilyen osztályozást.
object is – Visszaadja, hogy észlelhető-e egy adott osztályozás.
az objektum AprilTag – Visszaadja, hogy az észlelt objektum egy adott azonosítóhoz illeszkedő AprilTag-e.
objektumok száma – Visszaadja az észlelt objektumok számát.
objektum tulajdonság – Visszaadja a szélességet, magasságot, középpontX-et, középpontY-t, originX-et vagy originY-t.
Az ezen az oldalon található példák az alapértelmezett Játszótér kezdőpozícióját használják.
Mozgás#
A Flop a szívómotort használja a játékelemek összegyűjtésére és kidobására. A karmotor felemeli és leengedi a kart.
Minden motornak megvannak a saját iránybeállításai. Az iránynevek leírják, hogyan mozog a motor a Flop-on.
Műveletek#
forgó motor#
A forgó motor veremblokk örökre két irány egyikébe forgatja a motort. A motor addig forog, amíg egy másik műveletet nem kap, például egy másik irányba forgatja vagy leállítja.
[IntakeMotor v] pörgetése [bevitel v]
Paraméterek |
Leírás |
|---|---|
motor |
A forgatandó motor: Szívómotor vagy Karmotor. |
irány |
A motor forgásiránya:
|
Példa
amikor elindul
[Score a Bean Bag in a Blue Goal.]
fordulás [balra v] irányba (90) fokkal ▶
hajtás [előre v] irányba (35) [hüvelyk v] értékkel ▶
fordulás [jobbra v] irányba (90) fokkal ▶
[ArmMotor v] pörgetése [fel v] irányba (1) [fordulat v] értékkel ▶
hajtás [előre v] irányba (40) [hüvelyk v] értékkel ▶
[IntakeMotor v] pörgetése [kiesés v]
forgó motor#
A motor forgása veremblokk egy adott távolságig megforgatja a motort. A forgás a motor aktuális pozíciójához viszonyított. A projekt megvárja, amíg a motor forgása befejeződik, mielőtt a verem következő blokkja futna.
[ArmMotor v] pörgetése [fel v] irányba (500) [fok v] értékkel ▶
Paraméterek |
Leírás |
|---|---|
motor |
A forgatandó motor: Szívómotor vagy Karmotor. |
irány |
A motor forgásiránya:
|
távolság |
A motor megpördülési távolsága. A fokok egész számokat használjunk. A fordulatok egész vagy tizedes törteket használhatunk. |
egység |
A távolság mértékegysége: fok vagy fordulat. |
és ne várj |
Válassza a nyilat (▶) a blokk kibontásához, azaz a „és ne várj” felirat használatához, így a verem következő blokkja azonnal lefut. |
Példa
amikor elindul
[Score a Bean Bag in a Blue Goal.]
fordulás [balra v] irányba (90) fokkal ▶
hajtás [előre v] irányba (35) [hüvelyk v] értékkel ▶
fordulás [jobbra v] irányba (90) fokkal ▶
[ArmMotor v] pörgetése [fel v] irányba (1) [fordulat v] értékkel ▶
hajtás [előre v] irányba (40) [hüvelyk v] értékkel ▶
[IntakeMotor v] pörgetése [kiesés v]
forgassa a motort a pozícióba#
A motor forgatása pozícióba veremblokk egy motort forgat egy adott pozícióba.
Egy motor pozíciója azt mutatja meg, hogy milyen messzire fordult el, fokban vagy fordulatokban mérve. Egy fordulat 360 foknak felel meg. Egy projekt elején a motor pozíciója 0 fokra van állítva. A motor pozíciója a set motor position blokkal is beállítható.
A pozícióértékek abszolútak. Ez azt jelenti, hogy a forgás iránya a motor aktuális pozíciójától függ.
Például, ha a motor 0 foknál indul és 720 fokos pozícióig forog, akkor két fordulatot előre forog. Ha ezután 360 fokos pozícióig forog, akkor egy fordulatot hátra forog, mert a 360 fok kisebb, mint 720.
[ArmMotor v] pörgetése (500) [fok v] pozícióba ▶
Paraméterek |
Leírás |
|---|---|
motor |
A forgatandó motor: Szívómotor vagy Karmotor. |
pozíció |
A motor forgási pozícióértéke. A fokok egész számokat használjunk. A fordulatok egész vagy tizedes törteket használhatunk. |
egység |
A pozíció mértékegysége: fok vagy fordulat. |
és ne várj |
Válassza a nyilat (▶) a blokk kibontásához, azaz a „és ne várj” felirat használatához, így a verem következő blokkja azonnal lefut. |
Példa
amikor elindul
[Score a Bean Bag in a Blue Goal.]
fordulás [balra v] irányba (90) fokkal ▶
hajtás [előre v] irányba (35) [hüvelyk v] értékkel ▶
fordulás [jobbra v] irányba (90) fokkal ▶
[ArmMotor v] pörgetése (1) [fordulat v] pozícióba ▶
hajtás [előre v] irányba (40) [hüvelyk v] értékkel ▶
[IntakeMotor v] pörgetése [kiesés v]
motor leállítása#
A motor leállítása veremblokk leállítja a kiválasztott motort.
[IntakeMotor v] leállítása
Paraméterek |
Leírás |
|---|---|
motor |
A leállítandó motor: Szívómotor vagy Karmotor. |
Példa
amikor elindul
[Score a Bean Bag in a Blue Goal.]
fordulás [balra v] irányba (90) fokkal ▶
hajtás [előre v] irányba (35) [hüvelyk v] értékkel ▶
fordulás [jobbra v] irányba (90) fokkal ▶
[ArmMotor v] pörgetése [fel v] irányba (1) [fordulat v] értékkel ▶
hajtás [előre v] irányba (40) [hüvelyk v] értékkel ▶
[IntakeMotor v] pörgetése [kiesés v]
várakozás (1) másodpercig
[IntakeMotor v] leállítása
Beállítások#
beállított motorsebesség#
A motorsebesség beállítása blokk megmondja a motornak, hogy milyen gyorsan forogjon. Magasabb százalékos érték esetén a motor gyorsabban, alacsonyabb százalékos érték esetén pedig lassabban forog.
Minden projekt úgy kezdődik, hogy minden motor alapértelmezés szerint 50%-os sebességgel forog.
Megjegyzés: A nagyobb sebesség gyorsabban forog a motorban, de kevésbé pontos lehet. Az alacsonyabb sebesség lassítja a motor forgását, de pontosabb lehet.
[IntakeMotor v] sebességének beállítása [50] [% v]
Paraméterek |
Leírás |
|---|---|
motor |
A motor, amely a következő sebességét állítja be: Szívómotor vagy Karmotor. |
sebesség |
A motor forgási sebessége. A százalék 0%-tól 100%-ig terjedő egész számokat használ. |
egység |
A sebesség mértékegysége: %. |
Példa
amikor elindul
[Score a Bean Bag in a Blue Goal.]
fordulás [balra v] irányba (90) fokkal ▶
hajtás [előre v] irányba (35) [hüvelyk v] értékkel ▶
fordulás [jobbra v] irányba (90) fokkal ▶
[ArmMotor v] pörgetése [fel v] irányba (1) [fordulat v] értékkel ▶
hajtás [előre v] irányba (40) [hüvelyk v] értékkel ▶
[IntakeMotor v] sebességének beállítása [100] [% v]
[IntakeMotor v] pörgetése [kiesés v]
motor időtúllépésének beállítása#
A motor időtúllépésének beállítása veremblokk beállítja, hogy mennyi idő alatt próbáljon meg egy motor befejezni egy mozgást. Ha a motor nem tud befejezni ennyi idő alatt, akkor leállítja a próbálkozást, és továbblép a verem következő blokkjára. Ez megakadályozza, hogy a motor elakadjon egy mozgásnál.
[ArmMotor v] időkorlátjának beállítása [1] másodpercre
Paraméterek |
Leírás |
|---|---|
motor |
A motor, amelynek időtúllépését be kell állítani: Szívómotor vagy Karmotor. |
idő |
Az az időtartam másodpercben, amíg a motor megpróbálhat befejezni egy mozgást. Ez lehet egész szám vagy tizedes tört. |
Példa
amikor elindul
[Score a Bean Bag in a Blue Goal.]
fordulás [balra v] irányba (90) fokkal ▶
hajtás [előre v] irányba (35) [hüvelyk v] értékkel ▶
fordulás [jobbra v] irányba (90) fokkal ▶
[ArmMotor v] időkorlátjának beállítása [2] másodpercre
[ArmMotor v] pörgetése [fel v] irányba (1) [fordulat v] értékkel ▶
hajtás [előre v] irányba (40) [hüvelyk v] értékkel ▶
[IntakeMotor v] pörgetése [kiesés v]
Pozíció#
motor pozíciója#
Egy motor helyzete azt mutatja meg, hogy mennyit forgott, fokban vagy fordulatokban mérve. Egy fordulat 360 foknak felel meg. A motorpozíció riporterblokkja jelenti a motor aktuális helyzetét.
Egy projekt elején a motor pozíciója 0 fokra van állítva. Ha a motor egy teljes fordulatot előre forog, a pozíció 360 fok vagy 1 fordulat lesz. Ha a motor az ellenkező irányba forog, a pozíció negatív lesz.
([ArmMotor v] pozíciója [fok v] egységben)
Paraméterek |
Leírás |
|---|---|
motor |
A motor, amely a következő pozíciót jelenti: Szívómotor vagy Karmotor. |
egység |
A motor helyzetének jelzésére szolgáló mértékegység: fok vagy fordulat. |
Példa
amikor elindul
[Score a Bean Bag in a Blue Goal.]
fordulás [balra v] irányba (90) fokkal ▶
hajtás [előre v] irányba (35) [hüvelyk v] értékkel ▶
fordulás [jobbra v] irányba (90) fokkal ▶
amíg <([ArmMotor v] pozíciója [fok v] egységben) [math_less_than v] [360]>
[ArmMotor v] pörgetése [fel v]
várakozás (0.002) másodpercig
vége
[ArmMotor v] leállítása
hajtás [előre v] irányba (40) [hüvelyk v] értékkel ▶
[IntakeMotor v] pörgetése [kiesés v]
beállított motor pozíció#
Egy motor helyzete azt mutatja meg, hogy mennyit forgott, fokban vagy fordulatokban mérve. Egy fordulat 360 foknak felel meg. A motor pozíciójának beállítása veremblokk a motor aktuális helyzetét egy új értékre módosítja.
Például, ha egy motor 180 fokra forgott, a pozíció 0 fokra állítása visszaállítja ezt a pozíciót 180-ról 0 fokra. Ezután a motor az új érték alapján foroghat a pozíciókba.
[ArmMotor v] pozíciójának beállítása (0) [fok v] értékre
Paraméterek |
Leírás |
|---|---|
motor |
A motor, amely a következő pozíciót állítja be: Szívómotor vagy Karmotor. |
pozíció |
A beállítandó pozícióérték. A Fokok egész számokat használhatnak. A Fordulatok egész vagy tizedes törteket használhatnak. |
egység |
A pozíció mértékegysége: fok vagy fordulat. |
Példa
amikor elindul
[Score a Bean Bag in a Blue Goal.]
fordulás [balra v] irányba (90) fokkal ▶
hajtás [előre v] irányba (35) [hüvelyk v] értékkel ▶
fordulás [jobbra v] irányba (90) fokkal ▶
[ArmMotor v] pozíciójának beállítása [0] [fok v] értékre
[ArmMotor v] pörgetése [fel v] irányba (1) [fordulat v] értékkel ▶
hajtás [előre v] irányba (40) [hüvelyk v] értékkel ▶
[IntakeMotor v] pörgetése [kiesés v]
Értékek#
elkészült a motor#
A motor kész logikai blokk jelzi, hogy a motor mozgása befejeződött-e. Ez felhasználható más viselkedések időzítésének vezérlésére a motor mozgása alapján.
Igaz — A motor mozgása befejeződött.
Hamis — A motor még mindig mozog.
Ez a blokk a következő, és ne várjon paraméterrel rendelkező mozgásblokkokkal működik együtt: forgatja a motort erre a pozícióra és forgatja a motort a kívánt pozícióba.
<[ArmMotor v] kész?>
Paraméterek |
Leírás |
|---|---|
motor |
A motor, amely jelzi, hogy befejezte-e a mozgást: Szívómotor vagy Karmotor. |
Példa
amikor elindul
[Score a Bean Bag in a Blue Goal.]
fordulás [balra v] irányba (90) fokkal ▶
hajtás [előre v] irányba (35) [hüvelyk v] értékkel ▶
fordulás [jobbra v] irányba (90) fokkal ▶
[ArmMotor v] pörgetése (1) [fordulat v] pozícióba ◀ és ne várjon
várakozás amíg <[ArmMotor v] kész?>
hajtás [előre v] irányba (40) [hüvelyk v] értékkel ▶
[IntakeMotor v] pörgetése [kiesés v]
a motor forog#
A motor forog logikai blokk jelzi, hogy a motor forog-e. Ez felhasználható más viselkedések időzítésének vezérlésére a motor mozgása alapján.
Igaz — A motor forog.
Hamis — A motor nem forog.
Ez a blokk a következő, és ne várjon paraméterrel rendelkező mozgásblokkokkal működik együtt: forgatja a motort erre a pozícióra és forgatja a motort a kívánt pozícióba.
<[IntakeMotor v] forog?>
Paraméterek |
Leírás |
|---|---|
motor |
A motor, amely jelzi, hogy forog-e: Szívómotor vagy Karmotor. |
Példa
amikor elindul
[Score a Bean Bag in a Blue Goal.]
fordulás [balra v] irányba (90) fokkal ▶
hajtás [előre v] irányba (35) [hüvelyk v] értékkel ▶
fordulás [jobbra v] irányba (90) fokkal ▶
[ArmMotor v] pörgetése [fel v] irányba (1) [fordulat v] értékkel ▶
hajtás [előre v] irányba (40) [hüvelyk v] értékkel ▶
[IntakeMotor v] pörgetése [kiesés v]
várakozás amíg <nem <[IntakeMotor v] forog?>>
[IntakeMotor v] leállítása
motorsebesség#
A motorsebesség riporterblokk a motor forgási sebességét adja meg százalékos formában, -100%-tól 100%-ig.
([IntakeMotor v] sebessége [% v] egységben :: custom-motion)
Paraméterek |
Leírás |
|---|---|
motor |
A motor, amely a következő motorok sebességét jelenti: Szívómotor vagy Karmotor. |
egység |
A motorsebesség kijelzéséhez használt mértékegység: %. |
Példa
amikor elindul
[Score a Bean Bag in a Blue Goal.]
fordulás [balra v] irányba (90) fokkal ▶
hajtás [előre v] irányba (35) [hüvelyk v] értékkel ▶
fordulás [jobbra v] irányba (90) fokkal ▶
[ArmMotor v] pörgetése [fel v] irányba (1) [fordulat v] értékkel ▶
hajtás [előre v] irányba (40) [hüvelyk v] értékkel ▶
[IntakeMotor v] pörgetése [kiesés v]
várakozás [0.2] másodpercig
([IntakeMotor v] sebessége [% v] egységben :: custom-motion) nyomtatása ▶
AI látás#
Műveletek#
objektumadatok lekérése#
Az objektumadatok lekérése blokk egyetlen aláírásra szűri az IQ AI Vision Sensor keretrendszeréből származó adatokat – egy mentett leírást valamiről, amit az érzékelő felismer, például egy játékelemet a pályán.
Az adathalmaz a 0 indexszel kezdődően, szélesség szerint a legnagyobbtól a legkisebbig rendezett objektumokat tárolja. Minden objektum tulajdonságai az object property blokk használatával érhetők el. Ha nem található egyező objektum, akkor üres adathalmazt ad vissza.
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
Paraméter |
Leírás |
|---|---|
aláírás |
Úgy szűri az adathalmazt, hogy csak az adott aláírás adatait tartalmazza. Az elérhető aláírások:
|
Példa
amikor elindul :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] pörgetése [kiesés v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (90) fokkal ▶
[Find and face the nearest red Bean Bag.]
fordulási sebesség beállítása (30) [% v]
[object_counter v] beállítása [1] értékre
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
ismétlés ([AIVision v] objektumok száma)
[AIVision v] objektum elemének beállítása (object_counter) értékre
ha <[AIVision v] objektum [RedBeanBag v]?> akkor
if <([AIVision v] objektum [középX v]) < (140)> then
fordulás [balra v]
else if <([AIVision v] object [centerX v]) > (180)> then
fordulás [jobbra v]
különben
hajtás leállítása
vége
megszakítás
vége
[object_counter v] megváltoztatása [1] értékkel
vége
Beállítások#
objektumelem beállítása#
Az objektumelem beállítása blokk beállítja, hogy az adathalmaz melyik elemét kell használni.
[AIVision v] objektum elemének beállítása [1] értékre
Paraméterek |
Leírás |
|---|---|
tétel |
Az adathalmazban használandó elem száma. |
Példa
amikor elindul :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] pörgetése [kiesés v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (90) fokkal ▶
[Find the index of the nearest red Bean Bag.]
[object_counter v] beállítása [1] értékre
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
ismétlés ([AIVision v] objektumok száma)
[AIVision v] objektum elemének beállítása (object_counter) értékre
ha <[AIVision v] objektum [RedBeanBag v]?> akkor
([Nearest Red Bean Bag is ] és (object_counter) összekapcsolása) nyomtatása ▶
megszakítás
különben
[object_counter v] megváltoztatása [1] értékkel
vége
vége
Értékek#
objektum létezik#
Az objektum létezik blokk egy logikai értéket ad vissza, amely jelzi, hogy észlelhető-e objektum az adathalmazban.
Igaz – Az adathalmaz tartalmaz egy észlelt objektumot.
Hamis – Az adathalmaz nem tartalmaz észlelt objektumokat.
<[AIVision v] objektum létezik?>
Paraméterek |
Leírás |
|---|---|
Ennek a blokknak nincsenek paraméterei. |
Példa
amikor elindul :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] pörgetése [kiesés v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (90) fokkal ▶
[Turn until a Bean Bag is detected.]
fordulási sebesség beállítása (30) [% v]
fordulás [jobbra v]
ismétlés amíg <[AIVision v] objektum létezik?>
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
vége
hajtás leállítása
tárgy#
Az objektum blokk egy logikai értéket ad vissza, amely azt jelzi, hogy egy észlelt objektum megfelel-e egy adott osztályozásnak.
Igaz – Az adathalmazban található elem a konkrét objektum.
Hamis – Az adathalmazban található elem nem a konkrét objektum.
<[AIVision v] objektum [RedBeanBag v]?>
Paraméter |
Leírás |
|---|---|
objektum |
Melyik objektummal hasonlítsuk össze az elemet: PirosBabzsák, KékBabzsák vagy SárgaBabzsák? |
Példa
amikor elindul :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] pörgetése [kiesés v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (90) fokkal ▶
[Find the index of the nearest red Bean Bag.]
[object_counter v] beállítása [1] értékre
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
ismétlés ([AIVision v] objektumok száma)
[AIVision v] objektum elemének beállítása (object_counter) értékre
ha <[AIVision v] objektum [RedBeanBag v]?> akkor
([Nearest Red Bean Bag is ] és (object_counter) összekapcsolása) nyomtatása ▶
megszakítás
különben
[object_counter v] megváltoztatása [1] értékkel
vége
vége
objektum az AprilTag#
Az objektum egy AprilTag blokk egy logikai értéket ad vissza, amely jelzi, hogy a detektált objektum egy adott azonosítóhoz illeszkedő AprilTag-e.
True – Az észlelt objektum egy AprilTag a megadott azonosítójú.
Hamis – Az észlelt objektum nem egy AprilTag a megadott azonosítójú.
<[AIVision v] objektum AprilTag [0]?>
Paraméter |
Leírás |
|---|---|
AprilTag ID |
Az észlelt AprilTag-gel összehasonlítandó azonosítószám. |
Példa
amikor elindul :: hat events
[Stop when you see the Red Goal!]
fordulási sebesség beállítása (30) [% v]
fordulás [jobbra v]
ismétlés amíg <[AIVision v] objektum AprilTag [1]?>
[AprilTags v] adatainak lekérése [AIVision v] szenzorból
vége
hajtás leállítása
[Found the Red Goal!] nyomtatása ▶
objektumok száma#
Az objektumok száma blokk egész számként adja vissza az adathalmazban észlelt objektumok számát.
([AIVision v] objektumok száma)
Paraméterek |
Leírás |
|---|---|
Ennek a blokknak nincsenek paraméterei. |
Példa
amikor elindul :: hat events
[Drop the preloaded Bean Bag.]
[IntakeMotor v] pörgetése [kiesés v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (90) fokkal ▶
[Print how many Bean Bags are detected.]
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
([AIVision v] objektumok száma) nyomtatása ▶
objektum tulajdonság#
Hat tulajdonság tartozik minden egyes objektumhoz, melyek a get object data blokk használata után kerülnek tárolásra.
([AIVision v] objektum [szélesség v])
Minden tulajdonságérték az érzékelt objektum pozícióját és méretét írja le az IQ AI Vision Sensor nézetében abban a pillanatban, amikor az objektumadatok lekérése blokkot használták. Ezeket az értékeket pixelben mérik, az érzékelő 320 x 240 pixeles felbontása alapján.
Paraméter |
Leírás |
|---|---|
ingatlan |
A detektált objektum melyik tulajdonságát használja: szélesség, magasság, középpontX, középpontY, originX vagy originY. |
szélesség#
A width tulajdonság a detektált objektum szélességét adja meg pixelben, 1 és 320 közötti egész számként.
([AIVision v] objektum [szélesség v])
Példa
amikor elindul
[Drop the preloaded Bean Bag.]
[IntakeMotor v] pörgetése [kiesés v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (90) fokkal ▶
[Approach the Bean Bag, then pick it up.]
hajtási sebesség beállítása (30) [% v]
örökre
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
ha <[AIVision v] objektum létezik?> akkor
[AIVision v] objektum elemének beállítása [1] értékre
ha <[AIVision v] objektum [RedBeanBag v]?> akkor
if <([AIVision v] object [width v]) > (180)> then
hajtás [előre v] irányba [50] [mm v] értékkel ▶
[IntakeMotor v] pörgetése [bevitel v] irányba [90] [fok v] értékkel ▶
megszakítás
különben
hajtás [előre v]
vége
vége
vége
vége
magasság#
A height tulajdonság a detektált objektum magasságát adja meg pixelben, 1 és 240 közötti egész számként.
([AIVision v] objektum [magasság v])
Példa
amikor elindul
[Drop the preloaded Bean Bag.]
[IntakeMotor v] pörgetése [kiesés v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (90) fokkal ▶
[Approach the Bean Bag, then pick it up.]
hajtási sebesség beállítása (30) [% v]
örökre
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
ha <[AIVision v] objektum létezik?> akkor
[AIVision v] objektum elemének beállítása [1] értékre
ha <[AIVision v] objektum [RedBeanBag v]?> akkor
if <([AIVision v] object [height v]) > (100)> then
hajtás [előre v] irányba [50] [mm v] értékkel ▶
[IntakeMotor v] pörgetése [bevitel v] irányba [90] [fok v] értékkel ▶
megszakítás
különben
hajtás [előre v]
vége
vége
vége
vége
középX#
A centerX tulajdonság a detektált objektum középpontjának x koordinátáját adja meg pixelben, 0 és 320 közötti egész számként.
([AIVision v] objektum [középX v])
Példa
amikor elindul
[Drop the preloaded Bean Bag.]
[IntakeMotor v] pörgetése [kiesés v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (90) fokkal ▶
[Steer to keep the Bean Bag centered while approaching.]
fordulási sebesség beállítása (30) [% v]
hajtási sebesség beállítása (30) [% v]
örökre
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
ha <[AIVision v] objektum létezik?> akkor
[AIVision v] objektum elemének beállítása [1] értékre
ha <[AIVision v] objektum [RedBeanBag v]?> akkor
if <([AIVision v] objektum [középX v]) < (140)> then
fordulás [balra v] irányba (5) fokkal ▶
különben
hajtás [előre v] irányba (150) [mm v] értékkel ▶
[IntakeMotor v] pörgetése [bevitel v]
megszakítás
vége
vége
vége
vége
közép Y#
A centerY tulajdonság a detektált objektum középpontjának y koordinátáját adja meg pixelekben, 0 és 240 közötti egész számként.
([AIVision v] objektum [középY v])
Példa
amikor elindul
[Drop the preloaded Bean Bag.]
[IntakeMotor v] pörgetése [kiesés v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (90) fokkal ▶
[Print the y-position of the Bean Bag.]
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
ha <[AIVision v] objektum létezik?> akkor
[AIVision v] objektum elemének beállítása [1] értékre
ha <[AIVision v] objektum [RedBeanBag v]?> akkor
([AIVision v] objektum [középY v]) nyomtatása ▶
vége
vége
eredetX#
Az originX tulajdonság a detektált objektum határolókeretének bal felső sarkának x koordinátáját adja meg pixelekben, 0 és 320 közötti egész számként.
([AIVision v] objektum [kezdőX v])
Példa
amikor elindul
[Drop the preloaded Bean Bag.]
[IntakeMotor v] pörgetése [kiesés v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (90) fokkal ▶
[Steer to keep the left edge centered.]
fordulási sebesség beállítása (30) [% v]
hajtási sebesség beállítása (30) [% v]
örökre
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
ha <[AIVision v] objektum létezik?> akkor
[AIVision v] objektum elemének beállítása [1] értékre
ha <[AIVision v] objektum [RedBeanBag v]?> akkor
if <([AIVision v] objektum [kezdőX v]) < (100)> then
fordulás [balra v] irányba (5) fokkal ▶
különben
hajtás [előre v] irányba (150) [mm v] értékkel ▶
[IntakeMotor v] pörgetése [bevitel v]
megszakítás
vége
vége
vége
vége
származásY#
Az originY tulajdonság a detektált objektum határolókeretének bal felső sarkának y koordinátáját adja meg pixelekben, 0 és 240 közötti egész számként.
([AIVision v] objektum [kezdőY v])
Példa
amikor elindul
[Drop the preloaded Bean Bag.]
[IntakeMotor v] pörgetése [kiesés v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (90) fokkal ▶
[Print the y-position of the Bean Bag's top edge.]
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
ha <[AIVision v] objektum létezik?> akkor
[AIVision v] objektum elemének beállítása [1] értékre
ha <[AIVision v] objektum [RedBeanBag v]?> akkor
([AIVision v] objektum [kezdőY v]) nyomtatása ▶
vége
vége