Tous les capteurs ev3 portent le nom correct. Connecter deux ou plusieurs briques EV3

Traditionnellement, les robots construits sur une plateforme LEGO Mindstorms EV3, sont programmés à l'aide de l'environnement graphique LabVIEW. Dans ce cas, les programmes s'exécutent sur le contrôleur EV3 et le robot fonctionne de manière autonome. Ici, je vais parler d'une manière alternative de contrôler le robot : en utilisant la plate-forme .NET exécutée sur un ordinateur.

Mais avant de nous lancer dans la programmation, examinons quelques cas où cela pourrait être utile :

  • Nécessite le contrôle à distance du robot depuis un ordinateur portable (par exemple, en appuyant sur des boutons)
  • Il est nécessaire de collecter les données du contrôleur EV3 et de les traiter sur un système externe (par exemple, pour les systèmes IoT)
  • Toute autre situation dans laquelle vous souhaitez écrire un algorithme de contrôle en .NET et l'exécuter à partir d'un ordinateur connecté au contrôleur EV3

API LEGO MINDSTORMS EV3 pour .NET

Le contrôleur EV3 est contrôlé depuis un système externe en envoyant des commandes au port série. Le format de commande lui-même est décrit dans le Communication Developer Kit.

Mais implémenter ce protocole manuellement est ennuyeux. Par conséquent, vous pouvez utiliser le wrapper .NET prêt à l'emploi, que Brian Peek a soigneusement écrit. Le code source de cette bibliothèque est hébergé sur Github et le package prêt à l'emploi peut être trouvé sur Nuget.

Connexion à un contrôleur EV3

La classe Brick est utilisée pour communiquer avec le contrôleur EV3. Lors de la création de cet objet, vous devez transmettre une implémentation de l'interface ICommunication au constructeur - un objet qui décrit comment se connecter au contrôleur EV3. Des implémentations UsbCommunication, BluetoothCommunication et NetworkCommunication (connexion WiFi) sont disponibles.

La méthode de connexion la plus populaire est via Bluetooth. Examinons de plus près cette méthode de connexion.

Avant de pouvoir nous connecter par programmation au contrôleur via Bluetooth, le contrôleur doit être connecté à l'ordinateur à l'aide des paramètres du système d'exploitation.

Une fois le contrôleur connecté, accédez aux paramètres Bluetooth et sélectionnez l'onglet Ports COM. On trouve notre contrôleur, il nous faut sortant port. Nous le préciserons lors de la création de l'objet BluetoothCommunication.

Le code pour se connecter au contrôleur ressemblera à ceci :

Tâche asynchrone publique Connect (communication ICommunication) ( var communication = new BluetoothCommunication("COM9"); var brick = _brick = new Brick(communication); wait _brick.ConnectAsync(); )

Facultativement, vous pouvez spécifier un délai d'expiration de connexion au contrôleur :

Attendez _brick.ConnectAsync(TimeSpan.FromSeconds(5));

La connexion à l'appareil via USB ou WiFi s'effectue de la même manière, à l'exception de l'utilisation des objets UsbCommunication et NetworkCommunication.

Toutes les autres actions effectuées sur le contrôleur sont effectuées via l'objet Brick.

Faisons tourner les moteurs

Pour exécuter des commandes sur le contrôleur EV3, on accède à la propriété DirectCommand de l'objet Brick. Commençons par essayer de démarrer les moteurs.

Supposons que notre moteur soit connecté au port A du contrôleur, alors faire fonctionner ce moteur à 50 % de sa puissance ressemblera à ceci :

Attendez _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.A, 50);

Il existe d'autres méthodes pour contrôler le moteur. Par exemple, vous pouvez faire pivoter un moteur selon un angle spécifié à l'aide des méthodes StepMotorAtPowerAsync() et StepMotorAtSpeedAsync(). Il existe plusieurs méthodes disponibles, qui sont des variations des modes de mise en marche des moteurs - en fonction du temps, de la vitesse, de la puissance, etc.

L'arrêt forcé s'effectue à l'aide de la méthode StopMotorAsync() :

Attendez _brick.DirectCommand.StopMotorAsync(OutputPort.A, true);

