25
IUT de BREST département Génie Mécanique et Productique F128 Bases Automatismes OUTILS de BASE des AUTOMATISMES Systèmes automatisés - logique combinatoire Algèbre de BOOLE Numération Fonctions logiques et arithmétiques CR/BF F128_Outils-Bases-Automatismes_12.odt Page 1 sur 25

OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

Embed Size (px)

Citation preview

Page 1: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

IUT de BRESTdépartement Génie Mécanique et Productique

F128 Bases Automatismes

OUTILS de BASE des AUTOMATISMES

Systèmes automatisés - logique combinatoire

Algèbre de BOOLE

Numération

Fonctions logiques et arithmétiques

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 1 sur 25

Page 2: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

I - Système Automatisé de Production (SAP)........................................................................................4

I.A Structure d'un SAP.................................................................................................................................5I.A.1 la Partie Opérative (PO)............................................................................................................................................5I.A.2 la Partie Relation (PR) ou Interface Homme Machine (I.H.M)................................................................................5I.A.3 La Partie Commande (PC ).......................................................................................................................................6

I.B Automatismes et les grandeurs binaires................................................................................................6I.B.1 Les grandeurs continus (analogique).........................................................................................................................6I.B.2 Les grandeurs discontinus (logique)..........................................................................................................................6I.B.3 Les automatismes logiques combinatoires et séquentielles......................................................................................6

II - Algèbre de BOOLE...........................................................................................................................6

II.A Introduction............................................................................................................................................6

II.B Cadre mathématique formel :...............................................................................................................7II.B.1 Propriétés des opérations.........................................................................................................................................7II.B.2 Théorèmes et relations remarquables.....................................................................................................................8II.B.3 Fonction booléennes et table de vérité.....................................................................................................................8

II.C Représentations des opérateurs logiques.............................................................................................9

II.D Tableau de Karnaugh :.....................................................................................................................10

III - Les numérations liées au binaire................................................................................................12

III.A Nombres entiers positifs Non Signés (Unsigned).............................................................................12III.A.1 Expresssion d'un nombre N dans une base B quelconque....................................................................................12III.A.2 Codage binaire pur...............................................................................................................................................12III.A.3 Codage hexadécimal.............................................................................................................................................13III.A.4 Codage BCD (Binary Coded Decimal)...............................................................................................................14III.A.5 Codage binaire réfléchi : code Gray.....................................................................................................................14III.A.6 Arithmétique binaire.............................................................................................................................................15

III.B Nombres entiers relatifs.....................................................................................................................16III.B.1 Codage décimal....................................................................................................................................................16III.B.2 Codage binaire en complément à 2.......................................................................................................................16

III.C Nombres réels.....................................................................................................................................17

IV - Fonctions fondamentales : les masques.......................................................................................18

IV.A Forçage de bits à 0 :ET logique (AND) entre mots..........................................................................18

IV.B Forçage de bits à 1 :OU inclusif (OR) entre mots...........................................................................18

IV.C OU exclusif (XOR) entre mots..........................................................................................................19

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 2 sur 25

Page 3: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

INTRODUCTION

Après être passé de l'ère manuelle à l'ère mécanisée , le monde moderne est à l'heure de l'automatisation, de la robotisation et de l'informatique.

Ceci est effectif dans le milieu industriel mais également dans la vie courante : programmateurs pour l'électroménager,calculatrices,ordinateurs personnels, télématique,......

Dans le domaine industriel où elle est implantée depuis longtemps,les progrès de l'automatisation sont considérables et les matériels utilisés de plus en plus sophistiqués.

Justification de l'automatisation

Les critères qui favorisent l'introduction d'un automatisme dans un domaine quelconque sont nombreux et de sources différentes. Voyons-en quelques uns.

a) La productivitéDans beaucoup de cas, l'automatisation entraîne un gain de temps important, rapidité

d'exécution et rationalisation des installations, ce qui permet un plus grande productivité.

b) La précision et la qualitéLa précision du travail manuel étant variable d'un opérateur à un autre (qualités manuelles et

qualification professionnelle) et étant variable dans le temps (fatigue), l'automatisation permet de "stabiliser" celle-ci de manière à assurer la constance de la qualité du produit.

c) La sécuritéL'automatisation s'avère nécessaire et parfois indispensable partout où la complexité et la

spécificité des installations (espace, milieu sous marin, radioactivité, ...) peuvent entraîner des risques d'accidents pour les personnels.

Conséquences de l'automatisation

