Laboratoires d’ACOO
ACOO.Labo 2 - Programmation avec le simulateur.doc 1/3
Labo 2 – Programmation avec le simulateur
1. Présentation
1.1. Objectifs pédagogiques
- Programmer une application simple avec le style d’entrées sorties C++.
- Créer quelques fonctions réutilisables pour la suite du cours.
1.2. Recommandations
- Ne restez pas bloqué.
- Garder à l’esprit qu’un simulateur présente des limitations de fonctionnement et de performance par rapport à une machine réelle, et peut donc présenter des différences de comportement par rapport à une vraie machine.
2. Tâches à effectuer
On vous demande d’écrire un petit programme en utilisant les techniques d’entrées sorties spécifiques au C++ (cin, cout), et offrant les fonctionnalités suivantes :
2.1. Affichage d’un menu
Proposer les fonctions ci-dessous à l’utilisateur :
Laboratoires d’ACOO
ACOO.Labo 2 - Programmation avec le simulateur.doc 2/3
2.2. Déplacement manuel du robot
Dans ce mode, on propose une solution permettant de contrôler le positionnement du robot en utilisant les touches du clavier. Au départ, le pas de déplacement vaut 1.0 (ce pas pourra varier entre 0.01 et 10 environ).
Il s’agit ensuite de capturer (à l’aide de la fonction _getch() de <conio.h>) les touches du clavier pressées par l’utilisateur, et de réagir de la façon suivante : - Touche + : double le pas de déplacement, jusqu’à une valeur maximum.
- Touche - : divise par 2 la pas de déplacement, jusqu’à une valeur minimum.
- Touche s : déplacement positif d’un pas de l’axe X.
- Touche d : déplacement négatif d’un pas de l’axe X.
- Touche v : déplacement positif d’un pas de l’axe Y.
- Touche f: déplacement négatif d’un pas de l’axe Y.
- Touche g : déplacement positif d’un pas de l’axe Z.
- Touche t : déplacement négatif d’un pas de l’axe Z.
- Touche l : allumer/éteindre le laser.
- Touche q : quitter le mode déplacement manuel.
2.3. Charger une nouvelle pièce
Il s’agit simplement de générer un flanc montant sur la sortie tout ou rien correspondante, selon le code fourni en exemple, pour simuler l’arrivée d’une nouvelle pièce à graver.
Laboratoires d’ACOO
ACOO.Labo 2 - Programmation avec le simulateur.doc 3/3
2.4. Signalisation
Pendant les modes de déplacement manuels, la lampe orange doit être allumée pour signaliser le danger.
Lorsque la machine rencontre un cas d’erreur, la lampe rouge doit être allumée jusqu’au prochain démarrage qui quittancera les erreurs.
3. Travaux à rendre 3.1. Livrables
- Placez l’intégralité du dossier contenant votre projet Visual C++ 2008 dans le dossier dépôt étudiants.
- Une version imprimée du programme comportant votre nom et prénom.
3.2. Délai
Les travaux sont à rendre impérativement en l’état à la fin de la séance, et terminés après une semaine.