Blocs spécifiques aux robots#
Introduction#
Le robot héros Flop comprend un moteur d’admission, un moteur de bras et un capteur de vision IA IQ.
Tous les blocs VR VEXcode standard sont disponibles pour une utilisation dans le terrain de jeu IQ 26-27 Level Up.
Vous trouverez ci-dessous la liste de tous les blocs spécifiques aux robots disponibles :
Mouvement – Déplacer et suivre les moteurs du robot.
Actes
faire tourner le moteur – Fait tourner un moteur dans l’une de ses directions en permanence.
faire tourner le moteur pendant – Fait tourner un moteur sur une distance spécifique en degrés ou en tours.
faire tourner le moteur jusqu’à la position – Fait tourner un moteur jusqu’à une position spécifique.
arrêter le moteur – Empêche un moteur de tourner.
Paramètres
régler la vitesse du moteur – Indique au moteur à quelle vitesse tourner.
set motor timeout – Définit le temps pendant lequel un moteur essaiera de terminer un mouvement.
Position
position du moteur – Indique la position actuelle du moteur.
définir la position du moteur – Modifie la position actuelle du moteur à une nouvelle valeur.
Valeurs
moteur terminé – Indique si le moteur a fini de bouger.
le moteur tourne – Indique si le moteur tourne.
vitesse du moteur – Indique la vitesse de rotation du moteur, en pourcentage de -100 % à 100 %.
Vision par IA - Capturez et analysez des objets à l’aide du capteur de vision par IA IQ.
Actes
obtenir les données de l’objet - Capture les données pour une signature spécifique, telle qu’une classification d’IA détectée.
Paramètres
set object item - Sélectionne un objet spécifique dans la liste.
Valeurs
objet existe - Indique si une classification a été détectée.
object is - Renvoie si une classification spécifique est détectée.
object is AprilTag - Renvoie si l’objet détecté est un AprilTag correspondant à un ID spécifique.
nombre d’objets - Renvoie le nombre d’objets détectés.
propriété de l’objet - Renvoie la largeur, la hauteur, le centreX, le centreY, l’origineX ou l’origineY.
Les exemples de cette page utilisent la position de départ par défaut du Playground.
Mouvement#
Flop utilise le moteur d’aspiration pour collecter et éjecter les éléments du jeu. Le moteur du bras permet de lever et d’abaisser ce dernier.
Chaque moteur possède ses propres options de direction. Le nom de cette direction décrit le sens de rotation du moteur sur la bascule.
Actes#
moteur de rotation#
Le bloc moteur rotatif fait tourner un moteur indéfiniment dans l’un des deux sens. Le moteur continuera de tourner jusqu’à ce qu’une autre action lui soit donnée, comme changer de sens de rotation ou s’arrêter.
faire tourner [IntakeMotor v] [entrée v]
Paramètres |
Description |
|---|---|
moteur |
Le moteur à faire tourner : IntakeMotor ou ArmMotor. |
direction |
Sens de rotation du moteur :
|
Exemple
au démarrage
[Score a Bean Bag in a Blue Goal.]
pivoter [à gauche v] de (90) degrés ▶
se déplacer [avant v] sur (35) [pouces v] ▶
pivoter [droite v] de (90) degrés ▶
faire tourner [ArmMotor v] [en haut v] de (1) [tours v] ▶
se déplacer [avant v] sur (40) [pouces v] ▶
faire tourner [IntakeMotor v] [sortie v]
moteur de rotation pour#
Le bloc moteur de rotation pour fait tourner un moteur sur une distance précise. Cette distance est relative à la position actuelle du moteur. Le programme attendra la fin de la rotation du moteur avant de passer au bloc suivant dans la pile.
faire tourner [ArmMotor v] [en haut v] de (500) [degrés v] ▶
Paramètres |
Description |
|---|---|
moteur |
Le moteur à faire tourner : IntakeMotor ou ArmMotor. |
direction |
Sens de rotation du moteur :
|
distance |
Distance de rotation du moteur. Les degrés sont exprimés en nombres entiers. Les tours peuvent être exprimés en nombres entiers ou décimaux. |
unité |
L’unité de distance : degrés ou tours. |
et n’attendez pas |
Sélectionnez la flèche ( ▶ ) pour développer le bloc et dire et n’attendez pas, afin que le bloc suivant dans la pile s’exécute immédiatement. |
Exemple
au démarrage
[Score a Bean Bag in a Blue Goal.]
pivoter [à gauche v] de (90) degrés ▶
se déplacer [avant v] sur (35) [pouces v] ▶
pivoter [droite v] de (90) degrés ▶
faire tourner [ArmMotor v] [en haut v] de (1) [tours v] ▶
se déplacer [avant v] sur (40) [pouces v] ▶
faire tourner [IntakeMotor v] [sortie v]
moteur de rotation en position#
Le bloc spin motor to position fait tourner un moteur jusqu’à une position spécifique.
La position d’un moteur correspond à sa rotation, mesurée en degrés ou en tours. Un tour équivaut à 360 degrés. Au début d’un projet, la position du moteur est initialisée à 0 degré. Il est également possible de la définir à l’aide du bloc définir la position du moteur.
Les valeurs de position sont absolues. Cela signifie que le sens de rotation dépend de la position actuelle du moteur.
Par exemple, si le moteur démarre à 0 degré et atteint une position de 720 degrés, il effectuera deux tours dans le sens horaire. S’il atteint ensuite une position de 360 degrés, il effectuera un tour dans le sens antihoraire, car 360 est inférieur à 720.
faire tourner [ArmMotor v] jusqu'à la position (500) [degrés v] ▶
Paramètres |
Description |
|---|---|
moteur |
Le moteur à faire tourner : IntakeMotor ou ArmMotor. |
position |
La valeur de la position de rotation du moteur. Les degrés utilisent des nombres entiers. Les tours peuvent utiliser des nombres entiers ou décimaux. |
unité |
L’unité de position : degrés ou tours. |
et n’attendez pas |
Sélectionnez la flèche ( ▶ ) pour développer le bloc et dire et n’attendez pas, afin que le bloc suivant dans la pile s’exécute immédiatement. |
Exemple
au démarrage
[Score a Bean Bag in a Blue Goal.]
pivoter [à gauche v] de (90) degrés ▶
se déplacer [avant v] sur (35) [pouces v] ▶
pivoter [droite v] de (90) degrés ▶
faire tourner [ArmMotor v] jusqu'à la position (1) [tours v] ▶
se déplacer [avant v] sur (40) [pouces v] ▶
faire tourner [IntakeMotor v] [sortie v]
moteur d’arrêt#
Le bloc arrêt moteur arrête le moteur sélectionné.
arrêter [IntakeMotor v]
Paramètres |
Description |
|---|---|
moteur |
Le moteur à arrêter : IntakeMotor ou ArmMotor. |
Exemple
au démarrage
[Score a Bean Bag in a Blue Goal.]
pivoter [à gauche v] de (90) degrés ▶
se déplacer [avant v] sur (35) [pouces v] ▶
pivoter [droite v] de (90) degrés ▶
faire tourner [ArmMotor v] [en haut v] de (1) [tours v] ▶
se déplacer [avant v] sur (40) [pouces v] ▶
faire tourner [IntakeMotor v] [sortie v]
attendre (1) secondes
arrêter [IntakeMotor v]
Paramètres#
vitesse du moteur réglée#
Le bloc réglage de la vitesse du moteur indique au moteur sa vitesse de rotation. Un pourcentage plus élevé accélère la rotation, et un pourcentage plus faible la ralentit.
Chaque projet commence avec chaque moteur tournant par défaut à 50 % de sa vitesse maximale.
Remarque : Une vitesse plus élevée fait tourner le moteur plus vite, mais sa précision peut être moindre. Une vitesse plus faible fait tourner le moteur plus lentement, mais sa précision peut être accrue.
définir la vitesse de [IntakeMotor v] à [50] [% v]
Paramètres |
Description |
|---|---|
moteur |
Le moteur permettant de régler la vitesse de : IntakeMotor ou ArmMotor. |
vitesse |
La vitesse de rotation du moteur. Pourcentage utilise des nombres entiers de 0 % à 100 %. |
unité |
L’unité de vitesse : %. |
Exemple
au démarrage
[Score a Bean Bag in a Blue Goal.]
pivoter [à gauche v] de (90) degrés ▶
se déplacer [avant v] sur (35) [pouces v] ▶
pivoter [droite v] de (90) degrés ▶
faire tourner [ArmMotor v] [en haut v] de (1) [tours v] ▶
se déplacer [avant v] sur (40) [pouces v] ▶
définir la vitesse de [IntakeMotor v] à [100] [% v]
faire tourner [IntakeMotor v] [sortie v]
Régler le délai d’attente du moteur#
Le bloc définir le délai d’attente du moteur détermine la durée pendant laquelle un moteur tente de terminer un mouvement. Si le moteur ne parvient pas à terminer dans ce délai, il s’arrête et passe au bloc suivant dans la pile. Cela évite que le moteur ne se bloque.
définir le délai d'attente de [ArmMotor v] à [1] secondes
Paramètres |
Description |
|---|---|
moteur |
Le moteur pour régler le délai d’expiration de : IntakeMotor ou ArmMotor. |
temps |
Le nombre de secondes pendant lesquelles le moteur peut tenter de terminer un mouvement. Il peut s’agir d’un nombre entier ou décimal. |
Exemple
au démarrage
[Score a Bean Bag in a Blue Goal.]
pivoter [à gauche v] de (90) degrés ▶
se déplacer [avant v] sur (35) [pouces v] ▶
pivoter [droite v] de (90) degrés ▶
définir le délai d'attente de [ArmMotor v] à [2] secondes
faire tourner [ArmMotor v] [en haut v] de (1) [tours v] ▶
se déplacer [avant v] sur (40) [pouces v] ▶
faire tourner [IntakeMotor v] [sortie v]
Position#
position du moteur#
La position d’un moteur correspond à sa rotation, mesurée en degrés ou en tours. Un tour équivaut à 360 degrés. Le bloc de rapport de position du moteur indique la position actuelle du moteur.
Au début d’un projet, la position du moteur est initialement à 0 degré. Si le moteur effectue un tour complet dans un sens, la position sera de 360 degrés, soit un tour. S’il tourne dans l’autre sens, la position sera négative.
(position selon l'axe [ArmMotor v] en [degrés v])
Paramètres |
Description |
|---|---|
moteur |
Le moteur doit indiquer la position de : IntakeMotor ou ArmMotor. |
unité |
L’unité pour indiquer la position du moteur : degrés ou tours. |
Exemple
au démarrage
[Score a Bean Bag in a Blue Goal.]
pivoter [à gauche v] de (90) degrés ▶
se déplacer [avant v] sur (35) [pouces v] ▶
pivoter [droite v] de (90) degrés ▶
tant que <(position selon l'axe [ArmMotor v] en [degrés v]) [math_less_than v] [360]>
faire tourner [ArmMotor v] [en haut v]
attendre (0.002) secondes
fin
arrêter [ArmMotor v]
se déplacer [avant v] sur (40) [pouces v] ▶
faire tourner [IntakeMotor v] [sortie v]
position du moteur#
La position d’un moteur correspond à sa rotation, mesurée en degrés ou en tours. Un tour équivaut à 360 degrés. Le bloc définir la position du moteur permet de modifier la position actuelle du moteur.
Par exemple, si un moteur a effectué une rotation de 180 degrés, le fait de régler sa position à 0 degré la ramènera de 180 à 0 degré. Le moteur pourra ensuite effectuer des rotations en fonction de cette nouvelle valeur.
définir la position [ArmMotor v] sur (0) [degrés v]
Paramètres |
Description |
|---|---|
moteur |
Le moteur pour régler la position de : IntakeMotor ou ArmMotor. |
position |
Valeur de position à définir. Degrés : nombres entiers. Tours : nombres entiers ou décimaux. |
unité |
L’unité de position : degrés ou tours. |
Exemple
au démarrage
[Score a Bean Bag in a Blue Goal.]
pivoter [à gauche v] de (90) degrés ▶
se déplacer [avant v] sur (35) [pouces v] ▶
pivoter [droite v] de (90) degrés ▶
définir la position [ArmMotor v] sur [0] [degrés v]
faire tourner [ArmMotor v] [en haut v] de (1) [tours v] ▶
se déplacer [avant v] sur (40) [pouces v] ▶
faire tourner [IntakeMotor v] [sortie v]
Valeurs#
Le moteur est terminé#
Le bloc booléen moteur arrêté indique si le moteur a terminé son mouvement. Cette information peut être utilisée pour contrôler le moment d’autres actions en fonction du mouvement du moteur.
Vrai — Le moteur a fini de tourner.
Faux — Le moteur tourne toujours.
Ce bloc fonctionne avec les blocs Motion suivants qui ont le paramètre et ne pas attendre : faire tourner le moteur pendant et faire tourner le moteur jusqu’à la position.
<[ArmMotor v] a fini de tourner ?>
Paramètres |
Description |
|---|---|
moteur |
Le moteur qui indique s’il a fini de bouger : IntakeMotor ou ArmMotor. |
Exemple
au démarrage
[Score a Bean Bag in a Blue Goal.]
pivoter [à gauche v] de (90) degrés ▶
se déplacer [avant v] sur (35) [pouces v] ▶
pivoter [droite v] de (90) degrés ▶
faire tourner [ArmMotor v] jusqu'à la position (1) [tours v] ◀ et ne pas attendre
attendre jusqu'à <[ArmMotor v] a fini de tourner ?>
se déplacer [avant v] sur (40) [pouces v] ▶
faire tourner [IntakeMotor v] [sortie v]
Le moteur tourne#
Le bloc booléen le moteur tourne indique si le moteur est en marche. Cette information peut être utilisée pour contrôler le moment d’autres actions en fonction du mouvement du moteur.
Vrai — Le moteur tourne.
Faux — Le moteur ne tourne pas.
Ce bloc fonctionne avec les blocs Motion suivants qui ont le paramètre et ne pas attendre : faire tourner le moteur pendant et faire tourner le moteur jusqu’à la position.
<le [IntakeMotor v] est en train de tourner ?>
Paramètres |
Description |
|---|---|
moteur |
Le moteur qui indique s’il tourne : IntakeMotor ou ArmMotor. |
Exemple
au démarrage
[Score a Bean Bag in a Blue Goal.]
pivoter [à gauche v] de (90) degrés ▶
se déplacer [avant v] sur (35) [pouces v] ▶
pivoter [droite v] de (90) degrés ▶
faire tourner [ArmMotor v] [en haut v] de (1) [tours v] ▶
se déplacer [avant v] sur (40) [pouces v] ▶
faire tourner [IntakeMotor v] [sortie v]
attendre jusqu'à <pas <le [IntakeMotor v] est en train de tourner ?>>
arrêter [IntakeMotor v]
vitesse du moteur#
Le bloc de rapport vitesse du moteur indique la vitesse de rotation du moteur, en pourcentage, de -100 % à 100 %.
(vitesse de rotation de [IntakeMotor v] en [% v] :: custom-motion)
Paramètres |
Description |
|---|---|
moteur |
Le moteur pour indiquer la vitesse de : IntakeMotor ou ArmMotor. |
unité |
L’unité dans laquelle indiquer la vitesse du moteur : %. |
Exemple
au démarrage
[Score a Bean Bag in a Blue Goal.]
pivoter [à gauche v] de (90) degrés ▶
se déplacer [avant v] sur (35) [pouces v] ▶
pivoter [droite v] de (90) degrés ▶
faire tourner [ArmMotor v] [en haut v] de (1) [tours v] ▶
se déplacer [avant v] sur (40) [pouces v] ▶
faire tourner [IntakeMotor v] [sortie v]
attendre [0.2] secondes
afficher (vitesse de rotation de [IntakeMotor v] en [% v] :: custom-motion) ▶
Vision IA#
Actes#
obtenir les données de l’objet#
Le bloc obtenir les données de l’objet filtre les données de l’image du capteur de vision IQ AI pour obtenir une signature unique — une description enregistrée de quelque chose que le capteur peut reconnaître, comme un élément de jeu sur le terrain.
L’ensemble de données stocke les objets classés par largeur, du plus grand au plus petit, à partir de l’index 0. Les propriétés de chaque objet sont accessibles via le bloc object property. Un ensemble de données vide est renvoyé si aucun objet correspondant n’est détecté.
obtenir [Classifications IA v] des données de la caméra [AIVision v]
Paramètre |
Description |
|---|---|
signature |
Filtre l’ensemble de données pour n’inclure que les données de la signature spécifiée. Les signatures disponibles sont :
|
Exemple
au démarrage :: hat events
[Drop the preloaded Bean Bag.]
faire tourner [IntakeMotor v] [sortie v] de (180) [degrés v] ▶
pivoter [à gauche v] de (90) degrés ▶
[Find and face the nearest red Bean Bag.]
définir la vitesse de rotation à (30) [% v]
définir [object_counter v] en [1]
obtenir [Classifications IA v] des données de la caméra [AIVision v]
répéter (nombre d'objets vus par la caméra [AIVision v])
définir [AIVision v] l'élément d'objet sur (object_counter)
si <L'objet vu par la caméra [AIVision v] est [RedBeanBag v] ?> alors
if <([centreX v] de l'objet vu par la caméra [AIVision v]) < (140)> then
pivoter [à gauche v]
else if <([AIVision v] object [centerX v]) > (180)> then
pivoter [droite v]
sinon
arrêter le déplacement
fin
sortir
fin
modifier [object_counter v] par [1]
fin
Paramètres#
élément d’objet défini#
Le bloc set object item définit quel élément du jeu de données utiliser.
définir [AIVision v] l'élément d'objet sur [1]
Paramètres |
Description |
|---|---|
article |
Le numéro de l’élément à utiliser dans l’ensemble de données. |
Exemple
au démarrage :: hat events
[Drop the preloaded Bean Bag.]
faire tourner [IntakeMotor v] [sortie v] de (180) [degrés v] ▶
pivoter [à gauche v] de (90) degrés ▶
[Find the index of the nearest red Bean Bag.]
définir [object_counter v] en [1]
obtenir [Classifications IA v] des données de la caméra [AIVision v]
répéter (nombre d'objets vus par la caméra [AIVision v])
définir [AIVision v] l'élément d'objet sur (object_counter)
si <L'objet vu par la caméra [AIVision v] est [RedBeanBag v] ?> alors
afficher (joindre [Nearest Red Bean Bag is ] et (object_counter)) ▶
sortir
sinon
modifier [object_counter v] par [1]
fin
fin
Valeurs#
L’objet existe#
Le bloc objet existe renvoie une valeur booléenne indiquant si un objet est détecté dans l’ensemble de données.
Vrai – L’ensemble de données comprend un objet détecté.
Faux - L’ensemble de données ne contient aucun objet détecté.
<La caméra [AIVision v] voit-elle un objet ?>
Paramètres |
Description |
|---|---|
Ce bloc ne comporte aucun paramètre. |
Exemple
au démarrage :: hat events
[Drop the preloaded Bean Bag.]
faire tourner [IntakeMotor v] [sortie v] de (180) [degrés v] ▶
pivoter [à gauche v] de (90) degrés ▶
[Turn until a Bean Bag is detected.]
définir la vitesse de rotation à (30) [% v]
pivoter [droite v]
répéter jusqu'à <La caméra [AIVision v] voit-elle un objet ?>
obtenir [Classifications IA v] des données de la caméra [AIVision v]
fin
arrêter le déplacement
l’objet est#
Le bloc object is renvoie une valeur booléenne indiquant si un objet détecté correspond à une classification spécifique.
Vrai – L’élément du jeu de données est l’objet spécifique.
Faux - L’élément du jeu de données n’est pas l’objet spécifique.
<L'objet vu par la caméra [AIVision v] est [RedBeanBag v] ?>
Paramètre |
Description |
|---|---|
objet |
À quel objet comparer l’article : RedBeanBag, BlueBeanBag ou YellowBeanBag ? |
Exemple
au démarrage :: hat events
[Drop the preloaded Bean Bag.]
faire tourner [IntakeMotor v] [sortie v] de (180) [degrés v] ▶
pivoter [à gauche v] de (90) degrés ▶
[Find the index of the nearest red Bean Bag.]
définir [object_counter v] en [1]
obtenir [Classifications IA v] des données de la caméra [AIVision v]
répéter (nombre d'objets vus par la caméra [AIVision v])
définir [AIVision v] l'élément d'objet sur (object_counter)
si <L'objet vu par la caméra [AIVision v] est [RedBeanBag v] ?> alors
afficher (joindre [Nearest Red Bean Bag is ] et (object_counter)) ▶
sortir
sinon
modifier [object_counter v] par [1]
fin
fin
L’objet est AprilTag#
Le bloc object is AprilTag renvoie une valeur booléenne indiquant si l’objet détecté est un AprilTag correspondant à un ID spécifique.
Vrai - L’objet détecté est un AprilTag avec l’ID indiqué.
Faux - L’objet détecté n’est pas un AprilTag avec l’ID donné.
<L'objet vu par la caméra [AIVision v] objet est-il AprilTag [0]?>
Paramètre |
Description |
|---|---|
Identifiant AprilTag |
Le numéro d’identification à comparer avec l’AprilTag détecté. |
Exemple
au démarrage :: hat events
[Stop when you see the Red Goal!]
définir la vitesse de rotation à (30) [% v]
pivoter [droite v]
répéter jusqu'à <L'objet vu par la caméra [AIVision v] objet est-il AprilTag [1]?>
obtenir [AprilTags v] des données de la caméra [AIVision v]
fin
arrêter le déplacement
afficher [Found the Red Goal!] ▶
nombre d’objets#
Le bloc nombre d’objets renvoie le nombre d’objets détectés dans l’ensemble de données sous forme d’entier.
(nombre d'objets vus par la caméra [AIVision v])
Paramètres |
Description |
|---|---|
Ce bloc ne comporte aucun paramètre. |
Exemple
au démarrage :: hat events
[Drop the preloaded Bean Bag.]
faire tourner [IntakeMotor v] [sortie v] de (180) [degrés v] ▶
pivoter [à gauche v] de (90) degrés ▶
[Print how many Bean Bags are detected.]
obtenir [Classifications IA v] des données de la caméra [AIVision v]
afficher (nombre d'objets vus par la caméra [AIVision v]) ▶
propriété d’objet#
Il existe six propriétés qui sont incluses avec chaque objet stocké après l’utilisation du bloc get object data.
([largeur v] de l'objet vu par la caméra [AIVision v])
Toutes les valeurs de propriétés décrivent la position et la taille de l’objet détecté dans le champ de vision du capteur de vision IQ AI au moment où le bloc obtenir les données de l’objet a été utilisé. Ces valeurs sont exprimées en pixels, selon la résolution de 320 x 240 pixels du capteur.
Paramètre |
Description |
|---|---|
propriété |
Quelle propriété de l’objet détecté utiliser : largeur, hauteur, centreX, centreY, origineX ou origineY. |
largeur#
La propriété largeur indique la largeur de l’objet détecté en pixels sous forme d’un nombre entier compris entre 1 et 320.
([largeur v] de l'objet vu par la caméra [AIVision v])
Exemple
au démarrage
[Drop the preloaded Bean Bag.]
faire tourner [IntakeMotor v] [sortie v] de (180) [degrés v] ▶
pivoter [à gauche v] de (90) degrés ▶
[Approach the Bean Bag, then pick it up.]
définir la vitesse de déplacement à (30) [% v]
indéfiniment
obtenir [Classifications IA v] des données de la caméra [AIVision v]
si <La caméra [AIVision v] voit-elle un objet ?> alors
définir [AIVision v] l'élément d'objet sur [1]
si <L'objet vu par la caméra [AIVision v] est [RedBeanBag v] ?> alors
if <([AIVision v] object [width v]) > (180)> then
se déplacer [avant v] sur [50] [mm v] ▶
faire tourner [IntakeMotor v] [entrée v] de [90] [degrés v] ▶
sortir
sinon
se déplacer en [avant v]
fin
fin
fin
fin
hauteur#
La propriété hauteur indique la hauteur de l’objet détecté en pixels sous forme d’un nombre entier compris entre 1 et 240.
([hauteur v] de l'objet vu par la caméra [AIVision v])
Exemple
au démarrage
[Drop the preloaded Bean Bag.]
faire tourner [IntakeMotor v] [sortie v] de (180) [degrés v] ▶
pivoter [à gauche v] de (90) degrés ▶
[Approach the Bean Bag, then pick it up.]
définir la vitesse de déplacement à (30) [% v]
indéfiniment
obtenir [Classifications IA v] des données de la caméra [AIVision v]
si <La caméra [AIVision v] voit-elle un objet ?> alors
définir [AIVision v] l'élément d'objet sur [1]
si <L'objet vu par la caméra [AIVision v] est [RedBeanBag v] ?> alors
if <([AIVision v] object [height v]) > (100)> then
se déplacer [avant v] sur [50] [mm v] ▶
faire tourner [IntakeMotor v] [entrée v] de [90] [degrés v] ▶
sortir
sinon
se déplacer en [avant v]
fin
fin
fin
fin
centreX#
La propriété centerX indique la coordonnée x du centre de l’objet détecté en pixels sous forme d’un nombre entier compris entre 0 et 320.
([centreX v] de l'objet vu par la caméra [AIVision v])
Exemple
au démarrage
[Drop the preloaded Bean Bag.]
faire tourner [IntakeMotor v] [sortie v] de (180) [degrés v] ▶
pivoter [à gauche v] de (90) degrés ▶
[Steer to keep the Bean Bag centered while approaching.]
définir la vitesse de rotation à (30) [% v]
définir la vitesse de déplacement à (30) [% v]
indéfiniment
obtenir [Classifications IA v] des données de la caméra [AIVision v]
si <La caméra [AIVision v] voit-elle un objet ?> alors
définir [AIVision v] l'élément d'objet sur [1]
si <L'objet vu par la caméra [AIVision v] est [RedBeanBag v] ?> alors
if <([centreX v] de l'objet vu par la caméra [AIVision v]) < (140)> then
pivoter [à gauche v] de (5) degrés ▶
sinon
se déplacer [avant v] sur (150) [mm v] ▶
faire tourner [IntakeMotor v] [entrée v]
sortir
fin
fin
fin
fin
centreY#
La propriété centerY indique la coordonnée y du centre de l’objet détecté en pixels sous forme d’un nombre entier compris entre 0 et 240.
([centreY v] de l'objet vu par la caméra [AIVision v])
Exemple
au démarrage
[Drop the preloaded Bean Bag.]
faire tourner [IntakeMotor v] [sortie v] de (180) [degrés v] ▶
pivoter [à gauche v] de (90) degrés ▶
[Print the y-position of the Bean Bag.]
obtenir [Classifications IA v] des données de la caméra [AIVision v]
si <La caméra [AIVision v] voit-elle un objet ?> alors
définir [AIVision v] l'élément d'objet sur [1]
si <L'objet vu par la caméra [AIVision v] est [RedBeanBag v] ?> alors
afficher ([centreY v] de l'objet vu par la caméra [AIVision v]) ▶
fin
fin
originX#
La propriété originX indique la coordonnée x du coin supérieur gauche de la boîte englobante de l’objet détecté en pixels sous forme d’un nombre entier compris entre 0 et 320.
([origineX v] de l'objet vu par la caméra [AIVision v])
Exemple
au démarrage
[Drop the preloaded Bean Bag.]
faire tourner [IntakeMotor v] [sortie v] de (180) [degrés v] ▶
pivoter [à gauche v] de (90) degrés ▶
[Steer to keep the left edge centered.]
définir la vitesse de rotation à (30) [% v]
définir la vitesse de déplacement à (30) [% v]
indéfiniment
obtenir [Classifications IA v] des données de la caméra [AIVision v]
si <La caméra [AIVision v] voit-elle un objet ?> alors
définir [AIVision v] l'élément d'objet sur [1]
si <L'objet vu par la caméra [AIVision v] est [RedBeanBag v] ?> alors
if <([origineX v] de l'objet vu par la caméra [AIVision v]) < (100)> then
pivoter [à gauche v] de (5) degrés ▶
sinon
se déplacer [avant v] sur (150) [mm v] ▶
faire tourner [IntakeMotor v] [entrée v]
sortir
fin
fin
fin
fin
origine#
La propriété originY indique la coordonnée y du coin supérieur gauche de la boîte englobante de l’objet détecté en pixels sous forme d’un nombre entier compris entre 0 et 240.
([origineY v] de l'objet vu par la caméra [AIVision v])
Exemple
au démarrage
[Drop the preloaded Bean Bag.]
faire tourner [IntakeMotor v] [sortie v] de (180) [degrés v] ▶
pivoter [à gauche v] de (90) degrés ▶
[Print the y-position of the Bean Bag's top edge.]
obtenir [Classifications IA v] des données de la caméra [AIVision v]
si <La caméra [AIVision v] voit-elle un objet ?> alors
définir [AIVision v] l'élément d'objet sur [1]
si <L'objet vu par la caméra [AIVision v] est [RedBeanBag v] ?> alors
afficher ([origineY v] de l'objet vu par la caméra [AIVision v]) ▶
fin
fin