Sunteți pe pagina 1din 62

Le Millenium 3 pour les nuls !!

Phase 2 : Les blocs fonction


Document rdig par Pascal Bigot pour le site et le forum APPER

Introduction :
Le premier tutoriel vous a normalement permis de prendre en main les diverses manipulations de
base de latelier M3, et il est maintenant le moment de comprendre quoi sert et comment marche
chaque bloc fonction afin de les utiliser au mieux dans votre programme.

Pour attaquer sereinement cette partie du tutoriel, il est impratif davoir acquis tout ce qui est
expliqu dans la phase 1 (sauf partie raccourci clavier). Cette partie a uniquement pour but de
dcrire lensemble des fonctions disposition dans latelier Millenium 3, afin que vous sachiez ce
qui existe sans avoir tester une par une chacune des fonctions, et que vous puissiez faire le bon
choix de bloc selon vos besoins. Notons tout de mme que le niveau global du document est un peu
plus technique que dans la phase prcdente.
Dans ce tutoriel, jintroduis galement des explications spcifiques la logique boolenne car cest
une notion quil faut imprativement maitriser si lon souhaite crer des programmes un minimum
volu (comme ceux dune rgulation solaire).
La dernire partie qui est un peu dtaille est la partie sur le SFC. Bien que le graphe SFC soit assez
peu utile dans le cadre de la rgulation solaire, il ma sembl important den expliquer les grandes
lignes pour ceux qui ne feraient pas que de la rgulation avec leur M3.

1
Table des matires
Les blocs fonction en gnral ................................................................................................... 4
Les blocs IN ............................................................................................................................... 4
Les entres TOR (DI et Filtered DI)................................................................................................ 4
Les entres ANALOGIQUES/NUMERIQUES (AI, Filtered AI, NUM IN, XA AI)................... 5
Les entres Analogiques ................................................................................................................................ 5
Les entres Numriques................................................................................................................................. 7
Le bloc MARCHE et ARRET (CT ON et CT OFF) ...................................................................... 8
Le bloc constante NUMERIQUE (constante)................................................................................. 8
Le bloc Timer 1s................................................................................................................................ 8
Les boutons ........................................................................................................................................ 8
Autres (ETE/HIVER) ....................................................................................................................... 9
Les blocs OUT ........................................................................................................................... 9
La sortie TOR (DO) .......................................................................................................................... 9
Le rtro clairage .............................................................................................................................. 9
La sortie PWM .................................................................................................................................. 9
La sortie NUM OUT ....................................................................................................................... 10
La sortie XA ANA/PWM................................................................................................................ 10
Les blocs LOGIC et la logique boolenne .............................................................................. 11
Le ET Logique (bloc AND) ............................................................................................................ 11
Le OU Logique (bloc OR) .............................................................................................................. 12
Le NON Logique (bloc NOT)......................................................................................................... 14
Le NOR (NON OU) et le NAND (NON ET) ................................................................................. 16
Le OU EXCLUSIF (bloc XOR le shrif de lespace) .............................................................. 18
La fonction BOOLEENNE !! ......................................................................................................... 18
La fonction super BOOLEENNE !! .............................................................................................. 22
Les blocs FBD ......................................................................................................................... 24
Les TIMERS.................................................................................................................................... 24
Timer AC (retardateur) ................................................................................................................................ 24
Timer LI (clignoteur)................................................................................................................................... 26
Timer BW (impulsionel) ............................................................................................................................. 29
Timer BH (temporisateur) ........................................................................................................................... 30
Timer TOT (Totalisateur) ............................................................................................................................ 31
Les Afficheurs.................................................................................................................................. 34
Les Fonctions Mathmatiques ....................................................................................................... 35
Addition/Soustraction (ADD/SUB)............................................................................................................. 35
Multiplication/Division (MUL/DIV)........................................................................................................... 35
GAIN ........................................................................................................................................................... 36
Les Compteurs................................................................................................................................. 37
Compteur prslection (preset counter) .................................................................................................... 37
Compteur (counter) ..................................................................................................................................... 38

2
Compteur horaire (H-meter) ........................................................................................................................ 39
Les Comparateurs........................................................................................................................... 40
Comparateur simple..................................................................................................................................... 40
Comparateur fentre (compare in zone).................................................................................................... 40
Trigger de Schmitt ....................................................................................................................................... 41
Les liaisons srie.............................................................................................................................. 43
SL IN (entres liaison srie) ........................................................................................................................ 43
SL OUT (sorties liaison srie) ..................................................................................................................... 44
A propos des SL IN/SL OUT ...................................................................................................................... 44
Les Mmoires ............................................................................................................................. 44
Archives....................................................................................................................................................... 44
Min/Max ...................................................................................................................................................... 46
Les Autres ........................................................................................................................................ 47
Bascule RS (Set/Reset) ................................................................................................................................ 47
Tlrupteur (BISTABLE)............................................................................................................................ 47
Multiplexeur (MUX) ................................................................................................................................... 48
Arbre Cam (CAM bloc) ............................................................................................................................ 49
Status ........................................................................................................................................................... 50
Programmateur horaire (Time Prog) ........................................................................................................... 51
Convertisseur DEC=>BIN........................................................................................................................... 54
Convertisseur BIN=>DEC........................................................................................................................... 55
Les blocs FBD_C..................................................................................................................... 56
Gnralits ....................................................................................................................................... 56
Les plus utiles .................................................................................................................................. 56
Super boolen .............................................................................................................................................. 56
Timer A ....................................................................................................................................................... 57
Porte logique ET deux entres .................................................................................................................. 58
Porte logique OU deux entres ................................................................................................................. 58
Les blocs SFC .......................................................................................................................... 59
Ltape initiale, et ltape initiale r-initialisable......................................................................... 59
Ltape simple ................................................................................................................................. 60
La divergence en OU et la convergence en OU ............................................................................ 60
La divergence en ET et la convergence en ET.............................................................................. 60
Un graphe SFC simple .............................................................................................................. 60

3
Les blocs fonction en gnral
Un bloc fonction cest un bloc que lon pose sur la surface de cablage de latelier M3 et qui un
comportement spcifique. Les blocs sont regroups selon diffrentes catgories de leur type.

Les blocs IN
Dans cette catgorie on trouve tous les blocs qui servent dentre dans vos programmes. Les entres
peuvent tre tout ou rien (TOR) ou analogique (ANA).

Les entres TOR (DI et Filtered DI)


Alors, notre automate des entres et notre programme aussi, commencer par les entres
TOUT ou RIEN (TOR) standards et filtres.
Pour ce qui est de lentre TOR, rien de trs spcial raconter, puisque si lentre physique est
active, la sortie de ce bloc sera galement active !

La seule petite chose spciale de ce bloc, cest que vous pouvez modifier licne quil affiche, que
ce soit partir dune liste prdfinie, ou partir de vos propres images.

AVERTISSEMENT : Soyez intelligent lorsque vous voulez utiliser des images dans vos
programmes M3, car ceci peut vite provoquer des gros ralentissements de latelier.
Prenons un exemple courant : vous avez pris une photo de votre installation pour que ce soit tout
joli, et vous la placez dans votre programme. Votre photo issue de votre super appareil photo
numrique entre 3 et 8 Mga Pixels (voir plus) selon son ge va vous faire des clichs qui psent
plusieurs mga octets pour chacun. Si vous utilisez tel quel vos clichs dans latelier, cest la
brouette assure car vous demandez un atelier de programmation de traiter des grosses images
alors quil nest pas du tout fait pour a. Il est donc recommand de redimensionner vos images
avant de les utiliser dans latelier. Par exemple pour limage dun bloc dentre, de sortie, ou dune
MACRO, le format idal de votre photo doit tre de 36 pixels par 36 pixels.

Pour ce qui est de la fonction TOR filtre, celle-ci un peu plus dintelligence que la fonction TOR
standard.

Cette fois ci, nous avons une entre TOR qui ne passera 1 que si lentre physique de lautomate a
t active suffisamment longtemps, et repassera 0 que si elle a t inactive assez longtemps, en
fonction de la dure du filtrage.
Voici un chronogramme qui sert expliquer ceci :
E reprsente lentre physique de lautomate, S reprsente la sortie bloc DI filtr, et t la priode de
filtrage.

4
Ainsi on remarquera que :
1 : ltat de la sortie de notre bloc est en dcalage par rapport lentre physique
2 : si ltat de lentre physique passe fugitivement 1, sur un temps t infrieur au filtrage, la sortie
du bloc restera 0
3 : si lentre physique passe 0 fugitivement sur un temps t infrieur au filtrage, et que la sortie du
bloc tait 1 (cas non dessin dans le chronogramme)

Lintrt de cette fonction est donc de pouvoir filtrer dventuels sursauts de lentre dus des
perturbations lectriques ou des tats transitoires accidentels, sans que cela ne se ressente dans le
programme.
Bon il faut tre honnte, cette fonction sert rarement dans nos installations, mais il est bon de savoir
quelle existe (il y a peu de capteur tout ou rien dans nos installation, et ils ont peu de raison davoir
des sursauts).

Les entres ANALOGIQUES/NUMERIQUES (AI, Filtered AI, NUM IN,


XA AI)
Alors jai plac les entres analogiques et numriques dans le mme sous chapitre car pour moi
elles ont toute la mme utilit, elles nous permettent dutiliser autre chose que des 1 et des 0 dans
nos programme.

Les entres Analogiques


Dans cette catgorie on va ranger les blocs AI, Filtered AI, et XA AI.

Le bloc AI est lentre analogique de base, il est possible de le placer sur les plots dentres
capables d' accepter une entre analogique (diffrent selon le modle de M3 choisi).

Elle possde deux modes de paramtrage :


- le mode 0-10V
- le mode potentiomtre