S'il est vrai qu'elle permet une plus grande compétitivité des entreprises, il est évident qu'elle aboutit en un déficit très important en emplois . Le nombre d'emplois supprimés (taches répétitives de faible qualification) est de loin supérieur au nombre d'emplois créés (conception, réalisation, programmation et maintenance des automatismes).

D'autre part, ces derniers emplois requièrent un niveau de qualification assez élevé et ce d'autant que "l'automatique" est devenue un carrefour de technologies (pneumatique, hydraulique, informatique, électronique...) en évolution rapide.

Ceci a des conséquences importantes dans beaucoup de domaines :• Les ressources des services sociaux (systèmes de santé et de retraite) sont fortement

affectées (les machines automatiques ne payent pas de cotisations sociales, ce qui est fortement regrettables, mais mondialisation oblige !!!! ).

• La formation initiale des jeunes doit être prolongée.• La formation continue devient indispensable.• La reconversion des salariés licenciés est difficile et parfois impossible.....

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 3 sur 25

Page 4: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

I - Système Automatisé de Production (SAP)

- le système manuel : les ordres et les comptes rendus sont gérés par l'opérateurl'effort musculaire est fourni par l'opérateur

-le système automatisé : l'opérateur est totalement externe au systèmel'opérateur intervient en cas de nécessité: panne par exemple

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 4 sur 25

MATIÈRE

Forceet

Savoir fairede l'opérateur

Énergie musculaire

Informations sensorielles

Actions

Evènements

MATIÈRE ET VALEUR AJOUTÉE

SurveillanceOrdres

Compte-rendus

MATIÈRE

Actions

Évènements

MATIÈRE ET VALEUR AJOUTÉE

ACTIONNEURSPré-actionneurs

ÉNERGIE

Capteurs

APIPO

PUPITRE

IHM

Interface Homme Machine

Demande de mise en énergie

Choix du mode de production

SurveillanceArrêt d'Urgence

PC

PO

PR

Partie Relation, Partie Commande, Partie Opérative

AutomateProgrammable Industriel

Page 5: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

I.A Structure d'un SAP

Dans un système automatisé de production, on peut mettre en évidence les trois parties :Partie Opérative (PO), Partie Relation (PR) et Partie Commande (PC)

I.A.1 la Partie Opérative (PO)

La partie opérative opère sur la matière d'oeuvre (le produit) afin de lui donner une valeur ajoutée (usinage, tri, conditionnement). Elle regroupe :

• Les effectueurs : dispositifs terminaux qui agissent directement sur la matière d'oeuvre : outils de coupe, pompes, têtes de soudage, etc...

• Les actionneurs sont les composants chargés de convertir l'énergie afin de l'adapter aux besoins des effectueurs : moteurs, vérins, résistances de chauffage, etc...

• Les pré-actionneurs : éléments chargés :° d'adapter le faible niveau énergétique des commandes en sortie de la PC au besoin du

contrôle des actionneurs.° de distribuer ou de moduler l'énergie délivrée par la source aux actionneursrelais, contacteurs, distributeurs, variateurs de vitesse, etc....

• Les capteurs qui assument la prise d'informations et la mesure de grandeurs sur la matière d'oeuvre directement, ou sur les effectueurs ou les actionneurs afin de renseigner la PC et la PR de l'état de réalisation des actions commandées : fin de course de vérin, détecteur de position, capteur de température, etc....

I.A.2 la Partie Relation (PR) ou Interface Homme Machine (I.H.M)

La partie relation comporte le pupitre de dialogue homme - machine équipé :• des organes de commande :

° de la mise en/hors énergie de l'installation°de la sélection des modes de marche et d'arrêt° manuelles des actionneurs° de la mise en référence, du départ des cycles, de l'arrêt d'urgence

• des signalisations telles que :° afficheurs° voyants lumineux° écrans de supervision° klaxons, sonneries, etc.....

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 5 sur 25

Page 6: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

I.A.3 La Partie Commande (PC )

La partie commande coordonne les actions de la partie opérative en relation avec la partie relation. Elle regroupe les composants de logique câblée (relais électromagnétiques, composants électroniques, etc...) et de logique programmée (API, cartes à microprocesseurs standards ou spécifiques, ordinateurs, etc...) destinés au traitement des informations émises par les organes de commande de la PR et les capteurs de la PO.

Les ordres résultants du traitement sont transmis aux pré-actionneurs de la PO et aux composants de signalisation de la PR.