Le deuxième paramètre indique l'utilisation du frein. Si vous le réglez sur faux, le moteur s'arrêtera en roue libre.

Lecture des valeurs des capteurs

Le contrôleur EV3 dispose de quatre ports pour connecter des capteurs. En plus de cela, les moteurs disposent également d'encodeurs intégrés, ce qui leur permet d'être utilisés comme capteurs. En conséquence, nous disposons de 8 ports à partir desquels les valeurs peuvent être lues.

Les ports de lecture des valeurs sont accessibles via la propriété Ports de l'objet Brick. Les ports sont une collection de ports disponibles sur le contrôleur. Par conséquent, pour travailler avec un port spécifique, vous devez le sélectionner. InputPort.One ... InputPort.Four sont les ports de capteur et InputPort.A ... InputPort.D sont les encodeurs de moteur.

Var port1 = _brick.Ports ;

Les capteurs de l'EV3 peuvent fonctionner dans différents modes. Par exemple, le capteur de couleur EV3 peut être utilisé pour mesurer la lumière ambiante, mesurer la lumière réfléchie ou détecter la couleur. Par conséquent, afin de « dire » au capteur exactement comment nous voulons l’utiliser, nous devons définir son mode :

Brick.Ports.SetMode(ColorMode.Reflective);

Maintenant que le capteur est connecté et que son mode de fonctionnement est défini, vous pouvez en lire les données. Vous pouvez obtenir des données « brutes », une valeur traitée et une valeur en pourcentage.

Float si = _brick.Ports.SIValue ; int brut = _brick.Ports.RawValue; octet pour cent = _brick.Ports.PercentValue ;

La propriété SIValue renvoie les données traitées. Tout dépend du capteur utilisé et dans quel mode. Par exemple, lors de la mesure de la lumière réfléchie, nous obtiendrons des valeurs de 0 à 100 en fonction de l'intensité de la lumière réfléchie (noir/blanc).

La propriété RawValue renvoie la valeur brute obtenue à partir de l'ADC. Parfois, il est plus pratique de l'utiliser pour un traitement et une utilisation ultérieurs. À propos, dans l'environnement de développement EV3, il est également possible d'obtenir des valeurs « brutes » - pour cela, vous devez utiliser le bloc du panneau bleu.

Si le capteur que vous utilisez s'attend à recevoir des valeurs en pourcentage, vous pouvez également utiliser la propriété PercentValue.

Exécuter des commandes par lots

Disons que nous avons un chariot robot à deux roues et que nous voulons le déployer sur place. Dans ce cas, les deux roues doivent tourner dans le sens opposé. Si nous utilisons DirectCommand et envoyons deux commandes séquentiellement au contrôleur, un certain temps peut s'écouler entre leur exécution :

Attendez _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.A, 50); attendre _brick.DirectCommand.TurnMotorAtPowerAsync(OutputPort.B, -50);

Dans cet exemple, nous envoyons une commande pour faire tourner le moteur A à une vitesse de 50, après avoir envoyé cette commande avec succès, nous répétons la même chose avec le moteur connecté au port B. Le problème est que l'envoi des commandes ne se fait pas instantanément, donc les moteurs peut commencer à tourner à des moments différents - pendant que la commande est transmise pour le port B, le moteur A déjà commencera à tourner.

S'il est essentiel pour nous de faire tourner les moteurs en même temps, nous pouvons envoyer des commandes au contrôleur dans un « bundle ». Dans ce cas, vous devez utiliser la propriété BatchCommand au lieu de DirectCommand :

Brick.BatchCommand.TurnMotorAtPower(OutputPort.A, 50); _brick.BatchCommand.TurnMotorAtPower(OutputPort.B, -50); attendre _brick.BatchCommand.SendCommandAsync();

Désormais, deux commandes sont préparées en même temps, après quoi elles sont envoyées au contrôleur dans un seul paquet. Le contrôleur, ayant reçu ces commandes, commencera à faire tourner les moteurs simultanément.

Que pouvez vous faire d'autre

