cours02_introduction à la logique

74
Introduction à la logique

Upload: wassim-sn

Post on 23-Jun-2015

128 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Cours02_Introduction à la logique

Introduction à la logique

Page 2: Cours02_Introduction à la logique

2

Introduction aux fonctions logiques

Systèmes binaires¤ Deux états fondamentaux et distincts;¤ Vrai/Faux, Marche/Arrêt, Oui/Non.

Par convention:¤ Un état est représenté par « 1 »;¤ L’autre est représenté par « 0 ».

Page 3: Cours02_Introduction à la logique

3

La logique Booléenne

En 1847, George Boole invente une algèbre pour traiter les variables binaires.¤ Il écrira « The Mathematical

Analysis of Logic », Cambridge,

Il définit 3 opérateurs de base, ainsi qu’une foule de règles et de postulats.

Page 4: Cours02_Introduction à la logique

4

Types de représentation

Les fonctions logiques peuvent être représentées de plusieurs façons:¤ Équations logiques¤ Tables de vérités¤ Diagrammes échelle (Ladder)

Page 5: Cours02_Introduction à la logique

5

Types de représentation

Équations logiques¤ Reposent sur 3 opérateurs de base:

ET, OU, NON Toutes les équations logiques sont

formées de ces 3 opérateurs

¤ Nous verrons ces équations dans quelques minutes

Page 6: Cours02_Introduction à la logique

6

Types de représentation

Tables de vérités¤ Tables qui énumèrent toutes les

combinaisons possibles d'entrées, et les sorties correspondantes.

¤ Le nombre de colonnes est la sommes du nombre d'entrée et de sortie

¤ Pour "N" entrées, le nombre de lignes est 2N

Exemple:3 entrées et 1 sorties4 colonnes et 8 lignes

Page 7: Cours02_Introduction à la logique

7

Types de représentation

Tables de vérités3 entrées et 1 sorties4 colonnes et 8 lignes

Chaque ligne est une équation logique

Page 8: Cours02_Introduction à la logique

8

Types de représentation

Diagrammes échelle (Ladder)

Page 9: Cours02_Introduction à la logique

9

Types de représentation

Équations logiques¤ Reposent sur 3 opérateurs de base:

ET, OU, NON Toutes les équations logiques sont

formées de ces 3 opérateurs

Page 10: Cours02_Introduction à la logique

10

Fonction logique NON

En anglais: NOTReprésentation:

¤ F = A ou F = /A

Entrée Sortie

A F

0 1

1 0

Table de vérité

A F

Symbole graphique

Page 11: Cours02_Introduction à la logique

11

Fonction logique ET

En anglais: ANDReprésentation:

¤ F = A * B ou A • B ou AB

Entrée Sortie

F

1

Table de vérité

AB

0 0

1

1

11

0

0

0

0

0

AF

Symbole graphique

B

Page 12: Cours02_Introduction à la logique

12

Fonction logique OU

En anglais: ORReprésentation:

¤ F = A + B

Entrée Sortie

F

1

Table de vérité

AB

0 0

1

1

11

0

1

1

0

0

AF

Symbole graphique

B

Page 13: Cours02_Introduction à la logique

13

Fonction logique NON-ET

En anglais: NANDReprésentation:

¤ F = A * B

Entrée Sortie

F

0

Table de vérité

AB

0 0

1

1

11

0

1

1

1

0

AF

Symbole graphique

B

Page 14: Cours02_Introduction à la logique

14

Fonction logique NON-OU

En anglais: NORReprésentation:

¤ F = A + B

Entrée Sortie

F

0

Table de vérité

AB

0 0

1

1

11

0

0

0

1

0

AF

Symbole graphique

B

Page 15: Cours02_Introduction à la logique

15

Fonction OU-EXCLUSIF

En anglais: EXORReprésentation:

¤ F = A B

Entrée Sortie

F

0

Table de vérité

AB

0 0

1

1

11

0

1

1

0

0

AF

Symbole graphique

B

/B*A

B*/A

/B*A+B*/A

Page 16: Cours02_Introduction à la logique

16

Fonction NON OU-EXCLUSIF

En anglais: EXNORReprésentation:

¤ F = A B

Entrée Sortie

F

1

Table de vérité

AB

0 0

1

1

11

0

0

0

1

0

AF

Symbole graphique

B

