Contrôleur#

Introduction#

La manette V5 est équipée de boutons, de deux joysticks, d’un moteur de vibration et d’un écran. Les blocs de contrôle permettent de vérifier les appuis sur les boutons, de lire les mouvements des joysticks, de faire vibrer la manette, d’activer ou de désactiver les actions configurées, d’exécuter des blocs lors d’événements ou d’afficher du texte sur l’écran.

Les actions de contrôleur configurées sont des comportements de contrôleur définis dans le menu Appareils. Utilisez le bloc Activer/Désactiver le contrôleur pour activer ou désactiver temporairement ces actions configurées au cours d’un projet.

Vous trouverez ci-dessous la liste des blocs disponibles :

Valeurs — Vérifier l’état des boutons de la manette ou lire la position du joystick.

Actions — Faire vibrer la manette, activer/désactiver les actions configurées de la manette ou exécuter des blocs lorsque l’entrée de la manette change.

Écran — Affiche le texte et les chiffres sur l’écran de la manette.

Valeurs#

Manette enfoncée ?#

Le bloc booléen Bouton de la manette enfoncé ? indique si un bouton de la manette sélectionné est enfoncé.

Faces avant et arrière de la manette V5, les boutons étant surlignés en jaune. Sur la face avant de la manette se trouvent les boutons fléchés haut, bas, gauche et droite à gauche, et les boutons X, A, B et Y dans le sens horaire à partir de midi à droite. À l'arrière de la manette se trouvent les boutons L1, L2, R1 et R2 respectivement à gauche et à droite.

Manette enfoncée ? Bloc booléen#
<[▲ v] de [Controller1 v] pressé ?>

Paramètre

Description

appareil

Le contrôleur à utiliser, configuré dans la fenêtre Périphériques.

bouton

Bouton à vérifier :

  • ▲
  • ▼
  • ◀
  • ▶
  • X
  • B
  • Y
  • A
  • L1
  • L2
  • R1
  • R2

Exemple

Au démarrage, le véhicule avance tant que le bouton X est enfoncé.#
au démarrage
[Drive forward while X is pressed.]
indéfiniment
si <[X v] de [Controller1 v] pressé ?> alors
se déplacer en [avant v]
sinon
arrêter le déplacement
fin
fin

Position du contrôleur#

Le bloc de rapport Position du contrôleur renvoie la position du joystick le long d’un axe sélectionné sous forme d’un nombre compris entre -100 et 100.

Une manette VEX V5 avec les axes autour des joysticks étiquetés. Les axes 1 et 2 sont autour du joystick droit, et les axes 3 et 4 sont autour du joystick gauche.

bloc rapporteur de position du contrôleur#
([Controller1 v] [1 v] position :: sensing)

Paramètre

Description

appareil

Le contrôleur à utiliser, configuré dans la fenêtre Périphériques.

axe

Axes du joystick à signaler :

  • 1 — axe horizontal du joystick droit
  • 2 — axe vertical du joystick droit
  • 3 — axe vertical du joystick gauche
  • 4 — axe horizontal du joystick gauche

Exemple

Au démarrage, le véhicule avance lorsque le joystick gauche est poussé vers le haut.#
au démarrage
[Drive forward while the left joystick is pushed up.]
indéfiniment
si <([Controller1 v] [3 v] position :: sensing) [math_greater_than v] [0]> alors
se déplacer en [avant v]
sinon
arrêter le déplacement
fin
fin

Actes#

Jouer à la fonction de vibration de la manette#

Le bloc jouer des vibrations sur la manette joue un motif de vibration sur la manette.

Jouer à la vibration sur un bloc de pile de manettes#
jouer un grondement [Long v] sur [Controller1 v]

Paramètre

Description

modèle

Le motif de vibration à jouer sur la manette :

  • Long — une vibration longue
  • Court — une vibration courte
  • Impulsion — un motif de vibrations intermittentes

appareil

Le contrôleur à utiliser, configuré dans la fenêtre Périphériques.

Exemple

Lorsque le bouton R1 est enfoncé, une brève vibration se fait entendre sur la manette.#
quand le bouton [R1 v] de[Controller1 v] est [pressé v] :: hat events
jouer un grondement [Court v] sur [Controller1 v]

