Faire tourner un moteur pas à pas
Documents Gratuits : Faire tourner un moteur pas à pas. Recherche parmi 300 000+ dissertationsPar elbadaouiayb • 29 Mars 2014 • 1 326 Mots (6 Pages) • 1 208 Vues
Faire tourner un moteur pas à pas
Déclarer un nouvel espace de travail : Nouveau VI
Deux espaces de travail apparaissent :
Le panneau frontal qui sera au final la face avant FA de votre appareil
Le panneau diagramme qui permet de comprendre et définir la logique qui relie les objets. On y construit le diagramme fonctionnel DF.
On peut poser un objet dans le diagramme fonctionnel DF ou dans la face avant FA.
Tous les objets placés dans la face avant FA apparaissent dans le diagramme fonctionnel DF mais la réciproque n’est pas forcément vrai.
DF Mettre une boucle While
Cette boucle ne sera opérationnelle que si vous lui associez un bouton qui permettra de l'arrêter ; sinon elle tournerait indéfiniment. Fonction/Programmation/Structure/Boucle While
FA Mettre un bouton stop Commande/Express/Bouton/Bouton Stop
DF Connecter le bouton à la boucle while, sur son icône stop.
FA Déclarer une matrice de réels et choisir 1 colonne et 8 lignes en tirant sur les poignées de la fenêtre.
Enlever les cases d’incrémentation à gauche en sélectionnant l’ensemble de la matrice puis clic droit et choisir dans le menu contextuel.
Commande/Moderne/Tableau-Matrice/Matrice réelle/
Elément visible/Décocher afficheur d’indice
FA Remplir le tableau avec les codes 9,1,5,4,6,2,10,8 Double clic dans une case
On cherche maintenant à faire lire la matrice ligne par ligne dans le sens descendant dans un premier temps. Chaque valeur lue sera ensuite envoyée par le port de l’imprimante au moteur pas à pas qui tournera.
Dans un premier temps on utilisera la variable i de la boucle while. Cependant l’incrémentation automatique de cette variable sera peut-être trop rapide. Nous allons donc jouer sur la vitesse d’exécution de la boucle.
DF Déclarer une commande de temporisation. Fonctions/Programmation/Informations temporelles/Attendre
FA Déclarer un indicateur numérique qui permettra de choisir la valeur de la temporisation en ms ( pas en dessous de 20 ms pour le moteur)
Sélectionner l’objet et utiliser le clic droit pour faire apparaître un bouton d’incrémentation
Modifier le nom de cet objet et le nommer temporisation Commandes/Express/Indicateur numérique.
FA Déclarer un nouvel indicateur numérique qui permettra de visualiser la valeur de la variable i de la boucle.
Nommer incrément cette variable. Commandes/Express/Indicateur numérique.
FA DF
DF Relier la variable i à l’afficheur de l’incrément
On voudrait que la valeur de cet incrément se transforme en un nombre de 0 à 7 de manière automatique. Pour cela il suffit d'effectuer une division euclidienne sur cet incrément. Le reste de la division sera toujours compris entre 0 et 7 et sera affiché de manière croissante.
DF Déclarer la commande division euclidienne. Fonction/Mathématiques/Numérique/Quotient et reste
DF Relier l'incrément à l'entrée X qui est le nombre à diviser.
DF Déclarer une constante numérique.
Donner la valeur 8 et relier cette constante à l'entrée Y. Y est le diviseur. Fonction/Programmation/Numérique./Constante numérique.
DF La sortie X-Y*floor(X/Y) représente le reste de la division euclidienne.
DF Pour lire une matrice il faut utiliser une commande d’extraction.
Fonction/Programmation/Tableau/Indexer un tableau.
DF Relier la matrice à cet objet.
Il faut maintenant préciser la ligne et la colonne correspondant à la valeur à extraite.
La valeur de la colonne sera 0, pour la première colonne.
La valeur de la ligne correspondra au reste de la division euclidienne de i par 8.
DF Déclarer une constante numérique.
Donner la valeur 0 et relier cette constante à l'entrée colonne de la commande d'extraction
Remarque : cette constante numérique n'apparaît pas dans le FA Fonction/Programmation/Numérique./Constante numérique.
DF Relier le reste de la division euclidienne à l'entrée ligne de l'extracteur
FA Déclarer un nouvel indicateur numérique qui permettra de visualiser la valeur de la matrice pour une ligne donnée. Nommer le Pas à pas Commandes/Express/Indicateur numérique.
Vérifier que votre programme fonctionne correctement.
FA Lancer le programme avec la flèche.
Arrêter le programme avec votre bouton Stop ou avec celui du menu du FA
La valeur de la matrice pour une ligne donnée est maintenant transmise par le port parallèle au moteur pas à pas du
...