I.B Automatismes et les grandeurs binaires

I.B.1 Les grandeurs continus (analogique)

Le nombre des états d'une entrée ou d'une sortie est infini. La plupart des grandeurs physiques mesurables qui nous entourent sont des quantités analogiques et peuvent être représentées par exemple en fonction du temps et pouvant prendre une infinité de valeur sur un intervalle borné en amplitude.

I.B.2 Les grandeurs discontinus (numérique)

Le nombre d'états d d'une entrée ou d'une sortie est fini. Si on prend le signal précédent il peut être échantillonné en différents points discrets dans le temps. Ces valeurs pour qu'elles deviennent des quantités numériques devront être quantifiées puis numérisées (conversion analogique numérique).

I.B.3 Les automatismes logiques combinatoires et séquentielles

On distingue 2 types d'automatismes logiques:

combinatoires séquentiels

Les états des sorties ne dépendent que de l'état des entrées. Le fonctionnement du système ne dépend pas du temps.La même cause (même combinaison des entrées) produit toujours le même effet (même état des sorties). L'effet disparaît lorsque la cause disparaît.

Les états des sorties à l'instant t dépendent des états des entrées et de l'état dans lequel se trouvait le système antérieurement. Le fonctionnement du système dépend de son passé. Une même cause (même combinaison des entrées) peut produire des effets différents.

Exemple : pour commander un perceuse on dispose de deux boutons poussoir marche et arrêt. Pour les deux état identiques des boutons poussoirs relachés, on peut avoir la perceuse en fonctionnement ou à l'arrêt. Dans la logique séquentiel on tient compte des entrées mais aussi de la succession de celle-ci.

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 6 sur 25

S=ab .ccb

a

S S = F(E, St-1

)E S

Retard

St-1

Page 7: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

II - Algèbre de BOOLE

II.A Représentations des opérateurs logiques

symbole équation symbole logique européen (IEC)

symbole logique américain (ANSI)

Schéma à contacts électriques

Table de vérité

OUI

a s= a s

a s0 01 1

NON(not)

s=a a s= a s a s a s0 11 0

OU(or)

s = ab s1

b

a

sba a

s

b

a b s0 0 00 1 11 0 11 1 1

ET(and)

s = a⋅b sb

a& sb

a a sb a b s0 0 00 1 01 0 01 1 1

NON ET(nand)

a b s

NON OU(nor)

s = ab s1

b

asb

a a sb a b s0 0 10 1 01 0 01 1 0

Ou exclusif(xor)

s = a⊗b = a⋅ba⋅b s1

b

a

sba

a

b sa

b

a b s0 0 00 1 11 0 11 1 0

Quelques représentations de schéma à contact

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 7 sur 25

s = aa s

X X

0 1

Page 8: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

II.B IntroductionL'algèbre de BOOLE est une algèbre qui opère sur information logique binaire pouvant prendre deux valeurs distinctes ou état :

0 / Faux / False /'L' 1 / Vrai / True/'H'ou ouvert ou fermé, arrêt ou marche, inactif ou actif, relâché ou enfoncé,...

II.C Cadre mathématique formel :Ensemble de deux symboles E = [ 0 , 1 ]

muni de 3 lois de composition interne ( opérateurs agissant dans E )

1 - Complémentation booléenne : NON notée par un surlignement a , un soulignement a ou une barre adjacente a/

2 - Addition booléenne : OU notée "OU" ou "+"

3 - Multiplication booléenne : ET notée "x" ou "."

II.C.1 Propriétés des opérations1 - La complémentation est involutive, c'est-à-dire :

∀ x ∈ E x= x

2 - L'addition et la multiplication sont idempotentes, c'est-à-dire :∀ x ∈ E x + x = x et x . x = x

3 - L'addition et la multiplication sont commutatives, c'est-à-dire :∀ x ∈ E et ∀ y ∈ E x + y = y + x ; x . y = y . x

4 - L'addition et la multiplication sont associatives, c'est-à-dire :∀ x,y,z ∈ E (x + y) + z = x + (y + z) = x + y + z

(x.y) . z = x . (y.z) = x . y . z

5 - L'addition est distributive sur la multiplication. (faux en algèbre classique)

∀ x,y,z ∈ E x + y.z = (x + y).(x + z) = x.x + x.z+ y.x + y.z = x + x.z+ y.x+ y.z = x (1+z)+y x+ y.z== x +y.x+ y.z= x (1+y) +y.z = x.1+ y.z= x+ y.z