/B*/A

B*A

/B*/A+B*A

Page 17: Cours02_Introduction à la logique

17

Fonctions à 2 variables

Il existe 16 fonctions logiques possibles avec 2 variables.¤ Deux variables permettent 4 combinaisons

(22) 00, 01, 10, 11

¤ Ces 4 combinaisons donnent 16 fonctions (24)

F0, F1, … F15

Page 18: Cours02_Introduction à la logique

18

Fonctions à 2 variables

16 fonctions logiques avec 2 variables.

A F0

0 0

0 0

B

0

1

1

1

0

1

0

0

F1

1

0

0

0

F2

0

1

0

0

F3

1

1

0

0

F4

0

0

1

0

F5

1

0

1

0

F6

0

1

1

0

F7

1

1

1

0

A F8

0 0

0 0

B

0

1

1

1

0

1

0

1

F9

1

0

0

1

F10

0

1

0

1

F11

1

1

0

1

F12

0

0

1

1

F13

1

0

1

1

F14

0

1

1

1

F15

1

1

1

1

Page 19: Cours02_Introduction à la logique

19

Fonctions à 2 variables

A F0

0 0

0 0

B

0

1

1

1

0

1

0

0

F1

1

0

0

0

F2

0

1

0

0

F3

1

1

0

0

F4

0

0

1

0

F5

1

0

1

0

F6

0

1

1

0

F7

1

1

1

0

A F8

0 0

0 0

B

0

1

1

1

0

1

0

1

F9

1

0

0

1

F10

0

1

0

1

F11

1

1

0

1

F12

0

0

1

1

F13

1

0

1

1

F14

0

1

1

1

F15

1

1

1

1

Page 20: Cours02_Introduction à la logique

20

Fonctions à 3 variables

Il existe 256 fonctions logiques possibles avec 3 variables.¤ Trois variables permettent 8 combinaisons

(23) 000, 001, 010, 011, 100, 101, 110, 111

¤ Ces 8 combinaisons donnent 256 fonctions (28)

F0, F1, … F255

¤ Pas très convivial !

Page 21: Cours02_Introduction à la logique

21

Fonctions logiques utilisant des interrupteurs

En électronique, on représente les fonctions logiques avec des diagrammes d'échelle.

En automatisation, on utilise des interrupteurs et des relais pour représenter les fonctions logiques.

Page 22: Cours02_Introduction à la logique

22

Fonction logique NON

Interrupteur normalement fermé

V

A

Lampe

Lampe A

Page 23: Cours02_Introduction à la logique

23

Fonction logique ET

Utilise deux interrupteurs normalement ouvert en séries.

V

A

Lampe

B

Lampe A B

Page 24: Cours02_Introduction à la logique

24

Fonction logique OU

Utilise deux interrupteurs normalement ouvert en parallèles.

V

A

Lampe

B

Lampe A B

Page 25: Cours02_Introduction à la logique

25

Fonction logique NON-ET

Utilise deux interrupteurs normalement fermés en parallèles.

V

A

Lampe

B

Lampe AB A B

Page 26: Cours02_Introduction à la logique

26

Fonction logique NON-OU

Utilise deux interrupteurs normalement fermés en séries.

V

A

Lampe

B

Lampe A B A B

Page 27: Cours02_Introduction à la logique

27

Fonction OU-EXCLUSIF

Utilise deux interrupteurs à deux contacts

V

A

Lampe

A B

B

LampeABABAB

Page 28: Cours02_Introduction à la logique

28

Fonction NON OU-EXCLUSIFUtilise deux interrupteurs à deux contacts

V

A

Lampe

A B

B

Lampe A B A B AB

Page 29: Cours02_Introduction à la logique

29

Fonctions logiques utilisant des relaisEn automatisation, on utilise les relais

pour réaliser des fonctions logiques.Le relais est une composante

électromécanique.

AA A

Contactnormalement

ouvert

Bobine Contactnormalement

fermé

Page 30: Cours02_Introduction à la logique

30

Fonction logique NON

Relais avec un contact normalement fermé

V

b

B

V++

LampeB

Bobine d'entrée Diagramme en échelle (Ladder)

Page 31: Cours02_Introduction à la logique

31

Fonction logique ET

Utilise 2 relais avec des contacts N.O. en séries.

V

c

C

V++

LampeC

