Leçon 1 : Qu'est-ce qu'un algorithme ?
Dans cette leçon, vous apprendrez ce qu'est un algorithme et comment l'utilisation d'algorithmes dans VEXcode VR Python vous permet de créer des projets avec des comportements plus divers. Les projets algorithmiques demandent au robot VR de répondre à son environnement, ce qui sera nécessaire pour résoudre le défi du crash de château dynamique.
Résultats d'apprentissage
- Identifiez que les algorithmes sont composés de séquences, de sélections et d'itérations (boucles).
- Identifiez que les algorithmes sont des séquences précises d'instructions, mises en œuvre à l'aide de langages de programmation, pour les processus à effectuer par un robot VR.
Algorithmes
Les algorithmes sont des séquences précises d'instructions, mises en œuvre à l'aide de langages de programmation, comme VEXcode VR Python, pour les processus à effectuer par un robot VR.
Les éléments de base d'un algorithme sont la séquence, la sélection et l'itération.
- Séquence - l'ordre dans lequel les comportements et les commandes sont combinés dans un projet afin de produire un résultat souhaité.
- Sélection - l'utilisation d'énoncés conditionnels dans un projet. Déclarations conditionnelles, telles que si ou si autrement affecter le flux de projet d'un projet.
- Itération - les algorithmes utilisent souvent la répétition pour exécuter des étapes un certain nombre de fois, ou jusqu'à ce qu'une certaine condition soit remplie. Ceci est également connu sous le nom de « bouclage ». L'itération peut modifier le flux du projet en répétant un comportement un nombre spécifié de fois ou jusqu'à ce qu'une condition soit remplie.
Cet exemple de projet du défi de l'unité 8 est un exemple d'algorithme. Il comprend une combinaison de boucles, de données de capteur et de commandes regroupées dans une séquence pour résoudre le défi du déménageur de disque.
def main() :
pour la valeur dans la plage(3) :
pour la valeur dans la plage(3) :
# 1. Drive to disk using Down Eye Sensor
while not down_eye.near_object() :
drivetrain.drive(FORWARD)
wait(5, MSEC)
drivetrain.stop()
# 2. Ramassez l'aimant à
disque. Énergisez (BOOST)
# 3. Conduisez jusqu'au but à l'aide
du capteur de distance drivetrain.turn_to_heading (180, DEGRÉS)
tandis que front_distance.get_distance (MM
) > 200 : DRIVETRAIN.DRIVE (FORWARD)
wait(5, MSEC
) drivetrain.stop ()
# 4. Déposez le disque dans l'
objectif magnet.energize (DROP
) drivetrain.drive_for (REVERSE, 100, MM)
# 5. Tournez pour faire face au prochain
drivetrain.turn_to_heading(0, DEGRÉS),
attendez(5, MSEC)
# 6. Tournez et conduisez jusqu'au prochain objectif
drivetrain.turn_to_heading(90, DEGRÉS)
drivetrain.drive_for(AVANT, 800, MM)
# 7. Tourner à disques
drivetrain.turn_to_heading(0, DEGRÉS)
attendre(5, MSEC)Séquence
La façon dont les commandes sont séquencées et combinées détermine les comportements du robot VR. Dans cet exemple, chaque ensemble de comportements nécessaires pour déplacer un disque est exécuté trois fois, puis le robot VR se déplace vers l'ensemble de disques suivant et répète les comportements, jusqu'à ce que tous les disques soient retournés aux objectifs. 
Sélection
Ce projet comprend également une sélection qui détermine les parties du projet qui sont exécutées en fonction des conditions du capteur. Tout d'abord, le capteur Down Eye est utilisé pour déterminer quand le robot VR est près d'un disque, de sorte que le disque peut être ramassé. Ensuite, le capteur de distance est utilisé pour déterminer quand le robot VR est au-dessus de l'objectif, de sorte que le disque peut être déposé. 
Dans la première boucle while , la sélection des commandes à exécuter est basée sur les valeurs du capteur signalées par le capteur Down Eye.
- Lorsqu'aucun objet n'est détecté, le robot VR avance.
- Lorsqu'un objet est détecté, le robot VR s'arrête.
Dans la deuxième boucle while , la sélection de la commande à exécuter est basée sur les valeurs du capteur signalées par le capteur de distance.
- Lorsque la distance signalée est supérieure à 200 millimètres (mm), le robot VR avance.
- Bien que la distance signalée soit inférieure à 50 millimètres (mm), le robot VR cessera de conduire et passera à la partie suivante du projet pour activer l'électroaimant.
Itération
Le projet utilise l'itération, ou « boucles », pour répéter les actions et vérifier à plusieurs reprises les valeurs de capteur signalées. Ce projet contient des boucles imbriquées – une boucle pour que le robot VR puisse collecter les trois disques d'une même couleur ; et une deuxième boucle pour répéter ce processus pour collecter tous les disques sur le terrain de jeu. 
Cet algorithme est conçu pour collecter et renvoyer trois disques, trois fois, pour compléter le Disk Mover Challenge. La même logique qui est appliquée pour collecter et déplacer des disques à plusieurs reprises à l'aide de la séquence, de la sélection et de l'itération peut également être appliquée à d'autres défis, comme le Défi Dynamic Castle Crasher.
Questions
Veuillez sélectionner un lien ci-dessous pour accéder au questionnaire de la leçon.
Google Doc / .docx / .pdf