La multiplication est distributive sur l'addition. (vrai en algèbre classique)

∀ x,y,z ∈ E x.(y + z) = x.y + x.z

6 - Il existe un élément neutre de E, noté 0 pour l'addition. Il existe un élément neutre de E, noté 1 pour la multiplication.

∀ x ∈ E x + 0 = x et x . 1 = x

7 - L'élément neutre de la multiplication, "1", est absorbant pour l'addition. L'élément neutre de l'addition, "0", est absorbant pour la multiplication.

∀ x ∈ E x + 1 = 1 et x . 0 = 0

8 - Symétriques identiques pour l'addition et la multiplication :∀ x ∈ E x+x=1 et x . x=0

9 - Postulat de DE MORGAN.∀ x, y ∈ E x y=x . y ; x . y= x y

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 8 sur 25

Page 9: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

II.C.2 Petit résumé à connaître !!

II.C.3 Théorèmes et relations remarquables

Th.1 - Adjacence : A . BA . B=B Dém.: A.B A . B=A A . B=1.B=B

Th.2 - Absorption : A + A . B = A Dém.: A + A.B = A .(1+ B) = A . 1 = A

- Optimisation: AA . B=AB Dém.: A + A/.B = A + A.B + A/.B = A + (A + A/).B = A + 1.B = A + B

Th.4 - De Morgan : ABC=A .B .C

A . B .C=ABC

II.C.4 Exemple de simplification

L1=a .a .b+a=¿

S1=(a .b+c . d )

II.C.5 Fonction booléennes et table de vérité

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 9 sur 25

Page 10: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

Une fonction booléennes est une quantité booléenne fonction de plusieurs variables booléennes.

Exemple de fonction pour 3 variables : f A , B ,C =C .AB

La table de vérité donne pour 2n combinaisons des n variables l'état de la fonction.

Variables en entrées Fonction en sortie

poids Termes produit A B C f(A,B,C)

0 a .b . c 0 0 0 0

1 a .b . c 0 0 1 1

2 a .b . c 0 1 0 0

3 a .b . c 0 1 1 0

4 a .b . c 1 0 0 0

5 a .b . c 1 0 1 1

6 a .b . c 1 1 0 0

7 a .b . c 1 1 1 1

A partir de la table de vérité on établit la fonction logique en sommant l'ensemble des produits de variables qui définissent la fonction à 1.

F (a ,b ,b)=a .b .c+a .b .c+a . b .c

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 10 sur 25

Page 11: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

II.D Tableau de Karnaugh :Pour les relations à faible nombre d'entrées, le tableau de Karnaugh remplace la table de vérité et permet

de simplifier l'équation booléenne que l'on obtiendrait à partir de cette table. L'ordonnancement des cases du tableauest réalisé en suivant la progression binaire réfléchi (Code Gray)

* pour 1 variable : 21 = 2 états : 0 , 1* pour 2 variables : 22 = 4 états : 00 , 01 , 11 , 10* pour 3 variables : 22 = 8 états : 000 , 001 , 011 , 010 , 110 , 111 , 101 ,100

Cette progression diffère de la progression numérique binaire croissante et permet à une seule variable de changer d'état à chaque étape, c'est-à-dire pour les cases adjacentes des tableaux de Karnaugh représentés ci-dessous :

Pour une équation à simplifier de n variables il y a 2n combinaisons sous forme de produit logique à répartir dans le tableau de Karnaugh.

Exemple : Pour F( A,B,C) il existe 23 produits logiques que l'on peut répartir :

a b,c 00 01 11 10

/a0

a .b .c0

a .b .c1

a .b . c3

a .b . c2

a1

a .b .c4

a .b .c5

a .b . c7

a .b . c6

a b,c 00 01 11 10

0 a .b .c0

a .b .c1

a .b . c3

a .b . c2

1 a .b .c4

a .b .c5

a .b . c7

a .b . c6

Simplification et utilisation du tableau de Karnaugh

Le tableau de Karnaugh étant codé en binaire réfléchi il possède des axes de symétrie permettant d'étendre la notion de cases adjacentes ainsi par exemple

a b,c 00 01 11 10

0 a .b .c0

a .b .c1

a .b . c3

a .b . c2

1 a .b .c4

a .b .c5

a .b . c7

a .b . c6

la case 5 possède les 3 cases adjacentes 1, 4 , 7,

la case 2 possède les 3 cases adjacentes 3, 6 , 0