En plus de faire tourner les moteurs et de lire les valeurs des capteurs, vous pouvez effectuer un certain nombre d'autres actions sur le contrôleur EV3. Je n'entrerai pas dans les détails de chacun d'eux, je me contenterai d'énumérer une liste de ce qui peut être fait :

  • CleanUIAsync(), DrawTextAsync(), DrawLineAsync(), etc. - manipulation de l'écran intégré du contrôleur EV3
  • PlayToneAsync() et PlaySoundAsync() - utilisez le haut-parleur intégré pour jouer des sons
  • WriteFileAsync() , CopyFileAsync() , DeleteFileAsync() (depuis SystemCommand) - travailler avec des fichiers

Conclusion

L’utilisation de .NET pour contrôler les robots Mindstorms EV3 démontre bien comment les technologies de « mondes différents » peuvent fonctionner ensemble. À la suite de recherches sur l'API EV3 pour .NET, une petite application a été créée qui vous permet de contrôler le robot EV3 depuis un ordinateur. Malheureusement, des applications similaires existent pour NXT, mais EV3 les a contournées. En même temps, ils sont utiles dans les compétitions de robots contrôlés, comme le football robotisé.

L'application peut être téléchargée et installée à partir de ce lien :

Si, comme nous, vous ne disposez pas des capacités des capteurs EV3 standard, si 4 ports pour capteurs dans vos robots ne suffisent pas ou si vous souhaitez connecter des périphériques exotiques à votre robot, cet article est pour vous. Croyez-moi, un capteur fait maison pour EV3 est plus simple qu'il n'y paraît. Un « bouton de volume » d’une vieille radio ou quelques clous plantés dans le sol d’un pot de fleur comme capteur d’humidité du sol sont parfaits pour l’expérience.

Étonnamment, chaque port de capteur EV3 cache un certain nombre de protocoles différents, principalement pour la compatibilité avec les capteurs NXT et tiers. Voyons comment fonctionne le câble EV3


C'est étrange, mais le fil rouge est la masse (GND), le fil vert est le plus de l'alimentation 4,3V. Le fil bleu est à la fois SDA pour le bus I2C et TX pour le protocole UART. De plus, le fil bleu est l’entrée du convertisseur analogique-numérique pour EV3. Le fil jaune est à la fois SCL pour le bus I2C et RX pour le protocole UART. Le fil blanc est l'entrée du convertisseur analogique-numérique pour les capteurs NXT. Noir - entrée numérique, pour capteurs compatibles NXT - elle duplique GND. Pas facile, n'est-ce pas ? Allons-y dans l'ordre.

Entrée analogique EV3

Chaque port de capteur dispose d'un canal de conversion analogique-numérique. Il est utilisé pour des capteurs tels que le capteur tactile (bouton), le capteur de lumière NXT et le capteur de couleur en mode lumière réfléchie et lumière ambiante, le capteur sonore NXT et le thermomètre NXT.

Une résistance de 910 Ohms, connectée selon le schéma, indique au contrôleur que ce port doit être basculé en mode entrée analogique. Dans ce mode, vous pouvez connecter n'importe quel capteur analogique à EV3, par exemple depuis Arduino. Le taux d'échange avec un tel capteur peut atteindre plusieurs milliers d'interrogations par seconde ; c'est le type de capteur le plus rapide.

Capteur de lumière

Thermomètre

Capteur d'humidité du sol

Vous pouvez également connecter : un microphone, un bouton, un télémètre IR et bien d'autres capteurs courants. Si l'alimentation 4,3 V n'est pas suffisante pour le capteur, vous pouvez l'alimenter en 5 V depuis le port USB situé sur le côté du contrôleur EV3.

Le « bouton de volume » mentionné ci-dessus (également connu sous le nom de résistance variable ou potentiomètre) est un excellent exemple de capteur analogique - il peut être connecté comme ceci :

Pour lire les valeurs d'un tel capteur dans l'environnement de programmation LEGO standard, vous devez utiliser le bloc RAW bleu

Protocole I2C

Il s'agit d'un protocole numérique ; par exemple, le capteur à ultrasons NXT et de nombreux capteurs Hitechnic, tels que IR Seeker ou Color Sensor V2, fonctionnent dessus. Pour d'autres plateformes, par exemple pour Arduino, il existe de nombreux capteurs i2c, vous pouvez également les connecter. Le schéma est le suivant :