Bobines d'entrée Diagramme en échelle (Ladder)

V

d

D

D

Page 32: Cours02_Introduction à la logique

32

Fonction logique OU

Utilise 2 relais avec des contacts N.O. en parallèles.

V

e

E

V++

Lampe

E

Bobines d'entrée Diagramme en échelle (Ladder)

V

f

F

F

Page 33: Cours02_Introduction à la logique

33

Fonction logique NON-ET

Utilise 2 relais avec des contacts N.F. en séries.

i

I

V++

Lampe

I

Bobines d'entrée Diagramme en échelle (Ladder)

j

J

J

V

V

Page 34: Cours02_Introduction à la logique

34

Fonction logique NON-OU

Utilise 2 relais avec des contacts N.F. en parallèles.

V

g

G

V++

LampeG

Bobines d'entrée Diagramme en échelle (Ladder)

V

h

H

H

Page 35: Cours02_Introduction à la logique

35

Fonction OU-EXCLUSIF

Lampe = K L = /K.L + K./L

V

k

K

V++

Lampe

K

Bobines d'entrée Diagramme en échelle (Ladder)

V

l

L

K

L

L

Page 36: Cours02_Introduction à la logique

36

Fonction NON OU-EXCLUSIF

Lampe = M N = M.N + /M./N

V

m

M

V++

Lampe

M

Bobines d'entrée Diagramme en échelle (Ladder)

V

n

N

M

N

N

Page 37: Cours02_Introduction à la logique

37

Règles, postulats et théorèmes¤ Utiles pour la simplification des équations

logiques !

L’algèbre Booléenne

Page 38: Cours02_Introduction à la logique

38

Fermeture:¤ Si A et B sont des variables Booléennes,

alors A+B, A*B sont aussi des variables Booléennes.

Commutativité¤ A + B = B + A¤ A * B = B * A

L’algèbre BooléenneRègles, postulats et théorèmes

Page 39: Cours02_Introduction à la logique

39

Associativité¤ A + (B + C) = (A + B) + C¤ A * (B * C) = (A * B) * C

Distributivité¤ ET/OU: A(B + C) = AB + AC¤ OU/ET: A+(B*C) = (A+B)*(A+C)

L’algèbre BooléenneRègles, postulats et théorèmes

Page 40: Cours02_Introduction à la logique

40

L’algèbre Booléenne

Idempotence¤ A + A = A¤ A * A = A

Complémentarité¤ A + A = 1¤ A * A = 0

Règles, postulats et théorèmes

Page 41: Cours02_Introduction à la logique

41

L’algèbre Booléenne

Identités remarquables¤ 1 + A = 1 et 1 * A = A¤ 0 + A = A et 0 * A = 0

Distributivité interne¤ A + (B + C) = (A + B) + (A + C)¤ A * (B * C) = (A * B) * (A * C)

Règles, postulats et théorèmes

Page 42: Cours02_Introduction à la logique

42

L’algèbre BooléenneRègles et postulats

Page 43: Cours02_Introduction à la logique

43

L’algèbre BooléenneRègles, postulats et théorèmes

Page 44: Cours02_Introduction à la logique

44

L’algèbre BooléenneRègles, postulats et théorèmes

Page 45: Cours02_Introduction à la logique

45

Table de vérité versusdiagramme échelle

Pour une table de vérité donnée, nous pouvons trouver l’équation logique et le diagramme échelle correspondant

Il faut utiliser l’algèbre de Boole pour simplifier.

Page 46: Cours02_Introduction à la logique

46

Exemple

Trouver l’équation de S.

0

C

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

B A S

Entrées Sortie

0

0

1

1

1

1

0

0

Page 47: Cours02_Introduction à la logique

47

Exemple

Solution:¤ On construit l’équation de

S en écrivant tous les termes donnant S=1.

¤ Ainsi, S = 1: si C=0 et B=1 et A=0; ou si C=0 et B=1 et A=1; ou si C=1 et B=0 et A=1; ou si C=1 et B=1 et A=0.

0

C

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

B A S

Entrées Sortie

0

0

1

1

1

1

0

0

Page 48: Cours02_Introduction à la logique

48

Exemple

Solution pour S=1. si C=0 et B=1 et A=0; ou si C=0 et B=1 et A=1; ou si C=1 et B=0 et A=1; ou si C=1 et B=1 et A=0.