la case 4 possède les 3 cases adjacentes 0, 5 , 6

la case 3 possède les 3 cases adjacentes 1, 2 , 7

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 11 sur 25

Page 12: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

La combinaison de cases adjacentes va permettre d'éliminer des variables en utilisant le théorème d'adjacence

A . BA . B=B .

Le travail de simplification de l'équation consiste à repérer et grouper ces adjacences.

Règles de minimisation par le tableau de Karnaugh :

–Chercher tous les "1" formant des groupes de 16, puis de 8, puis de 4 et en fin de 2.

–Les regrouper et écrire le monôme réduit en absorbant (faisant disparaître) la variable qui a permis le regroupement par deux (c'est-à-dire celle qui change).

- Enfin, écrivez la fonction "f", décrite par le diagramme, sous la forme d'une addition booléenne de tous les monômes réduits.

Remarque : un "1" peut être utilisé dans plusieurs regroupements. En effet, il suffit d'appliquer l'idempotence de l'addition qui permet de dédoubler un terme (a.b = a.b + a.b) :

exemple : f a ,b =a.ba . ba. b=a . ba .ba .ba .b =ba

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 12 sur 25

Page 13: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

Exemple 1 : Schémas, table de vérité, chronogrammes, équations et

a b c s0 0 00 0 10 1 00 1 11 0 01 0 11 1 01 1 1

S =

b,ca

00 01 11 10

0

1

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 13 sur 25

b

ta

c

S

≥1

&S

a

c

b

s =

00 01 11 10

0

1

abcs

a . b . c a . b . c

a . b . c a . b . c

a . b . c

a . b . c

a . b . c

a . b . c

Page 14: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

Exemples :

a b,c 00 01 11 10

0 1 1 0 0

1 1 0 1 0

F (a,b,c) =

a b,c 00 01 11 10

0 1 1 1 0

1 0 1 1 1

F (a,b,c) =

a,b c,d 00 01 11 10

00 1 1 0 1

01 0 0 1 1

11 0 0 1 1

10 1 0 0 1

F (a,b,c) =

Si un état du système est impossible, notamment pour des raisons technologiques, la case correspondante est indéterminée (notée "Ø" ou "X") et peut être prise comme un "1" ou un "0" à votre gré.

a,b c,d 00 01 11 10

00 0 1 0 0

01 Ø 1 0 1

11 Ø 1 0 0

10 0 1 0 1

F (a,b,c) =

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 14 sur 25

Page 15: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

Exemple de problème ….

CR/BF F128_Outils-Bases-Automatismes_12.odt Page 15 sur 25

00 01 11 10

00

01

11

10

pedcM

Méthode de simplification algébrique

Méthode de simplification par tableau de Karnaugh

Page 16: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

III - Les numérations liées au binaireVocabulaire : élément binaire (eb) ou Binary digIT (BIT)

quartet bloc de 4 bitsoctet (byte) bloc de 8 bitsmot (word) bloc de 2, 4 ou 8 octets; 16, 32 ou 64 bits

Ces blocs peuvent contenir entre autres :• un ensemble d'informations logiques• le code en binaire d'un nombre entier positif , entier relatif, ou réel dans un système de numération.• le code d'un caractère texte imprimable ou d'un caractère de contrôle : ex. code ASCII• le code binaire nécessaire à un processeur et traduisant une instruction exécutable.

III.A Nombres entiers positifs Non Signés (Unsigned)

III.A.1 Expression d'un nombre N dans une base B quelconqueIl s'agit de coder des nombres dits Non Signés (Unsigned), et l'entier entier positif peut être exprimé avec "n" symboles appelés chiffres (an-1, an-2, ... , a0) en numération de base "B" avec ai Є {0, B-1}

( ) ... ...N a a a a B a B a BB n n nn

nn= = + + +− − −

−−

−1 2 0 1

12

20

0

Exemple en base 10 :

III.A.2 Codage binaire purLa base "B" est égale à 2 .Les chiffres (digits numériques) utilisés sont par convention, "0" et "1".Un nombre de "n" chiffres significatifs peut coder un entier compris entre 0 et 2n-1 donc pour 1 octet (8 bits) l'entier est compris entre 0 à 255 et sur 2 octets (16 bits) entre 0 à 65535.Exemple sur 3 bits :

Binaire purdecimal

22 21 20

0 0 0 0

0 0 1 1

0 1 0 0 x 22+ 1x 21+ 0x 20 2

3

4

5

6

7

F128_Outils-Bases-Automatismes_12.odt Page 16 sur 25

012310 10.710.010.510.3)3507( +++=

Page 17: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

III.A.3 Codage hexadécimalLa base "B" est égale à 16 = 24; le transcodage binaire - hexadécimal est très simple.

sur 1 digit : codage de (16)10 valeurs de 0 à (15)10.

sur 2 digits : codage de (256)10 valeurs de 0 à (255)10.

sur 4 digits : codage de (65536)10 valeurs de 0 à (65535)10.

Binaire pur hexadécimal décimal

23 22 21 20

0 0 0 0 0 0

0 0 0 1 1 1

0 0 1 0 2 2

3 3

4

5

6

7

8

9

10

11

12

13

14

15

III.A.4 Changement de base X vers décimal

Conversion hexadécimal en décimalExemple : (20B3)16 à convertir en décimal

Binaire vers décimal

Exemple : (11001)2 à convertir en décimal1. 24 +1. 23+ 0.22+0.21+ 1.20 = (25)10

F128_Outils-Bases-Automatismes_12.odt Page 17 sur 25

100123 )8371(16.316.1116.016.2 =+++

Page 18: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

III.A.5 Changement de décimal vers base X

Conversion du décimal en binaire :Pour convertir de la base 10 vers la base 2, il faut faire les divisions successives par la base B=2 jusqu'à ce que le quotient soit égal à 0 , les restes successifs avec une lecture de droite à gauche et écriture (de gauche à droite) donnent le nombre dans la base 2 :

exemple: convertir (357)10 en base 2

02122521122224428921782357 101100101 →÷ → →÷ →÷ →÷ →÷ →÷ →÷ →÷ ========= rrrrrrrrr

210 )101100101()357( =

F128_Outils-Bases-Automatismes_12.odt Page 18 sur 25

Page 19: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

Conversion décimal en hexadécimal :Pour convertir de la base 10 vers la base 16, il faut faire les divisions successives par la base B=16 jusqu'à ce que le quotient soit égal à 0 , les restes successifs avec une lecture de droite à gauche et écriture (de gauche à droite) donnent le nombre dans la base 16 :

exemple : convertir (714)10 en base 16

avec (10)10 = (A)16, (12)10=(C)16 on a donc 101011000010%)2()714( 10 == hCA

F128_Outils-Bases-Automatismes_12.odt Page 19 sur 25

0162164416714 21210 →÷ →÷ →÷ === rrr

Page 20: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

III.A.6 Codage BCD (Binary Coded Decimal)En français DCB : Décimal Codé en BinaireChaque chiffre décimal {0 à 9}, quel-que-soit son poids, est représenté,en BCD (dit BCD 8421), par son code

binaire pur sur quatre bits.ex. :

9310=1001 0011 BCD attention 1001 0011BCD < > 1001 0011 2=9∗163 10=14710

III.A.7 Codage binaire réfléchi : code GrayUtilisé, par exemple, pour numéroter des positions successives par un code ne variant que par un seul digit dans sa

progression. Ceci différencie ce code du décimal ou du binaire pur qui, en passant par exemple de la 9ième à la 10ième position voient deux digits changer simultanément :

Exemple : en décimal 09 → 10 ou en binaire pur 1001 → 1010alors qu'un seul digit change pour le code Gray : Même exemple en Code Gray 1101 → 1111

Binaire pur Binaire réfléchi (code gray)

23 22 21 20

a3 a2 a1 a0 r3 r2 r1 r0

0 0 0 0 0 0 0 0

0 0 0 1 0 0 0 1

0 0 1 0 0 0 1 1

0 0 1 1 0 0 1 0

0 1 0 0 0 1 1 0

0 1 0 1 0 1 1 1

0 1 1 0 0 1 0 1

0 1 1 1 0 1 0 0

1 0 0 0 1 1 0 0

1 0 0 1 1 1 0 1

1 0 1 0

1 0 1 1

1 1 0 0

1 1 0 1

1 1 1 0

1 1 1 1

F128_Outils-Bases-Automatismes_12.odt Page 20 sur 25

Page 21: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

III.A.8 Arithmétique binaire

Les quatre opérations arithmétiques de base sont les suivantes :

AdditionRemarque : Ne pas confondre l'addition arithmétique avec la fonction logique OU inclusif utilisant le même

symbole "+".

Addition binaire somme retenue

0 + 0 0 0

0 + 1 1 0

1 + 0 1 0

1 + 1 0 1

Exemples :1+1+1= 10 + 1 = 11

1

1 0+ 1 1 ____ 10 1

Soustraction

Soustraction binaire différence retenue

0 - 0 0 0

0 - 1 1 1

1−0 1 0

1−1 0 0

Multiplication et Division

F128_Outils-Bases-Automatismes_12.odt Page 21 sur 25

La multiplication binaire est réalisée simplement en effectuant une addition de nombres binaires décalés vers la gauche.

1011101

115

==

10110000

1011

110111 = 55

La division binaire est réalisée en effectuant une suite de soustractions de nombres binaires décalés vers la droite.

1011101

(11)

(5)

0011

110111 (55) 101

000

0111101

0101101

000

Page 22: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

Une autre opération : la comparaison

Soient deux nombres A et B à comparer; ai et bi les bits de rang "i" de ces nombres. Un comparateur fournit en sorties trois informations : plus Grand (SG), plus Petit (SP) et Egal (SE).

a b a < b a = b a > b

0 0

0 1

1 0

1 1

III.B Nombres entiers relatifsIl s'agit de coder des nombres dits Signés (Signed)

III.B.1 Codage décimalUtilisation d'un symbole appelé "signe", + ou -, précédant la valeur absolue du nombre codé.

ex.: +242 -14 etc...

III.B.2 Codage binaire en complément à 2L'intérêt du codage en complément à 2 réside dans le fait que la soustraction entre nombres codés en binaire pur est remplacée par une addition au premier nombre avec le second qui est codé en complément à 2; il n'est donc pas nécessaire d'avoir un circuit spécifique pour la soustraction.

Le codage binaire en complément à 2 va consacrer le bit de poids fort au codage du signe et les autres bits vont servir à coder la valeur absolue. En conséquence un nombre signé N est représenté par sa valeur absolue ∣N∣ si N>0 et par son complément à 2 si N<0. Si le format pour exprimer un nombre signé N est limité à n bits, le nombre de combinaison possible est 2n, soit pour N un intervalle tel que : -2n-1 ≤ N ≤ 2n-1 - 1

exemple pour N limité à 4 bits

Bit de signe

Valeur absolue

Nombre décimal signé en complément à 2

23 22 21 20 Poids du bits de signe

Valeur absolue

Nombre signé

0 1 1 1 0 x (-23) + 7 =

0 1 1 0 0 x (-23) + 6 =

0 1 0 1 0 x (-23) + 5 =

0 1 0 0 0 x (-23) + 4 =

0 0 1 1 0 x (-23) + 3 =

0 0 1 0 0 x (-23) + 2 =

0 0 0 1 0 x (-23) + 1 =

0 0 0 0 0 x (-23) + 0 = 0

1 1 1 1 1 x (-23) + 7 =

1 1 1 0 1 x (-23) + 6 =

1 1 0 1 1 x (-23) + 5 =

1 1 0 0 1 x (-23) + 4 =

1 0 1 1 1 x (-23) + 3 =

1 0 1 0 1 x (-23) + 2 =

1 0 0 1 1 x (-23) + 1 =

1 0 0 0 1 x (-23) + 0 =

F128_Outils-Bases-Automatismes_12.odt Page 22 sur 25

N>0

N<0

Page 23: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

Pour coder en complément à 2 à 2 sur 8 bits (un octet) il faut :• pour le bit de poids forts ici b7

si N >= 0 => bit de poids fort b7 = 0sinon N<0 => bit de poids fort b7 = 1

• pour les 7 autres bits b6 à b0, ils vont servir au codage de la valeur absolue suivant la procédure ci-dessous :

entier positif ⇒ b6 à b0 : code binaire pur de la valeur absolueentier négatif ⇒ a) coder en binaire la valeur absolue du nombre décimal

