Beruflich Dokumente
Kultur Dokumente
~1~
PARTIE
THEORIQUE
~2~
I. Cahier des charges
~3~
Puis avance du chariot trempage en B3 pendant 30 secondes,
avance du chariot, dchargement puis retour au poste de
chargement.
Une pice " peu sale " arrive. A condition quil y ait prsence
de la pince gauche, prise de la pice, dplacement du
chariot trempage en b3 pendant 30 secondes, avance du
chariot, dchargement puis retour au poste de chargement.
Actionneurs :
Fonction Indice
Dplacement du chariot gauche G
Dplacement du chariot droite D
Monter pince MP
Descendre pince DP
Ouverture pince OP
Fermeture pince FP
Capteurs :
Fonction Indice
Chariot en position C1,, C5
Pince ouverte po
Pince ferme pf
Prsence pice " trs sale " ts
Prsence pice " peu sale " ps
Dpart cycle Dcy
Pince en position basse b
Pince en position haut h
Pice prsence sur le tapis roulant gauche pp
~4~
II.Etude de projet
1) Cest quoi un Grafcet ?
~5~
Dans la conception d'un systme automatis squentiel, il faut tenir compte des
deux composantes qui le forment :
1. la partie "oprative"
2. la partie "commande"
*La partie "oprative" appele aussi partie puissance est le processus physique
automatiser.Cette partie se compose de trois ensembles qui sont :
~6~
Action temporise :
~7~
2) Grafcet du projet :
~8~
3)Les
quations :
equation de X i CD X i CA X i etapes
X 26 . b+ X 9 . b+ X 1 .(X 2+ X 10) X 2 + X 10 X 9 . b+ X 26 . b X1
X 1 . ps . pp . Dcy . X n + X 2 . X 3 X3 X 1 . ps . pp . Dcy . X n X2
X 2 . b+ X 3 . X 4 X4 X2 . b X3
X 3 . h+ X 4 . X 5 X5 X3 . h X4
X4 . C4+ X5 . X6 X6 X4 . C4 X5
X 5 . b+ X 6 . X 7 X7 X5 . b X6
X 6 . t0 + X 7 . X 8 X8 X 6 . t0 X7
X 7 . h+ X 8 . X 9 X9 X7 . h X8
X 8 .C 5 + X 9 . X 1 X1 X 8 .C 5 X9
X 1 .ts . pp . Dcy . X n + X 10 . X 11 X 11 X 1 .ts . pp . Dcy . X n X 10
X 10 .b + X 11 . X 12 X 12 X 10 .b X 11
X 11 . h+ X 12 . X 13 X 13 X 11 . h X 12
X 12 . C 2+ X 20 . C 2+ X 13 . X 14 X 14 X 12 . C 2+ X 20 . C 2 X 13
~9~
X 13 .b+ X 14 . X 15 X 15 X 13 .b X 14
X 14 .t 0 + X 15 . X 16 X 16 X 14 .t 0 X 15
X 15 .h+ X 16 . X 17 X 17 X 15 .h X 16
X 16 .C 3 + X 17 . X 18 X 18 X 16 .C 3 X 17
X 17 .b + X 18 . X 19 X 19 X 17 .b X 18
X 18 .t 0 + X 19 .( X 20 + X 21 ) X 20 + X 21 X 18 .t 0 X 19
X 19 .h .(c3)+ X 20 . X 13 X 13 X 19 .h .(c3) X 20
X 20 .h .(c=3)+ X 21 . X 22 X 22 X 19 .h .(c=3) X 21
X 21 .C 4 + X 22 . X 23 X 23 X 21 .C 4 X 22
X 22 .b+ X 23 . X 24 X 24 X 22 .b X 23
X 23 .t 0 + X 24 . X 25 X 25 X 23 .t 0 X 24
X 24 . h+ X 25 . X 26 X 26 X 24 . h X 25
X 25 .C 5 + X 26 . X 1 X1 X 25 .C 5 X 26
X 1 . h+ X 3 + X 7 + X 11 + X 15 + X 19 + X 24 monter pince MP
4)VHDL :
Dfinition
~ 10 ~
VHDL est un langage de description de matriel destin reprsenter le
comportement ainsi que l'architecture dun systme lectronique numrique. Son
.nom complet estVHSIC1 Hardware Description Language
L'intrt d'une telle description rside dans son caractre excutable : une
spcification dcrite en VHDL peut tre vrifie par simulation, avant que la
conception dtaille ne soit termine. En outre, les outils de conception assiste
par ordinateur permettant de passer directement d'une description fonctionnelle
en VHDL un schma en porte logiqueont rvolutionn les mthodes de
.conception des circuits numriques, ASIC ou FPGA
Code
--code VHDL du projet
libraryieee;
use ieee.std_logic_1164.all;
entityprojett_His port(CLK,RST,ps,ts,pp,Dcy,b,h,CII,CIII,CIIII,CIIIII:in bit;
X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,X11,X12,X13,X14,X15,X16,X17,X18,X19,X20,X21,X
22,X23,X24,X25,X26,Xn,n1,n2,n3,ft,ft1,ft2,ft3:buffer bit;
q:buffer integer range 0 to 30; c:buffer integer range 0 to 4);
endprojett_H;
architectureRTL of projett_His
begin
process(CLK,RST,ps,pp,Dcy,b,h,CII,CIII,CIIII,CIIIII,X1,X2,X3,X4,X5,X6,X7,X8,X9,X10,
X11,X12,X13,X14,X15,X16,X17,X18,X19,X20,X21,X21,X22,X23,X24,X25,X26,ft)
begin
if(RST='1') then
X1<='0';X2<='0';X3<='0';X4<='0';X5<='0';X6<='0';X7<='0';X8<='0';X9<='0';
X10<='0';X11<='0';X12<='0';X13<='0';X14<='0';X15<='0';X16<='0';X17<='0';X18<='0';
X19<='0';X20<='0';X21<='0';X21<='0';X22<='0';X23<='0';X24<='0';X25<='0';X26<='0';
q<=0;c<=1;n1<='0';n2<='0';n3<='0';Xn<='1' ;
elsif(CLK' event and CLK='1')then
X1<=((X9 and b) or (X26 and b)) or (not(X2 or X10) and X1);
X2<=(X1 and ps and pp and Dcy and Xn) or (not(X3) and X2);
X3<=(X2 and b) or (not(X4) and X3);
X4<=(X3 and h) or (not(X5) and X4);
X5<=(X4 and CIIII) or (not(X6) and X5);
X6<=(X5 and b) or (not(X7) and X6);
if(X6='1') then
q<=q+1;
if(q=30) then
q<=0;
ft<='1';
end if;
end if;
X7<=(X6 and ft) or (not(X8) and X7);
~ 11 ~
X8<=(X7 and h) or (not(X9) and X8);
X9<=(X8 and CIIIII) or (not(X10) and X9);
X10<=(X1 and ts and pp and Dcy and Xn) or (not(X11) and X10);
X11<=(X10 and b) or (not(X12) and X11);
X12<=(X11 and h) or (not(X13) and X12);
X13<=((X12 and CII) or (X20 and CII)) or (not(X14) and X13);
X14<=(X13 and b) or (not(X15) and X14);
if(X14='1') then
q<=q+1;
if(q=30) then
q<=0;
ft1<='1';
end if;
end if;
X15<=(X14 and ft1) or (not(X16) and X15);
X16<=(X15 and h) or (not(X17) and X16);
X17<=(X16 and CIII) or (not(X18) and X17);
X18<=(X17 and b) or (not(X19) and X18);
if(X18='1') then
q<=q+1;
if(q=30) then
q<=0;
ft2<='1';
end if;
end if;
X19<=(X18 and ft2) or (not(X20 or X21) and X19);
if(X19='1') then
c<=c+1;
if(c=3) then n2<='1';
elsif(c<3) then n3<='1';
end if;
end if;
X20<=(X19 and h and n3) or (not(X13) and X20);
X21<=(X19 and h and n2) or (not(X22) and X21);
X22<=(X21 and CIIII) or (not(X23) and X22);
X23<=(X22 and b) or (not(X24) and X23);
if(X23='1') then
q<=q+1;
if(q=30) then
q<=0;
ft3<='1';
end if;
end if;
X24<=(X23 and ft3) or (not(X25) and X24);
X25<=(X24 and h) or (not(X26) and X25);
if(X25='1') then
c<=0;
end if;
X26<=(X25 and CIIIII) or (not(X1) and X26);
end if;
~ 12 ~
end process;
end RTL;
La bascule D ne possde qu'une seule entre. Elle sert maintenir la valeur qui
lui a t donne comme entre jusqu' ce que l'entre change. Dans le type de
bascule D synchronisation sur un front montant, la sortie Q prend la valeur de
l'entre D quand le signal d'horloge est un. Il ne peut y avoir mmorisation de
D que lorsque H est pass par 0.
Extrait du projet :
~ 13 ~
On a utilis une horloge de 1khz,
des bascules 74LS74D avec 4
entres et 2 sorties.
Les sorties sont :
X
Not(X)
Les entres sont :
CLK : lhorloge
Pr (set) : mettre 1 la sortie
X
Clr (reset) : mettre 0 la
sortie X
D : cest lquation dduit du
grafcet (voir II.3)
X 20= X 19 . h . t + X 20 . X 13
X 21= X 20 . h .t + X 21 . X 22
b. Conception de la temporisation :
Dans notre projet on aura besoin dune temporisation qui dure 30 secondes, elle
sera activer dans diffrents tapes X7, X15, X19 et X24
~ 14 ~
A lintrieur du Bloc :
~ 15 ~
c. Compteur :
Dans le cahier des charges ya un cas ou on aura besoin dun compteur pour
calculer le nombre de fois et son principe est le suivant :
-Incrmenter la valeur
quand X19 est active
- mettre 0 le
compteur quand il
arrive 4 ou bien
quand il arrive lun
des tapes X et X25
- t = 1 quand la valeur
est ( 0011 )2= (3 )10
- pour viter le
comptage rapide on a
met une horloge trs
petite sinon la valeur
va sincrmenter
rapidement ds que
X19 est active
~ 16 ~
PARTIE
PRATIQUE
~ 18 ~
2) QUARTUS :
AlteraQuartus II est un logiciel
de conception de dispositif
logique programmable
produite par Altera. Quartus II
permet l'analyse et la
synthse des conceptions de
HDL, ce qui permet au
dveloppeur de compiler leurs
conceptions, effectuer une
analyse de timing, d'examiner
les diagrammes de RTL, de
simuler la raction d'une
conception diffrents stimuli,
et configurer le priphrique
cible avec le programmateur. Quartus inclut une
implmentation du langage VHDL et Verilog pour la description
du matriel, l'dition visuelle des circuits logiques, et la
simulation vectrice de forme d'onde.
3) MULTISIM :
~ 19 ~
NI Multisim
(anciennement MultiSIM)
est un programme de
capture et de simulation
schma lectronique qui
fait partie d'une srie de
programmes de
conception de circuits,
avec NI Ultiboard.
Multisim est l'un des rares
programmes de
conception de circuit
employer la simulation
originale de logiciel
bas Berkeley SPICE. Multisim a t cr l'origine
par une socit nomme Electronics Workbench, qui est
maintenant une division de National Instruments.
Multisim inclut la simulation de microcontrleur
(anciennement connu sous le nom MultiMCU), ainsi que
importation et d'exportation fonctionnalits intgres
au logiciel de mise en page Printed Circuit Board dans la
suite, NI Ultiboard.
II. Grafcet dansAUTOMGEN :
Exemple du fonctionnement du grafcet de projet dans
AUTOMGEN
~ 20 ~
~ 21 ~
III. Excution du code VHDL dans
QUARTUS :
~ 22 ~
IV. Simulation de Circuit dans MULTISIM :
~ 23 ~
CONCLUSION
~ 24 ~
QUARTUS et MULTISIM, permettant de raliser facilement le
Grafcet, code VHDL et le circuit.
WEBOGRAPHIE :
Les sances du TP du notre Professeur Mme
SLAOUI
http://www.bidouille.org/elec/gravure
http://fr.wikipedia.org/wiki/Insoleuse
http://www.iset-ti.be/Portals/0/Jamart/fabrication%20circuit%20imprim
%C3%A91.pdf
~ 25 ~
~ 26 ~