Le mode 0-10 volts offre une fausse rsolution de 10 bits (valeur de 0 1023) sur la plage 0-10V.
Alors pourquoi je parle de fausse rsolution 10 bits? Eh bien parce que cest le cas. En fait
lorsquon est en mode 0-10V, la conversion tension dentre => valeur est effectue logiciellement,
et cela se traduit par une perte de rsolution. Daprs les tests faits par les membres du forum
APPER, il semblerait que cette conversion fasse tomber la rsolution en mode 0-10V un
quivalent de 8 bits (valeur de 0 255).

5
Le mode potentiomtre offre une vraie rsolution de 10 bits (valeur de 0 1023) sur la plage 0-
Tension dalim (12V ou 24V selon les modles de contrleurs)

Le bloc Filtered AI possde les mmes fonctions que lentre analogique de base, mais possde en
plus une fonction de filtrage sur le temps lui permettant notamment de lisser les perturbations
lectriques qui peuvent perturber la mesure.

Imaginons un premier cas ou lentre va subitement changer de valeur, nous obtiendrons le rsultat
suivant :

Filtrage d'une entre

25

20

15
valeur

Srie1
Srie2
10

0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31
temps

(En violet, la valeur de sortie de lentre analogique filtre, et en bleu la valeur de lentre
physique)
Dans ce cas, lentre analogique filtre va permettre une variation progressive jusqu' atteindre la
valeur relle de lentre.

Prenons maintenant le cas ou lentre relle va avoir un sursaut puis revenir sa valeur initiale.

6
Filtrage d'une entre 2

25

20

15
valeur

Srie1
Srie2
10

0
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33
temps

(En violet, la valeur de sortie de lentre analogique filtre, et en bleu la valeur de lentre
physique)

Dans ce cas, lentre analogique filtre va permettre de limiter limpact du pic dans le
comportement du programme.

Bien entendu lefficacit du filtrage va dpendre de son paramtrage. Dans le cas des installations
solaires, une frquence de coupure la plus petite possible sera tout fait satisfaisante car ce nest
pas un systme ou les variations ont besoin dtre peru rapidement. Un filtre avec une frquence de
coupure trs faible lisse un passage de 0 Vmax en 5 secondes environs, ce qui est tout fait
correcte vis--vis des vitesses de variations des tempratures pour le solaire.

Le bloc XA AI, est en fait un bloc spcial qui ne sutilise quavec lextension analogique XA 04 (et
peut tre aussi dautres extensions analogiques que je ne connais pas). Il na aucun paramtre car
cest lextension qui est paramtre la place du bloc.

Les entres Numriques


Dans le M3 nous navons quun seul bloc que je considre comme tant une entre numrique, cest
le NUM IN. Ce bloc ne vous sera utile que si vous utilisez des extensions de communication
(XN03/XN06, XN05). Cest le seul bloc qui peut tre pos sur les plots dentrs ajouts par ces
extensions. Ils nont pas de paramtrage et leur plage de valeur va de -32768 +32767.

7
Le bloc MARCHE et ARRET (CT ON et CT OFF)
Pour ces blocs, rien de trs extraordinaire raconter, puisque leur sortie ne varie jamais. Cest soit
ON, soit OFF en fonction du bloc choisi.

Seule petite chose noter, il est possible de les forcer en simulation ou en monitoring. Dans tous les
cas ces blocs vous seront rarement utiles en dehors de la mise au point de vos programmes.

Le bloc constante NUMERIQUE (constante)


Alors en voila un bloc trs utile, et qui sera un fidle compagnon de vos longues heures de
programmation, cest un bloc trs simple puisquil permet seulement de configurer une constante
numrique. Eh oui, il faut des valeurs de rfrence dans les programmes (60 max pour le ballon...
ou un peu plus, 0 pour le gel, etc)

Son paramtrage permet de configurer sa valeur entre -32768 +32767.

Le bloc Timer 1s
Voila encore un bloc trs simple. Pas de paramtrage, une seule sortie TOR, il ne fait que changer
dtat 2 fois par seconde (priode complte de 1 seconde).

Les boutons
L encore aucun grand mystre, puisquil sagit des entres correspondants aux boutons de la face
avant du M3.

La sortie de ces blocs est active lorsque le bouton correspondant de la face avant est appuy.
Les boutons sont principalement utiliss pour grer des affichages ou des modifications de
variables. Il est possible de poser plusieurs fois le mme bouton dans la surface de cblage sans que
cela ne pose problme.

8
De manire gnrale, il y quelques rgles auxquelles il faut faire attention sur lutilisation des
boutons. Si vous utilisez la modification de variable via les blocs DISPLAY ou TEXT, il faut viter
dutiliser le bouton Moins, plus OK ou Esc en mme temps. Le bouton OK permet dactiver/valider
la modification de variable, et le bouton Esc annule la modification effectue alors que les boutons
plus moins servent modifier la valeur.

Jai parl ici des DISPLAY et des TEXT, car lassociation boutons/afficheur est trs courante. Ces
blocs assez spciaux ne sont pas abords dans ce tutoriel car leur utilisation est dtaille dans un
tutoriel ddi.

Autres (ETE/HIVER)
La sortie du bloc t hiver sactive lorsque lon est en hiver (la notion t hiver est gr dans les
paramtres du M3, avec le changement dheure automatique)

Les blocs OUT


Dans cette catgorie, sans surprise on trouvera les blocs de sortie.

La sortie TOR (DO)


Cest la sortie tout ou rien de base, et trs certainement celle que vous utiliserez le plus tant donn
que, moins davoir une extension ou un modle sortie statique, les M3 nont que des sorties
TOR. Il ny a aucun paramtrage sur ce bloc, et comme vous vous en doutez (ou le savez dj),
lorsque lentre du bloc est active, le relais du M3 correspondant au plot sur lequel il est pos est
ferm.

Le rtro clairage
Ce bloc permet dactiver volontairement le rtro clairage du LCD de la face avant. Juste un petit
dtail propos dune chose que jai trop souvent vue. Il est inutile dactiver volontairement le rtro
clairage lorsquon appuie sur un bouton, car le M3 le fait naturellement.
Une bonne utilisation du rtro clairage est de lallumer ou de le faire clignoter lorsquon souhaite
attirer lil si une erreur ou une alerte est survenue dans le programme ( condition que le M3 soit
un endroit visible)

La sortie PWM
Cette sortie nest utilisable quavec les M3 possdant des sorties statiques (ex : XD26S). Elle
permet de sortir un signal PWM (Pulse Weight Modulation = Modulation de largeur dimpulsion)
avec une rsolution de 8 bits (256 valeurs) une frquence paramtrable dans le programme.

9
Je nexpliquerai pas ce quest le PWM, car si vous ne savez pas ce que cest, cest que vous nen
avez sans doute pas besoin. Pour les curieux je vous invite aller visiter cette page sur Wikipedia.

La sortie NUM OUT


Cest le seul bloc de sortie numrique. Ce bloc ne vous sera utile que si vous utilisez des extensions
de communication (XN03/XN06, XN05). Cest le seul bloc qui peut tre pos sur les plots de sortie
ajouts par ces extensions. Ils nont pas de paramtrables et leur plage de valeur va de -32768
+32767.

La sortie XA ANA/PWM
Le bloc XA out, est en fait un bloc spcial qui ne sutilise quavec lextension analogique XA 04 (et
peut tre aussi dautres extensions analogiques que je ne connais pas). Il na aucun paramtre car
cest lextension qui est paramtre la place du bloc.

10
Les blocs LOGIC et la logique boolenne
Alors attention ce chapitre sous son air tranquille est loin dtre le plus simple comprendre car la
logique boolenne est un monde part. Ici on va raisonner avec des 1 et des 0 (que lon peut aussi
traduire par VRAI et FAUX )
On va commencer doucement avec les fonctions ET (AND), OU (OR) et NON (NOT), qui sont les
fonctions les plus simples mais galement les plus importantes connaitre car ce sont les plus
utilises (les autres ont un intrt pour loptimisation ou la lisibilit pour ceux qui maitrisent)
Ensuite, nous verrons les fonctions NOR (NON OU), et NAND (NON ET) qui napportent rien de
trs compliqu alors que la fonction XOR (OU Exclusif) est un peu plus spciale.
En dernier, on verra un bloc qui se trouve dans longlet FBD mais qui tout fait sa place dans la
partie logique, puisquil sagit du bloc BOOLEEN.

Le ET Logique (bloc AND)


Alors comme on est dans un tutoriel pour les nuls, je vais tenter de vulgariser car si je vous dis
doffice 1 ET 1 = 1.je vais en perdre plus dun en route et ce nest pas le but. Alors quand on
parle de ET logique, on parle dune association de deux lments qui sont la condition la
ralisation dun troisime.
Prenons le cas dune installation solaire simple dont on souhaite piloter le circulateur :
Pour que le circulateur fonctionne il faut au minimum que :
- la T du capteur soit suprieur celle de leau contenue dans le ballon (on notera cette
condition TCaptOK)
- que la T de leau dans le ballon nait pas atteint la valeur maximum (mettons 60) (on
notera cette condition TBallonNonMax)

On aurait une quation du type :


TCaptOK ET TBallonNonMax = circulation en marche

Le ET logique cest donc a, lassociation de deux lments pour en dclencher un nouveau. Les
deux lments condition doivent obligatoirement tre prsents, et bien sur a marche pareil avec
plus dlments en entre (on le verra aprs, on va monter en puissance progressivement).

Entrons un peu plus dans le sujet du binaire avec ce quon appelle une table de vrit. Une table de
vrit est une table qui permet de reprsenter ltat de la sortie en fonction des tats des entres. Ici
je vais volontairement prendre le cas ou on a 4 entres pour coller au bloc AND de latelier M3

Entre 1 Entre 2 Entre 3 Entre 4 Sortie