b) inverser tous les bits; c'est la complémentation à 1c) additionner 1 au complément à 1 obtenue précédemment

Les étapes b) et c) constitue l'opération de Complémentation à 2.

exemple : (- 14)10 à coder sur 8 bits

a) bit b7 =1 b) valeur absolue 000 1110

c) complément à 1 111 0001d) additionner +1 111 0010

resultat (- 14)10 = (1111 0010)2/

procédure rapide : si l'entier est négatif, ajouter 256 (correspondant à l'étendue sur 8 bits) et coder en binaire pur :(- 14)10 + 256 = 242 = 15 . 16 + 2 = (F2)16 = (1111 0010)2/

III.C Nombres réelsMême représentés en complément à 2 sur 8 octets, les entiers relatifs sont limités à une valeur absolue de l'ordre de

9 . 1018.Pour le calcul sur les grands nombres entiers ou sur les nombres décimaux, plusieurs normes pour la représentation

des nombres réels sur ordinateur sont utilisées :

norme IEEE-754. : codage de la représentation binaire scientifique en virgule flottante

± ×1,mmmm....mmmm 2eeeee...eeeee où m et e sont des 0 ou 1

mmmm....mmmm) est la mantisse eeeee...eeeee) est l'exposant( (

Trois formats de codage, pour la famille des µP Intel : les deux premiers pour les résultats, le dernier pour les calculs successifs sans perte de précision pour le résultat final.

