LES REGISTRES A DECALAGE
Introduction
Définition Un registre est un ensemble permettant de stocker des informations en attendant leur traitement. Suivant sa conception, les informations stockées peuvent être ou pas soumises à différents types de manipulations. Les registres de mémorisation ou registres tampons Un registre de mémorisation est un ensemble permettant de stocker momentanément une information au format bit ou mot.
Introduction Définition Un registre est un ensemble permettant de stocker des informations en attendant leur traitement. Suivant sa conception, les informations stockées peuvent être ou pas soumises à différents types de manipulations. Les registres à décalage Il permet le stockage et la modification de l’information. A l’aide d’une entrée de commande l’information contenue dans le registre est décalée. Ce décalage s’effectue vers la droite ou vers la gauche. Dans un registre, les informations peuvent être introduites ou disponibles en sortie de deux manières différentes: en série en parallèle
Introduction Représentation Norme EN
SHR IN N Décalage logique à droite SHR Avant l’exécution de la fonction Introduction Après l’exécution de la fonction
SHR IN N 3 Décalage logique à droite SHR Avant l’exécution de la fonction Introduction Après l’exécution de la fonction
SHR IN N 3 Décalage logique à droite SHR Avant l’exécution de la fonction %MW10 Introduction Après l’exécution de la fonction %MW10
SHR IN N 3 Décalage logique à droite SHR Avant l’exécution de la fonction %MW10 Introduction Après l’exécution de la fonction %MW10
SHR IN N 3 Décalage logique à droite SHR Avant l’exécution de la fonction %MW10 Introduction Après l’exécution de la fonction %MW
ROL IN N Décalage circulaire à gauche ROL Avant l’exécution de la fonction Introduction Après l’exécution de la fonction
ROL IN N 5 Avant l’exécution de la fonction Introduction Après l’exécution de la fonction Décalage circulaire à gauche ROL
ROL IN N 5 Avant l’exécution de la fonction %MW10 Introduction Après l’exécution de la fonction %MW10 Décalage circulaire à gauche ROL
ROL IN N 5 Avant l’exécution de la fonction %MW10 Introduction Après l’exécution de la fonction %MW10 Décalage circulaire à gauche ROL
ROL IN N 5 Avant l’exécution de la fonction %MW10 Introduction Après l’exécution de la fonction %MW Décalage circulaire à gauche ROL
Utilisation des registres à décalage
Positionnement d'un mobile Un registre à décalage de n bits dans lequel circule un seul 1 parmi des 0 permet de représenter la position du mobile parmi n positions possibles.
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Utilisation des registres à décalage Position du mobile
Diviseur de fréquence En base 2 : - un décalage à droite est équivalent à une division. - un décalage à gauche est équivalent à une multiplication. Utilisation des registres à décalage
Valeur = 2
Utilisation des registres à décalage Valeur = 4
Utilisation des registres à décalage Valeur = 8
Utilisation des registres à décalage Valeur = 16
Utilisation des registres à décalage Valeur = 36
Utilisation des registres à décalage Valeur = 72
Suivi des pièces dans une machine type transfert: - Un 1 er registre peut autoriser ou pas le travail d'un poste si une pièce est présente ou absente. - Un 2 em registre peut bloquer le travail d'un poste si une pièce est présente mais en mauvais état et autoriser dans ce cas précis le rejet de la pièce au poste d'évacuation pièces mauvaises. Utilisation des registres à décalage
Présence pièce Défaut sur pièce Travail sur pièce Travail sur pièce = Présence pièce. / Défaut sur pièce
Utilisation des registres à décalage Présence pièce Défaut sur pièce travail sur pièce Travail sur pièce = Présence pièce. / Défaut sur pièce
Registres à décalage et logique programmée
Registres en logique programmée Traduction d’un registre par grafcet sens de déplacement CR PO P1P2P3P4 OP1 OP2 OP3 OP4
Registres en logique programmée Traduction d’un registre par grafcet 1 OP12 CR. P0
OP12 CR. P0 1
OP1 OP2 2 3 CR. P0 CR 1
OP1 OP2OP CR. P0 CR 1
OP1 OP2OP3OP CR. P0 CR 1
OP1 OP2OP3OP CR. P0 CR 1
Registres en logique programmée Traduction d’un registre par grafcet OP1 OP2OP3OP CR. P0 CR Transition source Transition puits
Registres en logique programmée Traduction d’un registre par grafcet Si : - on réaliser le registre en logique câblée à l’aide d’un séquenceur, - on utilise une méthode de programmation asynchrone en logique programmée, On ne peut pas avoir deux étapes consécutivement actives!
Registres en logique programmée Traduction d’un registre par grafcet OP1 OP CR. P0 CR Transition source CR etc ……… il faut doubler les étapes !
Registres en logique programmée Traduction d’un registre par grafcet Avec un automate si la méthode le permet - on traduira le grafcet type « a », OP1 OP2 OP3 OP CR. P0 CR
Registres en logique programmée Traduction d’un registre par grafcet Avec un automate si la méthode le permet - on traduira le grafcet type « a », - on traduira le grafcet type « b », OP1 OP CR. P0 CR etc ………
Registres en logique programmée Traduction d’un registre par grafcet Avec un automate si la méthode le permet - on traduira le grafcet type « a », - on traduira le grafcet type « b », - on utilisera les opérateurs registres à décalage intégrés,
Registres en logique programmée Traduction d’un registre par grafcet Avec un automate si la méthode le permet - on traduira le grafcet type « a », - on traduira le grafcet type « b », - on utilisera les opérateurs registres à décalage intégrés, - on utilisera les opérateurs calcul qui traduisent le registre. Le registre sera représenté par: - un mot (16 bits), - un mot double (32 bits), - un mot long (64 bits) - ou plus (travail sur plusieurs mots).
Registres en logique programmée Utilisation des instructions registres intégrées Opérations à réaliser pour utiliser un registre à décalage programmé: - Initialiser le registre RAZ si machine type transfert
Machine type transfert Initialisation « RAZ » Registres en logique programmée Utilisation des instructions registres intégrées
Opérations à réaliser pour utiliser un registre à décalage programmé: - Initialiser le registre RAZ si machine type transfert Prépositionnement si contrôle de position
Initialisation « Prépositionnement » Registres en logique programmée Utilisation des instructions registres intégrées Contrôle de position
Registres en logique programmée Utilisation des instructions registres intégrées Opérations à réaliser pour utiliser un registre à décalage programmé: - Initialiser le registre RAZ si machine type transfert Pré positionnement si contrôle de position - Introduction de l’information machine type transfert uniquement
Machine type transfert Introduction information Initialisation « RAZ » Registres en logique programmée Utilisation des instructions registres intégrées
Opérations à réaliser pour utiliser un registre à décalage programmé: - Initialiser le registre RAZ si machine type transfert Pré positionnement si contrôle de position - Introduction de l’information machine type transfert uniquement - décaler l’information à droite ou à gauche si machine type transfert
Machine type transfert Introduction information Initialisation « RAZ » décalage information Registres en logique programmée Utilisation des instructions registres intégrées
Opérations à réaliser pour utiliser un registre à décalage programmé: - Initialiser le registre RAZ si machine type transfert Pré positionnement si contrôle de position - Introduction de l’information machine type transfert uniquement - décaler l’information à droite ou à gauche si machine type transfert à droite et à gauche si contrôle de position
Initialisation « Prépositionnement » décalage Information à gauche décalage Information à droite Registres en logique programmée Utilisation des instructions registres intégrées Contrôle de position
Registres en logique programmée Utilisation des instructions registres intégrées Opérations à réaliser pour utiliser un registre à décalage programmé: - Initialiser le registre RAZ si machine type transfert Pré positionnement si contrôle de position - Introduction de l’information machine type transfert uniquement - décaler l’information à droite ou à gauche si machine type transfert à droite et à gauche si contrôle de position - utiliser les informations lecture d’un bit quelconque du registre
Machine type transfert utilisation Introduction information Initialisation « RAZ » décalage information Registres en logique programmée Utilisation des instructions registres intégrées
utilisation Initialisation « Prépositionnement » décalage Information à gauche décalage Information à droite Registres en logique programmée Utilisation des instructions registres intégrées Contrôle de position
Exemple Utilisation d’un registre cas d’une machine type transfert
Registres en logique programmée registre et machine type transfert AV cp_pièce cp_pas Poste1 Opération N°1 Poste2 Opération N°2 Poste3 Opération N°3 Poste4 Opération N°4
Registres en logique programmée registre et machine type transfert Initialisation « RAZ » Utilisation Décalage à droite Chargement Poste 1Poste 2Poste 3Poste 4 Registre à utiliser
Utilisation OK étape du Grafcet Conduite Machine Registres en logique programmée registre et machine type transfert GCT
Registres en logique programmée registre et machine type transfert Analyse Initialisation
Registres en logique programmée registre et machine type transfert Analyse Décalage - Chargement
Registres en logique programmée registre et machine type transfert Analyse Décalage - Chargement
Analyse
Registres en logique programmée registre et machine type transfert Programme (*déclaration*) registre poste1_reg poste2_reg poste3_reg poste4_reg
Registres en logique programmée registre et machine type transfert Initialisation Programme (*corps de la fonction*)
Registres en logique programmée registre et machine type transfert Programme (*corps de la fonction*)
Registres en logique programmée registre et machine type transfert Décalage - Chargement Programme (*corps de la fonction*)
Registres en logique programmée registre et machine type transfert Décalage - Chargement Programme (*corps de la fonction*)
Registres en logique programmée registre et machine type transfert Décalage - Chargement Programme (*corps de la fonction*)
Registres en logique programmée registre et machine type transfert Décalage - Chargement Programme (*corps de la fonction*)
Programme (*corps de la fonction*)
Utilisation OK Registres en logique programmée registre et machine type transfert GCT Utilisation des informations du registre dans les grafcets des taches
Opération N°1 / X 33 X 33. / poste1_reg X 33. poste1_reg Opération N°2 / X 33 X 33. / poste2_reg X 33. poste2_reg Utilisation du registre Tache N°1Tache N°2
Opération N°3 / X 33 X 33. / poste3_reg X 33. poste3_reg Opération N°4 / X 33 X 33. / poste4_reg X 33. poste4_reg Utilisation du registre Tache N°3Tache N°4
Registres en logique programmée registre et machine type transfert
Exemple Utilisation d’un registre cas d’un contrôle de position
Registres en logique programmée registre et contrôle de position cp_origine cp_position AVAR
Registres en logique programmée registre et contrôle de position AV cp_origine cp_position
Registres en logique programmée registre et contrôle de position AV cp_origine cp_position
Registres en logique programmée registre et contrôle de position AV cp_origine cp_position
Registres en logique programmée registre et contrôle de position AV cp_origine cp_position
Registres en logique programmée registre et contrôle de position cp_origine cp_position
Registres en logique programmée registre et contrôle de position AR cp_origine cp_position
Registres en logique programmée registre et contrôle de position AR cp_origine cp_position
Registres en logique programmée registre et contrôle de position AR cp_origine cp_position
AR cp_origine cp_position Registres en logique programmée registre et contrôle de position
cp_origine cp_position Registres en logique programmée registre et contrôle de position
décalage à droite Position 4 Position 3 Position 2 Position 1 Registre à utiliser Registres en logique programmée registre et contrôle de position Position 0 décalage à gauche utilisation Initialisation « Prépositionnement »
Analyse Registres en logique programmée registre et contrôle de position
Analyse Registres en logique programmée registre et contrôle de position
Analyse Problème !
Analyse Le dernier décalage à droite est remplacé par l’initialisation
Registres en logique programmée registre et contrôle de position Programme (*déclaration*) registre Position 3_reg Position 2_reg Position 1_reg Position 0_reg Position 4_reg
Registres en logique programmée registre et contrôle de position Programme (*corps de la fonction*)
Programme (*corps de la fonction*) Registres en logique programmée registre et contrôle de position
(*corps de la fonction*)
Registres en logique programmée registre et contrôle de position
registre et contrôle de position Sorties position 4_regKM_A V KM_A R position 0_reg Conditions pour marche AV Conditions pour marche AR
Fin