Example: confidence

TD1 Le langage FBD de la norme 1131-3

S. Moutou et : r alis avec pour l'IUT de TroyesTD1 Le langage FBD de la norme 1131-3I - Syst me automatis G n ralit sUn syst me automatis se d compose en deux parties d pendantes :-la partie op rative est le processus automatiser -la partie commande est l'automatisme qui en fonction des entr es (informationexterne venant de la partie op rative, consignes ext rieures, ) labore en sortie desordres externes destin s la partie op rative ou des l ments ext ) Le langage FBD (Function Block Diagram) Le langage FBD (Function Block Diagram) est un langage graphique qui ressemble lasch matique lectronique. Il y a quand m me quelques diff rences : Cela signifie que l'on peut donner un nom un faut viter cependant les boucles car il n'y a aucune information sur l'ordre d'ex cutiondans le r seau dessin.

S. Moutou et G.Millon : réalisé avec OpenOffice.org 1.1 pour l'IUT de Troyes TD1 Le langage FBD de la norme 1131-3 I - Système automatisé Généralités

Tags:

  Langage

Information

Domain:

Source:

Link to this page:

Please notify us if you found a problem with this document:

Other abuse

Transcription of TD1 Le langage FBD de la norme 1131-3

1 S. Moutou et : r alis avec pour l'IUT de TroyesTD1 Le langage FBD de la norme 1131-3I - Syst me automatis G n ralit sUn syst me automatis se d compose en deux parties d pendantes :-la partie op rative est le processus automatiser -la partie commande est l'automatisme qui en fonction des entr es (informationexterne venant de la partie op rative, consignes ext rieures, ) labore en sortie desordres externes destin s la partie op rative ou des l ments ext ) Le langage FBD (Function Block Diagram) Le langage FBD (Function Block Diagram) est un langage graphique qui ressemble lasch matique lectronique. Il y a quand m me quelques diff rences : Cela signifie que l'on peut donner un nom un faut viter cependant les boucles car il n'y a aucune information sur l'ordre d'ex cutiondans le r seau dessin.

2 Il faut donc garder l'esprit qu'il s'agit d'un programme et non d'un sch ma destin treimplanter mat riellement comme en / 20partie op rativemachinepartie commande pr parties&manualb1 NOMMODIFNOMMODIF:>=1resultvalidcmd10 Saut conditionnel>=1auto_modealarmRETURNNOMMO DIF:&resultvalidcmd10 Retour conditionnelors1s2run&enaBoucle viterors1s2run&ena1 r e optionrunors1s2ror&ena2 me optionrorS. Moutou et : r alis avec pour l'IUT de TroyesIII) Ecrire et utiliser son propre package pour implanter FBD en VHDLLors du TD2 de a2i11 (assemblage de fonctions) nous avons pass sous silence le fait quepour faire la description structurelle pr sent e il fallait utiliser notre propre packaged finissant ce qu'est un un et, un ou et un inverseur.

3 Nous crivons ci-dessous la versioncompl te du portes; en WARP. Utiliser--library manager pour dire o est ce fichierUSE ;ENTITY Fct ISPORT(e0,e1,e2 : IN BIT;s : OUT BIT);END Fct;ARCHITECTURE truc OF Fct ISSIGNAL e0e1,e2bar : BIT;BEGINi1:et PORT MAP(e0,e1,e0e1);i2:inverseur PORT MAP(e2,e2bar);i3:ou PORT MAP(e0e1,e2bar,s);END truc;Voici en condens comment on r alise un package :PACKAGE mesportes ISCOMPONENT et PORT(e0,e1 : IN BIT;s : OUT BIT);END COMPONENT;COMPONENT ouPORT(e0,e1 : IN BIT;s : OUT BIT);END COMPONENT;COMPONENT inverseur PORT(e : IN BIT;s : OUT BIT);END COMPONENT;END mesportes;ENTITY et ISPORT(e0,e1 : IN BIT;s : OUT BIT);END et;ENTITY ou ISPORT(e0,e1 : IN BIT;s : OUT BIT);END ou.

4 ENTITY inverseur ISPORT(e : IN BIT;s : OUT BIT);END inverseur;ARCHITECTURE aet OF etISBEGIN s<=e0 AND e1;END aet;ARCHITECTURE aou OF ouISBEGIN s<=e0 OR e1;END aou;ARCHITECTURE ainv OFinverseur ISBEGIN s<= NOT e;END ainv;Il n'y a aucun standard sur les packages du type ci-dessus. Chaque constructeur proposeson propre package pour programmer ses composants ce qui pose un probl me deportabilit . A noter quand m me une initiative avec LPM (Library of Parameterized Modules)(voir plus loin).Quelques blocs fonctionnels standards (de la norme 1131-3 )2 / 20&e1Se21e0e0e1e2bari1i2i3>1S. Moutou et : r alis avec pour l'IUT de TroyesDans l'esprit de la norme , les compteurs comptent ou d comptent toujours : PVn'est pas un max mais un seuil qui quand il est d pass passe la sortie 1.