précision signe Exposant signé Partie fractionnaireou mantisse

Simple précision 1 8 bits 23 bits

double précision 1 11 bits 52 bits

précision étendue 1 15 bits 64 bits

Exemple : Codage de (121,488)10

On écrit la partie entière du nombre en binaire , somme des puissances de 2 entières positives(121)10 = (0111 1010)2

De même pour la partie décimale, en somme des puissances de 2 entières négatives(0,488)10

0,488 x 2 = 0, 976 soit a-1 = 0 et r1= 0,9760,976 x 2 = 1, 952 soit a-2 = 1 et r2= 0,952

F128_Outils-Bases-Automatismes_12.odt Page 23 sur 25

Page 24: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

0,952 x 2 = 1, 904 soit a-3 = 1 et r3= 0,9040,904 x 2 = 1, 808 soit a-4 = 1 et r4= 0,8080,808 x 2 = 1, 616 soit a-5 = 1 et r5= 0,6160,616 x 2 = 1, 232 soit a-6 = 1 et r6= 0,2320,232 x 2 = 0, 464 soit a-7 = 0 et r7= 0,464

on a donc (0,488)10= 0 . 2-1 + 1 . 2-2 + 1 . 2-3 + 1 . 2-4 + 1 . 2-5 + 1 . 2-6 + 0 . 2-7 etc.... = (0111 1100 1110 1101 1001 .....)2