Activation/désactivation du contrôleur#

Le bloc Activation/désactivation du contrôleur active ou désactive les actions configurées du contrôleur à partir du menu Appareils pour tous les contrôleurs connectés.

Bloc de pile d’activation/désactivation du contrôleur#
Manette [Désactivé v]

Paramètre

Description

État

État d’action configuré du contrôleur : Désactivé ou Activé.

Exemple

Au démarrage, il désactive les actions configurées du contrôleur pendant que le robot avance.#
au démarrage
[Disable Controller configured actions until the drive movement is done.]
Manette [Désactivé v]
se déplacer [avant v] sur (6) [pouces v] ▶
Manette [Activé v]

lorsque le bouton de la manette est enfoncé#

Le bloc Hat lorsque le bouton de la manette est enfoncé exécute la pile attachée lorsqu’un bouton de la manette sélectionné est enfoncé ou relâché.

Faces avant et arrière de la manette V5, les boutons étant surlignés en jaune. Sur la face avant de la manette se trouvent les boutons fléchés haut, bas, gauche et droite à gauche, et les boutons X, A, B et Y dans le sens horaire à partir de midi à droite. À l'arrière de la manette se trouvent les boutons L1, L2, R1 et R2 respectivement à gauche et à droite.

lorsque le bouton de la manette est enfoncé, bloc de chapeau#
quand le bouton [▲ v] de[Controller1 v] est [pressé v] :: hat events

Paramètre

Description

appareil

Le contrôleur à utiliser, configuré dans la fenêtre Périphériques.

bouton

Bouton à vérifier :

  • ▲
  • ▼
  • ◀
  • ▶
  • X
  • B
  • Y
  • A
  • L1
  • L2
  • R1
  • R2

état du bouton

L’événement du bouton qui déclenche la pile associée : appuyé ou relâché.

Exemple

Lorsque le bouton R1 est enfoncé, il avance de 200 millimètres.#
quand le bouton [R1 v] de[Controller1 v] est [pressé v] :: hat events
[Drive forward when R1 is pressed.]
se déplacer [avant v] sur (200) [mm v] ▶

lorsque l’axe du contrôleur change#

Le bloc Hat lorsque l’axe du contrôleur est modifié exécute la pile attachée lorsqu’un joystick change de position le long de l’axe sélectionné.

Une manette VEX V5 avec les axes autour des joysticks étiquetés. Les axes 1 et 2 sont autour du joystick droit, et les axes 3 et 4 sont autour du joystick gauche.

bloc chapeau lorsque l’axe du contrôleur change#
when [Controller1 v] axis [1 v] is changed :: hat events

Paramètre

Description

appareil

Le contrôleur à utiliser, configuré dans la fenêtre Périphériques.

axe

Axes du joystick à vérifier :

  • 1 — axe horizontal du joystick droit
  • 2 — axe vertical du joystick droit
  • 3 — axe vertical du joystick gauche
  • 4 — axe horizontal du joystick gauche

Exemple