5 Maisl'envoi d'un front augmentera toujours CV pour d'autres blocs fonctionnels : bistable RS et SR, s maphore (claim:BOOL,release:Bool;Busy:BOOL). ExerciceImplanter l'exemple ci-contre enVHDL. Remarquez l'instanciationdes blocs dispose d'une horloge 10 / 20R_TRIGCLKQBOOLBOOLF_TRIGCLKQBOOLBOOLQB OOLCVINTBOOLBOOLINTCURPVCTUQBOOLCVINTBOO LBOOLINTCDLDPVCTDQBOOLCVINTBOOLBOOLINTCU LDPVCTUDBOOLCDBOOLRCV>PV => Q=1CV<=0 => Q=1 QBOOLETTIMEBOOLTIMEINPT** = TP (impulsion)** = TON (enclenchement)** = TOF (d c lenchement)PTETQINT emporisateur d'enclenchement (TON)QETINPTTONQ1SR1RS&t#30msRUN_FFSTART _TMRe1e2Q1S. Moutou et : r alis avec pour l'IUT de TroyesTD2 Retour sur le graphe d' tat langage LD de lanormeI) Contacts et bobines Le langage LD (Ladder Diagram) est plus connu chez nous comme langage implanter une fonction bool enne : en s rie = ET en parall le = OU.

6 Biendistinguer les interrupteurs qui sont des entr es et les bobines qui sont des = NOT N=Negative pulse, P=Positive Pulse, S=Set, R=Reset. Les trois premiersmodificateurs peuvent se trouver dans les interrupteurs et tous peuvent se trouver dansles bobines. (voir TD 1) peuvent se trouver dans la partie bobine d'un programme LD. Cela signifie quel'on peut donner un nom un ) Graphe d' tatsUn graphe d' tat est une suite d' tats et de transitions r ) tatsinactif actif initial 2 ) Transitions III) quations de r currenceOn cherche pour chacun des tats i les conditions d'activations ACi et les d activations Dipuis on crit : xi =ACi Di xi Initpour un tat initial etxi = ACi Di xi Initpour un tat normal :Exemple :4 / 20111R ceptivit a+ a2a3a4a31234 NOMMODIFRETURN enaruns1s2runs1PS.

7 Moutou et : r alis avec pour l'IUT de TroyesAC1 = + = = = = e1+/e1=1D2 = e2D3 = e4D4 = e3 quations de r currences quations de sortiesx1+ = + + Initx2+ = ( + )./Initx3+ = ( + )./Initx4+ = ( + )./Inita1 = x1a2 = x1a3 = x3 + x4a4 = x2 Exercice 1 Implanter les quations de cet exemple en langage ) Un nouveau style de programmation VHDLLe s quentiel simple (diagramme d' volution) sans quations der currenceENTITY demo IS PORT( clock : IN BIT; q : INOUT BIT_VECTOR(0 TO 1));END demo;ARCHITECTURE mydemo OF demo ISBEGIN PROCESS(clock) BEGIN IF clock'EVENT AND clock='1' THEN CASE q IS --style case when WHEN "00" => q <="01"; WHEN "01" => q <="10"; WHEN "10" => q <="11"; WHEN OTHERS => q <="00" ; END CASE; END IF; END PROCESS; END mydemo.

8 Nous avons d j eu l'occasion de parler de ce probl me en a2i11 (voir Tds 15) avec des quations de r currence. Pr sentons d'abord la technique avec et sans sans initialisationBEGIN PROCESS (clock) BEGIN5 / 2000110110 RingingArme dOffRing=0 Ring=0 Rin g=1 Ring=0 Key=1 OffArmedArmedOffRing=0 Ring=0 Key=0 ArmedOffKey=1S. Moutou et : r alis avec pour l'IUT de Troyes IF clock'EVENT AND clock='1' THEN CASE etat IS WHEN Off => IF key ='1' THEN etat <= Armed; ELSE etat <= Off; END IF; .. END CASE; END IF; END PROCESS; ..-- avec initialisation synchroneBEGIN PROCESS (clock) BEGIN IF clock'EVENT AND clock='1' THEN IF Init='1' THEN etat <=Off; --initialisation synchrone ELSE CASE etat IS WHEN Off => IF key ='1' THEN etat <= Armed; ELSE etat <= Off; END IF.

9 END CASE; END IF END IF; END PROCESS; ..Exercice 21)D clarer en FBD le programme )R aliser en VHDL le cahier des charges ci-dessous exprim en langage contact. Ondispose pour cela d'une horloge 25 Mhz. R aliser d'abord un component 36 / 20 PTETQINT emporisateur de d clenchement (TOF)QETT#25msINPTTOF enaruns1s2enaruns1s2S. Moutou et : r alis avec pour l'IUT de Troyes1) D clarer en FBD le programme ) Donner les quations de r currence, en langage LD, de ces graphes d' tats :3) Ecrire le programme VHDL pour le premier graphe d' tat en utilisant un 4D clarer en FBD le programme aliser ce graphe d' tat en VHDL en prenant soin de s parer le compteur et la parties quentielle.

10 On utilisera donc un component pour la partie s quentielle et un autre pour / 20e1e1e 2e3e4e5a1 a2a3a4a3a412345e1e2e3e4a1 a2a3a4a3a41234cnt=5e3e2cnt<5e4a1 cnt=cnt+1a2a312340e1cnt=0S. Moutou et : r alis avec pour l'IUT de TroyesTD3 Le langage SFC de la norme 1131-3I) Le GRAFCET ( r gles d' tablissement)I-1) EtapesUne tape est repr sent e par un carr . Elle peut avoir deux tats :- tat actif (une marque l'int rieur du carr )- tat inactifR gle 1 : La situation initiale d'un grafcet caract rise le comportement de la partiecommande vis vis de la partie op rative et correspond aux tapes actives au d but dufonctionnement de la partie : la situation initiale peut n' tre obtenue qu'une seule fois la mise soustension on peut utiliser plusieurs tapes initiales I-2) TransitionsUne transition est repr sent e par un trait horizontal.


Related search queries