You are on page 1of 26

Champ d'application de l'automatisme vocabulaire

L'automatisme consiste en l'tude de la commande de systmes industriels. La premire amlioration des conditions de travail a t de remplacer l'nergie humaine fournie par l'ouvrier par une machine (P.O. ) L'oprateur commande la machine, et regarde le rsultat obtenu. Il adapte ses commandes en fonction du droulement du processus. L'automatis me dbute lorsque l'on intercale entre l'oprateur et la P.O. une P.C. qui prend certaines dcisions (gestion automatique des cas les plus simples et les plus courants). La P.C. lit les informations sur la P.O. par l'intermdiaire de capteurs, et commande les actionneurs de la P.O. Le but est de prendre en compte par la P.C. tout ce qui est rptitif et simple, en laissant l'oprateur les tches nobles de rflexion. La P.C. doit ncessairement "tout savoir" : toute information ou commande, mme non traite par elle,

devrait passer par elle. Il reste nanmoins quelques phnomnes difficiles mesurer, ou dont la mesure cote trop cher par rapport la probabilit qu'ils se produisent, ou non prvus. Pour cela, l'oprateur-contrleur reste ncessaire. Nous nous identifierons toujours la partie commande. Nous appellerons donc entres les commandes de l'oprateur ainsi que les informations reues des capteurs. Nous appellerons sorties les commandes envoyes la P.O. ainsi que les informations transmises l'oprateur. On peut "classifier" les diffrents cas. La premire distinction qui a t faite a t de sparer le Tout Ou Rien (allum ou non, appuy ou non, ouvert ou ferm... reprsent par 0 ou 1) de l'analogique (grandeurs reprsentes par une valeur relle, comme l'lectronique par exemple). Dsormais, le numrique (gestion de l'analogique par une combinaison de composants ToR, donc regroupement de zros et de uns pour former des valeurs), tend englober tous les cas, en premier lieu par son cot plus faible, en second lieu par les possibilits de programmation donc d'volution. Un autre distinction peut se faire entre le combinatoire (les sorties dpendent uniquement de l'tat actuel des entres) et le squentiel (les sorties dpendent des entres et de l'historique, c'est dire de ce qui s'est pass auparavant). Le squentiel en numrique est souvent appel automatique, en analogique plutt asservissement

Logique des prdicats


On appelle proposition ou prdicat une "phrase" qui peut tre soit vraie, soit fausse. La logique des prdicats est donc un premier exemple de Tout ou Rien (et est utilise dans les problmes de reconnaissance de la parole et d'analyse syntaxique). exemples : (P1) il pleut (P2) 6 est suprieur 4 on notera vrai=1, faux=0 . Donc P2=1, P1 vaut 0 ou 1 suivant les cas. On peut avoir des propositions dpendant de variables: X est suprieur 4 X+Y=0 On peut galement dfinir des oprateurs : ET (not . , AND ou ^ ), OU (+, OR, v) et complment ( ou /, j'utiliserai / dans ce document car la barre est trop dure grer). On peut alors dfinir pour chacune de ces oprations leur table de vrit qui dfinit, dans tous les cas, le rsultat de l'opration :

On peut galement utiliser un tableau deux entres pour obtenir un tableau de vrit :

2 colonnes pour les tats possibles de Q 2 lignes pour les tats possibles de P

En essayant toutes les combinaisons, on peut dfinir 16 oprateurs binaires (fonctions de deux variables) :

Certains cas sont de peu d'intrt : a (toujours faux), p (vrai), ou ne dpendent en fait que d'une variable : d (=P), f (=Q), m (=/P), k (=/Q). Les autres ont toutes un nom : b: ET, h: OU inclusif, o: ON ou NAND, i: NI ou NOR, c: P | Q (P inhibe Q), e: Q | P (Q inhibe P), n: P => Q (implique), l: Q => P (implique), g: OU exclusif (XOR, ), j: P <=> Q (quivalent).

Algbre de BOOLE
y y

axiomes thormes

George Boole (mathmaticien anglais, 1815-1864) a dmontr que si l'on peut trouver un espace dans lequel certains axiomes se vrifient, alors on se trouve dans un cas singulier, o un certain nombre de thormes peuvent s'appliquer.

axiomes
Pour qu'une algbre puisse tre dite de Boole, elle doit vrifier : commutativit
associativit distributivit lments neutres complmentation a+b=b+a (a+b)+c=a+(b+c) a.b=b.a (ab)c=a(bc)

a(b+c)=ab+ac a+(bc)=(a+b)(a+c) a+0=a


_ a+a=1

a.1=a
_ a.a=0

thormes
Une algbre de Boole vrifie les thormes suivants : idempotence
absorption Morgan lment neutre a+a=a aa=a

a+ab=a a(a+b)=a
___ _ _ ___ _ _ a+b=a.b a.b=a+b

a+1=1

a.0=0

De plus les fonctions suivantes sont dfinies :


_ _ a XOR b = ab+ba _ _ a <=> b = (a+b)(a+b) _ a => b = a+b _ _ a NOR b = a.b _ _ a NAND b = a+b

Dcomposition en NAND - NOR

On peut exprimer toutes les fonctions existantes uniquement l'aide des fonctions ET, OU et NON (voir exemples prcdents). Ceci est pratique dans la mesure o, en automatisme, chaque fonction est reprsente par un composant (appel PORTE). De plus ces trois fonctions correspondent aux fonctions logiques utilises dans le langage courant. Mais on peut se limiter 2 fonctions, ET et NON par exemple :
_____ _ _ a+b=a.b

On peut mme se limiter une seule fonction (NAND ou NOR) :


________ a.b=a NAND b ; _ _ a+b=a NAND b ; _ a=a NAND a

On trouvera un exemple au chapitre suivant

Fonctions boolennes n variables


y y

tableaux de Karnaugh passage ET/OU en NAND

_ _ _ _ ex: f(a,b,c,d)=abcd + abc + ab + abc

On peut essayer de simplifier son quation l'aide des relations de l'algbre de Boole. Mais on peut aussi reprsenter graphiquement cette fonction par son tableau de vrit :

Ce tableau nous donne l'tat de f (0 ou 1) dans tous les cas (ceci permet de ne pas oublier certains cas particuliers).Dans la pratique on remplit dans le tableau tous les cas o f vaut 1, on complte les zros dans les cases restantes. On peut remarquer que la fonction f ' est reprsente par le mme tableau. f ' et f sont donc gales, puisqu'ayant la mme valeur dans tous les cas.

tableaux de Karnaugh
Un tableau de Karnaugh est un tableau de vrit dans lequel les diffrentes possibilits des entres sont classes en code GRAY (binaire rflchi) qui sera dtaill plus loin. Ceci correspond 0 puis 1 dans le cas d'une variable, 00, 01, 11, 10 pour 2 variables. On peut remarquer qu'en passant d'une case une case adjacente, une seule variable a chang. Regrouper ces deux cases adjacentes correspond donc la simplification par cette

variable (du fait de l'axiome de complmentation). On simplifie l'quation d'une fonction en faisant des regroupements sous forme d'une, deux ou quatre lignes ou colonnes. Le passage de la dernire ligne la premire est galement un cas adjacent (idem pour les colonnes). En reprsentant graphiquement une fonction boolenne n variables, on peut en dterminer une expression simplifie. Cette simplification est vidente jusqu' 4 variables, possible avec 5 ou 6 variables (en traitant deux ou quatre tableaux diffrents supposs superposs). Dans les autres cas, un tableau de Karnaugh permettra toujours de simplifier l'quation, mais jamais au maximum. Par exemple :
_ _ _ _ _ _ f=a.b.c + a.b.c + a.b.c + b.c + a.c

_ _ _ donc : f=a.c + a.c + a.b

ou

_ _ f=a.c + a.c + b.c

Remarque : Dans la pratique, si certains cas sont indiffrents (par exemple combinaison de capteurs impossible), on place un X dans le tableau, que l'on mettra 0 ou 1 pour simplifier l'expression finale.

On pouvait galement regrouper les 0 (s'il y en a moins ou plus groups) :


_ _ _ _ f=(a.b.c)+(a.c) d'o _ _ _ _ _ f=(a+b+c).(a+c)=ac+ba+bc+a c

On peut galement dvelopper la fonction en somme de MINTERMES (forme canonique disjonctive).


_ _ _ _ _ _ _ Dans notre cas : f=a.b.c + a.b.c + a.b.c + a.b.c + a.b.c

Proprits : Il y a 2n mintermes d'ordre n (n tant le nombre de variables de la fonction). Deux mintermes de mme ordre ont un produit nul. La somme de tous les mintermes d'ordre n est 1.

L'intrt de ces dcompositions est leur unicit, donc en particulier une programmation facilite. exercices : trouver la forme rduite et les formes canoniques des fonctions :
a)

b)

question : o cliquer pour la solution ?

passage ET/OU en NAND


___ on notera abc par NAND[a,b,c]

On dcompose la fonction sous forme canonique : (comme vous pouvez le voir, je trouve que j'ai assez travaill, je garde mes quations en mode texte bien que ce soit moins beau)

on peut alors crire :

donc :

Dans la pratique, les schmas de fonctions dfinies par ET / OU se transforment facilement en rseaux composs uniquement de NAND. Il suffit d'inverser toutes les extrmits des liaisons internes :

La symbolisation est dtaille dans le transparent 5

logique des prdicats


propositions, vrai, faux, et, ou, non... exercice : calculez : NON(Pat est beau ou Pat est intelligent)

ensembles
intersection , union U, complment

ex: absorption:

regardez le transparent 1B

circuits lectriques
0 reprsente un interrupteur (je devrais dire en toute rigueur contacteur) ouvert (le courant ne passe pas) 1 reprsente un interrupteur ferm (le courant passe) Un contacteur normal laisse passer le courant quand on l'actionne, un contacteur inverse quand on le laisse au repos. On effectue une fonction ET par la liaison de 2 interrupteurs (il faut appuyer sur a ET b pour que le courant passe) en srie (il faut appuyer sur a ET b pour que le courant passe), la fonction OU par la liaison parallle (il faut appuyer sur a OU b pour que le courant passe).

On peut vrifier les axiomes de l'algbre de Boole en reprsentant les diffrents schmas (transparent T1). On pourrait de mme vrifier ce que donnent les thormes (inutile de les dmontrer puisque les axiomes sont vrifis). Applications : Soient un moteur M fonctionnant en 220 V, un relais lectromagntique R comportant le contact inverseur, 3 boutons contacts A B et C fonctionnant sous ambiance humide (tension de commande 12 V). Le moteur doit fonctionner si l'on appuie sur A et B simultanment. Toute action sur C (arrt d'urgence bistable) doit arrter le moteur. (solution R = a.b.c, M = R). Par mesure de scurit (centrale nuclaire par exemple), on

triple les capteurs. Ces trois capteurs (mesurant la mme chose) commandent un relais. On veut que, en cas de dfaillance d'un capteur, le relais continue fonctionner mais qu'une des 3 lampes L1, L2, L3 indique le capteur dfaillant. Les 3 capteurs sont appels a,b,c, le relais R.
_ _ _ R = abc + abc + abc + abc _ _ _ _ _ _ L1= abc + a b c ; L2= abc + abc

_ _ _ ; L3= abc + acb

alas technologiques
Ralisons la fonction L = b.(/c) + ac en faisant le schma lectrique. On peut remarquer que si a=1 et b=1, par passage par exemple de c=1 c=0, il y a un instant o L est coup (entre le contact c et le contact inverse). C'est l'ala technologique. Pour y remdier, il faut faire des recouvrements dans le tableau de Karnaugh. On obtient :

_ L = bc + ac + ab
On peut vrifier sur le schma lectrique que l'ala a disparu. En fait on a un ala quand pour un passage d'une case valant 1 une case adjacente valant galement 1 (un capteur a chang), on traverse une discontinuit.

les circuits pneumatiques


premire convention :
y y

1= conduite libre 0= conduite ferme

ce problme est analogue aux circuits lectriques, et rsout les "problmes de robinets". On utilise, la place de l'interrupteur, le distributeur (bistable ou monostable). Le ET se fait par montage en srie, le OU en parallle. (T2)

seconde convention (plus courante) :


y y

1= pression P (+ ou - epsilon) 0= pression p (p<P)

On utilise des distributeurs commande pneumatique (quivalents des relais).Le ET se fait par montage srie, le OU en parallle, avec adjonction d'un clapet anti-retour pour que la pression de b ne sorte pas par l'chappement de a.

Remarque (voir T2) : pour le OU : en faisant le tableau de Karnaugh de la fonction OU, on peut remarquer que f = a + b correspond un recouvrement, alors que f'= a + ba est quivalente, mais sans recouvrement. En effectuant le schma du OU sans recouvrement, on remarque que la cellule anti-retour est inutile. En fait, chaque recouvrement entrane l'adjonction d'une cellule anti-retour. Contrairement l'lectrique, il faut donc supprimer les recouvrements.s.

l'lectronique (portes)
On utilise, comme en pneumatique seconde convention, un niveau 1 (5V par ex), et un niveau 0 (0V). Les fonctions sont effectues l'aide de "portes", (circuits intgrs). On trouve couramment les inverseurs, NOR et NAND, mais aussi ET et OU. Les portes comportent entre(s) et sortie, le courant ne pouvant pas "remonter" au travers d'une porte, ce qui vite le problme des anti-retour (effectus, au cas o, l'aide d'une diode). De toute faon, le courant ne transite pas par les portes. Chacune est alimente. Si sa sortie doit tre 1, la sortie est commute sur l'alimentation. Donc mme si le signal d'entre n'est pas propre (mais reste dans l'intervalle de tolrance prvu, au dessus de 2,7V en TTL), le signal de sortie sera propre. Reprsentation des portes : voir transparent T5. J'utiliserai principalement la norme MILSTD :

Il faut remarquer que du fait du faible cot de ces composants, il revient gnralement moins cher de raliser une partie commande lectronique, et d'utiliser des interfaces appropris pour commander les actionneurs. Ce n'est cependant pas vrai dans deux cas : si le problme est trs simple (pour allumer la lumire de mon garage je mets directement les interrupteurs en parallle, pas besoin d'une porte OU et d'un interfaage 220V - TTL, encore moins d'un automate programmable en Grafcet) ou en cas d'environnement incompatible (humide, parasit...).

Combinatoire numrique
y

Reprsentation des nombres entiers o la base 2 o la base 16 (hexadcimal) o le Dcimal Cod en Binaire (DCB ou BCD en anglais) o le binaire rflchi (code GRAY)

Applications o l'afficheur 7 segments o l'additionneur binaire o dcodeur binaire -> code Gray (T4) o dcodeur 3/8, encodeur, multiplexeur, dmultiplexeur (T6)

Nous nous limiterons aux applications lectroniques (les seules existantes, mis part l'ordinateur eau du muse du CNAM).

Reprsentation des nombres entiers


la base 2

On peut reprsenter des nombres par une combinaison de zros et de uns. Chaque chiffre binaire (BInary digIT) est appel BIT. 8 bits forment un octet (BYTE). Mais plusieurs codifications sont envisageables. La plus utilise est le binaire (ou binaire naturel en cas d'ambigut). passage binaire (indice b) -> dcimal (indice d) : 1011001b reprsente : 1x26 +0x25 +1x24 +1x23 +0x22 +0x21 +1x20 = 1x64 +0x32 +1x16 +1x8 +0x4 +0x2 +1x1 = 89d l'inverse, pour transformer 89d en binaire, on peut utiliser la mthode des divisions successives par 2 : on divise successivement par 2 jusqu' un rsultat de 0, les restes successifs (de bas en haut) forment le nombre binaire.

De tte, je ferai : 89 = 1x64 reste 25 donc 0x32, 1x16 reste 9, 1x8 reste 1 donc 0x4, 0x2, 1x1.
la base 16 (hexadcimal)

On utilise les chiffres 0 9 puis les lettres A F. 3A5h vaut 3x162 + 10x161 + 5x160 =3x256 + 160 + 5 = 933d . On passe de l'hexa au dcimal par divisions successives par 16. Transformer de l'hexadcimal en binaire est enfantin : il suffit de remplacer chaque chiffre par sa valeur binaire sur quatre bits : 3A5h = 0011 1010 0101b (on peut vrifier que a vaut 933d). En effet, 001110100101b
= 0.211 +0.210 +1.29 +1.28 +1.27 +0.26 +1.25 +0.24 +0.23 +1.22 +0.21 +1.20 = (0.23 +0.22 +1.21 +1.20)28 +(1.23 +0.22 +1.21 +0.20)24 +0.23 +1.22 +0.21 +1.20 = 0011bx28 +1010bx24 +0101bx20 = 3dx162+10dx16+5d =3A5h

Contrairement ce que beaucoup de gens croient, aucune machine ne compte en hexadcimal. Elles travaillent toutes en binaire, et ne se servent de l'hexa que pour dialoguer avec nous (nous nous trompons trop souvent dans de longues listes de 0 et 1).
le Dcimal Cod en Binaire (DCB ou BCD en anglais)

Si vous achetez un voltmtre numrique (10 en supermarch), la valeur mesure est transmise l'afficheur en numrique. Mais elle est auparavant transforme en dcimal, chaque chiffre dcimal est transmis un afficheur en binaire naturel (sur 4 bits). C'est le BCD : la juxtaposition des valeurs binaires (sur quatre bits) des chiffres dcimaux. Donc 583d se notera 0101 1000 0011bcd. Cette codification pose deux problmes principaux :
y

un certain nombre de combinaisons ne sont pas utilises (celles qui correspondent A F en hexa). Sur 8 bits on reprsente les nombres de 0 99 au lieu de 0 255 en binaire. Sur 16 bits, on se limite 9999 au lieu de 65535... les calculs sont compliqus : rien que pour faire un programme d'incrmentation (ajouter 1), il faut ajouter 1 aux 4 bits de droite, si on obtient 1010 (10d), on les remplace par 0000 et on ajoute 1 aux quatre bits suivants (dizaines), sans oublier de vrifier si l'on ne passe pas la centaine suivante...

Ds qu'il y a des calculs effectuer, les systmes numriques traduisent les nombres BCD en binaire ds leur acquisition, les rsultats seront transforms en BCD au moment de leur sortie. On peut remarquer que pour transformer un nombre binaire en dcimal (bcd), l'ordinateur est oblig de faire des divisions successives par 1010 (10 en binaire)

le binaire rflchi (code GRAY)

On dsire qu'en passant d'un nombre son suivant (+1) ou prcdent (-1), on n'aie qu'un seul bit qui change. On dsire de plus que les zro rajouts gauche d'un nombre ne soient pas significatifs. Sur deux bits, on utilisera les codes 00, 01, 11 puis 10. Sur 3 bits, on gardera les mmes premiers codes (prcds d'un zro). La combinaison suivante dbutera donc obligatoirement par 1, donc les deux autres bits ne peuvent pas changer. On continuera prendre les mmes codes, en ordre inverse, dbutant par 1 : 110, 111, 101 et 100. En passant 4 bits, on prcde ces 8 cas d'un 0, les 8 suivants tant les mmes, dans l'ordre inverse, prcds d'un 1. Ce codage est utilis dans les cas o des valeurs ne peuvent varier que par incrmentation ou dcrmentation : si l'on voit que plus d'un bit a chang entre deux valeurs, c'est qu'il y a eu un problme (en gnral le nombre a chang trop vite, le systme n'a pas eu le temps de lire toutes les valeurs). Il faut par contre passer en binaire naturel pour tout autre calcul que l'incrmentation. Un exemple est le capteur de position angulaire (voir transparent T4). Un capteur incrmental comptant des impulsions est utilis par exemple sur les robots. C'est un disque, entaill d'encoches rgulirement espaces, passant devant un capteur optique. Certaines impulsions trop rapproches peuvent tre "oublies" en cas de choc par exemple, et donc occasionner un mauvais rglage. A l'initialisation et en cas de problme, on doit ramener toutes les articulations en position de repos, puis mettre les compteurs 0, avant de pouvoir utiliser le robot. Un capteur absolu quand lui donne toujours le position exacte (bien qu'il y ait souvent une dmultiplication, le mouvement total fait plus d'un tour mais aucun choc ne fera sauter le capteur d'exactement un tour). On utilise un code binaire rflchi car un autre codage ncessiterait, pour passer d'une valeur la suivante, une modification simultane de plusieurs bits (voir explication sur T4)

Applications
l'afficheur 7 segments

Le segment a s'allume si s0=0, s'teint sinon (idem pour les autres segments). On cherche le schma interne du composant X qui permet d'afficher le chiffre correspondant au nombre binaire disponible en entre (e0 bit de poids faible) On peut en premier lieu faire une table de vrit, donnant l'tat des 7 sorties si pour les 16 combinaisons possibles des 4 entres ei. Puis on peut rechercher l'quation de chaque sortie en fonction des entres (Karnaugh par exemple), puis on peut rechercher si certains termes apparaissent dans plusieurs quations afin de ne pas cbler plusieurs fois la mme fonction (je dis "on peut", moi je peux, mais toi/vous ?).

En utilisant plusieurs afficheurs, on affichera un nombre binaire en hexa ou un nombre BCD en dcimal, pour des nombres de bits suprieurs 4
l'additionneur binaire

tudier le circuit : (transparent T3)


_ _ _ s= r NOR 2 a ; 2= a NOR b = a.b ; r= 3 NOR 4 ; _ 3= b NOR b = b ; 4=

a b r s 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 0
_ _ s= ba + ab

donc r = ba

c'est donc un additionneur binaire. (s=somme r=retenue, 0+0=0, 1+0=1, 1+1=0 et je retiens 1).

Exercice : faire le mme composant uniquement avec des NAND. A l'aide de ce composant, on peut maintenant faire un additionneur sur plusieurs bits (en gnral au moins 8, analysons ici uniquement le cas de 3 bits). a2 a1 a0
+ b2 b1 b0 -> r0, r1, r2 sont les retenues intermdiaires r3 s2 s1 s0

s0=a0+b0 (retenue ventuelle s0). s1=s0+a1+b1 (retenue ventuelle s1, qui ne peut valoir que 0 ou 1, donc la retenue ne peut provenir exclusivement que d'une seule des deux additions). On rpte ensuite le mme principe, pour tous les bits dsirs
dcodeur binaire -> code Gray (T4)

Trouver le schma d'un composant admettant en entre un nombre binaire naturel, donnant en sortie son quivalent en code binaire rflchi. On se limitera aux nombres de 3 bits. On peut trouver g1 et g0 par tableau de Karnaugh:

dcodeur 3/8, encodeur, multiplexeur, dmultiplexeur (T6)

Le dcodeur 3 dans 8 comporte 3 entres e0 e2, 8 sorties s0 s7. Il allume une et une seule sortie la fois, celle correspondant la valeur binaire donne en entre (dons entre 0 et 7, ce qui fait entre 000 et 111 en binaire). A l'inverse, un encodeur 8 dans 3 pose quelques problmes : quelle sortie donner si plusieurs entres sont allumes ? On prvoit en gnral soit une priorit, soit une sortie supplmentaire signalant l'erreur. Le multiplexeur (voir transparent T6) comporte 2n (ici 8) entres d'information
y y

n (ici 3) entres de slection (entre d'un nombre I en binaire) 1 sortie (recopie de l'entre d'information (numro I) sur la sortie)

Le dmultiplexeur comporte 2n (ici 8) sorties


y y

n (ici 3) entres de slection (entre d'un nombre I en binaire) 1 entre d'information (recopie de l'entre d'information sur la sortie numro I)

(j'ai reprsent toutes les entres gauche, les sorties droite)

Squentiel (cbl)
y y y y

Dfinition bascule R S bascule RST matre esclave

fonctionnement bascule D MS cas particulier : la bascule JK le diviseur de frquence le compteur - dcompteur compteur BCD le frquencemtre le registre dcalage mmoires o principe o brochage o association de botiers mmoire
o o o o o o o o

Dfinition
En combinatoire, pour chaque combinaison des entres, il existe une et une seule combinaison des sorties. En squentiel, l'tat des sorties dpend en plus de l'histoire (de l'tat prcdent, qui lui aussi, dpend de l'tat qui l'a prcd...)

bascule R S

Ce composant est le composant de base du squentiel. Analysons l'tat des sorties dans diffrents tats.

Dans cette table de vrit, on considrera un droulement squentiel : les combinaisons des entres se suivent dans le mme ordre

Rappel : la sortie d'une porte NOR ne vaut 1 que quand toutes ses entres sont 0.

S R Q Q' 1 0 1 0 Set (allumer) 0 0 1 0 Mmorisation 0 1 0 1 Reset (teindre) 0 0 0 1 Mmorisation 1 1 0 0 Etat Interdit !

Si le dernier cas n'est pas utilis (on ne demande pas simultanment d'allumer et d'teindre), Q' vaut toujours l'oppos de Q, on l'appellera donc /Q (Q barre)
On ralise ici une bascule enclenchement prioritaire (idem, except si S=R=1, Q et mis 1). Ici, dans tous les cas, Q' est l'oppos de Q. Un bascule priorit dclenchement aura galement le mme comportement qu'une RS, except dans l'tat interdit o /Q vaudra 1

Application : circuit anti rebond Un capteur ne peut pas passer de manire parfaite (sans ala) de l'tat 0 l'tat 1. On peut utiliser une bascule, qui mmorisera l'tat stable prcdent pendant l'tat transitoire. (T1) Exercice : quel est le comportement d'un mme composant o l'on a remplac les NOR par des NAND ? (rponse : bascule commande par des niveaux 0)

bascule RST
T est l'entre de validation : si T=1, les entres R et S sont prises en compte, si T=0 elles ne le sont pas. Dans ce cas, la bascule n'est pas teinte, elle reste "fige" dans le mme tat.

Souvent, la bascule comporte deux entres supplmentaires : Preset (forage 1, quel que soit l'tat de T) et Clear (forage 0), qui permettent de forcer la bascule mme si T=0, utilises gnralement pour l'initialisation du composant.

Application : bascule D ou Latch ou mmoire : on possde une entre D, relie S d'une RST, et R par l'intermdiaire d'un inverseur. La sortie Q vaudra l'tat lu et mmoris lors du dernier T=1. C'est le composant de base d'une mmoire d'ordinateur : est mis 1 ou 0 au moment voulu, fig le reste du temps.

matre esclave
fonctionnement

Deux bascules RST sont relies en srie. Une seule est valide la fois (T invers). Une entre Preset permet le forage 1 de l'ensemble, une entre Clear le forage 0 (indpendamment de l'tat prcdent et de T).

Analysons le fonctionnement de cette bascule:

matre (Master)

esclave (Slave)

Si T=0 information S/R transmise en s'r' non transmis en Q (ancien Q) Si T=1 R S en attente (ancien r's') ancien r's' transmis en Q

On remarque donc que l'information est transmise au prochain front montant de l'horloge T.
bascule D MS

Elle synchronise un signal extrieur sur un front d'horloge ( condition que le signal dure au moins une demi priode).

cas particulier : la bascule JK

Elle comporte en gnral plusieurs entres de mise 1 (J) et de mise 0 (K). Dans le cas o l'on demande l'tat impossible (J.K), la sortie est inverse chaque front d'horloge. Dans les autres cas le fonctionnement est identique. De plus on peut avoir des bascules JK dont le basculement et command par un niveau (0 ou 1) ou par un front ("edge triggered").
le diviseur de frquence A chaque front montant de T, la sortie Q change d'tat. Si le signal T est carr, de frquence F, alors Q sera carr de frquence F/2. En disposant en srie plusieurs diviseurs en cascade, on obtient un compteur ou dcompteur binaire (mme si T n'est pas rgulier) :

le compteur - dcompteur

On dispose donc en srie des diviseurs de frquence (trois par exemple), chaque front appliqu en entre du premier diviseur, regardons l'tat des sorties :

Ce sytme dcompte les fronts (mme si les signaux d'entre ne sont pas rgulirement espacs). En inversant les sorties, on obtient un compteur. En reliant ensemble les Clear des diffrents tages, on peut remettre le compteur d'impulsions 0. En gnral, on initialise le dcompteur (par les P et C) au nombre compter, et on attend la valeur 0. On peut remarque le binaire se "cre" automatiquement : la base 2 est la mieux adapte au comptage l'aide de composants ToR. Un compteur - dcompteur comporte deux entres, une de comptage (ajoute un) et l'autre de dcomptage (soustrait un). Un compteur asynchrone (comme celui-ci) pose un petit problme : les bascules en srie ont un temps de rponse qui fait que la nouvelle valeur se "propage" de gauche droite, on aura donc pendant un trs court instant une valeur de sortie erronne. Les compteurs synchrones rsolvent ce problme ( l'aide de bascules JK, je ne donne pas le schma, il faut bien que les diteurs de livres scolaires aient encore quelque chose vendre).
compteur BCD

Une fois arriv la valeur 1010 (10 en binaire), on le remet 0 et on lance un signal la dizaine suprieure. Attention dans la pratique ce n'est pas aussi simple : si un composant va plus vite que l'autre, la remise 0 peut se faire sur une priode transitoire o l'on se trouvait 1010. (C+=entre de comptage)

le frquencemtre

Autre application du compteur. C'est un compteur d'impulsions pendant un temps donn (cas des frquences leves), ou alors on compte le temps pendant une priode (frquences faibles).

le registre dcalage

De mme en mettant en cascade des bascules D MS, on obtient un registre dcalage, que l'on peut initialiser en parallle (indpendamment de T) par les broches Preset et Clear.

chaque front de T la valeur Qi est dcale en Qi-1. Pour un bon fonctionnement, il faut que chaque Di soit dclench aprs Di-1.

mmoires
principe

ROM : Read Only Memory : On a fig par construction le contenu des mmoires. En fait, pour un bit, une mmoire 1 correspond une liaison sur l'alimentation, un 0 une liaison la masse. Comment regrouper plusieurs bits ? Soit par exemple une mmoire de 64 valeurs binaires :

Les intersections sont : pour une valeur 0 : pas de liaison, pour une valeur 1 : une diode empchant le courant de remonter de la colonne. :

En entrant une ADRESSE (numro de mmoire, entre 0 et 63 ici) sous forme binaire, on obtient la donne dsire (contenu de la mmoire). L'adresse se dcompose en une partie haute (a3 a5) dterminant la ligne mise 1, et une partie basse (a0 a2) dterminant la colonne connecte sur la sortie D

PROM : programmable une seule fois : liaison "fusible". On programme une Prom sous une tension suprieure la tension de fonctionnement. UVPROM : Prom reprogrammable aprs rgnration sous ultra violets (20 mn). EEPROM : Prom rgnrable lectriquement. Application :Utilisation de ROM en combinatoire Pour chaque tat des entres on mmorise la sortie (dcomposition en mintermes). Par exemple, pour crer un gnrateur de caractres 8x8 pixels on prfrera utiliser une ROM plutt que de faire un circuit spcifique (pour 127 caractres, il faut 1 Ko). RAM statique : garde la valeur tant qu'elle est alimente. On utilise la mme disposition que pour la ROM, mais chaque intersection on place une bascule. RAM dynamique : d'accs beaucoup plus rapide, mais il faut les rgnrer (lire et rcrire) intervalle rgulier (plusieurs fois par seconde). On intgre actuellement plusieurs Mbit par composant.
brochage

Un botier RAM comprend en gnral des entres A0 An permettant de dsigner la mmoire, R/W pour dire si lire ou crire, et D0 Dm pour les donnes (entre sortie) (ou D si c'est un botier de mmoires 1 bit). De plus, le composant ne fonctionnera que s'il est slectionn (entre CS : chip select). De plus, il faut entrer un signal de synchronisation (horloge) et videment l'alimenter. Chronogramme : en lecture, il faut donner l'adresse, CS, Read, on obtiendra le contenu D au prochain top d'horloge. En criture, on donne l'adresse, CS et Write, puis la donne au prochain top d'horloge.
association de botiers mmoire Comment utiliser 8 botiers de 8k x 1 bit pour crer une mmoire de 8k x 8 bits ?

En fait, on envoie les signaux de commande et l'adresse aux 8 boitiers. Ceux-ci, simultanment, traiteront les 8 bits du mot dsir. Les diffrents bits d'une mme mmoire ne sont donc pas physiquement situs au mme endroit.

Et avec 8 botiers de 1k x 8 bits ?


Ici, les 10 bits de poids faible de l'adresse dsire est transmise tous les boitiers. Mais un seul est slectionn, suivant les 3 bits de poids fort de l'adresse. Les 8 bits de donnes de tous les boitiers sont relis ensemble, on est sr qu'un

seul sera slectionn la fois, via le dmultiplexeur .

conversion numrique analogique


y y y

conversion numrique analogique (CNA) conversion analogique numrique (CAN) chantillonnage

Remarque : Ce paragraphe n'est plus trait en IUP1

conversion numrique analogique (CNA)


On dsire transformer une valeur numrique (en binaire) discrte en une tension variable. On utilise un ampli oprationnel (la tension de sortie est proportionnelle la rsistance d'entre). On lui applique l'entre le schma ci-contre:

On obtient une rsistance quivalente, en fonction des 4 "contacteurs" telle que dfinie ciaprs :
3 2 1 0 Req/R 0 0 0 0 0/8 0 0 0 1 1/8 0 0 1 0 2/8 0 0 1 1 3/8 0 1 0 0 4/8

... ... ... ...

...

1 1 1 0 14/8 1 1 1 1 15/8

Pour 16 bits de prcision, on arrive une rsistance de 32768 R. Pour que la valeur du dernier bit soit infrieure l'erreur, il faut une prcision de plus de 1/32768 sur les rsistances (dans la plage de tempratures d'utilisation). Pour rsoudre ce problme, on utilise le montage R/2R (T3). A chaque intersection, le courant est partag en deux (rsistance quivalente gale).

conversion analogique numrique (CAN)


Une solution rapide est de comparer en parallle la tension mesurer avec l'ensemble des possibilits. Mais la prcision obtenue est faible et la mise en oeuvre complexe. Une solution plus prcise est de gnrer les tensions comparer la tension mesurer par un CNA. Deux possibilits s'offrent alors : Soit tester toutes les valeurs possibles. La logique de commande est alors un compteur d'impulsions. Soit utiliser la dichotomie (division de l'espace de recherche de moiti). La logique de commande est alors un registre dcalage : on essaye d'abord 1000000000, puis on essaie le bit suivant... Sur 16 bits il faut 16 tests par dichotomie au lieu de 65536. La troisime solution est de charger un RC par la tension mesurer en comptant le temps ncessaire pour arriver un seuil donn. On choisit les valeurs de R et C de manire obtenir une caractristique linaire. Le principal intrt est que l'on ne mesure pas une valeur instantane mais une quantit de courant (intgration). Il est donc inutile de filtrer les bruits qui sont superposs au signal (si ils sont faibles, haute frquence et valeur moyenne nulle). Pour plus de prcision, on utilise une double rampe : on charge le RC pendant un temps donn par la tension mesurer, puis on le dcharge par une tension connue, en mesurant le temps ncessaire. Par cette mthode, les imprcisions se soustraient au lieu de s'additionner.

chantillonnage
On appelle chantillonneur bloqueur un composant qui lit une valeur analogique un instant donn, puis la mmorise (dans une capacit) jusqu' la lecture. On chantillonne une valeur analogique une frquence au moins double de la plus petite frquence mesurer.

Pour transmettre un signal, il est plus efficace de le faire en numrique (peu ou pas de dformation de l'information, facilit de remise en forme du signal en cours de transmission longue distance) :
CAN -> multiplexeur -> liaison srie -> dmultiplexeur -> CNA Mais on peut galement utiliser une reprsentation stochastique :

On chantillonne, et on envoie un NOMBRE d'impulsions proportionnel la valeur, de dure constante, rparties peu prs rgulirement (par exemple alatoirement). On rcupre alors ce signal en l'intgrant (c'est dire enregistrer dans un RC la somme du courant arriv en un temps donn). Cette mthode vite de synchroniser l'metteur et le rcepteur (bits de start et de stop, vitesse de transmission...)

You might also like