Lorsque la position du joystick change le long de l’axe 3 du contrôleur, avance de 200 millimètres.#
when [Controller1 v] axis [3 v] is changed :: hat events
[Drive forward when the joystick's position changes along axis 3.]
se déplacer [avant v] sur (200) [mm v] ▶

Écran#

Définir le curseur sur la ligne et la colonne du contrôleur#

Le bloc Définir le curseur sur la ligne et la colonne du contrôleur déplace le curseur à une ligne et une colonne spécifiées sur l’écran du contrôleur. La prochaine valeur imprimée apparaîtra à cet emplacement.

Définir le curseur sur la ligne et la colonne du bloc de pile du contrôleur#
placer le curseur sur la ligne [1] colonne [1] sur [Controller1 v] :: custom-controller-inertial-timer

Paramètre

Description

rangée

La ligne sur laquelle déplacer le curseur sur l’écran de la manette.

colonne

La colonne sur laquelle déplacer le curseur sur l’écran du contrôleur.

appareil

Le contrôleur à utiliser, configuré dans la fenêtre Périphériques.

Exemple

Au démarrage, le texte s’affiche à la ligne 2, colonne 1 sur l’écran du contrôleur.#
au démarrage
[Display a message on row 2.]
placer le curseur sur la ligne [2] colonne [1] sur [Controller1 v] :: custom-controller-inertial-timer
afficher [Ready] sur [Controller1 v] ▶ :: custom-controller-inertial-timer

Définir le curseur sur la ligne suivante du contrôleur#

Le bloc Déplacer le curseur sur la ligne suivante du contrôleur déplace le curseur à la colonne 1 de la ligne suivante de l’écran du contrôleur. La prochaine valeur imprimée apparaîtra sur cette ligne.

Définir le curseur sur la ligne suivante du bloc de pile du contrôleur#
placer le curseur sur la ligne suivante sur [Controller1 v] :: custom-controller-inertial-timer

Paramètre

Description

appareil

Le contrôleur à utiliser, configuré dans la fenêtre Périphériques.

Exemple

Au démarrage, il imprime deux lignes sur l’écran du contrôleur.#
au démarrage
[Display two rows of text.]
afficher [Row 1] sur [Controller1 v] ▶ :: custom-controller-inertial-timer
placer le curseur sur la ligne suivante sur [Controller1 v] :: custom-controller-inertial-timer
afficher [Row 2] sur [Controller1 v] ▶ :: custom-controller-inertial-timer

Régler la précision d’impression sur le contrôleur#

Le bloc définir la précision d’impression sur le contrôleur détermine le nombre de décimales affichées lors de l’impression de nombres sur l’écran du contrôleur. Ce paramètre s’applique aux nombres imprimés après l’utilisation de ce bloc.

définir la précision d’impression sur le bloc de pile du contrôleur#
définir la précision d'affichage à [0.1 v] sur [Controller1 v] :: custom-controller-inertial-timer

Paramètre

Description

précision

Précision d’impression à utiliser :

  • 1 — sans décimale
  • 0,1 — 1 décimale
  • 0,01 — 2 décimales
  • 0,001 — 3 décimales
  • Tous les chiffres — toutes les décimales disponibles

appareil

Le contrôleur à utiliser, configuré dans la fenêtre Périphériques.

Exemple

Au démarrage, l’écran du contrôleur affiche 1/3 avec deux décimales.#
au démarrage
[Display 1/3 with two decimals.]
définir la précision d'affichage à [0.01 v] sur [Controller1 v] :: custom-controller-inertial-timer
afficher ([1] [math_division v] [3]) sur [Controller1 v] ▶ :: custom-controller-inertial-timer

contrôleur clair#

Le bloc effacer le contrôleur efface toutes les lignes de l’écran du contrôleur et déplace le curseur vers la première ligne.

bloc de pile de contrôleurs effacé#
effacer [Controller1 v] :: custom-controller-inertial-timer

Paramètre

Description

appareil

Le contrôleur à utiliser, configuré dans la fenêtre Périphériques.

Exemple

Au démarrage, il imprime du texte, attend, puis efface l’écran du contrôleur.#
au démarrage
[Clear the Controller screen after printing.]
afficher [This will disappear...] sur [Controller1 v] ▶ :: custom-controller-inertial-timer
attendre [2] secondes
effacer [Controller1 v] :: custom-controller-inertial-timer

effacer la ligne sur le contrôleur#

Le bloc de pile effacer la ligne sur le contrôleur efface une seule ligne sur l’écran du contrôleur.

effacer la ligne sur le bloc de pile du contrôleur#
effacer la ligne [1] sur [Controller1 v] :: custom-controller-inertial-timer

Paramètre

Description

rangée

La ligne à effacer sur l’écran de la manette.

appareil

Le contrôleur à utiliser, configuré dans la fenêtre Périphériques.

Exemple

Au démarrage, efface la première ligne de l’écran du contrôleur.#
au démarrage
[Clear one row on the Controller screen.]
afficher [Row 1] sur [Controller1 v] ▶ :: custom-controller-inertial-timer
placer le curseur sur la ligne suivante sur [Controller1 v] :: custom-controller-inertial-timer
afficher [Row 2] sur [Controller1 v] ▶ :: custom-controller-inertial-timer
attendre [2] secondes
effacer la ligne [1] sur [Controller1 v] :: custom-controller-inertial-timer