Une résistance de 82 ohms est recommandée par le groupe LEGO, mais diverses sources mentionnent 43 ohms ou moins. En fait, nous avons essayé d’abandonner complètement ces résistances et tout fonctionne, du moins « sur la table ». Dans un robot réel fonctionnant dans des conditions d'interférences diverses, les lignes SCL et SDA doivent toujours être connectées à l'alimentation électrique via des résistances, comme indiqué dans le schéma ci-dessus. La vitesse de fonctionnement i2c dans EV3 est assez faible, environ 10 000 kbps, c'est pourquoi le Hitechnic Color Sensor V2 préféré de tous est si lent :)

Malheureusement, pour le EV3-G standard de LEGO, il n'existe pas de bloc à part entière pour la communication bidirectionnelle avec un capteur i2c, mais en utilisant des environnements de programmation tiers tels que RobotC, LeJOS ou EV3 Basic, vous pouvez interagir avec presque tous les capteurs i2c. .

La capacité de l'EV3 à fonctionner via le protocole i2c ouvre une possibilité intéressante pour connecter plusieurs capteurs à un seul port. Le protocole I2C vous permet de connecter jusqu'à 127 appareils esclaves à un seul bus. Peux-tu imaginer? 127 capteurs pour chaque port EV3 :) De plus, souvent plusieurs capteurs i2c sont combinés dans un seul appareil, par exemple sur la photo ci-dessous il y a un capteur 10 en 1 (contient une boussole, un gyroscope, un accéléromètre, un baromètre, etc.)

UART

Presque tous les capteurs standards non EV3, à l'exception du Touch Sensor, fonctionnent avec le protocole UART et c'est pourquoi ils ne sont pas compatibles avec le contrôleur NXT, qui, bien qu'il dispose des mêmes connecteurs, n'a pas implémenté UART sur son capteur. ports. Regardez le schéma, c'est un peu plus simple que dans les cas précédents :

Les capteurs UART adaptent automatiquement leur vitesse de fonctionnement à celle d'EV3. Se connectant dans un premier temps à un débit de 2400 kbit/s, ils s'accordent sur les modes de fonctionnement et les taux de change, puis passent à un débit accru. Les taux de change typiques pour différents capteurs sont de 38 400 et 115 200 kbit/s.
LEGO a implémenté un protocole assez compliqué dans ses capteurs UART, il n'y a donc pas de capteurs tiers qui n'étaient pas initialement destinés à cette plateforme, mais qui sont compatibles avec elle. Néanmoins, ce protocole est très pratique pour connecter du « fait maison »
capteurs basés sur des microcontrôleurs.
Il existe une merveilleuse bibliothèque pour Arduino appelée EV3UARTEmulation, écrite par le célèbre développeur LeJOS Lawrie Griffiths, qui permet à cette carte de se faire passer pour un capteur compatible UART-LEGO. Son blog LeJOS News propose de nombreux exemples de connexion de capteurs de gaz, d'un capteur IMU et d'une boussole numérique utilisant cette bibliothèque.

Ci-dessous dans la vidéo, vous trouverez un exemple d'utilisation d'un capteur fait maison. Nous n'avons pas assez de capteurs de distance LEGO originaux, nous en utilisons donc un fait maison sur le robot :


La tâche du robot est de partir de la cellule verte, de trouver une sortie du labyrinthe (cellule rouge) et de revenir au point de départ par le chemin le plus court, sans entrer dans des impasses.

Sélectionner le mode écran

Sélection de mode
Bloquer le champ de texte
Contributions
Bouton Aperçu

Sélectionnez le type de texte ou de graphiques que vous souhaitez voir à l'aide du sélecteur de mode. Après avoir sélectionné le mode, vous pouvez sélectionner les valeurs d'entrée. Les entrées disponibles varient en fonction du mode. Les modes et les entrées sont décrits ci-dessous.

Vous pouvez cliquer sur le bouton Aperçu pour prévisualiser ce que le bloc d'affichage affichera sur l'écran EV3. Vous pouvez laisser la vue ouverte tout en sélectionnant les valeurs d'entrée pour le bloc.