On peut donc écrire:¤ S = /C.B./A + /C.B.A +

C./B.A + C.B./A

0

C

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

B A S

Entrées Sortie

0

0

1

1

1

1

0

0

Page 49: Cours02_Introduction à la logique

49

Exemple

S = /C.B./A + /C.B.A + C./B.A + C.B./AOn peut simplifier:

¤ S = /C.B.(/A+A) + C./B.A + C.B./A

¤ S = /C.B.(1) + C./B.A + C.B./A

¤ S = /C.B + C./B.A + C.B./A

¤ S = /C.B + C.(A B) "ou-exclusif"

Page 50: Cours02_Introduction à la logique

50

Exemple

S = /C.B./A + /C.B.A + C./B.A + C.B./AOn peut simplifier:

¤ S = /C.B./A + C.B./A + /C.B.A + C./B.A

¤ S = B./A.(/C+C) + /C.B.A + C./B.A

¤ S = B./A.(1) + /C.B.A + C./B.A

¤ S = B./A + /C.B.A + C./B.A¤ S = B./A + A.(C B) "ou-exclusif"

Page 51: Cours02_Introduction à la logique

51

Exemple

Inspection visuelle ?

0

C

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

B A S

Entrées Sortie

0

0

1

1

1

1

0

0

S = /C.B + C./B.A + C.B./AS = /C.B + C.(A B)

S = B./A + /C.B.A + C./B.AS = B./A + A.(C B)

Page 52: Cours02_Introduction à la logique

52

Si nous utilisions des relais...S = /C.B + C./B.A + C.B./A = C.(/B.A + B./A) + /C.B

Page 53: Cours02_Introduction à la logique

53

La simplification des équations

La simplification est essentielle.¤ On veut avoir le circuit le plus simple

possible...

La simplification peut être un processus long si le système est complexe.

Heureusement, il existe des techniques simples pour simplifier.

Page 54: Cours02_Introduction à la logique

54

Méthodes de simplification

Il est possible d ’obtenir directement une équation sous sa forme simplifiée en utilisant une méthode de simplification graphique.

Méthodes de simplification graphique:¤ Tables de Karnaugh¤ Table de Mahoney

Page 55: Cours02_Introduction à la logique

55

Table de Karnaugh

Représentation de la table de vérité sous forme graphique.

Nombre de cases = nombre de lignes de la table de vérité.¤ Multiple de 2n (1, 2, 4, 8, 16, ...)

n = Nombre d ’entrées

Page 56: Cours02_Introduction à la logique

56

Table de Karnaugh

Avec n = 2:¤ Entrées B et A¤ 4 cases

0 . 1 .

2 . 3 .

AB 0 1

0

1

Page 57: Cours02_Introduction à la logique

57

Table de Karnaugh

Avec n = 3:¤ Entrées C, B et A¤ 8 cases

BA00 01 11 10

0

1

C

0 1 3 2

4 5 7 6

Page 58: Cours02_Introduction à la logique

58

Table de Karnaugh

Avec n = 4:¤ Entrées D, C, B et A¤ 16 cases

BA00 01 11 10

00

01

11

10

DC

0 1 3 2

4 5 7 6

12 13 15 14

8 9 11 10

Page 59: Cours02_Introduction à la logique

59

Exemple (Karnaugh)

0

C

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

B A S

Entrées Sortie

0

0

1

1

1

1

0

0

BA00 01 11 10

0

1

C

0 1 3 2

4 5 7 6

0

0

0

1

1

0

1

1

TABLE DE VÉRITÉ

TABLE DE KARNAUGH

Page 60: Cours02_Introduction à la logique

60

Table de Karnaugh

À partir de la table, on simplifie en groupant les 1 adjacents.

Les 1 adjacents sont mis en évidence par l'ordre utilisé pour former la table

La taille d’un groupe est un multiple de 2k (1, 2, 4, 8, ...).

Le groupe est soit rectangulaire ou carré.

Page 61: Cours02_Introduction à la logique

61

BA00 01 11 10

0

1

C

0 1 3 2

4 5 7 6

0

0

0

1

1

0

1

1

Exemple (Karnaugh)

Simplification: S = /C.B + B./A + C./B.A

/C.B.A+/C.B./A = /C.B

/C.B./A+C.B./A=B./AC./B.A

