Robotspecifikus blokkok#
Bevezetés#
A Flex nevű hősbot tartalmaz egy karommotort, egy karmotort, egy mesterséges intelligenciával működő látószenzort, egy távolságérzékelőt és egy játékbeli helymeghatározó rendszer (GPS) érzékelőt.
Minden szabványos VEXcode VR blokk használható a V5 26-27 Felülírás Játszótéren.
Az alábbiakban felsoroljuk az összes elérhető robotspecifikus blokkot:
Hajtáslánc – Mozgasd és forgatd a robotot.
Műveletek
drive — Előre vagy hátra mozgatja a robotot örökké.
drive for — Előre vagy hátra mozgatja a robotot egy adott távolságra.
turn — Örökké balra vagy jobbra forgatja a robotot.
fordulj el — Meghatározott fokkal balra vagy jobbra forgatja a robotot.
fordulj előre — A robotot egy adott irányba fordítja.
forgásba váltás — Meghatározott forgásirányba fordítja a robotot.
vezetés leállítása — Leállítja a robot mozgását.
Beállítások
meghajtási sebesség beállítása — Megadja a robotnak a haladási sebességét.
fordulási sebesség beállítása — Megadja a robotnak, hogy milyen gyorsan forduljon.
meghajtás irányának beállítása — A robot aktuális irányát egy új irányra módosítja.
meghajtó forgásának beállítása — A robot aktuális forgását egy új forgásra módosítja.
meghajtási időtúllépés beállítása — Beállítja, hogy a robot hány másodpercig próbálja meg befejezni a mozgást.
Értékek
drive is done — Jelzi, hogy a robot befejezte-e a mozgást.
meghajtó mozog — Jelzi, hogy a robot mozog-e.
drive heading — Megjeleníti a robot aktuális irányát 0 és 359,99 fok között.
meghajtó forgása — A robot aktuális forgását jelenti.
drive velocity — Megadja, hogy milyen gyorsan halad a robot.
Mozgás – Mozgasd és kövesd a robot motorjait.
Műveletek
spin motor – Előre vagy hátra forgatja a motort örökké.
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.
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 pozíció – A motor aktuális pozícióját jelzi.
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 AI látásé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
objektumelem 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.
objektum van – Akkor adja vissza, ha osztályozást észlel.
az objektum AprilTag – Visszaadja, hogy a detektált objektum egy adott azonosítóhoz illeszkedő AprilTag-e.
objektumok száma – Visszaadja az észlelt objektumok számát.
objektum tulajdonság – Olyan részleteket ad vissza, mint például:
Érzékelés – Használja a robot különféle érzékelőit.
Távolság
Távolságérzékelő észlelése – Jelzi, hogy a távolságérzékelő érzékel-e tárgyat a hatótávolságon belül.
objektum távolsága – Megjeleníti a távolságérzékelő és a legközelebbi érzékelt tárgy közötti távolságot.
GPS
GPS pozíció – Visszaadja a GPS-érzékelő által mért X vagy Y pozíciót.
GPS irány – Visszaadja a robot aktuális irányát.
Az ezen az oldalon található példák a Játszótér mérkőzés előtti ellenőrzőlistájának C kezdőhelyszínét használják.
Hajtáslánc#
A hajtáslánc vezérli a VR Robot vezetését és fordulását. A hajtáslánc előre vagy hátra mozoghat, balra vagy jobbra fordulhat, irányt vehet, és nyomon követheti a forgását.
Műveletek#
hajtás#
A meghajtó veremblokk a robotot a végtelenségig előre vagy hátra mozgatja. A robot addig fog mozogni, amíg egy másik műveletet nem kap, például fordulást vagy megállást.
hajtás [előre v]
Paraméterek |
Leírás |
|---|---|
irány |
A robot mozgásiránya: előre vagy hátra. |
Példa
amikor elindul :: hat events
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v]
várakozás (0.5) másodpercig
hajtás leállítása
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
hajtani#
A meghajtás veremblokk a robotot egy adott távolságra előre vagy hátra mozgatja. A projekt megvárja, amíg a robot befejezi a mozgást, mielőtt a verem következő blokkja futna.
hajtás [előre v] irányba (200) [mm v] értékkel ▶
Paraméterek |
Leírás |
|---|---|
irány |
A robot mozgásiránya: előre vagy hátra. |
távolság |
A robot által megtett távolság. Ez lehet egész vagy tizedes tört. |
egység |
A távolság mértékegysége: mm (milliméter) vagy hüvelyk |
é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 :: hat events
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulat#
A fordulás veremblokk a robotot örökre balra vagy jobbra forgatja. A robot addig fog forogni, amíg egy másik műveletet nem kap, például vezetést vagy megállást.
fordulás [jobbra v]
Paraméterek |
Leírás |
|---|---|
irány |
A robot fordulási iránya: balra vagy jobbra. |
Példa
amikor elindul :: hat events
[Score a Pin in a Neutral Goal.]
fordulás [balra v]
várakozás (0.78) másodpercig
hajtás leállítása
[ArmMotor v] pörgetése [fel v] irányba (800) [fok v] értékkel ▶
hajtás [előre v] irányba (25) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulj#
A fordulatszám veremblokk a robotot egy adott fokszámmal balra vagy jobbra forgatja. A fordulat a robot aktuális pozíciójához viszonyítva történik. A projekt megvárja, amíg a robot befejezi a fordulást, mielőtt a veremben lévő következő blokk futtatásra kerülne.
fordulás [jobbra v] irányba (90) fokkal ▶
Paraméterek |
Leírás |
|---|---|
irány |
A robot fordulási iránya: balra vagy jobbra. |
szög |
A robot által elfordult fokok száma. Ez lehet egész vagy tizedes tört. |
é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 :: hat events
[Score a Pin in a Neutral Goal.]
fordulás [balra v] irányba (110) fokkal ▶
[ArmMotor v] pörgetése [fel v] irányba (800) [fok v] értékkel ▶
hajtás [előre v] irányba (25) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
forduljon a címsorhoz#
Az irány a robot által mutatott irány, fokban mérve. A fordulj irányba veremblokk a robotot egy adott irányba fordítja -359 és 359 fok között. A robot a legrövidebb irányba fordul, hogy elérje a célirányt.
A kezdő irány 0 fok.
A projekt megvárja, amíg a robot befejezi a forgást, mielőtt a veremben lévő következő blokk futna.
fordulás (90) fokos irányba ▶
Paraméterek |
Leírás |
|---|---|
cím |
A robot iránya, amellyel szembe kell néznie, -359 és 359 fok között. |
é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 :: hat events
[Score a Pin in a Neutral Goal.]
fordulás (-110) fokos irányba ▶
[ArmMotor v] pörgetése [fel v] irányba (800) [fok v] értékkel ▶
hajtás [előre v] irányba (25) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
forgásba lendül#
A forgásba váltás veremblokk a robotot egy adott forgásba fordítja.
A forgás a robot fordulatát adja meg fokban mérve. A projekt elején a forgási érték 0 fokra van állítva. A forgás a set drive rotation blokkal is beállítható.
A forgási értékek abszolútak. Ez azt jelenti, hogy a fordulat iránya a robot aktuális forgásától függ. Jobbra forgatás növeli, balra forgatás csökkenti a forgást.
Például, ha a robot 0 fokról indul, és 720 fokos elfordulást érünk el, akkor kétszer fordul jobbra. Ha ezután 360 fokos elfordulást végzünk, akkor egyszer fordul balra, mert a 360 fok kisebb, mint a 720 fok.
A projekt megvárja, amíg a robot befejezi a forgást, mielőtt a veremben lévő következő blokk futna.
fordulás (90) fokos forgásba ▶
Paraméterek |
Leírás |
|---|---|
forgás |
A robot elfordulási értéke fokban megadva. Ez lehet egész vagy tizedes szám. |
é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 :: hat events
[Score a Pin in a Neutral Goal.]
fordulás (-110) fokos forgásba ▶
[ArmMotor v] pörgetése [fel v] irányba (800) [fok v] értékkel ▶
hajtás [előre v] irányba (25) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
ne vezess#
A vezetés leállítása veremblokk leállítja a robot mozgását.
hajtás leállítása
Paraméterek |
Leírás |
|---|---|
Ennek a blokknak nincsenek paraméterei. |
Példa
amikor elindul :: hat events
[Score a Pin in a Neutral Goal.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v]
várakozás (0.5) másodpercig
hajtás leállítása
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
Beállítások#
beállított hajtási sebesség#
A beállított hajtási sebesség blokk megmondja a robotnak, hogy milyen gyorsan haladjon. Magasabb százalékos érték esetén a robot gyorsabban, alacsonyabb százalékos érték esetén pedig lassabban halad.
Minden projekt azzal kezdődik, hogy a robot alapértelmezés szerint 50%-os sebességgel halad.
Megjegyzés: A nagyobb sebesség gyorsabbá teszi a robotot, de kevésbé pontos lehet. Az alacsonyabb sebesség lassabbá teszi a robotot, de pontosabb lehet.
hajtási sebesség beállítása (50) [% v]
Paraméterek |
Leírás |
|---|---|
sebesség |
A haladási sebesség 0%-tól 100%-ig. |
egység |
A sebesség mértékegysége: % |
Példa
amikor elindul :: hat events
[Score a Pin in a Neutral Goal.]
fordulás [balra v] irányba (110) fokkal ▶
[ArmMotor v] pörgetése [fel v] irányba (800) [fok v] értékkel ▶
hajtási sebesség beállítása (100) [% v]
hajtás [előre v] irányba (25) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
beállított fordulási sebesség#
A fordulási sebesség beállítása blokk megmondja a robotnak, hogy milyen gyorsan forduljon. Magasabb százalékos érték esetén a robot gyorsabban, alacsonyabb százalékos érték esetén pedig lassabban fordul.
Minden projekt azzal kezdődik, hogy a robot alapértelmezés szerint 50%-os sebességgel forog.
Megjegyzés: A nagyobb sebesség gyorsabbá teszi a robot fordulását, de kevésbé pontos lehet. Az alacsonyabb sebesség lassabbá teszi a robot fordulását, de pontosabb lehet.
fordulási sebesség beállítása (50) [% v]
Paraméterek |
Leírás |
|---|---|
sebesség |
A fordulási sebesség 0%-tól 100%-ig terjedhet. |
egység |
A sebesség mértékegysége: % |
Példa
amikor elindul :: hat events
[Turn to face the Neutral Goal faster.]
fordulási sebesség beállítása (100) [% v]
fordulás [balra v] irányba (110) fokkal ▶
vezetési irány beállítása#
A haladási irány a robot fordulási iránya, fokban mérve. A meghajtási irány beállítása veremblokk a robot aktuális haladási irányát egy új haladási értékre módosítja.
Például, ha a robot jobbra fordult, és a haladási irány 0 fokra állítása a jobbra néző pozíciót teszi az új 0 fokossá. Ezután a robot az új irány alapján más pozíciókba fordulhat.
hajtás irányának beállítása (0) fokra
Paraméterek |
Leírás |
|---|---|
cím |
A robot számára beállítandó irányérték fokban. |
Példa
amikor elindul :: hat events
[Make facing the Neutral Goal the new heading.]
hajtás irányának beállítása (110) fokra
fordulás (0) fokos irányba ▶
beállított hajtásforgás#
A forgás a robot elfordulásának mértékét mutatja fokban mérve. A projekt elején a forgási érték 0 fokra van állítva. A meghajtás forgásának beállítása veremblokk a robot aktuális forgását egy új értékre módosítja.
Például, ha a robot két teljes fordulatot tett jobbra, akkor a forgási értéke 720 fok lesz. Ha a forgást 0 fokra állítja, akkor a forgás 720-ról 0 fokra áll vissza. Ezután a robot az új érték alapján foroghat.
hajtás forgásának beállítása (0) fokra
Paraméterek |
Leírás |
|---|---|
forgás |
A robothoz beállítandó forgatási érték fokban. Ez lehet egész vagy tizedes tört. |
Példa
amikor elindul :: hat events
[Make facing the Neutral Goal the new rotation.]
hajtás forgásának beállítása (110) fokra
fordulás (0) fokos forgásba ▶
meghajtó időtúllépésének beállítása#
A meghajtási időtúllépés beállítása blokk azt állítja be, hogy a robot hány másodpercig próbáljon meg befejezni egy mozgást. Ha a robot nem tudja befejezni ennyi idő alatt, akkor leállítja a próbálkozást, és továbblép a következő blokkra a veremben. Ez megakadályozza, hogy a robot elakadjon egy mozgásnál.
hajtási időkorlát beállítása (1) másodpercre
Paraméterek |
Leírás |
|---|---|
idő |
Az az időtartam másodpercben, amíg a robot megpróbálhat befejezni egy mozgást. Ez lehet egész szám vagy tizedes tört. |
Példa
amikor elindul :: hat events
[Turn to face the Neutral Goal.]
hajtási időkorlát beállítása (0.8) másodpercre
fordulás [balra v] irányba (180) fokkal ▶
Értékek#
a vezetés véget ért#
A meghajtás befejeződött logikai blokk jelzi, hogy a robot befejezte-e a mozgást. Ez felhasználható más viselkedések időzítésének vezérlésére a robot mozgása alapján.
Igaz — A robot befejezte a mozgást.
Hamis — A robot még mindig mozog.
Ez a blokk együtt működik azokkal a hajtáslánc-blokkokkal, amelyek rendelkeznek a és a ne várj paraméterrel.
<hajtás kész?>
Paraméterek |
Leírás |
|---|---|
Ennek a blokknak nincsenek paraméterei. |
Példa
amikor elindul :: hat events
[Score a Pin in a Neutral Goal.]
fordulás [balra v] irányba (110) fokkal ▶
[ArmMotor v] pörgetése [fel v] irányba (800) [fok v] értékkel ▶
hajtás [előre v] irányba (25) [hüvelyk v] értékkel ◀ és ne várjon
várakozás amíg <hajtás kész?>
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
a meghajtó mozog#
A meghajtó mozog logikai blokk jelzi, hogy a robot mozog-e. Ez felhasználható más viselkedések időzítésének vezérlésére a robot mozgása alapján.
Igaz — A robot mozog.
Hamis — A robot nem mozog.
Ez a blokk együtt működik azokkal a hajtáslánc-blokkokkal, amelyek rendelkeznek a és a ne várj paraméterrel.
<hajtás mozog?>
Paraméterek |
Leírás |
|---|---|
Ennek a blokknak nincsenek paraméterei. |
Példa
amikor elindul :: hat events
[Raise the Arm once stopped near the Goal.]
fordulás [balra v] irányba (110) fokkal ▶
hajtás [előre v] irányba (25) [hüvelyk v] értékkel ◀ és ne várjon
amíg <hajtás mozog?>
várakozás (0.005) másodpercig
vége
[ArmMotor v] pörgetése [fel v] irányba (800) [fok v] értékkel ▶
vezetési irány#
A haladási irány a robot fordulási iránya, fokban mérve. A hajtás iránya jelentési blokkja 0 és 359,99 fok közötti szöget jelez.
A robot kezdő iránya 0 fok.
(hajtás iránya fokban)
Paraméterek |
Leírás |
|---|---|
Ennek a blokknak nincsenek paraméterei. |
Példa
amikor elindul :: hat events
[Turn to the Goal, then show heading.]
fordulás [jobbra v] irányba (450) fokkal ▶
(hajtás iránya fokban) nyomtatása a képernyőn ◀ és kurzor a következő sorra
hajtás forgása#
A forgás a robot elfordulásának mértékét mutatja fokban mérve. A projekt elején a forgási érték 0 fokra van állítva. A hajtás forgása riporterblokk a robot aktuális forgásáról számol be.
Jobbra fordulás növeli, balra fordulás pedig csökkenti a forgást. Például két teljes jobbra fordulás 720 fokos elfordulást eredményez.
(hajtás forgása fokban)
Paraméterek |
Leírás |
|---|---|
Ennek a blokknak nincsenek paraméterei. |
Példa
amikor elindul :: hat events
[Spin to find a Pin, then show rotation.]
fordulás [jobbra v] irányba (450) fokkal ▶
(hajtás forgása fokban) nyomtatása a képernyőn ◀ és kurzor a következő sorra
hajtási sebesség#
A hajtási sebesség riporterblokk a robot haladási sebességét jelzi.
(hajtás sebessége [% v] egységben)
Paraméterek |
Leírás |
|---|---|
egység |
A sebesség mértékegysége: % |
Példa
amikor elindul :: hat events
[Show speed while driving to the Goal.]
hajtás [előre v] irányba (150) [mm v] értékkel ▶
(hajtás sebessége [% v] egységben) nyomtatása a képernyőn ◀ és kurzor a következő sorra
Mozgás#
A Flex az ArmMotor segítségével emeli és süllyeszti a kart, a ClawMotorral pedig nyitja és zárja a karomot.
Minden motornak megvannak a saját iránybeállításai. Az iránynevek leírják, hogyan mozog a motor a Flexen.
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.
[ArmMotor v] pörgetése [fel v]
Paraméterek |
Leírás |
|---|---|
motor |
A forgatandó motor: KarMotor vagy KaromMotor. |
irány |
A motor forgásiránya:
|
Példa
amikor elindul
[Raise the Arm before driving toward a Pin.]
[ArmMotor v] pörgetése [fel v]
várakozás (1) másodpercig
[ArmMotor v] leállítása
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 (90) [fok v] értékkel ▶
Paraméterek |
Leírás |
|---|---|
motor |
A forgatandó motor: KarMotor vagy KaromMotor. |
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
[Raise the Arm to carry the Pin to the Goal.]
[ArmMotor v] pörgetése [fel v] irányba (800) [fok v] értékkel ▶
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 mennyit forgott, fokban vagy fordulatokban mérve. Egy fordulat 360 foknak felel meg. Egy projekt elején az ArmMotor pozíciója 0 fokra van állítva. A ClawMotor kivétel – 467 foknál indul (teljesen zárva). 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 (90) [fok v] pozícióba ▶
Paraméterek |
Leírás |
|---|---|
motor |
A forgatandó motor: KarMotor vagy KaromMotor. |
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
[Raise the Arm, then release the Pin.]
[ArmMotor v] pörgetése (800) [fok v] pozícióba ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
motor leállítása#
A motor leállítása veremblokk leállítja a kiválasztott motort.
[ArmMotor v] leállítása
Paraméterek |
Leírás |
|---|---|
motor |
A leállítandó motor: KarMotor vagy KaromMotor. |
Példa
amikor elindul
[Raise the Arm partway to hold the Pin.]
[ArmMotor v] pörgetése [fel v]
várakozás (1) másodpercig
[ArmMotor 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.
[ArmMotor v] sebességének beállítása [50] [% v]
Paraméterek |
Leírás |
|---|---|
motor |
A motor, amelyiknek a sebességét be kell állítani: KarMotor vagy KaromMotor. |
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
[Raise the Arm fast to release the Pin.]
[ArmMotor v] sebességének beállítása [100] [% v]
[ArmMotor v] pörgetése [fel v] irányba (800) [fok v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
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: KarMotor vagy KaromMotor. |
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 Pin in a Neutral Goal.]
fordulás [balra v] irányba (110) fokkal ▶
[ArmMotor v] időkorlátjának beállítása [1] másodpercre
[ArmMotor v] pörgetése [fel v] irányba (1800) [fok v] értékkel ▶
hajtás [előre v] irányba (25) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
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 az ArmMotor pozíciója 0 fokra van állítva. A ClawMotor kivétel – 467 foknál indul (teljesen zárva). Ha a motor egy teljes fordulatot előre forog, a pozíció növekszik. Ha a motor az ellenkező irányba forog, a pozíció csökken.
([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: KarMotor vagy KaromMotor. |
egység |
A motor helyzetének jelzésére szolgáló mértékegység: fok vagy fordulat. |
Példa
amikor elindul
[Raise the Arm, then release the Pin.]
amíg <([ArmMotor v] pozíciója [fok v] egységben) < (800)>
[ArmMotor v] pörgetése [fel v]
várakozás (0.002) másodpercig
vége
[ArmMotor v] leállítása
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
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: KarMotor vagy KaromMotor. |
pozíció |
A motorhoz 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
[Reset encoder, raise Arm, place Pin.]
[ArmMotor v] pozíciójának beállítása (0) [fok v] értékre
[ArmMotor v] pörgetése (800) [fok v] pozícióba ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
É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: KarMotor vagy KaromMotor. |
Példa
amikor elindul
[Raise the Arm while driving to the Goal.]
[ArmMotor v] pörgetése (800) [fok v] pozícióba ◀ és ne várjon
várakozás (0.1) másodpercig
amíg <nem <[ArmMotor v] kész?>>
hajtás [előre v]
várakozás (0.005) másodpercig
vége
hajtás leállítása
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.
<[ArmMotor v] forog?>
Paraméterek |
Leírás |
|---|---|
motor |
A motor, amely jelzi, hogy forog-e: KarMotor vagy KaromMotor. |
Példa
amikor elindul
[Raise the Arm while driving to the Goal, then release the Pin.]
[ArmMotor v] pörgetése (800) [fok v] pozícióba ◀ és ne várjon
várakozás (0.1) másodpercig
amíg <[ArmMotor v] forog?>
hajtás [előre v] irányba (20) [mm v] értékkel ▶
vége
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
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.
([ArmMotor v] sebessége [% v] egységben :: custom-motion)
Paraméterek |
Leírás |
|---|---|
motor |
A motor, amely a következő sebességet jelenti: KarMotor vagy KaromMotor. |
egység |
A motorsebesség kijelzéséhez használt mértékegység: %. |
Példa
amikor elindul
[Show Arm Motor velocity while raising.]
[ArmMotor v] sebességének beállítása [100] [% v]
[ArmMotor v] pörgetése (800) [fok v] pozícióba ◀ és ne várjon
várakozás (0.2) másodpercig
([ArmMotor v] sebessége [% v] egységben :: custom-motion) nyomtatása a képernyőn ◀ és kurzor a következő sorra
AI látás#
Műveletek#
objektumadatok lekérése#
Az objektumadatok lekérése blokk egyetlen aláírásra szűri az 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 AI Vision 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
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (70) fokkal ▶
[Turn to face the Pin.]
fordulá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
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
megszakítás
vége
vége
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
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (70) fokkal ▶
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
[Check if any AI Classifications were detected in the last snapshot.]
ha <[AIVision v] objektum létezik?> akkor
[If any AI Classification is detected, check if any of them are a specific game element.]
ha <[AIVision v] objektum [RedBluePin v]?> akkor
[RedBluePin detected.] nyomtatása ▶
különben
[No RedBluePin detected.] nyomtatása ▶
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
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (70) fokkal ▶
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
[Check if any AI Classifications were detected in the last snapshot.]
ha <[AIVision v] objektum létezik?> akkor
([AIVision v] objektumok száma) nyomtatása ◀ és kurzor a következő sorra
vége
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 [RedBluePin v]?>
Paraméter |
Leírás |
|---|---|
objektum |
Melyik tárggyal hasonlítsuk össze a tárgyat:
|
Példa
amikor elindul
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (70) fokkal ▶
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
ha <[AIVision v] objektum létezik?> akkor
ha <[AIVision v] objektum [RedBluePin v]?> akkor
[RedBluePin detected.] nyomtatása ▶
különben
[No RedBluePin detected.] nyomtatása ▶
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.
Igaz – 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 |
|---|---|
Áprilisi címke azonosítója |
Az észlelt AprilTag-gel összehasonlítandó azonosítószám. |
Példa
amikor elindul
[Report if AprilTag 3 is detected.]
[AprilTags v] adatainak lekérése [AIVision v] szenzorból
ha <[AIVision v] objektum létezik?> akkor
ha <[AIVision v] objektum AprilTag [3]?> akkor
[That is 3!] nyomtatása ▶
különben
[That isn't 3!] nyomtatása ▶
vége
vége
objektumok száma#
Az objektumok száma blokk egész számként adja vissza az adathalmazban észlelt objektumok számát.
([AIVision] objektumok száma)
Paraméterek |
Leírás |
|---|---|
Ennek a blokknak nincsenek paraméterei. |
Példa
amikor elindul
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (70) fokkal ▶
[AI osztályozások v] adatainak lekérése [AIVision v] szenzorból
ha <[AIVision v] objektum létezik?> akkor
([AIVision v] objektumok száma) nyomtatása ◀ és kurzor a következő sorra
vége
objektum tulajdonság#
Minden objektumhoz hat tulajdonság tartozik (lásd alább), melyek a get object data blokk használata után tárolódnak.
([AIVision v] objektum [szélesség v])
Minden tulajdonságérték leírja az érzékelt objektum pozícióját és méretét az 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áljuk: |
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
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (70) fokkal ▶
[Approach the next Cup and Pin.]
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
if <([AIVision v] object [width v]) > (140)> then
hajtás leállítása
megszakítás
különben
hajtás [előre v]
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
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (70) fokkal ▶
[Approach the next Cup and Pin.]
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
if <([AIVision v] object [height v]) > (200)> then
hajtás leállítása
megszakítás
különben
hajtás [előre v]
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
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (70) fokkal ▶
[Turn and approach the next Cup and Pin.]
fordulá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
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 (25) [hüvelyk v] értékkel ▶
megszakítás
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
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (70) fokkal ▶
[Approach the next Cup and Pin.]
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
if <([AIVision v] object [centerY v]) > (230)> then
hajtás leállítása
megszakítás
különben
hajtás [előre v]
vége
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
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (70) fokkal ▶
[Turn and approach the next Cup and Pin.]
fordulá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
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 (25) [hüvelyk v] értékkel ▶
megszakítás
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
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
fordulás [balra v] irányba (70) fokkal ▶
[Approach the next Cup and Pin.]
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
if <([AIVision v] object [originY v]) > (140)> then
hajtás leállítása
megszakítás
különben
hajtás [előre v]
vége
vége
vége
Érzékelés#
Távolság#
Távolság talált egy tárgyat#
A Talált tárgy távolsága logikai blokk jelzi, hogy a távolságérzékelő jelenleg érzékel-e tárgyat 2000 mm-en belül.
Igaz — A távolságérzékelő tárgyat érzékel.
Hamis — A távolságérzékelő nem érzékel tárgyat.
<[FrontDistance v] talált objektumot?>
Paraméterek |
Leírás |
|---|---|
távolságérzékelő |
A használandó távolságérzékelő. Válasszon a Flexhez elérhető távolságérzékelők közül. |
Példa
amikor elindul :: hat events
[Turn until something is detected, then release the Pin.]
fordulás [jobbra v]
várakozás amíg <[FrontDistance v] talált objektumot?>
hajtás leállítása
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
tárgy távolsága#
A tárgytávolság riporterblokk a távolságérzékelő és a legközelebbi érzékelt tárgy közötti távolságot jelenti.
([FrontDistance v] távolsága [mm v] egységben)
Paraméterek |
Leírás |
|---|---|
távolságérzékelő |
A használandó távolságérzékelő. Válasszon a Flexhez elérhető távolságérzékelők közül. |
egység |
A távolság mértékegysége: mm vagy hüvelyk. |
Példa
amikor elindul :: hat events
[Drive until 200 mm from the Goal, then release the Pin.]
hajtás [előre v]
várakozás amíg <([FrontDistance v] távolsága [mm v] egységben) < (200)>
hajtás leállítása
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
GPS#
GPS-pozíció#
A GPS pozíció blokk a robot fordulási referenciapontjának a GPS (Game Positioning System™) érzékelővel mért mezőközépponttól való eltolását adja vissza.
([GPS v] pozíciója [X v] [mm v] egységben)
Paraméterek |
Leírás |
|---|---|
tengely |
Melyik tengelyt kell jelenteni:
|
egységek |
A pozíciót ábrázoló mértékegység: mm vagy hüvelyk |
Példa
amikor elindul :: hat events
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v]
wait until <([GPS v] position [X v] in [mm v]) > (-1370)>
hajtás leállítása
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
GPS-irány#
A GPS irány blokk visszaadja a robot aktuális irányát a GPS (Game Positioning System™) érzékelő VEX GPS mezőkódból származó, 0,00 és 359,99 fok közötti értékei alapján.
([GPS v] iránya fokban)
Paraméterek |
Leírás |
|---|---|
Ennek a blokknak nincsenek paraméterei. |
Példa
amikor elindul :: hat events
[Raise the Arm, drive to the Goal, release the Pin.]
[ArmMotor v] pörgetése [fel v] irányba (300) [fok v] értékkel ▶
hajtás [előre v] irányba (10) [hüvelyk v] értékkel ▶
[ClawMotor v] pörgetése [nyitott v] irányba (180) [fok v] értékkel ▶
[Turn left to face the Neutral Goal.]
fordulási sebesség beállítása (30) [% v]
fordulás [balra v]
várakozás amíg <([GPS v] iránya fokban) < (18)>
hajtás leállítása