Coordonnées de l'écran

De nombreux modes de bloc d'écran utilisent les coordonnées X et Y pour déterminer l'emplacement de l'élément. Les coordonnées déterminent la position des pixels sur l'écran EV3 Brick. La position (0, 0) se trouve dans le coin supérieur gauche de l'écran, comme indiqué dans l'image ci-dessous.

Dimensions de l'écran : 178 pixels de large et 128 pixels de haut. La plage des valeurs des coordonnées X va de 0 sur l'écran de gauche à 177 à droite. La plage des valeurs des coordonnées Y va de 0 en haut à 127 en bas.

Trucs et astuces

Vous pouvez utiliser le bouton Aperçu dans le coin supérieur gauche du bloc Écran pour vous aider à trouver les coordonnées d'écran correctes.

Texte - Pixels

Texte - Le mode Pixels vous permet d'afficher du texte n'importe où sur l'écran EV3 Brick.

Fenêtre de réinitialisation

Le mode Réinitialiser la fenêtre ramène l’écran de la brique EV3 à l’écran d’informations standard affiché pendant l’exécution du programme. Cet écran affiche le nom du programme et d'autres informations de retour. Lorsque vous exécutez un programme sur la brique EV3, cet écran apparaît avant l'exécution du premier bloc d'écran du programme.

Assurer la visibilité des éléments affichés

Une fois le programme EV3 terminé, l'écran EV3 Brick s'efface et revient à l'écran EV3 Brick Menu. Tout texte ou graphique affiché par le programme sera effacé. Si, par exemple, votre programme a un bloc « Écran » et rien d'autre, alors l'écran sera effacé si rapidement immédiatement après la fin du programme que vous ne verrez pas les résultats du bloc « Écran ».

Si vous souhaitez que l'écran reste visible une fois le programme terminé, vous devez ajouter un bloc à la fin du programme pour empêcher le programme de se terminer immédiatement, comme le montrent les exemples suivants.

Afficher plusieurs éléments

Si vous souhaitez afficher plusieurs éléments de texte ou graphiques sur l'écran en même temps, il est important de ne pas effacer l'écran EV3 Brick entre les éléments. Chaque mode du bloc Screen possède une entrée Clear Screen. Si Clear Screen est vrai, tout l’écran sera effacé avant que l’élément ne soit affiché. Cela signifie que pour afficher plusieurs éléments, vous devez définir Clear Screen sur False pour chaque bloc Screen sauf le premier.

Affichage des chiffres