Page 62: Cours02_Introduction à la logique

62

Table de Karnaugh

Former les plus gros groupes possibles.¤ Termes plus simples.

Un 1 peut faire partie de plusieurs groupes.

Page 63: Cours02_Introduction à la logique

63

BA00 01 11 10

00

01

11

10

DC

0 1 3 2

4 5 7 6

12 13 15 14

8 9 11 10

Exemple (Karnaugh)

Les 1 des bords extrêmes sont adjacents.¤ La table se referme sur elle même.

1 10 1/C./A

/C.B

/D.C./B.A 0 01 0

0 00 0

1 10 1

Page 64: Cours02_Introduction à la logique

64

Table de Mahoney

La table de Mahoney est semblable à celle de Karnaugh pour 2 variables

A

B

F0A B F0

0 0

0 1

1 0

1 1

A

B

Page 65: Cours02_Introduction à la logique

65

Table de Mahoney

Pour 3 variables, la table est composée de celle pour 2 variables et de son miroir

A

B

F1 A

B

A A

C C

Charnière

Page 66: Cours02_Introduction à la logique

66

C

0 1 5 4

2 3 7 6

C

B

B

AA AA

0

1

0

1

1

0

0

1

Exemple (Mahoney)

0

C

0

0

0

1

1

1

1

0

0

1

1

0

0

1

1

0

1

0

1

0

1

0

1

B A S

Entrées Sortie

0

0

1

1

1

1

0

0

TABLE DE VÉRITÉTABLE DE MAHONEY

Page 67: Cours02_Introduction à la logique

67C

0 1 5 4

2 3 7 6

C

B

B

AA AA

0

1

0

1

1

0

0

1

Exemple (Mahoney)

Rappel: S = /C.B + B./A + C./B.A

/C.B.A+/C.B./A = /C.B /C.B./A+C.B./A=B./A

C./B.A

Page 68: Cours02_Introduction à la logique

68

Exemples de table de Mahoney

Avec n = 3:¤ Entrées C, B et A¤ 8 cases

C

0 1 5 4

2 3 7 6

C

B

B

AA AA

Page 69: Cours02_Introduction à la logique

69

Exemples de table de Mahoney

Avec n = 4:¤ Entrées D, C, B et A¤ 16 cases

C

10 11 15 14

8 9 13 12

C

B

B

AA AA

0 1 5 4

2 3 7 6

B

BD

D

Page 70: Cours02_Introduction à la logique

70

Exemples de table de Mahoney

Avec n = 5:¤ Entrées E, D, C, B et A¤ 32 cases

E

10 11 15 14

8 9 13 12

C

B

B

AA AA

0 1 5 4

2 3 7 6

B

B

C

30 31 27 26

28 29 25 24

C

20 21 17 16

22 23 19 18

D

D

AA AA

E

C

Page 71: Cours02_Introduction à la logique

71

Exemples de table de Mahoney

Avec n = 6:¤ 64 cases

10 11 15 14

8 9 13 12

B

B

AA AA

0 1 5 4

2 3 7 6

B

B

30 31 27 26

28 29 25 24

20 21 17 16

22 23 19 18

D

D

AA AA

E

34 35 39 38

32 33 37 36

C

B

B

40 41 45 44

42 43 47 46

B

B

C

54 55 51 50

52 53 49 48

C

60 61 57 56

62 63 59 58

E

D

D

F

F

C

Page 72: Cours02_Introduction à la logique

72

Les états indifférents (don’t care)

Ils sont représentés par des X

En sortie, ils correspondent à des combinaisons d’entrées pour lesquelles la sortie n’a pas été définie.¤ Ex.: Un réservoir ne peut être à la fois vide

et plein.

Page 73: Cours02_Introduction à la logique

73

Contrôle de niveau d’un réservoir

M

Pompe 1

M

Pompe 2

h

b

s

Capteur de niveau hauth = 1 plein

Capteur de niveau basb = 0 vide Sélecteur de pompe

s = 0 Pompe 1s = 1 Pompe 2

Page 74: Cours02_Introduction à la logique

74

Contrôle de niveau ...

Si réservoir plein: Aucune pompe en marche;

Si réservoir vide: Les 2 pompes en marche;

Si réservoir ni vide, ni plein: Faire fonctionner la pompe sélectionnée par le sélecteur « s ».