On obtient 121,488 = 0111 1010 , 0111 1100 1.... que l'on normalise en mettant la virgule après le premier 1, ce qui revient, en binaire, à multiplier 6 fois par 2 soit (26 ) avec (6)10 =(110)2 .

121,488 = +1,111010 0111 1100 1110 1101 1001.... × 2110

Le bit avant la virgule est toujours à 1; il n'est donc pas nécessaire de le coder. La mantisse et l'exposant sont ensuite codés suivant le nombre de bits et les règles liés au format désiré.

Exemple en simple précision IEEE 754 :

précision signe Exposant signé Partie fractionnaireou mantisse

Simple précision 31 30 … 23 22 ….. 0

0 00000110 11101001111100111011011$ 74 F9 DB 06

Remarque : La précision du nombre réel codé est liée au nombre de bits réservés à la mantisse; alors que le plus grand nombre représentable dépend du nombre de bits réservés à l'exposant.

F128_Outils-Bases-Automatismes_12.odt Page 24 sur 25

Page 25: OUTILS de BASE des AUTOMATISMES · I.A Structure d'un SAP Dans un système automatisé de production, on peut mettre en évidence les trois parties : Partie Opérative (PO), Partie

IV - Fonctions fondamentales : les masques

IV.A Forçage de bits à 0 :ET logique (AND) entre motsTable : 0 • 0 = 0 0 • 1 = O 1 • 0 = 0 1 • 1 = 1

Forçage à 0 de certains bits (définis par un "0" dans le masque) d'un mot sans faire varier les autres bits du mot :

Exemple : Le mot est l'image de quatre capteurs dont on veut tester l'état de certains.

IV.B Forçage de bits à 1 :OU inclusif (OR) entre motsTable : 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 1

Forçage à 1 de certains bits (définis par un "1" dans le masque) d'un mot à modifier sans faire varier les autres bits :

Exemple : Le mot est le Registre Code Condition d'un processeur

IV.C OU exclusif (XOR) entre motsTable : 0 ⊕ 0 = 0 0 ⊕ 1 = 1 1 ⊕ 0 = 1 1 ⊕ 1 = 0

Force le changement (de "0" à "1" et de "1" à "0") de certains bits (définis par un "1" dans le masque) d'un mot sans faire varier les autres bits du mot initial :

Exemple

F128_Outils-Bases-Automatismes_12.odt Page 25 sur 25