0 0 0 0 0
1 0 0 0 0
0 1 0 0 0
1 1 0 0 0
0 0 1 0 0
1 0 1 0 0
0 1 1 0 0
1 1 1 0 0
0 0 0 1 0
1 0 0 1 0
0 1 0 1 0
1 1 0 1 0
0 0 1 1 0
1 0 1 1 0

11
0 1 1 1 0
1 1 1 1 1

Quobserve t' on ici ? Seule la dernire ligne donne une sortie vraie et on voit bien quil faut que les
4 autres conditions soient vraies pour que a marche. Nous allons donc tenter une petite exprience
dans latelier M3. Recrez ce petit programme et passez en mode simulation :

En cliquant sur les blocs DI, changez leurs tats et observez le comportement.
Voila ce quon obtient si les deux entre sont ON

Alors la, il y a de quoi se poser au moins une question pourquoi la sortie est ON si on na que 2
entre sur 4 ON ????
Ceci me permet de vous expliquer rapidement la notion de valeurs par dfaut des entres de blocs.
En effet, le logiciel sait quelle est la valeur par dfaut (et neutre) connecter virtuellement si
lutilisateur ne place aucun lien. Ainsi, lorsque le programme est en fonctionnement, les entres non
connectes du bloc ET sont par dfaut places ON. Si on reprend notre table de vrit, cela
correspond travailler uniquement sur les 4 dernires lignes (puisque les deux dernires sorties sont
toujours ON)

Entre 1 Entre 2 Entre 3 Entre 4 Sortie


0 0 1 1 0
1 0 1 1 0
0 1 1 1 0
1 1 1 1 1

Le OU Logique (bloc OR)


Allez, continuons les joyeusets qui embrouillent tout le monde avec la porte logique OU (OR).
Cette porte logique porte aussi bien son nom que la prcdente, puisque son but est de raliser un
OU entre deux lments.
Retrouvons notre exemple de tout lheure : une installation solaire et la gestion de son circulateur.
Tout lheure nous avions :

Pour que le circulateur fonctionne il faut au minimum que :

12
- la T du capteur soit suprieur celle de leau contenue dans le ballon (on notera cette
condition TCaptOK)
- que la T de leau dans le ballon nait pas atteint la valeur maximum (mettons 60) (on
notera cette condition TBallonNonMax)
Ajoutons cela une condition pour le faire tourner si la T du capteur approche un peu trop de 0C
- La T du capteur est infrieur ou = 0 (on notera cette condition GelCapteur)

Avant nous avions lquation :


TCaptOK ET TBallonNonMax = circulation en marche laquelle nous ajoutons le OU GelCapteur
ce qui nous donne :
(TCaptOK ET TBallonNonMax) OU GelCapteur = circulation en marche.

Comment on interprte tout a? Comme cela se lit. Avec les conditions telles quelles sont crites,
notre circulateur sera forcment en marche si le capteur est plus chaud que le ballon de stockage et
que ce ne dernier nest pas trop chaud, ou si la temprature du capteur est proche, gale ou infrieur
0.

Revenons dans le domaine du binaire avec la table de vrit du bloc OU.

Entre 1 Entre 2 Entre 3 Entre 4 Sortie


0 0 0 0 0
1 0 0 0 1
0 1 0 0 1
1 1 0 0 1
0 0 1 0 1
1 0 1 0 1
0 1 1 0 1
1 1 1 0 1
0 0 0 1 1
1 0 0 1 1
0 1 0 1 1
1 1 0 1 1
0 0 1 1 1
1 0 1 1 1
0 1 1 1 1
1 1 1 1 1

Alors oui cette fois ci nous navons quun seul 0, car la sortie du bloc est active ds quau moins
une des entres est active.
Allons maintenant jouer avec latelier M3 pour faire quelques tests :

13
Dans cet exemple, jai dessin des boites noires qui correspondent nos diffrentes conditions
afin de mieux se reprsenter la fonction en rapport avec lexemple que jai choisi tout en gardant un
programme simple comprendre.
Dans la capture que jai prise juste au dessus, on peut imaginer quon se situe dans un cas ou le
ballon nest pas temprature maximum, mais que ltat actuel ne permet pas de le chauffer. Ceci
est vrai la nuit ou si le ciel est couvert.
Simulons maintenant une baisse de la temprature extrieure qui va refroidir le capteur en dessus de
0, ce qui provoquera lactivation de la condition GelCapteur.

Et voila, notre OU fait son office, puisque le circulateur est en marche alors quon nest pas en train
de chauffer, ceci tant une solution pour viter le gel de linstallation (il en existe bien dautres hein,
ce nest quun exemple de travail)

Le NON Logique (bloc NOT)


Alors en voila un bloc qui est contrariant par nature, puisque son seul et unique objectif est de dire
NON (OFF) lorsquon a OUI (ON), et de dire OUI lorsquon a NON.

Lexemple ici est trs simple :

14
Voici le bloc dans ses deux tats possibles, et vous constatez donc quil porte bien son nom puisque
sa sortie est toujours loppos de son entre. Sa table de vrit est donc forcment trs simple elle
aussi :
Entre 1 Sortie
0 1
1 0

Essayons maintenant de le mettre en situation.