Pour afficher une valeur numérique dans votre programme, connectez un bus de données à l'entrée Texte du bloc Affichage Texte. Le bus de données numériques sera automatiquement converti en texte à l'aide de la conversion du type de bus de données (voir la section

Description de la présentation par diapositives individuelles :

1 diapositive

Description de la diapositive :

2 diapositives

Description de la diapositive :

Interface de la brique EV3 La brique EV3 est le centre de contrôle qui alimente vos robots. Avec l'écran, les boutons de commande de Brick et l'interface EV3 Brick, qui contient quatre fenêtres principales, vous avez accès à une étonnante variété de fonctionnalités uniques d'EV3 Brick. Il peut s'agir de fonctions simples, comme démarrer et arrêter un programme, ou complexes, comme écrire le programme lui-même.

3 diapositives

Description de la diapositive :

Interface : Le menu EV3 comporte un menu composé de 4 parties : Programmes récents Navigation dans les fichiers Brique Applications Paramètres de la brique

4 diapositives

Description de la diapositive :

Programmes récents Lancez les programmes récemment téléchargés depuis votre ordinateur de bureau. Cette fenêtre restera vide jusqu'à ce que vous commenciez à télécharger et à exécuter des programmes. Cette fenêtre affichera les programmes que vous avez lancés récemment. Le programme en haut de la liste, sélectionné par défaut, est le programme lancé en dernier.

5 diapositives

Description de la diapositive :

Gestionnaire de fichiers Accédez et gérez tous les fichiers stockés dans la mémoire du micro-ordinateur, ainsi que sur la carte mémoire. À partir de cette fenêtre, vous accéderez et gérerez tous les fichiers de votre brique EV3, y compris les fichiers stockés sur la carte SD. Les fichiers sont organisés en dossiers de projet qui, en plus des fichiers de programme proprement dits, contiennent également les sons et les images utilisés dans chaque projet. Les fichiers peuvent être déplacés ou supprimés à l'aide du navigateur de fichiers. Les programmes créés à l'aide de l'environnement de programmation du module et des applications d'enregistrement des données du module sont stockés séparément dans les dossiers BrkProg_SAVE et BrkDL_SAVE.

6 diapositives

Description de la diapositive :

Les applications du boîtier de commande EV3 disposent de 4 applications préinstallées : A. Vue du port. B. Contrôle du moteur. B. Contrôle infrarouge. D. Environnement de programmation des modules.

7 diapositives

Description de la diapositive :

A. Port View Dans la première fenêtre de l'application Port View, vous pouvez voir rapidement quels ports sont connectés à des capteurs ou à des moteurs. Utilisez les boutons de commande EV3 Brick pour accéder à l'un des ports occupés et vous verrez les lectures actuelles du capteur ou du moteur. Installez plusieurs capteurs et moteurs et expérimentez différents réglages. Pour afficher ou modifier les paramètres actuels des moteurs et capteurs installés, appuyez sur le bouton central. Pour revenir à la fenêtre principale de l'application du module, cliquez sur le bouton « Retour ».

8 diapositives

Description de la diapositive :

B. Contrôle du moteur Contrôlez le mouvement avant ou arrière de tout moteur connecté à l'un des quatre ports de sortie. Il existe deux modes différents. Dans un mode, vous pourrez contrôler les moteurs connectés au port A (à l'aide des boutons Haut et Bas) et au port D (à l'aide des boutons Gauche et Droite). Dans l'autre mode, vous contrôlez les moteurs connectés au port B (à l'aide des boutons Haut et Bas) et au port C (à l'aide des boutons Gauche et Droite). La commutation entre ces deux modes se fait à l'aide du bouton central. Pour revenir à la fenêtre principale de l'application du module, cliquez sur le bouton « Retour ».

Diapositive 9

Description de la diapositive :

Contrôle IR Contrôlez le mouvement avant ou arrière de tout moteur connecté à l'un des quatre ports de sortie en utilisant la balise infrarouge à distance comme télécommande et le capteur infrarouge comme récepteur (le capteur infrarouge doit être connecté au port 4 de la brique EV3). . Il existe deux modes différents. Dans un mode, vous utiliserez les canaux 1 et 2 de la balise infrarouge distante. Sur le canal 1, vous pourrez contrôler les moteurs connectés au port B (à l'aide des boutons 1 et 2 de la balise IR déportée) et au port C (à l'aide des boutons 3 et 4 de la balise IR déportée). Sur le canal 2 vous pourrez contrôler les moteurs connectés au port A (à l'aide des boutons 1 et 2) et au port D (à l'aide des boutons 3 et 4). Dans un autre mode, vous pouvez contrôler les moteurs de la même manière, en utilisant plutôt les canaux 3 et 4 de la balise infrarouge déportée. La commutation entre ces deux modes se fait à l'aide du bouton central. Pour revenir à la fenêtre principale de l'application du module, cliquez sur le bouton « Retour ».

10 diapositives

Description de la diapositive :

Environnement de programmation de la brique La brique EV3 est livrée avec un logiciel installé. L'application est similaire au logiciel installé sur votre ordinateur. Ces instructions contiennent les informations de base dont vous avez besoin pour commencer.

11 diapositive

Description de la diapositive :

Paramètres de la brique EV3 Cette fenêtre vous permet d'afficher et d'ajuster divers paramètres généraux de la brique EV3.

12 diapositives

Description de la diapositive :

Réglage du volume Vous pouvez augmenter ou diminuer le volume dans l'onglet Paramètres d'EV3.

Diapositive 13

Connexion USB

LEGO Mindstorms EV3 peut se connecter à un PC ou à un autre EV3 via une connexion USB. La vitesse et la stabilité de la connexion dans ce cas sont meilleures qu'avec toute autre méthode, y compris Bluetooth.

LEGO Mindstorms EV3 dispose de deux ports USB.

Communication entre LEGO EV3 et d'autres blocs LEGO EV3 en mode guirlande.

Le mode Daisy Chain est utilisé pour connecter deux ou plusieurs blocs LEGO EV3.

Ce mode :

  • conçu pour connecter plusieurs LEGO Mindstorms EV3 ;
  • sert à connecter plus de capteurs, moteurs et autres appareils ;
  • permet la communication entre plusieurs LEGO Mindstorms EV3 (jusqu'à 4), ce qui nous donne jusqu'à 16 ports externes et le même nombre de ports internes ;
  • permet de contrôler toute la chaîne depuis le principal LEGO Mindstorms EV3 ;
  • ne peut pas fonctionner lorsque le Wi-Fi ou le Bluetooth sont actifs.

Pour activer le mode de connexion en guirlande, accédez à la fenêtre des paramètres du projet et cochez la case.

Lorsque ce mode est sélectionné, pour n'importe quel moteur, nous pouvons sélectionner le bloc EV3 qui sera utilisé et les capteurs nécessaires.

Le tableau montre les options d'utilisation des blocs EV3 :

Action

Moteur moyen

Gros moteur

Pilotage

Gestion indépendante

Gyroscopique

Infrarouge

Ultrasonique

Rotation du moteur

Températures

Compteur d'énergie

Son

Connexion via Bluetooth

Bluetooth permet à LEGO Mindstorms EV3 de se connecter à un PC, à d'autres LEGO Mindstorms EV3, à des smartphones et à d'autres appareils Bluetooth. La portée de communication via Bluetooth peut atteindre 25 m.

Vous pouvez connecter jusqu'à 7 blocs à un LEGO Mindstorms EV3. La brique maître EV3 vous permet d'envoyer et de recevoir des messages à chaque esclave EV3. Les esclaves EV3 ne peuvent envoyer des messages qu'à la brique maître EV3, pas entre eux.

Séquence de connexion EV3 via Bluetooth

Afin de connecter deux ou plusieurs blocs EV3 entre eux via Bluetooth, vous devez effectuer les étapes suivantes :

1. Ouvrez un onglet Paramètres.

2. Sélectionnez Bluetooth et appuyez sur le bouton central.

3. Nous mettons Case à cocher visibilité Bluetooth.

4. Vérifiez que le signe Bluetooth ("<") виден на верхней левой стороне.

5. Effectuez la procédure ci-dessus pour le nombre requis de briques EV3.

6. Accédez à l'onglet Connexion :

7. Cliquez sur le bouton Rechercher :

8. Sélectionnez l'EV3 auquel vous souhaitez vous connecter (ou auquel vous souhaitez vous connecter) et appuyez sur le bouton central.

9. Nous connectons les premier et deuxième blocs avec la clé d'accès.

Si vous faites tout correctement, l'icône " apparaîtra dans le coin supérieur gauche<>", connectez les autres blocs EV3 de la même manière s'il y en a plus de deux.

Si vous éteignez LEGO EV3, la connexion sera perdue et vous devrez répéter toutes les étapes.

Important : chaque bloc doit avoir son propre programme écrit.

Exemple de programme :

Premier bloc : lorsque le capteur tactile est enfoncé, le premier bloc EV3 transmet le texte au deuxième bloc avec un délai de 3 secondes (bloc principal).

Exemple de programme pour le bloc 2 :

Le deuxième bloc attend de recevoir le texte du premier bloc, et une fois qu'il l'a reçu, il affichera un mot (dans notre exemple, le mot "Bonjour") pendant 10 secondes (le bloc esclave).

Connectez-vous via Wi-Fi

Une communication à plus longue portée est possible en connectant le dongle Wi-Fi au port USB de l'EV3.

Pour utiliser le Wi-Fi, vous devez installer un module spécial sur le bloc EV3 à l'aide d'un connecteur USB (adaptateur Wi-Fi (adaptateur sans fil Netgear N150 (WNA1100), ou vous pouvez connecter un dongle Wi-Fi.