Imaginons que nous ayons une vanne 3 voies pilote par notre programme, dont la position est
dtermine par le fait que lon soit en surchauffe (vanne qui aura donc le rle de router le fluide
caloporteur vers un systme de dcharge. Ceci va quelque peu modifier notre programme puisque
pour le coup, notre circulateur devra continuer de fonctionner mme si la condition
TBallonNonMax est atteinte.
Commenons par rflchir notre quation logique :
Le circulateur devra fonctionner si :
- TCaptOK (T capteur > T ballon)
- Ou NON TBallonNonMax (quivaut TBallon > Maximum)
- Ou GelCapteur

Dans notre cas nous navons plus de condition ET, puisque chacune de nos conditions suffit faire
marcher le circulateur.
Lquation logique sera donc :

TCaptOK OU (NON TBallonNonMax) OU GelCapteur = marche Circulateur.


Au niveau du cblage voici ce quon obtient :

Ici nous somme dans ltat initial, ou lon a pas de quoi chauffer notre ballon, que a ne gle pas, et
quon nest pas en surchauffe (la T du ballon est bien infrieur au max autoris).

15
Si maintenant on ralise la condition NON TBallonNonMax (ou TBallonMax) on obtient la mise en
marche du circulateur :

Avec ce schma, si nous voulons commander une vanne de dcharge, nous utiliserons directement
la sortie du bloc NOT B08 comme sur le cblage suivant

Bien entendu ce schma nest donn que pour lexemple, et cette situation nen nest quune parmi
des dizaines possibles, mais il permet de montrer diffrentes associations de bloc logiques.

Le NOR (NON OU) et le NAND (NON ET)


Ici, aucune surprise si vous avez dj compris les 3 blocs prcdents, puisque le NOR revient
lassociation dun bloc OU et dun bloc NON, alors que le NAND est lassociation dun bloc ET et
dun bloc NON.

16
Pour avoir leurs tables de vrit, rien de plus simple, il suffit de prendre cette du bloc de base, et
dinverser ltat de la sortie :
Le NAND
Entre 1 Entre 2 Entre 3 Entre 4 Sortie
0 0 0 0 1
1 0 0 0 1
0 1 0 0 1
1 1 0 0 1
0 0 1 0 1
1 0 1 0 1
0 1 1 0 1
1 1 1 0 1
0 0 0 1 1
1 0 0 1 1
0 1 0 1 1
1 1 0 1 1
0 0 1 1 1
1 0 1 1 1
0 1 1 1 1
1 1 1 1 0

Le NOR
Entre 1 Entre 2 Entre 3 Entre 4 Sortie
0 0 0 0 1
1 0 0 0 0
0 1 0 0 0
1 1 0 0 0
0 0 1 0 0
1 0 1 0 0
0 1 1 0 0
1 1 1 0 0
0 0 0 1 0
1 0 0 1 0
0 1 0 1 0
1 1 0 1 0
0 0 1 1 0
1 0 1 1 0

17
0 1 1 1 0
1 1 1 1 0

Notons que ces blocs vous seront certainement plus utiles lorsque vous en serez loptimisation
pousse de votre programme, ou alors si vous tes un grand maitre de la logique boolenne et que
vous ne confondrez jamais un AND et un NAND.

Le OU EXCLUSIF (bloc XOR le shrif de lespace)


Alors je mexcuse pour tous ceux qui ne comprennent pas la blague du shrif de lespace, mais pour
moi cest une grande rfrence ma petite enfance et je ne pouvais simplement pas mempcher de
la faire (la rfrence vient dici, avec notre grand chanteur texte Bernard Minet)
Bref, le XOR est donc un ou exclusif, en gros cest un OU, mais qui naccepte pas que toutes ses
entres soient actives la fois cest soit lun, soit lautre mais PAS les deux !!
Voyons sa table de vrit :

Entre 1 Entre 2 Sortie


0 0 0
1 0 1
0 1 1
1 1 0

Trs honntement, jai rarement vu ce bloc utilis dans des programmes, et je ne vais pas pousser
son tude plus loin que a, car il reste un bloc tudier qui lui tout seul permet de raliser
(presque) tout ce que font les blocs logiques standard.

La fonction BOOLEENNE !!
Alors pour le coup, celle la va surement en perdre quelques un au dbut, mais accrochez vous un
peu car elle est trs utile !!

Prenons cet exemple compltement abstrait :

Et crivons son quation logique en commenant par le haut :


A et B sont connects un bloc OU nous avons donc pour commencer :
A OU B
Ensuite la sortie du OU est connect avec C un bloc ET, nous obtenons donc :
(A OU B) ET C

18
Enfin la sortie du bloc est connecte un OU avec D, ce qui donne au final :
S = ((A OU B) ET C) OU D

Comme en mathmatique, ce genre dopration peut se dvelopper ou se factoriser et souvent se


simplifier, mais je ne me chargerai pas dexpliquer profondment ceci car on trouve tout ce quil
faut sur internet, et certainement bien mieux prsent que ce que je pourrai le faire ici (pour ceux
qui souhaitent pousser le truc fond, je les invite aller visiter cette page wikipedia attention
tout de mme, cela demande de s'y pencher srieusement)

Bref, nous, puisquon ne fait pas des trucs trop compliqus, on va se limiter transposer ceci dans
une fonction boolenne.

Voici ce que cela donne niveau cblage :

Dj cest sur cest nettement plus lisible graphiquement, mais notons tout de mme que pour le
coup on ne sait pas trop comment a marche du premier coup dil, et il va donc nous falloir
accder au paramtrage du bloc BOOLEEN pour y voir plus clair. Cest lavantage et
linconvnient de ce bloc, il permet de simplifier les programmes, mais il en cache la logique de
base.
Bref, attelons nous le paramtrer pour avoir le mme rsultat que prcdemment.
Pour une fois je ne vais pas donner la solution de suite, mais je vais plutt vous proposer de
rsoudre lexercice ensemble, avec ce quil faut dexplication.
Notre quation tait donc :
S = ((A OU B) ET C) OU D
Commenons par un peu de raisonnement simple en lisant ceci. On voit que la dernire condition
est OU D, ce qui veut dire que dans notre table de vrit, chaque fois que D sera 1, notre sortie
sera forcment 1.
Vous pouvez donc dj remplir les 8 dernires lignes de cette table de vrit, car sur ces 8 lignes D
est 1.
A B C D S
0 0 0 0 ?
1 0 0 0 ?
0 1 0 0 ?
1 1 0 0 ?
0 0 1 0 ?
1 0 1 0 ?
0 1 1 0 ?
1 1 1 0 ?
0 0 0 1 1

19
1 0 0 1 1
0 1 0 1 1
1 1 0 1 1
0 0 1 1 1
1 0 1 1 1
0 1 1 1 1
1 1 1 1 1

Ensuite, il nous reste la sous expression (A OU B) ET C.


Dans cette sous expression, on voit que C est une condition obligatoire (puisque cest un ET), et
que par consquent cette sous expression sera vraie SI et seulement SI C est 1. En reprenant notre
table de vrit, on peut donc remplir les 4 premires lignes de 0 puisque C est 0.
A B C D S
0 0 0 0 0
1 0 0 0 0
0 1 0 0 0
1 1 0 0 0
0 0 1 0 ?
1 0 1 0 ?
0 1 1 0 ?
1 1 1 0 ?
0 0 0 1 1
1 0 0 1 1
0 1 0 1 1
1 1 0 1 1
0 0 1 1 1
1 0 1 1 1
0 1 1 1 1
1 1 1 1 1

Notre table de vrit est dj bien complte, et on va donc sintresser aux 4 lignes quil reste.
A B C D S
0 0 1 0 ?
1 0 1 0 ?
0 1 1 0 ?
1 1 1 0 ?

On reprend notre sous expression (A OU B) ET C et en relisant ceci, avec un petit tableau bien
simple, on comprend quil nous faut les cas ou on a C, et ou on a soit A, soit B, soit les deux, ce qui
permet de dduire que la sortie de la premire de ces 4 lignes sera un 0, et les trois autres un 1.
Et voila le rsultat final.
A B C D S
0 0 0 0 0
1 0 0 0 0
0 1 0 0 0
1 1 0 0 0
0 0 1 0 0
1 0 1 0 1
0 1 1 0 1
1 1 1 0 1
0 0 0 1 1

20
1 0 0 1 1
0 1 0 1 1
1 1 0 1 1
0 0 1 1 1
1 0 1 1 1
0 1 1 1 1
1 1 1 1 1

Si je vous ai fait travailler un peu les tables de vrit, ce nest pas pour rien, regarder le paramtrage
du bloc BOOLEEN :

Quelle surprise a alors cest une table de vrit (que jai paramtr ici avec le rsultat de notre
petit exercice)

Allez pour le plaisir, un petit passage en simulation pour comparer le rsultat de ces deux
programmes :

21
Et voila on obtient le mme rsultat !!

La fonction super BOOLEENNE !!


Haha, quand yen a plus yen a encore !!!

.
Dans longlet FBD_C, vous pouvez trouver une petite coquine que je nomme super boolenne, car
elle fonctionne comme la fonction boolenne normale, mais avec 6 entre et donc une table de
vrit de 64 lignes, et 2 sorties. Alors non je ne vais pas vous faire faire encore un exercice avec
celle-ci, car cela napporterai rien de plus quavec le prcdent. Je nai quun seul conseil vous

22
donner, Si vous vous lancez dans lutilisation de ce bloc, utiliser un tableur quelconque pour mettre
dabord en forme votre table de vrit avec des mots, avant de mettre des 1 nimporte comment
dans lune des deux colonnes sorties.

Pour ma part jai eu besoin de ce bloc pour crire la logique des vannes du programme de Gallo
Jean Paul que vous trouverez sur le site APPER

23
Les blocs FBD
Pour les blocs FBD, je vais dcrire les blocs selon plusieurs caractristiques qui sont :
- Les entres (not E)
- Les sorties (not S)
- Les paramtres sortis (not PS)
- Les paramtres (not P)
- Le fonctionnement

Ceci sera prsent sous forme de tableau. La colonne N indique le numro de lentre ou de la sortie (on compte en partant du haut) selon le contexte.

Alors voil dj un truc qui doit en surprendre plus dun ya des paramtres et des paramtres sortismais cest quoi ces trucs la encore !!!
Alors non ne vous sauvez pas car en fait cest trs simple :
Un paramtre se trouvedans la feuille de paramtrage oui logique me direz vous, mais le paramtre sortis aussi sy trouvealors cest quoi donc
la diffrence entre les deux
La vraie diffrence entre ces deux types de paramtres que je me permets de distinguer, cest que le paramtre sortie se trouve non seulement dans la
page de paramtrage, mais aussi sur une sortie du bloc fonction. Lintrt de ceci peut sembler limit, mais lorsque vous aurez pass le tutoriel sur la
programmation de la face avant, vous comprendrez toute la subtilit de la chose. Pour le moment je ne vais pas vous embter plus longtemps avec, car
ceci na pas dimportance sans les fonctions daffichage.

Les TIMERS
Les timers servent effectuer des oprations sur le temps, et il en existe suffisamment de sortes diffrentes pour toujours trouver celui qui nous
convient. Tout les timers (sauf BW impulsion sur front) ont un homologue avec consignes externes, que je ne dcrierai pas en dtail car le
fonctionnement est identique au bloc standard la seule diffrence que les consignes sont des valeurs dentres.

Timer AC (retardateur)
Ce timer pour but de retarder sa sortie par rapport son entre.
Icne :
A gauche la version normale, droite la version avec consignes externes.

24
Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
Commande Active le timer lorsque cette entre est valide ( ON). Le timer commence alors
1 TOR
E compter. Si lentre est dsactive le comptage sarrte et revient 0
2 TOR Reset Remet zro le timer (reset des valeurs courante retard marche et arrt)
Sortie Sactive lors que la valeur courante retard marche atteint la consigne retard
1 TOR marche, et sarrte lorsque valeur courante retard arrt atteint la consigne retard
arrt
S
Valeur courante retard Temps coul depuis lactivation de lentre Commande
3 ANA
marche
5 ANA Valeur courante retard arrt Temps coul depuis lactivation de la sortie du bloc
2 ANA Consigne retard marche Consigne de retard avant lactivation de la sortie du bloc.
PS
4 ANA Consigne retard arrt Consigne de retard avant larrt de la sortie du bloc
Base de temps Base de temps utilis par le timer, peut tre :
- 1 seconde
NA NA
- 100ms
P - Priode du programme
Sauvegarde sur coupure Indique si le bloc sauvegarde les valeurs courantes en cas de coupure secteur
NA TOR
secteur
NA TOR Modif. Autorise Indique si le bloc est paramtrable par le menu gnrique de la face avant du M3
Fonctionnement :
Lorsquon active lentre 1 de ce bloc, celui-ci se met compter le temps. Une fois que la valeur courante retard marche atteint la consigne, la
sortie du bloc sactive et cest la valeur courante retard arrt qui est incrment. Une fois que cette dernire valeur atteint la consigne retard
arrt, la sortie du bloc se dsactive. Le timer ne fait rien dautre tant que son entre 1 na pas t dsactive ou que lentre reset na pas t
active.

25
Chronogrammes (issues de laide en ligne de latelier) :
Fonction A :

Fonction C :

Fonction A-C :

Timer LI (clignoteur)
Ce timer pour but denvoyer un signal priodique de faon rptitive.

26
Icne :
A gauche la version normale, droite la version avec consignes externes.

Caractristiques :
Type
Catgorie N Nom Description
(TOR/ANA)
Commande Active le timer lorsque cette entre est valide ( ON). Le timer commence
E 1 TOR alors compter. Si lentre est dsactive le comptage sarrte et revient
0
1 TOR Sortie Sactive priodiquement lorsque lentre est active.
3 ANA Valeur courante retard marche Temps coul avec la sortie ltat ON
S 5 ANA Valeur courante retard arrt Temps coul avec la sortie ltat OFF
Valeur courante nombre de Nombre de cycles/dure de clignotement pass
7 ANA
cycle/dure
2 ANA Consigne retard marche Consigne de temps de maintient de la sortie ON
PS 4 ANA Consigne retard arrt Consigne de temps de maintient de la sortie OFF
6 ANA Consigne Nombre de cycle/dure Consigne du nombre de cycle/dure de clignotement
Base de temps Base de temps utilis par le timer, peut tre :
- 1 seconde
NA NA
- 100ms
- Priode du programme
Mode de clignotement Dfinit si le clignotement est continu, dfinit sur une dure, ou sur un
P NA NA
nombre de cycles.
Sauvegarde sur coupure secteur Indique si le bloc sauvegarde les valeurs courantes en cas de coupure
NA TOR
secteur
Modif. Autorise Indique si le bloc est paramtrable par le menu gnrique de la face avant
NA TOR
du M3

27
Fonctionnement :
Lorsquon active lentre 1 de ce bloc, celui-ci se met compter le temps. Une fois que la valeur courante retard marche atteint la consigne, la
sortie du bloc sactive et cest la valeur courante retard arrt qui est incrment. Une fois que cette dernire valeur atteint la consigne retard
arrt, la sortie du bloc se dsactive. Le timer ne fait rien dautre tant que son entre 1 na pas t dsactive ou que lentre reset na pas t
active.
Chronogrammes (issues de laide en ligne de latelier) :
Mode Clignotement continu :

Mode Nombre de clignotements :

Mode Dure de clignotement :

28
Timer BW (impulsionel)
Ce timer ne travail pas vraiment sur le temps, puisque son seul et unique but est de gnrer une impulsion sur sa sortie lors du changement dtat de
son entre.
Icne :

Caractristiques :
Type
Catgorie N Nom Description
(TOR/ANA)
E 1 TOR Commande Activation du timer
S 1 TOR Sortie Sortie impulsion
Mode de fonctionnement Paramtre permettant de dfinir si les impulsions sont envoyes sur front montant
P NA NA
(darrt marche), sur front descendant (de marche arrt) ou les deux.
Fonctionnement :
Le timer BW se contente de dtecter un changement de sa commande, et denvoyer une impulsion durant un cycle dautomate (temps entre 10 et
20ms selon les programmes) en fonction du paramtrage qui a t fait.
Chronogramme :

29
Timer BH (temporisateur)
Ce timer pour but de fixer une dure la sortie quelque soit la dure de son entre.
Icne :
A gauche la version normale, droite la version avec consignes externes.

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Commande Active le timer lorsque cette entre est valide ( ON).
E
2 TOR Reset Remet zro le timer.
1 TOR Sortie Sactive lorsque lentre est active.
S
3 ANA Valeur courante temps de marche Temps coul depuis lactivation
PS 2 ANA Consigne temps de marche Consigne de dure de marche de la sortie
Base de temps Base de temps utilis par le timer, peut tre :
- 1 seconde
NA NA
- 100ms
P
- Priode du programme
NA TOR Sauvegarde sur coupure secteur Indique si le bloc sauvegarde les valeurs courantes en cas de coupure secteur
NA TOR Modif. Autorise Indique si le bloc est paramtrable par le menu gnrique de la face avant du

30
M3
Fonctionnement :
Lorsquon active lentre commande de ce bloc, la sortie est immdiatement active. En mode fonction B , sa sortie aura une dure fixe
quelque soit la dure de la commande (plus longue ou plus courte). En mode fonction H , la sortie sera dsactive si la commande est
dsactiv avant la fin du temps dfinit par le paramtre Consigne temps de marche .
Chronogrammes (issues de laide en ligne de latelier) :
Fonction B :

Fonction H :

Timer TOT (Totalisateur)


Ce timer pour but de totaliser (compter) son temps dactivation
Icne :
A gauche la version normale, droite la version avec consignes externes.

31
Caractristiques :
Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Commande Active le timer lorsque cette entre est valide ( ON).
E
2 TOR Reset Remet zro le timer.
1 TOR Sortie Sactive selon le mode paramtr
S
3 ANA Valeur courante Temps comptabilis
PS 2 ANA Consigne de temps Consigne de temps utilis diffremment selon le mode
Base de temps Base de temps utilis par le timer, peut tre :
- 1 seconde
NA NA
- 100ms
- Priode du programme
P
NA NA Mode Choisi le mode de fonctionnement du totalisateur.
NA TOR Sauvegarde sur coupure secteur Indique si le bloc sauvegarde les valeurs courantes en cas de coupure secteur
Modif. Autorise Indique si le bloc est paramtrable par le menu gnrique de la face avant du
NA TOR
M3
Fonctionnement :
Voir sur les chronogrammes :
Chronogrammes (issues de laide en ligne de latelier) :
Fonction At :

32
En mode AT, le timer fait la somme des temps de non activation de son entre, et active sa sortie une fois que cette somme atteint la consigne.
La sortie est remise zro uniquement lorsque lentre reset est active.

Fonction Ht :

Le mode HT est identique au mode AT, sauf que la sortie est inverse (sortie 1 jusqu' que la somme des temps de la commande atteigne la
consigne).

Fonction T :

33
En mode T, le fonctionnement est similaire au mode AT, sauf que le timer compte le temps dactivation de sa commande au lieu du temps de
non activation.

Fonction Tt :

En mode TT, lorsque la commande est active la sortie sactive pendant la dure donne par la consigne (indpendamment de la dure
dactivation de la commande). Si la commande est dsactive puis ractive avant la fin de la consigne, la sortie est dsactive. Dans tous les
cas, si lentre reset est active avant la fin de la consigne, la sortie est dsactive.

Les Afficheurs
Alors pour les afficheurs, je nexpliquerai pas leur fonctionnement car celle-ci et leur utilisation dj t dtaille et pousse dans ce tutoriel
disponible sur le site.

34
Les Fonctions Mathmatiques
Addition/Soustraction (ADD/SUB)
La fonction ADD/SUB permet de faire une soustraction et/ou une addition entre des valeurs numriques. Dans une rgulation solaire cette fonction est
gnralement utilise pour introduire les hystrsis sur les trigger.
Icne :

Caractristiques :
Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Propagation derreur Permet de propager lerreur ou la saturation dun calcul
2 ANA Entre 1 Entre valeur
E
3 ANA Entre 2 Entre addition
4 ANA Entre 3 Entre soustraction
1 TOR Erreur/dbordement Sactive en cas derreur ou de saturation
S
2 ANA Sortie calcul Rsultat de laddition/soustraction
Fonctionnement :
La sortie rsultat calcul donne le rsultat de la somme/soustraction effectue. Il est possible de faire une addition et une soustraction en mme
temps. Le millenium 3 effectue lensemble de ses calculs sur des entiers 16 bits : plage de valeur de -32768 32767, en consquence, si le
rsultat dune opration donne un rsultat infrieur au minimum, ou suprieur au maximum, la sortie propagation derreur est active pour
indiquer la saturation.

Multiplication/Division (MUL/DIV)
La fonction MUL/DIV permet de faire une multiplication et/ou une division entre des valeurs numriques.
Icne :

35
Caractristiques :
Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Propagation derreur Permet de propager lerreur ou la saturation dun calcul
2 ANA Entre 1 Entre valeur
E
3 ANA Entre 2 Entre multiplication
4 ANA Entre 3 Entre division
1 TOR Erreur/dbordement Sactive en cas derreur ou de saturation
S
2 ANA Sortie calcul Rsultat de la multiplication/division
Fonctionnement :
La sortie rsultat calcul donne le rsultat de la multiplication/division effectue. Il est possible de faire une multiplication et une division en
mme temps. Le millenium 3 effectue lensemble de ses calculs sur des entiers 16 bits : plage de valeur de -32768 32767, en consquence, si le
rsultat dune opration donne un rsultat infrieur au minimum, ou suprieur au maximum, ou dans le cas dune division par 0, la sortie
propagation derreur est active pour indiquer la saturation/lerreur.

GAIN
La fonction GAIN permet dappliquer un gain linaire avec offset une valeur dentre.
Icne :

Caractristiques :
Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Validation fonction Active la fonction
E
2 ANA Entre valeur Valeur sur laquelle le calcul de gain va tre appliqu
S 1 ANA Sortie valeur Rsultat du gain
P NA ANA Numrateur A Paramtre A de lquation S = (Entre x A)/ B + C
36
NA ANA Dnominateur B Paramtre B de lquation S = (Entre x A)/ B + C
NA ANA Offset C Paramtre C de lquation S = (Entre x A)/ B + C
Fonctionnement :
La sortie S est gale au rsultat de lquation S = (Entre x A)/ B + C. Le calcul nest effectu que si lentre validation nest pas connect ou
quelle est ON.

Les Compteurs
Compteur prslection (preset counter)
Ce compteur permet dactiver une commande aprs un comptage prdfinit
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Comptage Incrmente le compteur
E 2 TOR Dcomptage Dcrmente le compteur
3 TOR Reset Remet zro le compteur.
1 TOR Sortie Sactive lorsque la valeur compte atteint la prslection.
3 ANA Valeur courante Donne la valeur courante du compteur
S
Valeur courante temporisation Temps coul depuis lactivation de la sortie (en mode cyclique
4 ANA
uniquement)
PS 2 ANA Valeur de prslection Prslection du compteur
Mode comptage Deux modes possibles :
P NA NA - Compte vers la prslection
- Dcompte partir de la prslection
Cycle Deux modes possibles
NA NA - Cycle unique

37
- Cycle rptitif
NA ANA Dure de limpulsion Dure de limpulsion de la sortie en mode Cycle rptitif
Sauvegarde sur coupure secteur Indique si le bloc sauvegarde les valeurs courantes en cas de coupure
NA TOR
secteur
Modif. Autorise Indique si le bloc est paramtrable par le menu gnrique de la face
NA TOR
avant du M3
Fonctionnement :
Lorsque le compteur est en mode Compte vers la prslection , la valeur initiale du compteur est 0 et la sortie sactive lorsque le compteur
atteint la prslection. Lorsque le compteur est en mode Dcompte partir de la prslection , la valeur initiale du compteur est gale la
prslection et la sortie sactive lorsque le compteur atteint 0.
En mode cycle unique, lorsque la sortie sactive, celle-ci le reste jusqu' que la valeur de comptage passe en dessous de la prslection (ou au
dessus de 0 en mode dcompte partir de la prslection ), ou que le compteur soit rinitialis.
En mode cycle rptitif, la sortie sactive durant la priode dfinie par le paramtre dure de limpulsion et la valeur courante de comptage
est remise 0 ds que la sortie est active.

Compteur (counter)
Ce compteur permet dactiver une commande aprs un comptage prdfinit
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Comptage Incrmente le compteur
2 TOR Dcomptage Dcrmente le compteur
E 3 TOR Reset Remet zro le compteur.
4 TOR Forage prslection Forage de la valeur courante la valeur de prslection.
5 ANA Prslection Prslection du compteur
S 1 TOR Sortie Sactive lorsque la valeur compte atteint la prslection.

38
2 ANA Valeur courante Donne la valeur courante du compteur
Sauvegarde sur coupure secteur Indique si le bloc sauvegarde les valeurs courantes en cas de
P NA TOR
coupure secteur
Fonctionnement :
La valeur initiale du compteur est 0 et la sortie sactive lorsque le compteur atteint la prslection en entre.
Lorsque lentre Forage prslection est active, la valeur de comptage est force la valeur de prslection, et la sortie est active.

Compteur horaire (H-meter)


Ce compteur permet dactiver une commande aprs un comptage prdfinit. Sans utiliser les consignes, il est trs utile pour mesurer le temps de
fonctionnement dun appareil.
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Commande Active le compteur
E
2 TOR Reset Remet zro le compteur.
1 TOR Sortie Sactive lorsque le compteur atteint la consigne
S 3 ANA Valeur courante Heure Valeur courante des heures cumule
5 ANA Valeur courante Minute Valeur courante des minutes cumule
2 ANA Prslection heures Prslection des heures
PS
4 ANA Prslection minutes Prslection des minutes
NA TOR Sauvegarde sur coupure secteur Indique si le bloc sauvegarde les valeurs courantes en cas de coupure secteur
P Modif. Autorise Indique si le bloc est paramtrable par le menu gnrique de la face avant du
NA TOR
M3
Fonctionnement :
Lorsque la commande est active, ce bloc compte le temps (en heure et minutes). Une fois que le temps compt cumul atteint la prslection, la
sortie sactive jusqu' ce que lentre reset soit active.

39
Les Comparateurs
Comparateur simple
Le but du comparateur est de comparer deux valeurs numriques
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Validation fonction Valide la fonction
E 2 ANA Valeur 1 Valeur 1 comparer
3 ANA Valeur 2 Valeur 2 comparer
S 1 TOR Sortie Rsultat de la comparaison
Type de comparaison Choix de la comparaison entre :
- Strictement suprieur (>)
- Suprieur ou gal ()
P NA NA - Egal (=)
- Diffrent ()
- Infrieur ou gal ()
- Strictement infrieur (<)
Fonctionnement :
La sortie du bloc sactive si le rsultat de la comparaison est vrai. Si la fonction est d-valid (entre Validation connect et OFF), sa sortie ne
change pas dtat.

Comparateur fentre (compare in zone)


Le but du comparateur est de comparer une valeur numrique deux autres, et dindiquer si la valeur compar se situe entre ou en dehors des deux
autres valeurs.

40
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Validation fonction Valide la fonction
2 ANA Valeur comparer Valeur comparer aux deux autres
E
3 ANA Valeur mini Valeur minimum de la plage de comparaison
4 ANA Valeur maxi Valeur maximum de la plage de comparaison
S 1 TOR Sortie Rsultat de la comparaison
Mode Permet de choisir si la sortie est active lorsque VMinValeurVMax, ou lorsque
P NA NA
Valeur<VMin OU Valeur>VMax
Fonctionnement :
La sortie du bloc devient active si VMinValeurVMax, ou si Valeur<VMin OU Valeur>VMax en fonction du mode paramtr. Si la fonction
est d-valid (entre Validation connect et OFF), sa sortie ne change pas dtat.

Trigger de Schmitt
Le but du trigger est de comparer une valeur numrique deux autres, avec un fonctionnement par hystrsis.
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
E 1 TOR Validation fonction Valide la fonction

41
2 ANA Valeur comparer Valeur comparer aux deux autres
3 ANA Consigne de marche arrt Seuil dfinissant le passage de marche arrt
4 ANA Consigne darrt marche Seuil dfinissant le passage darrt marche
S 1 TOR Sortie Sortie de la fonction
Fonctionnement :
La sortie change dtat si :
- la valeur dentre est dpasse la valeur darrt marche
- la valeur dentre est passe en dessous de la valeur de marche arrt
Si lentre est comprise entre les deux, la sortie ne change pas dtat.
Chacune des consignes DE MARCHE A ARRET et DARRET A MARCHE peuvent tre aussi bien la valeur minimale ou la valeur maximale.
Ceci implique un fonctionnement invers de la fonction. Ces deux fonctionnements sont prsents sur les chronogrammes.
Cas ou la CONSIGNE DE MARCHE A ARRET > la ONSIGNE DARRET A MARCHE :

Cas ou la CONSIGNE DARRET A MARCHE > CONSIGNE DE MARCHE A ARRET :

42
Les liaisons srie
SL IN (entres liaison srie)
Le bloc SL IN permet dinjecter des valeurs dans le programme en utilisant la liaison srie du Millenium 3.
Icnes (variable selon le paramtrage) :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 Sorties 1 8 Valeurs issues de la communication par liaison srie
S ANA
8
P NA NA Plage dadresse du bloc Configure la plage dadresse du bloc (3 plages disponibles)
Fonctionnement :
La fonction SL IN na aucun comportement spcifique, si ce nest que ses sorties sont gales aux valeurs envoyes par un systme externe
utilisant la liaison srie.

43
SL OUT (sorties liaison srie)
Le bloc SL OUT permet de rcuprer des valeurs du programme en utilisant la liaison srie du Millenium 3.
Icnes (variable selon le paramtrage) :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 Entres 1 8 Valeurs rendu accessibles via la communication par liaison srie
E ANA
8
P NA TOR Plage dadresse du bloc Configure la plage dadresse du bloc (3 plages disponibles)
Fonctionnement :
La fonction SL OUT na aucun comportement spcifique, si ce nest quelle met a disposition en lecture les valeurs connectes ses entres.

A propos des SL IN/SL OUT


Ces bloc nont aucune utilit dans un programme sauf si vous avez un logiciel/appareil capable de recevoir et/ou denvoyer des valeurs via la liaison
srie. Le protocole de la liaison srie est un driv du modbus avec quelques dfauts en plus, principalement le mutisme du M3 si les trames envoyes
ne sont pas valides. La base du protocole est donne dans laide en ligne de latelier, et une note sur les problmes courant est prsente sur le site cet
endroit.

Les Mmoires
Archives
Le bloc Archive permet de sauvegarder 2 valeurs analogiques tout en les datant.

44
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
Mmorisation Provoque la mmorisation des valeurs courantes de Valeur 1 et
1 TOR
Valeur 2.
E 2 TOR Reset Remet zro les valeurs mmorises
3 ANA Valeur 1 Valeur 1 mmoriser
4 ANA Valeur 2 Valeur 2 mmoriser
1 TOR Archive Valide Indique si larchive est valide
2 ANA Minute Indique les minutes de la date de larchivage
3 ANA Heure Indique lheure de la date de larchivage
4 ANA Jour Indique le jour de la date de larchivage
S
5 ANA Mois Indique le mois de la date de larchivage
6 ANA Anne Indique lanne de la date de larchivage
7 ANA Archive 1 Archive de la valeur 1
8 ANA Archive 2 Archive de la valeur 2
Sauvegarde sur coupure secteur Indique si le bloc sauvegarde les valeurs courantes en cas de
P NA TOR
coupure secteur
Fonctionnement :
Ce bloc est trs simple. A chaque impulsion de lentre mmorisation, le bloc sauvegarde la valeur courante de Valeur 1 et Valeur 2 dans les
sorties Archive 1 et Archive 2. Les sorties donnant la date sont mises jour ce moment.
Tout est remit 0 lors dune impulsion sur lentre reset.

45
Min/Max
Le bloc Min/Max permet de mmoriser les minimums et maximums atteint par une valeur.
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Reset Remet les min/max mmoris la valeur courante de lentre valeur.
E
2 ANA Valeur Valeur dont on veut mmoriser les min/max
1 ANA Maximum Maximum atteint par lentre valeur
S
2 ANA Minimum Minimum atteint par lentre valeur
Sauvegarde sur coupure secteur Indique si le bloc sauvegarde les valeurs courantes en cas de coupure
P NA TOR
secteur
Fonctionnement :
Le bloc mmorise automatiquement les valeurs min et max atteintes par lentre valeur. Une impulsion sur lentre reset remet les min/max
mmoris la valeur courante de lentre valeur.

46
Les Autres
Bascule RS (Set/Reset)
La bascule RS est une sortie de mmoire de mise 1 dun signal TOR, avec une fonction reset.
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Set Met la sortie 1
E
2 TOR Reset Met la sortie 0
S 1 TOR Sortie Sortie du bloc
NA NA Priorit Permet de dfinir laquelle des deux entres est prioritaire sur lautre.
P Sauvegarde sur coupure Indique si le bloc sauvegarde les valeurs courantes en cas de coupure secteur
NA TOR
secteur
Fonctionnement :
La sortie est gale :
- 1 si lentre Set est active et que lentre reset nest pas active
- 1 si lentre Set t active et que lentre reset na pas t active
- 1 si lentre Set est active, que lentre reset est active, et que le paramtre de priorit est dfinit sur Set prioritaire
- Dans tout les autres cas, la sortir vaut 0 ds que lentre Reset est active ou t active sans que lentre Set nai t active par la
suite.

Tlrupteur (BISTABLE)
Le tlrupteur fonctionne comme un tlrupteur lectrique. Son tat change chaque impulsion sur son entre.
Icne :

47
Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Commande Met la sortie 1 ou 0 en fonction de son tat prcdent
E
2 TOR Reset Met la sortie 0
S 1 TOR Sortie Sortie du bloc
Sauvegarde sur coupure Indique si le bloc sauvegarde les valeurs courantes en cas de coupure secteur
P NA TOR
secteur
Fonctionnement :
La sortie change de 0 1 ou de 1 0 chaque impulsion de lentre commande.
Une impulsion sur lentre Reset remet la sortie 0.

Multiplexeur (MUX)
Le multiplexeur permet de faire passer deux valeurs numriques vers une seule sortie. Ce bloc est rarement utile.
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Slection Slectionne la valeur envoyer en sortie
E 2 ANA Voie B Entre valeur 1
3 ANA Voie A Entre valeur 2
Sortie Prend la valeur de lentre Voie A ou de lentre Voie B en fonction de lentre
S 1 ANA
slection.

48
Fonctionnement :
La sortie est gale :
- lentre voie A lorsque slection est a OFF
- lentre voie B lorsque slection est a ON

Arbre Cam (CAM bloc)


Le CAM Bloc permet de programmer ltat de ses sorties sous forme de squence jusqu' 50 cycles. Ce bloc trs souvent utilis en combinaison avec
les blocs daffichage pour grer un systme rudimentaire de menus.
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 TOR Avancer Fait avance le CAM dun cycle
E 2 TOR Reculer Fait reculer le CAM dun cycle
3 TOR Reset Remet le CAM au cycle 0.
1 Sorties 1 8 Sorties correspondant aux tats configurs dans les cycles.
TOR
S 8
9 ANA Position Numro du cycle courant.
Nombre de cycle et tat de chaque cycle. Le nombre de cycle permet de choisir le nombre total de cycle qui
NA NA sera excut sur les 50 disponibles. Chaque cycle permet de
configurer ltat des 8 sorties.
P Sauvegarde sur coupure secteur Indique si le bloc sauvegarde les valeurs courantes en cas de
NA TOR
coupure secteur
Modif. Autorise Indique si le bloc est paramtrable par le menu gnrique de la face
NA TOR
avant du M3 (note personnelle : modifier les cycles dun cam

49
bloc via la face avant du M3 relve simplement du pure
masochisme)
Fonctionnement :
Pour chacun des cycles configurs, les sorties prennent ltat qui a t configur dans le paramtrage. Chaque impulsion sur lentre avancer
provoque le passage au cycle suivant (ou au premier cycle si le dernier t atteint). Chaque impulsion sur lentre reculer provoque le
passage au cycle prcdent (ou au dernier cycle si il se trouve sur le premier).

Status
Ce bloc permet de rcuprer des informations relatives ltat du M3.
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
Etat Alarme Sactive si une alarme ou une erreur est dtecte sur le M3 ou le
1 TOR
programme.
2 TOR Marche monitoring Indique si on est en mode monitoring
Marche paramtrage Indique si une modification de paramtres est en cours (via le mode
3 TOR
monitoring ou via la face avant)
S
4 TOR Init froid Emet une impulsion la mise en marche manuelle du programme
Init chaud Emet une impulsion lors de la reprise du programme aprs une
5 TOR
coupure secteur.
6 TOR Clignotant cycle Change dtat chaque cycle dexcution du programme.
7 ANA Numro alarme Indique le numro de lalarme (voir sortie 1)
Fonctionnement :
Pour de plus amples informations, se rfrer laide en ligne (il est inutile que je fasse de la recopie pour ce bloc rarement utilis)

50
Programmateur horaire (Time Prog)
Voila un bloc tout fait intressant, et pour cause cest un programmateur horaire trs complet qui permet de dclencher des actions journalire,
hebdomadaire, mensuel, annuel et ponctuel.
Icne :

Caractristiques :

Catgorie NType (TOR/ANA) Nom Description


E 1 TOR Sortie
Modif. Autorise Indique si le bloc est paramtrable par le menu gnrique
NA TOR
P de la face avant du M3.
NA NA Ensemble des taquets de programmation. Voir la suite.
Fonctionnement :
Alors voila un bloc dont le fonctionnement est trs simple, mais dont le paramtrage est inversement proportionnellement compliqu.
Dabord les captures dcran des 2 onglets de paramtrage.
Onglet paramtres :

51
Alors juste un mot de vocabulaire avant de commencer : Je vais parler de Taquet sans arrt pour expliquer le paramtrage de cette fonction.
Un taquet est un vnement MARCHE ou ARRET avec une heure et une priodicit.
Cest dans cette page que tout se configure. Le bouton Nouveau permet de crer un taquet (maximum 50), une fois quun taquet est cre il
est possible de le paramtrer.
Dans la partie heure on va dfinir si cest un taquet de mise MARCHE ou ARRET de la sortie, ainsi que son heure.
Dans la partie centrale on va configurer, dans le cas dun vnement priodique, les semaines du mois ou il sera actif, ainsi que les jours de la
semaine.
Pour un taquet journalier, il faut imprativement que les semaines 1 5 et que les 7 jours de la semaine soient cochs.
Pour un taquet hebdomadaire, il faut que les 5 semaines soient coches et que 1 jour de la semaine soit coch.
Avec juste cette partie on dj de quoi faire, car on peut donc crer des vnements bi hebdomadaire, ou n autres variantes de priodicit.

52
Une chose est importante noter : Un TimeProg possde gnralement un minimum de 2 taquets : un de mise en marche, et un de mise arrt.
En effet, si aucun taquet ARRET nest configur, une fois la sortie active par le taquet MARCHE celle-ci ne reviendra jamais ltat
ARRET (et pour cause, on ne le lui demande pas).
Le fait quil faille des taquets marche et arrt permet de crer des sorties actives sur des plages horaire bien prcises (par exemples les heures
creuses EDF, ou je ne sais quoi dautre du mme style)
Ensuite il y a les taquets date unique, pour cela il faut cliquer sur la case Date et configurer lanne, le mois, et le jour du mois.
En suivant ce quil y a dessous, vous pouvez configurer un taquet annuel (dans ce cas on ne configure plus que le mois et le jour du mois). En
dernier lieu vous pouvez configurer un taquet mensuel en configurant uniquement le jour du mois.
Voila un peu ce quon peut faire niveau configuration et vous laurez compris on peut vraiment configurer ceci comme on le souhaite. Voyons le
deuxime onglet qui savre trs utile quand on commence cumuler un grand nombre de taquets.

53
Pour lexemple je nai pas configur les taquets que jai cre, le but tant juste dafficher une liste.
Nous avons donc sur cette page un rsum de tous les taquets configurs dans le TimeProg. En double cliquant sur lun dentre eux, vous
revenez la page de configuration du taquet cliqu.

Convertisseur DEC=>BIN
Blablabla
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
E 1 ANA Entier Valeur que lon souhaite convertir en bits
1 Bits 1 16 Bits issues de la valeur convertie
S TOR
16
Fonctionnement :
Alors la, autant pour quelquun qui maitrise le comptage en binaire, ce bloc parait compltement trivial, autant pour un non initi, cela relve de
limprobable.
Je lai expliqu plusieurs fois, le M3 effectue ses calculs sur des entiers 16 bits sign. Il faut savoir que tout appareil numrique compte en
binaire. Un ordinateur par exemple ne sait que manipuler des 1 et des 0, cest le sens quon leur donne aprs qui fait que ce sont des caractres
ou des chiffres (ou des images/vido, musique, etc.).

54
Pour comprendre comment compte un ordinateur (et donc aussi le M3), je vous invite aller parcourir ces deux pages sur Wikipedia.
Dcimal cod en binaire
Le complment deux
Dans tout les cas, ces blocs (dec/bin et bin/dec) sont rarement utiles, sauf si vous utilisez une supervision.

Convertisseur BIN=>DEC
Blablabla
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
1 Bits 1 16 Bits convertir en dcimal
E TOR
16
S 1 ANA Entier Valeur dcimal issue de la conversion
Fonctionnement :
Voir le bloc DEC/BIN juste avant, le mcanisme tant le mme mais en invers.

55
Les blocs FBD_C
Gnralits
Alors, les FBD_C quest ce que cest ? La mme chose que les FBD tout court nan ?
Alors ce nest pas compltement faux, mais ce nest pas compltement vrai non plus. Il faut savoir que tout les blocs prsents dans les onglets autres
que celui FBD_C, sont des fonctions natives du firmware M3 (firmware = logiciel embarqu). Ceci signifie que lorsquon pose une fonction standard,
le M3 sait dj comment il doit lexcuter.
Dans le cas des FBD_C (aussi appel fonctions mtier) cest un peu diffrent. En fait, il faut voir ces fonctions comme des logiciels supplmentaires
quon peut installer dans le M3, avec bien sur une limite de mmoire (comme sur un PC, ou on ne peut plus rien installer si le disque dur est plein).
Lorsque vous utilisez une de ces fonctions, et que vous chargez votre programme dans votre M3, latelier va dtecter quel sont les fonctions mtier dj
install dans le M3, et il va ajouter ou supprimer ces logiciels en fonction de ce que contient votre programme.

Comment connait on la place disponible pour installer des fonctions mtier dans le M3 ?
Dans la phase 1, je vous avais prsent les barres doutils et notamment la barre doutil contrleur , souvenez vous de a :

Lors de cette prsentation je ne vous avais pas donn dinformation sur cette jauge qui se trouve gauche. Alors non, ceci ne donne pas, comme le veut
la croyance populaire, la mmoire disponible pour votre programme, mais elle indique le nombre de slots fonction mtier disponible dans lautomate.
Cette jauge est automatiquement mise jour chaque fois que ajoutez/supprimez une fonction mtier dans votre programme. Un Millenium 3 extensible
comme le XD26 possde 64 slots fonction mtier. Une fonction mtier peut consommer de 1 et 64 slots (dans les faits, la fonction la plus gourmande
est le suivi solaire qui consomme elle toute seul 56 slots).
Dernire chose ce sujet, une fois que vous avez pos une fonction mtier, vous pouvez la lutiliser autant de fois que vous le souhaitez dans votre
programme sans que cela consomme plus de slots. Cest comme un programme sur votre PC, vous linstallez une fois et vous pouvez le lancer autant
de fois que vous le souhaitez.

Les plus utiles


Super boolen
(Il a dj t expliqu dans le chapitre sur les blocs logiques, voir aussi bloc BOOLEEN)

56
Timer A
Sa fonction est similaire au TIMER AC dj vu dans ce tutoriel, la diffrence prs quil possde beaucoup moins de sortie et un paramtre en moins,
ce qui le rend plus conome en mmoire programme. Il est donc prconis de lutiliser si vous utilisez des timer AC, que sur ces derniers vous
nutilisez que la sortie TOR, et que vous nutilisez pas le paramtre retard arrt.
Icne :

Caractristiques :

Type
Catgorie N Nom Description
(TOR/ANA)
Commande Active le timer lorsque cette entre est valide ( ON). Le timer commence alors
E 1 TOR
compter. Si lentre est dsactive le comptage sarrte et revient 0
Sortie Sactive lors que la valeur courante retard marche atteint la consigne retard
S 1 TOR
marche, et sarrte lorsque la commande est dsactive.
Base de temps Base de temps utilis par le timer, peut tre :
- 1 seconde
NA NA
P - 100ms
- Priode du programme
NA ANA Consigne retard marche Consigne de retard avant lactivation de la sortie du bloc.
Fonctionnement :
Voire Timer AC en mode A

57
Porte logique ET deux entres
Identique la porte logique ET 4 entres. Permet dconomiser un tout petit peu de mmoire. A utiliser pour loptimisation mmoire.
Icne :

Caractristiques :
NA

Porte logique OU deux entres


Identique la porte logique OU 4 entres. Permet dconomiser un tout petit peu de mmoire. A utiliser pour loptimisation mmoire.
Icne :

Caractristiques :
NA

58
Les blocs SFC
Alors ici cest une srie de bloc dont vous aurez rarement besoin, mais sachez que leur utilisation
fait appel des notions de programmation squentielle quil faut avoir acquises pour les utiliser
correctement. Si vous connaissez le GRAFCET, ces blocs vous paratront plus que familiers.

Sachez aussi que les SFC sont les seuls types de bloc qui sils sont mal assembls, peuvent
provoquer des erreurs de compilation de votre programme, et ce sont aussi les seuls dans latelier
M3 avoir des entres gauche et au dessus, et des sorties droite et en bas (oui oui a se
complique)

Pour ceux qui ont dj peur avec ce que jai dit avant, je vais tout de mme expliquer quelques
bases afin que vous ayez la possibilit de comprendre ce qui va suivre.
Dans tout les cas, mme si vous ne comprenez pas, aucun problme car les graphes SFC nont pas
un grand intrt dans le cas des rgulations solaire (encore quon pourrait voir un intrt pour la
squence de fonctionnement dune installation en drain back)

Alors ce quil faut savoir :


Le GRAFCET est un acronyme qui signifie GRAphe Fonctionnel de Commande
Etapes/Transitions.
Commenons par interprter cela et particulirement les 2 derniers mots Etapes/Transitions. Un
GRAFCET (i.e. graphe SFC) est compos dtapes, lesquelles sont spares par des transitions.
Voila comment cela se reprsente.

Dans cette image, les tapes sont les carrs contenant un numro, et les transitions sont les traits
rouges entre les tapes. A chaque tape est lie une action (le rectangle bleu cot des tapes) qui
est la commande (cela peut tre la mise en marche dun moteur, incrment dun compteur, ou plein
dautres choses)
Le GRAFCET possde toujours une tape initiale qui permet de placer lensemble de linstallation
quil pilote dans sa position de dpart (reset des compteurs, arrt de moteur, mise en place dune
pice, etc). Cette tape est reprsente par un double carr (ici ltape numro 10)
Le GRAFCET se lit et sexcute de haut en bas, et le passage dtape en tape est conditionn par la
validation des transitions.

Ltape initiale, et ltape initiale r-initialisable


Cette tape est OBLIGATOIRE et doit tre UNIQUE dans chaque graphe SFC. Elle reprsente le
point de dpart de votre graphe, cest elle qui sera active au dmarrage du programme.

(tape initiale r-initialisable)

59
(tape initiale)
Comme toute tape SFC, ltape initiale possde une entre transition, et une sortie commande.
Dans le cas de ltape initiale r-initialisable, elle possde une entre init qui permet de forcer le
graphe SFC revenir ltape initiale.

Ltape simple
Cest ltape standard du SFC, elle est active par validation de la transition de ltape qui la
prcde, et elle se termine une fois que sa transition est valide.

La divergence en OU et la convergence en OU
Ces blocs SFC permettent de faire diverger le graphe vers une branche ou une autre. Les deux sous
branches seront composes de nimporte quelle fonction SFC (sauf tape initiale)

La divergence en OU permet dadopter des actions diffrentes en fonction des transitions obtenues.
Par exemple, imaginons une machine qui trie des pices. La vrification de chaque pice est faite en
plusieurs tapes. Si on imagine le GRAFCET de la machine de vrification, on pourrait y voir une
divergence en OU chacune des tapes de la vrification. Si la pice teste est valide, on continue
sur le graphe normal, si elle nest pas valide, on part vers un graphe qui jecte la pice et qui
retourne ensuite ltape initiale.

La divergence en ET et la convergence en ET
Ces blocs SFC permettent de faire diverger le graphe vers deux branches en mme temps.
Les deux sous branches seront composes de nimporte quelle fonction SFC (sauf tape initiale)

La divergence en ET permet de lancer lexcution de deux actions en mme temps. Si on imagine


un robot qui assemble la caisse dune voiture, on pourrait bien imaginer que le robot aprs avoir
install le capot, il installe les deux portires simultanment.

Un graphe SFC simple


Alors si en SFC ya pas des masses monstrueuses de bloc, selon lassemblage quon en fera, on
obtient des tas de choses diffrentes.
Pour lexemple, je vous propose dtudier le cas dune installation en drain back.
Si on met a en forme faon GRAFCET, voila un peut les tapes et transition quon a :
60
(Pour des raisons pratiques que vais noter les tapes En, et les transitions Tn, n tant un numro)
Une dernire petite chose, dans un graphe SFC, il est courant quune tape ne provoque aucune
action, dans ce cas ces tapes servent uniquement attendre la validation de leur transition.

Dpart
E0 (initial) : le circuit est vide, le capteur est froid, et la pompe arrte.
(T0): le capteur chauffe
E1 : on met en marche la pompe
T1 : dtection du bon remplissage du circuit
E2 : attente de 2 minutes (temps arbitraire de remplissage avec un peu de circulation)
T2 : fin de la temporisation (il existe dans les fonctions FBD_C une tape SFC attente qui fait cela
toute seule, mais cela se fait aussi trs bien avec un timer)
E3 : rien
T3 : la temprature du caloporteur est > celle du bas du ballon
T3 (divergence) : la temprature du caloporteur est < celle du bas du ballon
(La condition T3 est la ngation (le NOT logique) de T3)

NOTE : jai introduit une divergence ici car un capteur en stagnation chauffe trs vite. Un faible
rayonnement peut suffire le faire monter en temprature vide, mais pas forcment avec de leau
qui y circule
Donc nous avons deux branches, une o lon peut commencer la chauffe, et lautre o on va mettre
en place une attente pour voir si la temprature ne finirai pas par monter un peu.

Branche normale :
E4 : rien (la pompe est en marche, on chauffe le stock)
T4 : T caloporteur < T bas ballon (on arrte si on a plus suffisamment dapport solaire)
E5 : Arrt de la pompe
T5 : dtection de la bonne vidange du circuit
 Retour T0.

Branche attente :
E6 : incrment dun compteur
T6 : E6 active
E7 : rien
T7 : valeur max du compteur atteinte
T7 : valeur max du compteur NON atteinte
(pfiou encore une divergence)

Branche sur T7
E8 : attente de 1 minute
T8 : fin de temporisation
 Retour E3

Branche sur T7 (compteur atteint  sortie de la boucle dattente)


E9 : reset du compteur
T9 : E9 activ
 Retour E5

Voila un peu ce que cela donne sur papier voyons ce que cela donne en programme dans latelier
M3 (pour simplifier le programme, jai utilis de simples entre TOR pour grer certaines
transitions, dans un programme rel on aurait une gestion des deltas de tempratures avec des
triggers).

61
Alors jai tout de mme pris la peine de commenter un peu les blocs pour au moins reprer les
diffrentes tapes du graphe SFC, ce qui vous permet de vous reprer entre ce que jai exprim sous
forme de texte, et le rsultat.
Il y a toute fois une lacune dans ce graphe, cest le cas o lon serait en chauffe mais o le soleil
serait masqu temporairement provoquant un refroidissement du caloporteur. Ceci aurait pour effet
darrter la pompe, et de revenir au point de dpart E0, alors que dans lidal il faudrait faire une
attente comme au dmarrage (boucle de droites avec E6, E7, E8, et E9), ce qui permettrait de ne pas
arrter le circuit ds que le soleil joue cache-cache.

Conclusion sur le SFC :


Alors le SFC est trs puissant si on doit piloter quelque chose de trs squentiel avec peu de
possibilit de branches diffrentes. Ds lors quon commence cumuler les divergences, il faut le
dire cest un vrai mtier, et ce nest pas le mieux adapt la rgulation dune installation solaire.
Imaginez un graphe o on gre : ECS, chauffage, et surchauffe le graphe deviendrait surement
imbuvable, en tout cas bien moins bien quun programme sans SFC.

62

S-ar putea să vă placă și